I’m a visual learner 1. I use mind-maps to break down complex ideas, I draw on the whiteboard to understand complex systems, I prefer bulleted lists to long emails and I love to use color coding to help with categorization.
That’s why I was blown away by Mike Bostock’s recent blog post about visualizing algorithms:
Algorithms are a fascinating use case for visualization. To visualize an algorithm, we don’t merely fit data to a chart; there is no primary dataset. Instead there are logical rules that describe behavior. This may be why algorithm visualizations are so unusual, as designers experiment with novel forms to better communicate. This is reason enough to study them.
But algorithms are also a reminder that visualization is more than a tool for finding patterns in data. Visualization leverages the human visual system to augment human intellect: we can use it to better understand these important abstract processes, and perhaps other things, too.
As a side note, I really love D3.js – check it out if you’re looking for a versatile library to represent data (static and dynamic datasets, including transitions). It’s more advanced than your typical charting library, but the applications are endless, as you can judge from the examples page.
Tobias van Schneider, Spotify’s design lead, talks about the importance of side projects and how to make the most of them.
The core of the idea is to keep them simple and stupid for as long as possible, otherwise you tend to overcomplicate them and nothing gets done.
I use them as a vehicle for learning and starting new things at work and I currently have about 3 going on in parallel (2 based on the Arduino platform, one building on top of Spark).
success also comes in the form of learning new things, meeting the right people, feeling personally fulfilled, he says. You don’t know what will happen next. Perhaps your side project will lead you to your next job, your spouse, or a sustainable living that gives you the freedom to keep exploring.
Why Side Projects Should Be Stupid