Safari Books Online is a digital library providing on-demand subscription access to thousands of learning resources.
If you are a Web developer, then you have probably been having a bit of a panic lately. It isn't that things are changing — change is the bread and butter of Web developers. It's that everything is changing! There are so many new things to learn, it's difficult to focus on which ones are the most important or even the most interesting. There are tools such as Flex, ActionScript 3, AJAX, Ruby on Rails, Cairngorm, PureMVC, Papervision, Silverlight, and JavaFX. Then there are APIs opening up everywhere — Flickr, Twitter, Google Maps, Last.fm — the list goes on and on. It's definitely enough to make your head spin.
Now something different is thrown into the mix — now you are able to create a desktop application. Why exactly would you want to do this? There are several things that a desktop application can do that a browser application cannot, but the most important difference is that a desktop application can read files from and write files to the file system. This may sound like a minor difference, but consider all the desktop applications you use regularly, and reasons why you prefer to have them running locally and storing data locally. Offline modes are essential; you can't always be connected to the Internet (not yet anyway). Speed is also an important difference — disk read/write is a bit faster than upload and download. Another important reason is privacy.