There’s an explosion of platforms to develop applications on at the moment, which is exciting in many ways – lots of new environments and possibilities to explore. But it makes life harder for everyone – people who are making things, and people who are choosing things.
Back in the mid to late 90s, it was pretty much a PC world. If you wanted a computer, you knew that if you had a PC, then (apart from a few vertical niche markets), you’d have access to pretty much any new software or tool that came out. People who made things could develop for the PC and know that nearly everyone (who had a computer) could use their stuff, apart from the small minority of people who’d deliberately chosen a computer that didn’t use what everybody else was using.
And then in the late 90s to the mid 00s, it’s was pretty much a web world. For the most part, if you had a computer and an Internet connection, you’d have access to pretty much any new tools that came out. People who made things could develop on the web and (with a bit of futzing around with browser-specific stuff), pretty much everyone (who had a computer and an Internet connection) could use their stuff.
But now there’s not just PCs, Macs and Linux computers, there’s not just Internet Explorer, Firefox and Safari, there’s also the iPhone, Android (G1 – HTC Dream etc), Windows Mobile, Symbian/S60 (e.g. Nokia N97 and N86, out today), and the entirely new environment (webOS) for the Palm Pre (due any minute). All of these are separate environments to use and to make things for.
It’s a nightmare. As a user, or a developer, how do you choose? How do you juggle all the different environments and still get stuff done?
Because juggling multiple environments is where things are.
This is all part of an ongoing transition. When computers first arrived, there were lots of people for every computer. Microsoft started out with the then-bold ambition “a computer on every desk and in every home, running Microsoft software” – a computer for every person. Now we’re well in to the territory of lots of computers for every person.
This makes for harder work for everyone – to get the best out of things as a user or developer, you need to be polyglot, able to move between platforms, learning new tools routinely.
It’s also, though, a hugely exciting range of opportunities and possibilities. We are very much still in the middle of a golden age of information technology.
And what about games platforms? Can you see a time when we could port HTML-based materials for use on a Ninetendo DS or PSP-type unit?
Oh, absolutely. You can almost do that now – I know of stuff where people read PDFs on their DS by exporting the file as a series of JPGs (!). Not quite ready for the general user, though.
I think you’re making that classic mistake “harking back to a golden age that never existed”. Look at it a different way. If you want to get information to a high proportion of the world’s population you can do it via a web page on any of those devices (admittedly you might have to be a little careful about layout to get it readable on a mobile phone or a netbook). Most of those devices can also read a PDF — I know my N95 can and I feel sure even an iphone can.
At some previous point in history you could get information to a much smaller number of people who you could probably be sure were using one of two or three web browsers.
As for standardisation in the mid to late 90s on the PC format (when I was mainly using Irix and Solaris) — how many config files did you have on your mid to late 90s PC to get it to run various things? “Not compatible with windows 95”, “Win95 only”. That’s why PCs had emulation environments like DOSBox. There was never a point where PCs were capable of running “PC software” you’ve just forgotten what a hassle it was.
Fair point – of course you’re right that you can make information available to just about anyone with a computer you can do it with a simple HTML page. And there are way, way more people who have Internet access now than back in the 90s. So that adds up to hugely increased (potential) reach.
It’s also true that (most) systems are way easier to use these days than they were, and (for the most part) are way, way easier to develop for as well.
I wouldn’t want to go back to those times – things are orders of magnitude better now. And I wouldn’t want to enforce or even encourage a monoculture: I think diversity can be extremely valuable in lots of ways.
I’m probably only grouching because keep forgetting where some keys (e.g. \ and `) are located when I swap from one machine/OS combo to another 🙂