After reading Paul Graham's inflammatory post about how Microsoft is dead, Simeon Bateman and I got into a little back and forth over IM about the merits of what he was saying. I tend to agree with Don Dodge, about both the title of the piece and the "real meaning" of the piece (his update response). But Simeon said something that I think a lot of people feel and is very relevant to the Rich Internet Application discussion:
Simeon: And I think paul is right on with the desktop thing. The only reason I would ever consider building an application for the desktop is because apollo lets me do it easily like a web application.
I would never NEVER build a desktop application.
The desktop thing he is referring to is when Paul says:
Gmail also showed how much you could do with web-based software, if you took advantage of what later came to be called "Ajax." And that was the second cause of Microsoft's death: everyone can see the desktop is over. It now seems inevitable that applications will live on the web—not just email, but everything, right up to Photoshop. Even Microsoft sees that now.
I'm not even going to address Paul's shortsightedness because I'll just get angry, but I wanted to put Simeon's comment in perspective. At least Simeon realizes there is some benefit to building desktop applications, he just doesn't see why its worth it to go through the effort. And he's right, building desktop applications has been hard. It's a pain; You have to create a version for each operating system, and most of them look ugly when you're finished.
As Simeon mentions, this is where Apollo comes in. Really for the first time ever, we can build good looking desktop applications that are cross platform and use rapid development technologies and techniques. Desktop applications are becoming as easy to build as web applications, and that's going to change a lot of things. One of the reasons the web took off is because it's really easy to build applications. It was also very easy to see what people were doing and hack away to create your own stuff.
Apollo may prove to be the catalyst in really getting people to use the best platform (web or desktop) for their requirements. Microsoft has also made it much easier to build good looking desktop applications with Blend and Windows Presentation Foundation. The XAML/C# tandem makes for some quick dev turnaround time, but cross platform is a big deal, and people coming from the web background aren't going to be keen on going to a windows only platform.
But I think RIAs help the entire software ecosystem, from web developers to desktop developers. In the end, with RIAs we can quickly create powerful, well-designed applications that focus on experience. The easier that is, the more developers we'll have chomping at the bit regardless of the medium or specific technology. Then we have more innovation, more competition, and better experiences for the users.