View Single Post
Posts: 477 | Thanked: 118 times | Joined on Dec 2005 @ Munich, Germany
#26
Originally Posted by b-man View Post
I know that this is a slightly off-topic and silly question but since Nokia is planning a fuew mager changes to the N900's hardware and software, do you think that both the N800 and N810 will be discontinued much like the N770 was when OS2007 came out? Since the N900 will likely have a more powerful prosesor and possibly a slightly different chipset allong with more powerful graphics (possibly OpenGL 2.0) and also a different camera.
Yes, I do not expect the N800/N810 distribution to be maintained any more than the 770 distribution has been. I'll explain why below.

Originally Posted by lcuk View Post
Could somebody tell me honestly why we NEED new hardware to produce good quality software?

Good software should scale from the device it was designed for UPWARDS into anything else.

If we continue to just create software as if it was a desktop we will be unhappy with the performance, even on the new device I do not expect to be running glitzy glamerous highly animated 3d programs for hours - it will just eat the battery.


The problem is hardware abstraction on a small device. On the 770, N800, N810, people expect computing intensive applications like flash video play to work. But due to the small computing power that the devices have, having these applications to work meant that they had to be programmed relatively close to the hardware. If you change the hardware (e.g. because the N900 would have a processor with graphic acceleration that works), you need to rewrite the hardware-dependent part of the software. So if you have two lines of devices, writing a new flash player (for example) takes twice the effort and costs twice the money. The results we know from the 770.

On a big PC, you have plenty of computing power available, so the flash player talks in an abstracted way with the graphic card driver. Change the graphic card and you only need a new driver for all the old applications to still work.


Interestingly, Apple chose to use very strict abstraction layers on the iPhone, and forces that on the developers. So Apple can change the iPhone hardware without breaking compatibility. The downside is that it is not possible to write very computing intensive applications, or rather that they are very controlled. There is no flash player. Video play is explicitly supported, but only a very small set of codecs and quicktime rendering must be used. For Apple, the quicktime libraries are hardware dependent, but they only have to rewrite those for new hardware. They are considered part of the driver package.