|InfoVis.net>Magazine>message nº 25||Published 2001-01-15|
|También disponible en Español|
The digital magazine of InfoVis.net
Traditionally programming has consisted basically of writing the instructions in a programming language using a text editor, compiling the program and executing it with the help of a debugger to find errors, and then restarting the cycle again until a satisfactory result is obtained.
Nowadays things haven't changed much. Even the programming languages that carry the word "Visual" use a textual interface. Where more visual elements have been introduced is in the user interface programming, for example with Microsoft's Visual Basic Â
Nevertheless the many experiences and developments that have been taking place in the research centres, like the animated visualization of the execution of programs or the representation of instructions by 3D elements haven't yet arrived to the daily practice. See for example an interesting list of online articles in the University of Geneva or the interesting page of the GVU Centre of the Georgia Tech.
On the other hand, many systems have millions of lines of code written by dozens of different programmers. Such systems are very difficult to comprehend in their entirety, what makes them excellent candidates for visualization, as in them it's interesting to find patterns of complexity, or of error occurrence, for example, that allow you to take decisions on what parts to modify or which ones present more trouble.
An example of this is the Seesoft developed by the Bell Labs to visualise software. It stands on four basic ideas:
These types of systems allow you to identify patterns in the programs and to have a global overview of the statistics of our interest. For example you can easily see which files are older, which ones are the most problematic or what lines are the most executed.
For several years the programming environments have included visualizers of the data structures and editors that identify the keywords of the language presenting them in specific colours. These techniques will continue to be introduced slowly in the programming tools of the future, making this complex task more user friendly.
Links of this issue:
Subscribe to the free newsletter