Today Adobe is announcing the official release of Adobe AIR and Flex 3. While these announcements are not really news in that the products have been in beta, and usable for a year, today seems a good point in time to mark the official end of the Windows era.
With AIR and Flex, What Adobe is doing is building a platform to replace all operating systems as a development target, and the implications of this are profound.
For most applications it does not make sense to write directly to the OS any more. This movement has been underway for years as application developers have been increasingly writing applications for web browsers instead of for specific PC operating systems. But web applications have had two problems. First they just looked crappy compared to desktop apps. And second, they did not have access to the file system and other local resources that a standard application has.
Adobe's Flex is a developer tool that is built on top of it's ubiquitous Flash Player. Flex makes building sophisticated web applications, also called Rich Internet Applications (RIAs), much easier than writing apps to the Windows API. Flex apps are slicker than standard Windows apps, and seamlessly integrate with the web. At the same time, HTML/Javascript apps are starting to look very good. While Flex is more powerful that HTML/Javascript, for many apps HTML/Javascript is quite good enough.
Adobe AIR is a tool that allows developers to build Flex applications or HTML/Javascript applications that work on the desktop but have access to the Internet and can synchronize between the web and the desktop when offline.
What is strategically significant about these tools is that they give millions of web developers the ability to do almost everything a hardcore Windows or Mac developer can do in a way that is totally cross platform (Windows/Mac/Linux and maybe mobile someday). A typical web developer today has no idea how to build desktop apps, so this technology is a game changer for that audience.
At the same time, if you are writing with Flex and AIR or HTML/Javascript and AIR you are not writing to Windows, or for that matter Mac OS X. The strategic import of this cannot be understated. Having MS-DOS and then Windows as the world's most important software development platform has been Microsoft's single most significant advantage in its history as a software company. That advantage is gone.
Adobe's strategy is a death stroke to Windows as a strategic monopolistic platform. And Adobe as a software company with revenues north of three billion dollars has the muscle, the development community, and the momentum to fight this battle. They will not be "Netscaped."
Windows will be a money maker for years to come as a tool that end users care about. And to be sure, there is still significant strategic value to the platform. But as a "must have" because people need to run Windows compatible apps, as of today we can say that rationale is officially dead.
RIP Windows 2008.
Monday, February 25, 2008
Subscribe to:
Post Comments (Atom)

13 comments:
Microsoft isn't helping matters for themselves by producing new versions of windows that are more broken and slower than the ones they replaced. I'm almost at the point of wiping Vista off my new Dell.
Hank, you are my hero, just followed you via Om. Om is getting a little overblown, for my taste.
I recently got my hands on the BEA VM OS replacement, which needs no OS to run, just the server's JVM and a Hypervisor.
isn't that even cooler that AIR, and the other platform independent tools?
hey awilensky,
Thanks much for the comment. Hope you stick around. Thats interesting about the BEA VM. I hadn't heard of it but am going to investigate. That does sound very cool and might be relevant to my work.
While agree this is a huge development (and hope it is a huge development), the litmus test is what types of apps get build on the AIR/FLEX platform.
If they are cheeky consumer apps, it won't matter.
If they are enterprise-class apps (productivity, CRM, ERP, SCM, etc.) the whole game changes.
Chris,
I agree, though to some extent that has already been answered as salesforce.com and ebay among others have already introduced apps.
Love it. Just got here via newtech.
We've been building our app entirely in Flex 2 and we'll be playing with AIR in the coming months.
We do all of our wireframing / prototyping directly in Flex, their library of components, and CSS and can test it out right in the browser. When we're happy with a particular experience, we can pass it to our engineers to weave it in with the backend. Cuts a lot of time / translation issues out of the process.
So what do we do when Adobe/AiR becomes Microsoft/Windows?
"So what do we do when Adobe/AiR becomes Microsoft/Windows?"
Pray :)
No, but seriously, the good news is that while flash isnt open source, the file format is public, and Flex is totally open source. That said, lockin is still possible. But I dont have an political horse in this game. I just think Adobe has done a good job with their tools. All companies have the potential to be evil and Adobe is no exception.
Nice post. Always thought you would be older-looking -- must have been all the bit-level old-timer stuff you throw around on Flexcoders and osflash :)
Did you know that JD is bumping this post?
Thanks Jules. I am pretty well preserved aren't I :)
Yes I did know that JD linked to me. And I should take this opportunity to say thank you. The piece was also syndicated over at megablog centernetworks.com
Hank, I'm not sure I agree with you that Adobe Air will kill Windows any time soon, however I definitely agree that Air and its ilk present very interesting new possibilities for developers.
I have been a Desktop application developer for many years, going all the way back to DOS. For a while now I've been getting more and more interested in using using components of Web development within Desktop application development. For example Javascript, HTML and CSS instead of Windows controls and C++ code. In fact I'm doing exactly this in my product Surfulater. That is mixing Windows controls and C++ with Javascript, HTML, CSS, Ajax/XHR etc.
With this approach the more I do with JS/HTML/CSS the more I can re-use in Web versions of my products. The goal here is to have full featured Windows Desktop apps and similar but lesser featured Web versions of the same application, seamlessly accessing the same synchronized data. To my mind this gives "users" the best of both worlds; feature rich, fast desktop apps, and web apps that let them access their data anywhere they have a web browser and internet connection.
One final thing you didn't mention is that Air supports ExtJS, which enables you to build Web apps that look, feel and behave a lot like Desktop apps. I'm currently using ExtJS to enable Surfulater users to publish their Knowledge Bases as stand-alone HTML, which has proved very popular. See http://www.surfulater.com and http://blog.surfulater.com
"they give millions of web developers the ability to do almost everything a hardcore Windows or Mac developer"
HARDCORE developers? I disagree. While they may let developers create yet more McDatabase apps, they're nothing compared to what can be done with real development tools.
Whenever I hear the death knell of the desktop or how declarative Flash will replace everything, I ask for a simple example. "Please create for me a client-side PCM waveform renderer."
Again, if all you're doing is new takes on datacentric form-based apps, or even distributed communications, then these tools may be appropriate, even superior, but if you want to actually do something else, they offer "hardcore" programmers next to nothing but eye candy.
Post a Comment