Linked by Hadrien Grasland on Tue 11th Jan 2011 13:40 UTC
Graphics, User Interfaces Nowadays smartphones, tablets and desktop/laptop computers are all siblings. They use the same UI paradigms and follow the same idea of a programmable and flexible machine that's available to everyone. Only their hardware feature set and form factor differentiate them from each other. In this context, does it still make sense to consider them as separate devices as far as software development is concerned? Wouldn't it be a much better idea to consider them as multiple variations of the same concept, and release a unified software platform which spreads across all of them? This article aims at describing what has been done in this area already, and what's left to do.
Permalink for comment 456969
To read all comments associated with this story, please click here.
RE[3]: umm
by Neolander on Tue 11th Jan 2011 14:57 UTC in reply to "RE[2]: umm"
Member since:

Although the heading talks only about "personal computers", the first sentence of the article expands the scope of discussion considerably to include "smartphones, tablets and desktop/laptop computers". In the latter context, Linux is a significant player.

When I say "personal computer", I mean a computer which is designed to be owned by an unskilled individual. Desktops, laptops, tablets, smartphones, and netbooks are all personal computers.

As I said previously, if you're going to say that Linux (not Android) is a significant player of this market, please show how.

If one also considers a further ambition beyond mere "cross device compatibility" within one or other OS family, one might also talk about "cross platform compatibility" as well as cross device compatibility.

Cross-device compatibility means cross-platform, nowadays. Most mobile devices are based on ARM, while most desktops, laptops, and netbooks are based on x86(_64). Cross-device is a superset of cross-platform, in that you not only have to adapt yourself to various CPU architectures and internals with the same peripherals plugged in, but also to various displays and human interface devices (which is at least just as tricky)

Your determination to try to dismiss Linux/OSS from the main discussion has IMO caused you to miss an interesting technology in the very arena of the topic.

Well, I've yet to find a proper, clear, and concise introduction to the subject, but each time I read about it it sounds like some kind of CSS for desktop apps, with mandatory pixel-based control positioning as an ugly bonus.

CSS is a step in the right direction, in that it forces separation of user interface from the program's internals. But it still doesn't make websites or applications magically adapt themselves well to a big change of screen size. Website developers still have to work around that all by themselves using some ugly javascript to say that if screen size is smaller than x then you must hide feature y. They have to do that design process by hand. This is not the same as true cross-device portability, where the UI toolkit does that job for you, only given some data regarding how important each element is.

Edited 2011-01-11 15:06 UTC

Reply Parent Score: 2