View Single Post
Texrat's Avatar
Posts: 11,700 | Thanked: 10,045 times | Joined on Jun 2006 @ North Texas, USA
#49
Originally Posted by benmhall View Post
I'm sorry, this doesn't wash. It's great that they've introduced new APIs, even better that upstream GTK etc is being tracked now. However, this shouldn't have come at the expense of the old APIs. When MS, Apple or even Debian/other Linux distros upgrade to new libraries, they keep old ones around as well so that everything doesn't break. I typically have wxGTK libraries of about three or four versions on my systems for different apps that haven't been brought up to current.

I realize that there are extra constraints with this being an embedded platform. I also think it's acceptable to have this sort of breakage for brand-new platforms in brand-new categories. However, as the platform matures, as is surely the case with ITOS 2008, this sort of behaviour becomes less and less tolerable. I hope this is the last time that Nokia intentionally breaks compatibility. Otherwise, I fear they risk alienating 3rd party developers for the platform. Just look at all of the OSS apps that only work on specific versions of ITOS for examples of this already. Jpilot and Abiword to name two. What did this buy us? Lost apps and lost developers.

Apple, Sun, Microsoft, Red Hat, Canonical, all of them keep old versions of libraries around to prevent just this sort of thing from happening. Sure, deprecate old APIs/libraries, but at least keep them around for a release or two. Can you imagine how popular Java would be if each new release of the JDK broke _ALL_ non-trivial apps compiled against the previous version?
With any platform you pick your poison. I hope that maemo does NOT follow the Microsoft example and burden the OS with a lot of backward compatibility-- that comes at the expense of speed, and in an area that the tablets can't well tolerate, room (onboard memory).

I understand that you suggest keeping certain legacy libs available for a followup release or two, but in Microsoft's example those legacy libs hang on indefinitely. Remember "DLL Hell"? I don't want to see the tablets replicate that nightmare.

There may be a good middle ground here, but if I had to pick my poison, I'd pick breaking ties with legacy apps and pray that the developer incentives (like the big tablet discounts 500 people will enjoy) will help bring broken apps forward.

The end result, of course, should be that the API breaks come with reasonable benefits, and I don't just mean eye candy. I believe they will.
__________________
Nokia Developer Champion
Different <> Wrong | Listen - Judgment = Progress | People + Trust = Success
My personal site: http://texrat.net