Introduction who is Dag Rende?
-Dag grew up in a family of teachers which characterized Dagcorrect and pedagogical. Unlike his parents, Dag chose technology instead of humanism. However, he has always been interested in explaining difficult matters to others in a pedagogical way. Simple, clear, and understandable even if you are not a technician. o accomplish this, you need to create mental images of the information that you need to visualize. To support human perception, you try to find a visualization that helps people find a good association.
Why do software developers need visualization support in their work? They are trained to “only work in code” which is not very visualized, right?
-As a programmer, it’s easy to see things like pieces of code and functions. It is better to create mental images of the code to give a consensus when more than one developer are working on a common system. Modeling methods of various kinds have been aimed to support this, more or less efficiently. An example is UML (Unified Modeling Language) which has made it possible for programmers to obtain a consensus through a visual representation. Use a whiteboard, paper, computer or drawing tools, either way, a visualization will help you to understand the complexity of the system. However, you need to consider at what abstraction level it is meaningful to describe a system. If you make it too detailed, you are interfering in a negative way with the creative process of programming.
How long have there been different visualization tools?
-Man has used visualization for sharing information for thousands of years. When the computer made its entrance, it became easier and faster to create graphics. Sometimes it’s even a little bit too easy to generate visualizations, with the effect that not everything has been well thought-out.
Dag himself usually models a system part by part, starting with the important pieces, the main parts or complicated parts and how they are connected. One purpose is to gain insight during the process of visualizing the system but also to make it easier for others to get a common understanding.
If you develop visualization tools yourself, what do you need to consider?
-When entering a business that needs tool support for visualization, it is important to understand which graphical representations are established in the business in question. An economist has his own way of describing numbers. A journalist another. As a technician, you should not introduce new concepts, words or images that they are not accustomed to. An example is military support for budgets that Dag has developed earlier. The military needed to understand the implications of its budget. A tile representing the total budget which you interact with by drag-and-droplines that slices the tile in proportion to the budget was a representative way that they had similar experience from.
In what way have technology evolved for supporting the development of visualization tools?
-In our company, we have worked a lot with visualization of dependencies between all kind of information objects. By experience, dependencies are probably the single most important information that you need to visualize, regardless of context.
Another important factor to improve efficiency and effectiveness of development of a visualization toolat is to have end users using the tool under development so that the developers get quick feedback on how the tool works and is perceived.
What kind of visualization support should we hope for in the future?
-When it comes to a new context that you need to quickly understand, Dag has lacked an informative visual description of the structure and how the parts are interconnected. Some tool makers have tried but not fully made it all the way. . Such a tool would be extremely powerful in order to make people more productive faster and reduce the amount of errors and poor design solutions.
There are fewer manuals and other instructions produced nowadays. Good visualizations and intuitive interfaces should make it easy and obvious how to use tools. Another truth that has become clear to Dag over the years is that It’s harder to design things in a simple way instead of doing it ‘smart’ but complex. This might seem obvious as the UX/UI experience is growing among most developers but not so many have taken it to the same level for the code behind the application.
It should be easy for developers entering into an unknown software code to get acquainted and understand how to intercept changes or new functionality. So as a final conclusion; visualize everything, all from the business goals, operations, projects and further on down to the code that is supporting it all.