Curious that JWZ and his time at Netscape were particularly lauded here.
It's quite likely I'm being a bit snarky here... but Netscape lost the browser wars just a few years after they hit it big. And the core code of Netscape Navigator was bad enough that they eventually abandoned it around 1999 with the start of the Mozilla project.
Now don't get me wrong, it was only through the herculean efforts of guys like JWZ at Netscape that allowed them to ship a product at all. And certainly it made him and some of the founders a lot of money, which is a valid measure of success in business.
But to point to that particular code base as an example we all should follow? I don't think so. Certainly, choosing C++ then (or now in my opinion) is a mistake. And I've definitely seen people get overly rambunctious with architecture... especially in the Java world. But I think that's mostly the result of programming languages sucking as much as anything else. That and most people just aren't that good at design. Mostly meaning that when they've come up with a bad design themselves, they can't admit that and then really do what it takes to try and fix it. Of course, in the business world there are always severe time / money constraints, so that makes it real hard. And that's when not having unit tests hurts more... because it is harder to make significant changes to the code and have some assurance you didn't make mistakes.
That N900 is nice. Really nice screen and processor.
But the battery isn't going to be big enough. I had to get a 2600mAh battery for my G1 (which makes the phone quite fat) just to get some decent usage out of it. The standard 1100mAh wasn't nearly enough on the G1, so I doubt a 1300mAh one on the N900 is going to be sufficient either.
The other critical factor for me is the keyboard. The G1 has all the symbols you'd normally use in programming, and I really appreciate that. Well, except for the escape key, but that's mapped to the trackball with the ConnectBot application (local terminal and ssh client).
Still... a laudable effort from Nokia. If I could just talk them into one more row of keys...
No amount of careful planning will ever replace dumb luck.