It used to be so much more straightforward. Most people used Windows PCs, creative types with more money than sense Macs, and weirdos, Linux. The web was a unifying force, and if you had a good idea it was relatively simple to port it to all three platforms.
Not so now. I'm writing this on a Windows PC, but the next nearest four devices are an Android tablet, an iPhone, a Mac laptop that dual-boots Windows and a Linux netbook. I can reach out and touch a BlackBerry phone and a WebOS tablet, and there's a Windows phone within hailing distance.
Each platform has its own requirements that, in the case of the mobile operating systems (OSes) at least, requires software publishers to pay their dues to gain entry to the market. The only software makers guaranteed a decent profit from apps are the owners of the app stores.
Although such diversity in the computing world can only be a good thing from a hardware perspective, it mitigates against smaller software developers being able to unleash innovation to a suitably large audience. And as the next generations of both Mac OS X and Windows are likely to be optimised for mobile, and almost guaranteed to include app stores, this situation isn't about to change for the better.
As the open internet becomes less important, and locked-down platforms much more so, only those who can afford to develop cross-platform applications can hope to reach across the market. A third-generation internet that coalesces around big brands may make for a good user experience, but it won't be good for creativity, diversity or openness.
But where a problem exists, there's usually an attempt to address it. Mozilla recently launched a project to build an open OS for mobile devices. Boot to Gecko (B2G) is based in part on the Android kernel and some Android drivers, and will run applications on the web.
The project isn't all that different from Google's stated aim in developing the Android OS. It wanted to build a standalone OS for the open web. Or, in the words of B2G developer Andreas Gal, to "break the stranglehold of proprietary technologies over the mobile devices world".
The idea is to create a mobile OS that runs apps from the web and will work across all platforms. If it works developers will no longer need to create several versions of their wares.
So much for the idea. Like so many developments in the tech world, B2G may lead to nothing much. And anything that does come out of it is unlikely to be as polished for the end user as the likes of Apple's iOS. But its developers will release the code as they write it, which should in turn lead to some interesting developmental tributaries. And the very fact that an organisation with the size and success of Mozilla is taking up this challenge can only be a good thing.