It's my birthday on Saturday and I've always used that day for my "year in review". It seems more appropriate somehow than New Years (maybe it just means I'm really conceited) . But as a result of something I'm working on for my birthday, I went digging through some of my old blog posts and I realized I've gotten to a point where I assume everyone knows what I'm talking about. When I ran down my list of RIA predictions and said " Flex becomes the primary technology for building Rich Internet Applications." It was because I continue to believe that Flex is the best RIA technology available today. But after going through the blog posts this year I realized I hadn't driven that point home in a long time.
Frankly, this Rich Internet Desktop application stuff has me a bit confused. Everyone loves web applications. The deployment model is ideal, browsing to a web application is something that everyone feels comfortable with and storage on the server means you can access it from anywhere. Sure, Apollo is going to extend that functionality, and I'm excited about it, but if you're building a web application right now, Flex is the ideal option.
I take it as a given that people consider the Flash Platform to be capable of building enterprise applications on, but maybe that's bad of me. With Flash Player 9, the platform took a huge jump. Flash runs faster and more stable than ever before. Now sure; who wants to go into the Flash IDE and build an application? No one. That's why Flex is so powerful. It opens up the Flash Platform to the developer crowd. If you use Flex Builder you're using an IDE based on Eclipse and it has fantastic debugging support. All the tools you need to create rich web applications are at your fingertips. And with the release of the Linux Flash Player, the three major operating systems will see your application in the exact same way with absolutely no code changes.
The reason I don't consider Ajax to be a Rich Internet Application technology is because I've seen what Flex can do. Flash gives you rich interactivity that you just can't get with the browser model. But Flex gives you that interactivity in a robust development environment. It astounds me that people continue to hack away at Ajax applications to make them work on different browsers when getting outside of the browser is so much easier. The Flash Platform gives you more reach and more tools than any other technology out there. It really is the next generation of web applications and Flex has made it easy to jump in and take advantage. Sure WPF/E is coming down the pipeline, and I'm excited about it. I think it's going to be interesting and good for Adobe to have some competition. But right now Flex allows you to build web applications that blow everyone else out of the water. No question.