Top 10 software innovations of 2004

Sometimes a certain piece of software is just so cool and saves you so much type that it deserves some praise heaped upon its developers. So here are the Top 10 software innovations of 2004, as I see it anyway.

10. Connect 2nd monitor via the Network
Yeah, you can buy the second video card for your PC and crowd another monitor onto your desk. But why, you already have a laptop. Maxivista software allows you to attach the 2nd (and 3rd) monitor, that belongs to another PC, via the LAN. See the demo on their web site - it's pretty incredible.

9. Map24
This is no simple mapping site. Type in the address and watch the sparks. It downloads a client-side Java app (which lives in the browser). The fluidity of zooming is quite amazing. All the data is downloaded from the server on the fly. The performance was quite amazing. This should put to rest all the speculations about JVM being too slow.

8. Open Office 1.1 - Print to PDF, Flash
This is probably not an innovation, it's a damn export filter, but it is just so darn useful. My employer doesn't want to shell out for full Adobe Acrobat, so OO 1.1 is the easiest and cheapest way to convert MS Office docs to PDF. Why MS Office doesn't have this? I have no idea, seems like a no-brainer to me. And Open Office also converts presentations to Flash - never tried it though.

7. CodeRush for Visual Studio .NET
Bottom line is that this product is one smart cookie. It will help you type less and that's one hell of a feature. Basically it knows the context of your code, and based on that, helps you reduce the amount of keystrokes you type. For instance, you can type a common c# line like using System.Windows.Forms; by typing: uswf. Get it? First letter of each word. Very cool. They have tons more tricks like this. It is worth pointing out that this product was available for Delphi in the years past in one form or another.

6. Visual Studio 2005/C#/VB.NET/IDE/Framework 2.0
Ok, this product is not out yet, but there have been quite a few betas. VS2005 totally raises the bar on software development. There is so much IDE eye candy I don't know where to begin. The release completely "eclipses" Eclipse, blows by VS2003, VB6 and C# Builder. To start, there are debug visualizers, code expansions (think CodeRush), refactoring, partial classes, generics, code tracking, team system, anonymous methods for c# (finally), faster startup, return of VB6 features (zero-impact projects, edit & continue), registry-less COM objects, xcopy & click-once deployment, etc… So it is not just one feature - it is the sum of them that makes this list.

5. Gmail - Client side web app.
The UI doesn't look the greatest, but what is cool is that nearly the entire interface is written in client-side JavaScript. Consequently, there are very few server-side calls making it very snappy. I normally use Thunderbird for email and Gmail actually loads faster. Add to that innovative features such as inline reply and you got a great app. On top of that Gmail is responsible for Hotmail and Yahoo Mail upping their web mail quotas from measly 2 mb to 250.

4. Keyhole - Satellite imagery
I have yet to find a practical application for satellite imagery, but it is just a lot of fun to check out various places around the world, hotbeds, such as Baghdad and Faluja, the scroll over active volcanoes like Mount St. Helens and just plain compare the size of your swimming pool to that of your neighbor. The satellite imagery is overlayed with a standard map to provide a very good sense of where you are. In addition, you can rotate maps, pan then, look at your neighborhood at an angle. And finally, if you are stalking someone, you shouldn't be without this fantastic tool.

3. Google Desktop
Ok, most likely you are the computer guru of your family. How many time has someone called you: "Please help me find a document, I don't know where I saved it". For bonus, they sometimes don't remember the document's name. Then you proceed to agonizingly walk them through the directory tree, you know the drill. So have you ever wondered why the collective wisdom of the human kind accumulated over thousands of years can be searched on Google under a second, and the computer that is sitting in front of you takes minutes? Well, no more. Google Desktop will find the document by its name, by its contents, it'll find emails and all that. My only complaint is that they should open the API so that I can build plugins that let's Google Desktop search for other file types.
Finally, it is gratifying to know that the brains at Google are building on an idea I implemented 3 years ago: a QuickSearch file searching utility, that indexes the files into a small database and then makes the search really, really, really fast.

2. Microsoft Office System 2003 - Research Sidebar/Pane
It is wonderful to know that you have so many tools at your disposal. Using a series of (I am guessing here) web services, Microsoft Office can translate words, phrases and documents to and from a bunch of languages, find synonyms, antonyms, give you a dictionary lookup, etc… In addition, it fixes a long-standing pet-pieve of mine: find word docs that have a certain word in it. It was possible to do this type of search before, but now it is really easy.

And the #1 software innovation - Mozilla Firefox - Find as you type.
Once you "get" it, you won't accept any other methods of searching text, particularly IE's search feature (Ctrl+F3). Just start typing and the browser will locate the words for you. You can fine tune the feature to your liking by making it search for either links only or text and links both. This feature was available in late 2003 (when Firefox was known as Firebird) as well, but it has now nicely matured and just feels natural.