Why Apple and Google are winning
Consumers (or, put another way, the average users who will use your software) must come first if a software company wants to succeed.
I'm rereading Businessweek's excellent article, "The Mac in the Gray Flannel Suit," and it became very clear why Apple is succeeding in the enterprise despite not focusing on the enterprise.
Apple has made computing pleasant.
I love my Mac. I love its look and feel. I love the software. I actually look forward to using my Mac. It's not a Dell, dude. It has class.
Another (overused) way of saying this is that Apple has "consumerized" the computing experience. As it turns out, enterprises employ consumers. Lots of them.
But it's not just Apple.
Google has won the search wars primarily because Google focused first on pleasing consumers. It didn't try to stripmine the search experience in search of every last penny of profit from ads, the way Yahoo! and Microsoft did. These latter two littered their pages for years with absolute rubbish, neon advertising, making the search experience feel like Vegas.
Not Google. It focused on adoption first. It focused on making the search experience simple, fast, and useful.
In a way, successful open-source projects have thrived in much the same way. Linux is popular because it focuses on its consumers first. Same with Apache and MySQL. These are not "consumer" applications in the way that, say, Apple's iMovie is, but they are consumer-ish in the way I'm describing because they put the end user's experience first in the equation, rather than the cash in her pocket.
Apple's secret is that it cares more about the consumer experience than in milking its potential market for every last penny. It could hire an expensive enterprise sales force, but lets its users sell the Mac experience instead.
If you're an open-source or proprietary company, there's a lesson in this. Focus on adoption first. Focusing on adoption helps a company to fixate on how to make software (or hardware) enjoyable, and not necessarily what will make it sell better. The sales follow the adoption.
For those commercial open-source vendors out there, this means your first order of business should be to focus on adoption and the user experience, rather than proprietary extensions (if any). These may be convenient, but they will corrupt priorities if they are the first order of business.
Focus on the average users within your potential user demographics, not the alpha geeks. Average people buy more software than the uber-geeks do. Microsoft learned this long ago, lowering the bar to computing. It has lost its way of late as it tries to complicate the user experience a bit by adding bells and whistles designed to drive upgrades, not customer satisfaction. That's why it's slowly starting to lose.
As we focus on the unwashed masses rather than the elite, which begs a focus on adoption first, software will become easier to use and more pleasurable to use. Like Apple. Like Google.