Mr Hunt’s comment on my pet hate, the cross platform user interface:
“I'm not against cross-platform libraries, or cross-platform applications. But giving the same UI to every OS isn't a good solution.”
It isn't a good solution, but one often mooted as the 'best' compromise. The downside of that middle ground choice is that it will offset any possible advantages gained by presenting an interface that does not fit it's environment.
Good design separates presentation from engine; web standards are built on that very concept.
If you use OS X, you're used to a certain user interface, just as a Windows or perhaps Gnome-on-Linux user is familiar with theirs. The GUI should be predictable across applications and make a certain logical sense. Cross platform UI breaks that fundimental design concept by introducing a foreign element, which whilst keeping strong brand integrity, fails to keep a reasonable standard of UI integration in return.
Mozilla developers working on Firefox 3 have begun to understand that embracing each Operating System's design does not mandate that the ‘underware’ be different, rather that the clothes Firefox wears under each match the surrounding environment.
“Visual integration with Windows and OS X is our primary objective for the Firefox 3 refresh.”
Of course, views differ and Simen of dailymeh responds:
“All else often isn’t equal, because it’s often a choice between a stripped-down version or no version at all and a slightly sub-optimal solution.”
Which is a very valid point, but falls flat when the tools already exist to make cross platform code happen without enforcing the need for a constant user interface as well. The days of settling for second best or none at all have long since passed. Web based technologies have certainly driven that change, but ‘fat’ application development tools are catching up, fast.
All the brand identity in the world equates to exactly zero if absolutely no-one uses your product due to a confused and unusable cross-platform interface. We’re no longer bound to a narrow range of applications so the old rules of “it’s our way or the highway” don’t fit with the modern world.
Perhaps that is why so many developers continue turning to web based application technologies. Because it does allow for very strong branding yet will still look, at a fundamental level, virtually the same across any number of platforms. The latest Mozilla lab product, Prism, jettisons all but the most rudimentary user interface, leveraging the existing web navigation instead. And that concept is raising eyebrows.
It’s just not the done thing, throwing away the standardised cross platform local user interface. Yet in ever increasing web application cases the local interface, short of basic core controls, becomes entirely redundant.
The future of application development is increasingly cross platform in nature, of that there is no contest. Whether or not that is a wise idea is also no longer a relevant question. In fact I’m all for it — diversity is a strong survival technique and allows for a wider range of tools in return. But for off-line applications to succeed, they will increasingly face direct competition from web based technologies, and experience the exact same growing pains.
Part of that process is separating engine from user interface and treating the two halves, not just the whole. The promising sign is that that is already happening.
≡ This is a journal entry relating to the topics of ethos, os, presentation, software, standards.
Brendan Borlase is a Systems and Network Administrator living in Adelaide, Australia, having lived, worked and breathed Information Technology for over 12 years. Learn more.
Feedback is encouraged. If you would like to read more, consider subscribing to the regularly updated RSS Feed.

