Story-Oriented Coding
In the flow of discussions on my Squeak blog and the Squeak-dev list dealing with issues relating to the tools for editing code I realized that the context was perhaps too constrained to really get to the heart of the matter. In the end, regardless of personal preference, screen real estate and the mechanics of human visualization/cognition are the real drivers of programmer tool effectivness. For the former, virtual desktops and multiple monitors can really help. For the latter I think tools that can mimic the visual models of what the software is attempting to simulate are very useful. For example, some people are using Google maps and 3D in the context of IBM’s collaborative development environment Jazz. More screen real estate helps visualization too. So with relatively inexpensive flat screens available and supported it’s getting easier to get this help. As someone on the Squeak list pointed out bookmarks in the IDE lose their value after a while because you have to manage them(this is true of keyboard short cuts as well) which means more tool code has to be written.
Multiple monitors and visualization are not a panacea but they do provide a lot of free, already written and debugged tools! These tools aren’t perfect but they generally don’t crash! Well, people do get sick and die, but in general, the software running our mind/body systems is very robust and stable. If I start looking/pointing to the wrong screen, I gracefully recover. For you Matrix fans, this is the “your other left” scenario. I sleep but I’ve never done a full system reboot! If I’m not sure what the best arrangement is I can put post-its on the monitors or notes on a whiteboard within view. This approach has been used for a very long time in complex systems where humans are in the loop. In the past half century aerospace and finance come to mind but the practice goes back much further to the art of memory and beyond to ancient Egypt. In the world of ubiquitous computing and locative art I call the meshverse, coding has to move beyond the text editor and even the traditional IDE - it will be come both visual and location oriented at the same time. Imagine a mash-up between the text adventure-like game playsh and Croquet annotations! I am at present working on the infrastructure for such an environment, bits and pieces of which you can see at my BOP Space and GVScript sites. Both of the previous two links are showing Squeak’s Wonderland but if you’ve been here before, you’ve seen earlier versions of the building blocks.