The Latest from Adobe Labs
Q: What are you doing to make rich Internet application (RIA) development easier? A: We have an open-source framework called Flex and tooling called Flex Builder that is based on Eclipse. We're also working on a new project that's code-named Thermo. And Thermo is a way to enable designers to build rich Internet applications. And this is something that hasn't been done before in terms of enabling designers to express themselves in building rich Internet apps. And that's what Thermo does. You can actually take illustrations of an application that you might do with Photoshop or Illustrator or Fireworks... And many rich Internet applications today are designed that way, where you have somebody concept the application using something like Photoshop and you give the illustration to a developer and ask them to please make one of these. And it usually doesn't come out exactly as the designer planned it. But the way you draw things and then code them today is a fragmented experience. So you can import assets into the development tools, but it doesn't really give you a big head start.Q: What's hot coming out of Adobe Labs? A: We're working on a bunch of areas. One is, in terms of expressiveness, we're continuing to push forward the ways you can express yourself, whether that be through media, on the Web or in print. Some of this is in CS4, but some of it is still being worked on. For example, resizing images. There's something called scene carving that is now incorporated into our tools. And that came from some research that was going on and shown a bit on labs. And that allows you to re-size an image. And that not just to make an image smaller, it will remove parts of the image that aren't as important as other parts. So you can re-size something and it will drop out some background scenery and keep the people in the picture. That's something we're starting to deploy, but there's still more research going on there. For example, we're looking at how we can apply that to video. There's another project in the area of image recognition -- can we help people to actually identify faces and scenes in a video, or the same with static photos in order to help people index those things better and search for them more easily. There's a lot of graphics and video research that goes on in Adobe. And we have a research group, called the Advanced Technology Lab, which works in conjunction with research in academia. Also in terms of the Web runtime there's research going on in performance and virtual machines, just-in-time compilers, etc. We've done some leading-edge work on that in a just-in-time compiler called Tamarin. We've deployed a just-in-time compiler in Flash Player 9 awhile ago and that was the first just-in-time compiler for Web scripting being deployed. And we're now seeing that technology being embraced by others. And that's going to make the Web programming model go further. We're contributing our work in an open way so others can advance it. We're working with Mozilla on that, for instance. That's incorporated in what they call Screaming Monkey. Another area we're doing research in is how we can better do hosted services. Q: Are you considering anything like Microsoft's Live Mesh? A: Well, what we're seeing is people using hosted services increasingly. And we're really betting on the Web. And that already has a great infrastructure for doing distributed computing and Web services. And so whether there's a need for an alternate way of doing that I'm not sure. But we're really focused on the Web programming model and not so much on OS-specific models.
So with Thermo we're enabling you to take your visual assets that you've drawn in a creative tool like Photoshop and you can actually select the items that you drew in Photoshop and you can turn them into interactive items just by clicking on an item and saying "make this a button" or "make this a scroll bar." And it will take the illustration and turn it into a working component. That's really incredible. And it's a huge innovation to enable designers to create the interactivity and the logic of the application by converting their artwork into components and then wiring them together. And you're able to connect those components through drag-and-drop. So without writing any code, you're able to create the interactivity of your application. Then underneath the covers there, Flex is being used to express all that content and the interactivity. So if you want to dive in and write code yourself or start working with the framework at the source level, you can. But it's really aimed at enabling designers without them having to even know about the code.