on AIR Weblog

Archive for March, 2008

AIR Linux Alpha Available

Sunday, March 30th, 2008

We just released a public version of AIR on Linux as well as the tooling in Flex Builder for Linux to create AIR applications. Adobe really wants to provide full support on Linux for our RIA technologies. We’d love to hear what you think so please submit feedback and help us make the Linux release really fantastic.

Site Specific Browsers Versus Desktop Applications

Monday, March 24th, 2008

Yesterday on TechCrunch was a guest post by Matthew Gertner who works for Prism, a cool technology from Mozilla that lets you create desktop applications out of any website. Matthew does a pretty good job of laying out part of the scene but I think he misses an important point. Site Specific Browsers (SSBs) like Prism are similar but also very different from what AIR does which is let you create real desktop applications with web technologies.

The APIs for Prism are for the most part limited to providing the user a desktop icon, a separate memory instance, and something outside the typical browser chrome. These are all great because as Matthew says, sometimes you don’t want your application stuck between two tabs in the browser. But AIR goes beyond that by exposing a lot more of the OS APIs in the hopes of providing a very robust, cross-platform desktop environment.

With AIR you can go offline or leverage your own chrome just like Prism but you can also talk more closely with the file system. You can register your own file types, you get access to the file system, you can create new native windows, you can create your own native menus, you get access to the OS’ clip board and you can drag and drop data between applications. In an effort to bridge the web-desktop gap a bit you can also send data from your AIR application to the browser. Finetune does this when you have the desktop client open and select a playlist from the web interface. We want you to go out and create real desktop applications with Adobe AIR, not just the same application you’ve been creating inside of the browser. You can reuse a lot of that code, but you have a lot more functionality with AIR if you want to use it.

None of these technologies is stagnant, so it will be great to see it all evolve: WPF from Microsoft, Adobe AIR, Google Gears, and Prism. In the end it means there’s a lot more excitement around desktop applications. And I think most importantly, we can use the best platform for the job, we don’t have to be stuck inside of a browser if we don’t want to be.

Why Rich Internet Applications on the Desktop?

Tuesday, March 18th, 2008

Because desktop development is hard. In order to build desktop applications you have to be a pretty good programmer because there is so much other stuff to worry about. Obviously being a good programmer is never a bad thing but it does raise the barrier to entry. And it’s a lot of work to create desktop applications. You’ve got to work with potentially hundreds of native operating system APIs and when you’re done, your application runs only on the operating system you coded it for.

Contrast that with web development. Web development is easy. You can throw some HMTL/JavaScript on a page and *BAM* instant gratification. And usually it just works. You can use any browser anywhere to see your creation. That ease of use and quick results makes web development a lot more fun. That’s been a huge driver in the popularity of web applications. In some ways web development is development for the every-person. And people have absolutely flocked to develop for the web. It’s cross-platform, it’s fun, and its easy. So that’s where all the innovation has gone: straight into the web browser. And if you look at the past 5 years it’s hard to argue that letting more people develop has been bad. We’ve got some really fantastic web applications out there and we’ve changed the economy and the world in the process. That’s pretty powerful stuff.

So was the desktop medium the problem? Nope, it was just the development model. What if we could take the ease/cross-platform/fun development model of the web and provide desktop functionality? That’s exactly what rich Internet applications on the desktop are trying to do and that’s Adobe AIR’s goal. There are a lot of different approaches to the “new desktop” development model and they’re all good. But desktop development isn’t just about offline access or having a desktop shortcut. It’s about capturing the full experience of web development and providing the ability to create powerful, persistent, usable desktop applications. I want to see the same level of innovation that we saw in the browser now happen on the desktop because in the end, there is no arguing that the desktop is a more powerful platform than the web browser. It has more functionality and you can still take advantage of what makes the web so great. RIAs on the desktop just get rid of some of the problems with developing for the desktop. Go give it a shot. The desktop can be fun again.

File System Access for a Better Upload Experience

Tuesday, March 4th, 2008

I’ve been messing around with uploading video this week and it’s kind of a pain. For one thing, the file sizes seem huge, on the order of 50-150 megs. I’ve got decently fast broadband, but uploading still takes a bit of time (20-40 minutes) and I do a lot of things in my browser because I’m a hard-core multitasker. So I’m dealing with big file sizes and trying to upload them inside a browser window. It’s been a bad combination. My file will stop transferring, the browser has crashed a couple of times. It’s just a bad experience.

AIR is a great solution here. This isn’t just taking a web application offline, it’s helping the user. Having direct access to the filesystem makes the upload experience much, much better. For one thing, you aren’t dependent on the browser. Why wait 40 minutes to upload your file when you could be browsing around being (un)productive? Download crashes? Why not have an application that knows exactly how many bytes were uploaded so it can pick up where it left off? With AIR you can do all of this using web technologies so you don’t have to have any knowledge for building desktop applications. You can pretty quickly create an AIR app that ties back to your server, with code you’ve already written, tools you’re already using, and assets you’ve already got. Plus, it’s all cross platform.

As more and more people start doing higher and higher quality video, we need to get a better upload experience.

Cross-posted from my personal blog

Ars Techinca: Breathe in the Adobe AIR

Monday, March 3rd, 2008

Ars Technica has a very good review of AIR. They hit all of the main points and I think they have a good sense of what the goals with AIR are. We’re not trying to be the ultimate desktop platform right out of the box, but we are trying to make the desktop more accessible to web developers in a cross-platform, web-centric way. I think it’s a great start and as we grow the features of the platform, we’ll get closer and closer to the ultimate goal. If you have specific enhancement requests, we would love to hear them. Here’s the conclusion that Ars Techinca came to about AIR:

Our tests show that Adobe AIR is a relatively promising solution for RIA development, but it has some limitations that make it less flexible and scalable than alternatives. Those limitations may not be all that relevant in practice, however, because AIR is more than capable of meeting the needs of its target audience. Developers who attempt to stretch AIR beyond its core competencies will likely be disappointed with the results, but there is plenty of demand for the kind of applications that fit very neatly within the scope of its capabilities: developing site-specific browsers and creating simple desktop interfaces to remote web services.