Reading Brandur Leach’s article about Learning From Terminals to Design the Future of User Interfaces I found myself agreeing with many points, though not all. While I don’t agree that terminals are the answer to user interfaces, I was very keen on some of his points, notably:
We should be honest with ourselves and call out design anti-patterns that promote flashiness at the expense of efficiency.
I have found myself increasingly frustrated by bloat, whether in the form of stupidly large web pages that take forever to load while forcing the content to tip-toe around interactive elements, or simple apps that strain a last generation tablet.
I wrote a feature a while back about how I had tried to revive my 2012 Nexus 7 by switching to a different ROM (operating system essentially). I’ve been reasonably pleased with the switch but it’s far from perfect. It’s faster than the native Android ROM, but still a little sluggish.
Now, you could argue that it should be because the device is now more than four years old. In computer terms it’s more than a generation out of date, making it a virtual relic. Two more cycles of Moore’s law have passed since then, meaning recent devices are four times more powerful, in theory.
As I keep arguing though, we long ago passed the point of powerful enough. What all that extra grunt — which few people actually need — is doing is simply making developers lazy. Although it could also be that they’re driven by the new shiny too.
Instead of adding a flashy transition, or a higher definition image, or video to everything, why is no one focusing on speed?
The answer, I suspect, is that they’re all testing on super-high-spec development machines, or latest generation devices. Why spend time debugging a routine or looking for more efficient ways to do things — which often require a lot of creativity and clever-thinking — when you can just throw hardware at the problem?
Why worry about all those landfills pumped full of old devices that can no longer keep up? That’s not their problem. In fact, if you work for a device maker your job is to help move units. If anything, you want to make existing devices obsolete the moment a new one is launched. Slowing it down is one way to do this. Continue reading…