I’m : a programmer, writer, podcaster, geek, and coffee enthusiast.

Great since day one

The original iPhone was great on day one. It couldn’t do as much as today’s iPhone, but it performed its feature-set extremely well. There were almost no rough edges or unpolished areas in its hardware or software, and nearly everything seemed justifiable, well conceived, and well executed.

Apple tends to do that a lot. It’s deeply ingrained in their culture, priorities, and product development practices. In brief, their philosophy seems to be to ship only what’s great and leave out the rest. That’s why, instead of having a bad copy-and-paste implementation for the iPhone’s first two years, we just didn’t have one at all.

Android as a platform, both in hardware and software, doesn’t reflect this. Nearly every hardware and software release has major shortcomings or rough edges. Many details and design decisions are lacking, wrong, or inexplicable.

Neither Google nor the current Android device manufacturers embody the part of Apple’s culture that allows them to release a great product on day one. They have a different pattern: It’s always getting better. We’re always supposedly one or two releases from it being really great.

Much like desktop Linux.

The joke of “next year will be the year of Linux on the desktop” is almost as old as the internet, but it’s true: desktop-Linux fans always say it’s “getting better”, and there’s always a major distribution update a few months away that’s about to be awesome. But it never is. And it never will be, because the reasons why desktop Linux isn’t awesome today will still hold tomorrow: it’s still an extremely fragmented development community for which the non-geek user experience is one of the lowest priorities.

What keeps nearly every Android device and OS release from being truly great are deep-rooted issues that have no apparent solution for the foreseeable future. The device manufacturers aren’t very good at software, yet they keep writing their own. The OS has no consistent hardware platform to target. The manufacturers produce devices with inconsistent build quality (the Droid’s battery door, the Nexus One’s button misalignment) and lots of why-is-this-here moments (the Droid’s keyboard, the Nexus One’s trackball). The current must-have Android phone changes every few months, and they’re often radically different from each other, making it difficult for consumers, developers, the press, and the carriers to build loyalty toward any of them or entrench them in the market. The OS needs to be updated over the air with three involved parties, only one of whom is motivated to update it. Features are added when they can be, not when (or if) they should be, or if they can be done well. Nearly every usability detail appears to be an afterthought, as if “design” is relegated to a coat of paint at the end of the development cycle rather than a deep-rooted philosophy throughout it.

How many of these problems will be significantly alleviated or eliminated in three months? How about in three years?

The Android ecosystem doesn’t seem capable of producing devices that are great on day one. Yet Apple consistently pulls it off.

I never make technology-buying decisions based on future promises, rumors, or potential. I let other people be the bleeding-edge extremely early adopters, and I stick with what I know will work and stay out of my way. I don’t buy things that are “getting better”, because they usually don’t. Whatever caused them to be lacking in their current release will usually prevent them from being great in future releases.

I buy things that are great today. They’re usually things that have been great since day one. And, more often than not, they’re Apple products.