I'm glad you're here, and I hope you're too! In this workshop, you will discover some basics of data visualization as well as getting your hands dirty on a few examples. By the end of the workshop you should get a better understanding of what data is, how to retrieve it and display it.
For this workshop, we'll use Processing, a neat programming language, easy of access and with a big designer and maker community. Our aim is to up your skills in Processing, to get you some experience with a few visualization processes, a sense of data and a desire to explore and create some more. We hope you will enjoy your stay here!
While you will find a clear guideline in this workshop to help you through the path, the emphasis here is on creation, your creation. Please, don't be afraid to get out of the beaten track: experiment on what you've learned, find specific data set you want to visualize, find a message you want to express and let it guide you. That's the main aim of the design part of the workshop. Don't be in a rush to finish the material, you can always come back to it later, it's meant to stay online.
Some fundamental advices for beginner programmers (you might want to come back here if you have issues):
- Get your hands dirty. You'll only learn if you write and run some code. Each piece of code shared has some meaning, would that be for educational purpose, or just to show some neat visualisation. Run them all, and don't hesitate to tweak them, push them forward and explore both your sensibility and what you can do with it.
- Understand what you're doing. You need to understand each line of your code, especially in this workshop since we'll probably reuse them and make you modify them short after. If you're not 100% you understand, reread the course. Maybe try the next paragraph. Ask a fellow student, a coach, search online... Anything, but don't continue if you don't understand.
- Understand what you're doing! It's fundamental to understand the grammar of your lines of code, but it's as important to understand its meaning and place/role in your code. You're coding your line at a specific place, it has a specific role. Understand that role. Not only of your line but also of your group of lines so that a structure of your code emerge. Sometimes you'll be asked to replace some code, it'll be up to you to understand what to replace.
- Don't copy paste. While it might seem as a quick way to advance the material, you will learn less. The more you will write, the more you will remember. And even better, whenever there are number used, try to tweak them, modify them a bit, see what happens.
- Regularly clean your code. It's easy to get lost, even more when you're discovering something new. Cleaning your code means getting rid (or commenting) unused part of the code, so you don't surcharge your code and wonder where is that specific part you're looking for. It means too organising it, so you can infer better meaning from it. And last, the graphic structure. Don't forget to indent (put space at the start of the line) when you enter a new block of code, it eases both the reading and the spotting of bugs.
- Learn how to search out the answer when you're stuck. You are part of a group during the workshop, you can always ask the other students and especially the coaches. While that's true, trying to find out by yourself answers is a definitely good skill to acquire. You can search the Processing reference page, tutorials, forums or even post a question online yourself (knowing how to post a good question would need its own tutorial too...). If you're not sure how to look by yourself, or prefer to have the help of someone, be sure to ask around, we're here for that and we don't want any student to stay stuck on an issue. What is most important is to appreciate the workshop!
One of the strength of Processing is in its export functions. You can take screenshots, GIFs or videos of your project. You can too export your project as JavaScript code so it can run online. And you can too export to Android to have a smartphone app. While desktop apps, android apps and webpages behave differently, you'll see that you don't have much to change in your code to export to such different medium. During the workshop we will address such export (if not in this version, then in next one...).
Now that we get to know each other, let's dive into the course itself.