While I'm still in the mood for ranting... here's another one.
Faults being fixed with firmware updates.While I understand that writing perfect software is not technically possible, the solution to many, many jvm inconsistencies and performance problems has been a firmware update... That might sound innocuous enough, but think about it, how does the average user KNOW that a firmware update is available for their device ? For that matter does the average "NON TECHNICAL" user actually even know that the device requires firmware ?
Generally, the situation seems to be that if you phoned technical support for your device, they MIGHT know that a newer version of firmware is available to you, in practice I have heard of people calling technical support and the support people not even knowing that a newer version is available.
So, say we write a game for a device and if the user has the up to date firmware, then everything is fine.. however, if the user has an older version of firmware which still has a problem then the game may not run at all, run too slowly to be playable, suffer from unknown corruption problems.. Somehow I don't think that the end user is going to be happy with that, and who gets the blame for this problem... You the developer, the first the the user is going to do is blame you, delete your game and probably think twice about using you as a supplier again.
So, here's a few firmware updates:
- Sony Ericsson's T610, original firmware had pretty abysmal performance for j2me, my noted favourite was that if you had the device charging, the animating power indicator icon seemed to take too much processing and degraded the performance of the jvm to pretty much unusable in many situations (and added a nice flickering problem on repaints). Firmware upgrade improved T610 performance as you can see by the range of results on www.jbenchmark.com (115 -> 696 ) thats a significant difference.
- Nokia 6600, original firmware didn't support installation of signed MIDlets, this was fixed in a firmware update, I suppose this could actually be worked around by detecting the HTTP_USER_AGENT header and reading the firmware revision to redirect the OTA installation to a specific unsigned version.
Anyway, what I'm saying is that I understand that firmware updates are necessary, BUT and this is a BIG but, we need a better way of informing end users that a firmware update is needed.
I don't have a solution as such for this.. but, I have had a few ideas...
- Automatic updates OTA, like firmware updates for digital tv, they are sent OTA and automatically installed, I don't know if it still happens, but Orange in the UK at least used to do SIM updates at one point OTA. Problem, this won't work, too much bandwidth would be used, it would take too long and I don't think many people would be too happy with having their contacts lost as happens in many updates.
- Automatic notification by network operators... this is a possibility, the network operators COULD do a device detect on accessing their portal and if required tell you that you need a firmware update and where to get it (nearest update centre) and also tell you that if you don't do it you might have problems with some applications.
So, thats the end of that rant... anyone got any opinions on that.