Last week, my ZDNet buddy Adrian Kingsley-Hughes wrote an interesting article providing his perspective about why the desktop PC is far from dead.
For some reason, the idea that a guy with a British accent was saying "it's not dead, yet" amused me to no end, which got me thinking simultaneously about more Monty Python madness and other reasons the PC (as compared to post-PC) has staying power.
My colleague described the parts-in-a-box version of the desktop PC and identified five factors that contribute to why he says it's not dead: repairability, power, upgradeability, usability, and customizability.
Adrian was looking at hardware. I'm going to look at software. And while he was comparing case-based PCs to laptops and tablets, I'm going to compare applications running on Windows, OS X, and Linux to apps running on tablets and phone.
For the purpose of this article, when I talk about PC software, I'm talking about software that runs on machines and operating systems that are "open" without the need to jailbreak, machines that generally use a mouse instead of a finger, and support screens that would never be confused with a sushi tray. In other words, Windows, Linux, and OS X (and yes, okay, BSD, too). Software built for these environments are applications, not apps.
By contrast, apps are built for phones and tablets. Their aggregate taxonomic name "apps" helps to make the case for this article.
Applications are big. Apps are small. Applications need to be installed. Apps need to be downloaded. Applications cost double-digit dollars and more. Apps are generally ten bucks and under. Applications are complex. Apps are simple.
You get the idea. Applications are tall trees. Apps are shrubbery.
That brings us to the three factors mentioned in the title of this piece: precision, depth, and flexibility. When it comes to a shootout between applications and apps, applications can have all three. Apps mostly not so much.
Precision means the ability to control the software at a very detailed level. The mouse has long provided this level of precision.
The tip of a finger can't do nearly as well. Not only can the mouse address an individual pixel, while a finger is 16- to 32-pixels wide, but the finger generally obscures what's being manipulated. While app makers have certainly built some fine applications, this limitation gets in the way of truly production-level work.
Depth refers to the level of capability an application has, the options available, the settings, the various modes, the ability to dive into the software and use it deeply.
Take the difference between a simple text editor. Some text editing apps don't even let you control font size. Compare that to an IDE, which not only lets you edit text for many different programming languages, but knows syntax, style, has built-in debuggers, deployment systems, and more.
There are some PC applications that have been around for more than a decade. Take, for example, SnagIt, UltraEdit, and Directory Opus. SnagIt does screen capture. UltraEdit is a text editor. And Directory Opus is an Explorer replacement.
These applications are the main products from their respective companies and year after year, release after release, new features are added, customer requests are responded to, and the applications develop a deepness and richness apps will have a hard time reproducing.
Then, of course, there are the big applications, like Photoshop and Lightroom. Sure, there are baby versions available for mobile devices, but they work in tandem with the coconut-clapping workhorse applications, which do the heavy lifting and provide the deep functionality.
Flexibility, of course, refers to how far you can tune and tweak your applications. One clear indicator of the lack of flexibility in mobile apps is the need to jailbreak the system to add many desired features. You don't need to jailbreak PC applications. You just mod them.
Many PC applications (and I'm including games in this category) have the built-in expectation that they will be modified, extended, expanded-upon, customized, tweaked, and otherwise made to fit the user's exact needs.
While mobile devices are often more personal (my phone comes to bed with me, my PCs don't), and while you can do some limited surface customization, there's just no comparison to the application-level customization and flexibility that PC application software offers.
How will this progress over time?
Mobile devices are increasing in flexibility -- even the iOS devices. iOS 8 adds the ability to add extensions to applications. Android has Tasker, an entire programming environment for customization I'll be writing a lot more about.
Also, you should have noticed I didn't mention power as a factor. Mobile devices are getting more and more power, pushing more and more pixels, and have the ability to process sensor data at an aggressive level. So it's not that mobile devices can't provide the memory or CPU cycles needed for depth and flexibility.
Instead, it's that we engage with our mobile apps and devices differently. We might engage with a mobile app for a few minutes at a time, over the course of a day or a week. By contrast, when we engage with a PC application, we might be embedded in that application for hours and hours. Those hours bring about the need for more depth because the more time you spend with something, the more you need to address capabilities and user satisfaction.
One of the other considerations is the cloudification of applications. We are seeing some very deep apps, not installed on PCs, but running in the cloud. While these applications offer quite a bit, including great depth, they often lack flexibility and a degree of control. Indeed, there have been days that the cloud app entirely changes from the day before, often with no warning.
As we move towards more capable and more hybrid-like devices (like the Windows 10 tablets that will be coming out or the rumored 12-inch iPad which will easily accept an add-on keyboard), we're bound to see apps grow in capability and depth as well.
And this is where consumer computing and work computing diverge. Consumer computing will often be about the most friction-free way to get a task done. But when it comes to work computing, it's not the easiest solution users are looking for, it's the best solution for whatever quest you're on when you arrive at the Bridge of Death and need to answer questions three.
As a result, the need to customize will always be present in a work-related environment, because it is often the customizations, the tweaks, the little tuned efficiencies that provide a form of differentiation between competitors and make the difference between working at the office on Saturday or having the free time to help a spouse clean out the garage on Saturday.
Bonus question: What... is the air-speed velocity of an unladen swallow?