Something that many companies miss is that the success of a piece of software is not necessarily based on the features, nor is the success of hardware based on the technology inside. Instead, it is most often the pleasure of using software on a computer or device that drives adoption and leads to a product’s success.

How many users do you know who say “I love my HTC TytnII mobile phone. It has an ARM CPU in it which can be very powerful”?

Answer: Zero.

Outside of ARM’s employee base, I would wager that this sentence has never been uttered. When asked about how they like their Tytn, I’ve heard people respond with “it is too difficult to find what I am looking for” or “It is slow”. Similarly, the Nokia phones have traditionally been the market leaders in Europe, but time and again, despite the leading edge technology inside, the thing people focus on the most is the difficult user interface which often requires 8 clicks to do something that could only require two clicks.

There have been many astounding advances in hardware technology that should have made our devices such as televisions, mobile phones and laptops snowball into futuristic gadgets, but there is a chasm between the hardware technologies in a device and the software being written to exploit all this power. One example is graphics processing units (GPU). For years, high-end computers have had GPUs in their systems for driving video games and mathematical rendering, but now GPUs are entering the embedded space.

About this, users don’t care.

Where this gets interesting, though, is when software developers are trained on the programming languages specific to the GPUs and can really take advantage of the speed and power provided to them.

Still, users don’t care.

It is only when the user interface designers, software developers, and product managers work together that any of this becomes remotely relevant to the end users.

As an example, look at my favourite subjects, the iPad and the iPhone. Why do people love these devices? It isn’t because of the incredibly powerful CPUs inside. It isn’t the GPUs inside. And it isn’t even the features. The users love these devices because the experience of using them is fun.

There is an emotional reaction to using these products that spans generations, cultures and lifestyles. Part of generating an emotional response is to be responsive and reactive enough that the excitement level doesn’t dissipate (no slow rendering). Another aspect of an emotional attachment is safety or absence of fear (the user cant break anything).

The users don’t care about the guts of the machine. They don’t care that the software developers wrote the graphics rendering code in OpenGL ES or DirectX to take advantage of the GPU. They don’t even care if you loaded the hardware or software with features or left everything simple.

The users care about the experience.