Course description
As digital technologies permeate more and more aspects of our daily lives, data plays an increasingly large role in all kinds of academic disciplines. From the (digital) humanities to business analytics, and from engineering to the social sciences, we all try to create insights from ever larger, more complex datasets. Interactive data visualization is a very powerful way of both generating and communicating such insights, yet it requires a unique combination of knowledge and skills not often included in conventional curricula.
This course teaches students the concepts, skills and techniques of online, interactive data visualization and map-making. In doing so, it covers both the modern web development workflow and Javascript programming. These fundamental programming tools and techniques are mastered in an applied context of designing and building interactive visualizations. Apart from a foundational understanding of the building blocks of the modern web (HTML, CSS, Javascript), students learn to build visualizations using industry-standard Javascript libraries through a series of practical hands-on assignments and projects. The course keeps a focus on the entire iterative design workflow throughout the semester and culminates in a project in which a sequence of prototypes leads to a final online, interactive data visualization. This final project allows students – individually, or in small groups – to apply the skills and knowledge gained in this course to the context of their own academic discipline, research interests, or even another VIU course.
The subject is focused on the iterative visualization design workflow and thus, as students gain an increasing understanding of concepts and proficiency with techniques, each week yields an increasingly complex and sophisticated visualization design product. In addition, relevant visualizations from different disciplines will be reviewed and discussed each week. This is an essential part of the design process that prepares students for their own iterative workflow of proposing and prototyping a data visualization product during the final project.
The first half of the semester will mainly focus on building a thorough understanding of fundamental programming concepts and techniques as they relate to data visualization. In doing so, students will learn and apply their knowledge in practical exercises built around exploring the visualizations and themes of the African-American sociologist Du Bois’ contribution to the 1900 Paris Exhibition. The second half of the course builds on these foundations to cover more advanced visualization techniques and methods. In this part of the course, students will work together to collect their own data in public spaces in Venice and build a series of visualizations to gain insight into the usage of public space in the city.
It should be noted that no special equipment or software is necessary for this course. Students will be able to complete the entire course by using a web browser.
Pre-start Virtual Component
Before the physical class starts, two synchronous online meetings will be organized. During the first meeting, the instructor will briefly outline the structure and goals of the course after which we will dive directly into a collaborative HTML coding exercise (supported by the online coding platform Codesandbox, which enables Google Docs-like simultaneous editing). The goal of this coding exercise is two-fold: (1) get students already familiar with some of the basic programming building blocks and each other; and (2) show students how programming can be fun and creative and overcome any potential pre-conceived anxiety they might have about this. This latter point is important as, in my experience, students from non-technical disciplines often have (unjustified) preconceptions about ‘not being able to code’, similar to math-related anxieties. The virtual component is designed to show students coding can be fun and useful in any academic discipline. They will finish the coding exercise in small groups offline before the second meeting. In the second meeting, we will
(1) discuss and compare results of the exercise; and (2) students will be asked to bring a visualization from their field of study (or general interest) to the class and we will discuss why & how each of these visualizations is interesting/useful/pleasing/etc. This second exercise will help lay the groundwork of the idea that visualization has broad applicability across many domains.
Learning objectives
- Understand and apply the theoretical foundation of information visualization
- Identify and explain the different technologies that make interactive data visualizations and maps possible
- Evaluate and use modern web standards in order to build online maps and visualizations
- Compare and apply advanced visualization techniques based on their appropriateness for specific data types and research questions
- Design, assess and build an online, interactive visualization that allows the user to gain insight from a specific data set
Teaching and evaluation methods
This course is structured around three 3-hour classes per week that integrate lecture, (group) discussion and in-class activities and exercises in an interactive manner. Generally, the following recipe is used: the instructor will briefly outline the day’s agenda and provide a short 20-minute lecture on a key topic. After this short lecture, students discuss the topic together, apply it in an activity or do a computer exercise until a ‘natural’ (pre-designed by the instructor) challenging point is reached. At this point, this challenge will be discussed with the class as a whole, and potentially the next topic will be introduced, after which the students will interact and apply the concept hands-on again, and so on.
To facilitate learning outside of the classroom, a chat forum (such as Teams or Slack) will be used by the students and the instructor to ask questions, discuss challenges, and share results.
There will be a variety of assessments throughout the semester. Emphasis is on a student’s performance overall, with relatively low weight placed on individual items.
Assessment method
Class Participation: 15% (throughout term)
Assignments (three): 45% (throughout term)
Final Project: 40%
Assignments. Each week consists of a series of exercises (to be worked on both in-class and outside of class) that culminate in an assignment and a small report that will be graded and feedback provided. The final fourth week does not have an assignment so the focus can be moved to the final project.
Final project. For the final project, students will work individually or in small groups to develop a visualization project. At the end of week 2, students will hand in a project proposal, a working prototype will be due at the end of week 3, with the final project orally presented and due at the end of week 4.
Bibliography
The course will use a course text with exercises created by the instructor, made available as a website. In addition, the course will draw on the following book for the theory behind information visualization:
Munzner, Tamara. 2014. Visualization Analysis and Design. CRC Press.
The data collection and visualization exercises in the second half of the course draw on the following book, but this is not required reading:
Whyte, William H. 2001. The Social Life of Small Urban Spaces. 8th ed. edition. Project for Public Spaces.
Required preliminary knowledge
This course requires no preliminary knowledge and builds up any necessary programming language from the ground-up. The instructor has extensive experience teaching a version of this course, and other courses like it, to students of varying disciplinary backgrounds and technical skill levels. Students that already have some programming experience can do more challenging versions of the exercises and, after the first 2-3 classes, any large pre-existing differences in knowledge between students are generally leveled.