23 Visualization a More Intuitive Way of Communication

23 Visualization: A More Intuitive Way of Communication #

As a programmer, in this era of rapid technological development, the only way for us to avoid being left behind by the times is to constantly learn. How do you keep up with the pace of technology development?

In my personal experience, I pay attention to some technology websites, with InfoQ being the most typical one. This way, I can quickly understand the trends in technology development, such as when a new thing is released, when a project has a major update, and what new application scenarios certain technologies have, and so on.

In addition, I have another way to systematically acquire new knowledge: ThoughtWorks Technology Radar. The reason I like this approach is because it is “visualized”.

What is a Technology Radar? #

ThoughtWorks Technology Radar is a technology trends report written by the ThoughtWorks Technology Advisory Board, released every six months. Due to the diverse range of projects at ThoughtWorks, it is able to identify many technology trends. Therefore, compared to other industry prediction reports, the Technology Radar is more specific and actionable.

ThoughtWorks is my ex-employer, so I have been exposed to the Technology Radar early on. In 2013, I started discussing microservices and experimenting with Docker in projects, and all of this information came from the Technology Radar. However, I would like to discuss with you not how excellent the Technology Radar is, but rather, show you the visual form of organizing knowledge that the Technology Radar represents. -

(Picture Source: ThoughtWorks Technology Radar)

The Technology Radar is used to track technologies. In radar terms, each technology is represented as a “blip,” which is a dot on the radar.

These blips are organized by two classification elements: quadrant and ring. The quadrant represents a category for each blip, currently consisting of four categories: techniques, platforms, tools, and languages & frameworks.

The ring represents the phase of the technology’s adoption lifecycle. Currently, this lifecycle consists of four stages: Adopt, Trial, Assess, and Hold.

After each Technology Radar release, I always pay special attention to the “Adopt” and “Hold” categories.

“Adopt” indicates a strong recommendation. I will compare these recommendations with my own real-world applications. For example, in the November 2018 Technology Radar, Event Storming was placed in the “Adopt” category. If you are not familiar with Event Storming, I highly recommend clicking the link to learn more.

“Hold” indicates that new projects should not use this technology anymore. This serves as a reminder for me that there may be better alternatives to this technology. For example, Maven, the most common build tool in the Java world, has been placed in the “Hold” category early on. However, even today, many people still choose Maven for new projects, mostly because they are not aware of technology trends.

Based on the trends over the past few years, the recommendations made in the “Adopt” and “Hold” categories by the Technology Radar are mostly reliable.

As for the “Trial” and “Assess” categories, when I have time, I will slowly read through them because they mostly contain experiments with emerging technologies, mainly to broaden my perspective.

Radar charts are a great way to organize knowledge. They allow you to see and understand all knowledge points at a glance and decide whether to delve deeper based on your needs.

Therefore, my former colleagues used this format and created a reading radar for programmers, organizing the books that programmers should read. - -(Picture Source: ThoughtWorks Reading Radar)

In fact, this visual way of organizing content is very useful, and ThoughtWorks encourages every organization to establish its own knowledge radar. They even provide a tool to help you build the radar chart.

In my opinion, radar charts are not only applicable to organizations but also to teams.

I have also organized the technologies used by my team in the form of a radar chart. The most important technologies that need to be understood are placed in the inner ring, such as a Java project. I would require the programmers to have a good understanding of Java. The technologies gradually expand outward, representing the knowledge that you will gradually encounter while working in the team, such as knowledge related to deployment, like Docker. As for the outermost layer, it represents the technologies that we have abandoned, such as Maven.

In this way, team members can have a clearer understanding of the technologies used in the team. When a new person joins the team, this radar chart can help them quickly grasp the key points, and their learning path is from the inner ring to the outer ring. So, I also recommend building your own team’s Technology Radar.

Building Your Own Radar - Library for Building Your Own Radar

Have you ever wondered why the form of a radar chart can help you better understand knowledge? It’s because the human brain is better at processing images.

Advantages of Visualization #

In ancient times, the human brain mainly processed images, such as where there were new fruits or where dangerous animals appeared. Text, on the other hand, only came into existence much later. Nowadays, it is commonly said that around 3500 BC, many civilizations just began to develop writing systems, which is almost insignificant compared to human history.

In terms of brain evolution, the speed of processing images is much faster than processing text, hence the saying “a picture is worth a thousand words”.

Visualization is the process of communicating information through the creation of images, icons, or animations. There are many different types of visualization, with the most common ones being data visualization and information visualization.

In my article “Can your work be measured with numbers”, I mentioned that the first thing I do when I go to work is “look” at numbers, which is a typical data visualization. The technology radar I introduced earlier belongs to information visualization.

Many software developers are used to communicating with text and often need to write various documents during the software development process. However, not all scenarios are suitable for text as a means of communication, so many people have tried to apply visualization in the software development process.

The most familiar way of expressing information for most programmers is probably through flowcharts. If you have done software design, you may have heard of UML (Unified Modeling Language). When used properly, this approach can greatly improve the accuracy of expression and reduce the threshold for others to understand.

In daily work, the most familiar form of visualization is probably drawing diagrams on paper or a whiteboard. From my experience, many people draw these diagrams too casually. If you are one of them, I have a suggestion for you: write first and then draw the frames, so that the diagram will appear neater.

What is Kanban? #

Let’s take a look at another practice that applies “visualization” in work: Kanban.

Kanban is a project management tool that visualizes our ongoing work. This practice comes from Lean Production. Earlier, when I talked about Lean Entrepreneurship, I introduced the management concept of “Lean” from Toyota. The concept of Lean is already very popular in the software industry, and many software development practices are derived from Lean, and Kanban is one of them.

Kanban is the kind of practice that you can tell how to use it with just a glance. It divides work into several different stages, and then, breaks down the work into cards and places them in different stages according to their current status. If you have adopted the user story we talked about in our previous column, then each user story is a card.

In actual work, whenever a task is completed, it can be moved to the next stage. How a task is considered completed is determined by the Definition of Done (DoD) mentioned earlier.

Of course, to use Kanban well, you can also use some tips. For example, use cards of different colors to represent different types of work or assign avatars to each person to add some fun.

Kanban can help you quickly identify many problems. For example, if there are 5 people in your team but 8 ongoing tasks, there must be a problem. Because multitasking by one person does not yield good results. Using Lean terminology, we should limit WIP (Work-In-Progress). Furthermore, if there are more cards awaiting development, it means that the bottleneck is in the development phase rather than other stages.

There is also an interesting detail in using Kanban: whether to use a physical board or an electronic board. The physical board is easy to understand - you simply create the Kanban board on a wall. Nowadays, many companies specialize in collaborative office software, and they use the Kanban concept for project management, which is where the electronic board comes from.

Regarding this point, let me also give you my suggestion. If your team works together in the same location, consider using a physical board, unless your office space is really small. Because it can be easily adjusted, it can also serve as a meeting place, and it allows others to see your work or issues. The biggest advantage of doing this is enhancing interpersonal interaction.

The advantage of an electronic board is that it can be accessed anywhere, data won’t be lost, and it’s easy to analyze, etc., but it is still a bit cumbersome to have to specifically open a computer each time you want to access it. One way to combine the two is to use a large television specifically for displaying the electronic board.

In summary, Kanban is about showcasing the work in front of everyone.

Summary #

I have introduced you to a structured way of learning new knowledge called the “Technology Radar.”

The Technology Radar is a way of organizing technology information. It categorizes technologies into “quadrants” and “rings,” allowing people to visually see and understand the development stage of different technologies.

Radar charts are not only useful for organizing technology, but also for organizing other information, such as a “reading radar.” Every company can use radar charts to organize all their technologies, and each team can use radar charts to organize the technologies they use. This makes it easier for team members to understand and learn technologies in a structured way, and also facilitates the learning process for newcomers.

Radar charts are essentially a visualization method. The human brain processes images faster, making visualization an effective way to improve communication. Most software processes rely heavily on textual expressions and are not fully utilizing visualization. However, there are some methods that utilize visualization, such as flowcharts and UML diagrams.

Finally, I introduced you to a practice of using visualization for communication: Kanban. Kanban divides work into different stages and represents them as columns on a board. Each task is represented by a card that is moved to the next stage upon completion.

Kanban can help you discover many issues, such as whether the current progress is appropriate, whether someone is handling too many tasks at once, or identifying bottlenecks in the current work.

If there is only one thing you remember from today’s content, please remember: Try to communicate using visualization methods more often.

Lastly, I would like you to consider the following question: In your work, what are some scenarios where you have used visualization methods to solve communication problems? Feel free to share your thoughts in the comments.

Thank you for reading, and if you found this article helpful, please feel free to share it with your friends.