I think Anil Dash is missing a trick.
Platforms, not programs. But why? The most widely-known application-as-a-platform of recent years is probably Mozilla, and has that succeeded in real terms? No. Firefox has. Thunderbird has started to. ChatZilla is starting to take off the IRC world thanks to its low entry requirements (Mark Pilgrim wishes
there were a standalone version of chatzilla but he might be taking the piss, so pretend I never mentioned it).
Breaking the Mozilla platform (we’re not talking about the GRE) was the best thing that could possibly have happened because it lowered user expectations. Your website doesn’t render? That’s a Firefox problem. IMAP connection keeps dropping? That’s something wrong in Thunderbird. Without them being separate applications all these errors are perceived as being due to “Mozilla”. Ergo, for the users, Mozilla sucks. Users are much more willing to forgive the same number of errors spread over different executables.
I’ve got to confess that I’ve not used Outlook as much as Anil has. In fact, I’ve only been using it for the past two years or so, but you know what? Every single time I have to use it it disappoints me. Every single time. Startup, shutdown. Mail notification. Mail rules. Calendaring. Reminders. Everything. I’m permanantly dissatisfied with every single bit of Outlook. It’s possible that there’s a mountain of stuff going on in the background that I don’t know about, but get this – I don’t care – user impressions are built on what they can see and touch, and using Outlook feels like having to hold a week-old turd.
Outlook doesn’t work as a platform because none of its constituent parts are good enough. Maybe if they were all separate apps I’d give it a break (actually, I’d probably just use different apps). The fact that the Outlook monolith is extensible is irrelevant. Anil mentions five extensions he uses despite the fact that one of them is simply a replacement for Outlook’s utterly broken searching (he even says so). Another two (Plaxo and MS Business Contact Manager) are replacements for Oulook’s utterly broken address book. If people have to release extensions to fix core functionality in your enterprise, corporate product, then what does that say about it? And because it’s a massive and closed environment, how do you know that installing these extensions isn’t going to fundamentally break something that you may not find out about for six months when you really need to send that important reply to your biggest client?
If you want platforms, then that’s great, but why write one single massive application on top of it? Why not write several, smaller, interacting applications?
Products, people. Products based on platforms, people.