Graphical IDE with Bubbles
I probably shouldn't confess it, but I'm not a big fan of WIMP (Windows, Icon, Mouse, Pointer) user interfaces. Just like I believe one programming language doesn't fit all problems, I'm also convinced that one UI paradigm isn't necessarily optimal for every situation either. Not that GUIs don't have their place. There are plenty of programs -- maybe even the majority -- that benefit from the typical GUI. But I still write code in emacs -- granted, emacs running on an X11 desktop, but still emacs.
I recently saw a video that may make me rethink that opinion -- at least for Java code. Code Bubbles, developed at Brown University appears to provide a GUI developer environment that looks genuinely useful. I say appears and looks because you can't download it yet, just watch a video of it being used. There is a sign up for participating in a beta, and I'm guessing they are overwhelmed with requests.
The basic idea is that functions (as well as notes, documentation, search results, bug reports, etc.) are presented in bubbles on a large virtual workspace. In addition, bubbles can be grouped and named and the IDE shows relationships between them and offers several novel ways to navigate through your code. Plan on having a big monitor (or monitors; they suggest 1920x1200). That's good too, in my opinion. Too often we develop software for the least common denominator without considering how to best support people who have more than the minimum.
Other features include a way to manage tasks and a way to collaborate with other users via e-mail. Code Bubbles also integrates with debuggers.
According to the authors, Code Bubbles is built on top of Eclipse, so all the autocomplete and tools you use with Eclipse today will still work with Code Bubbles. That implies that switching over (or even back to Eclipse) should be relatively painless for most developers.
I'm excited to put my hands on Code Bubbles. The video looks great but the hands on experience will tell the tale. If the GUI effects don't get in the way of the development through process it looks like it will be a real winner and hopefully influence other development environments for other languages.