UIUC MCS - CS 416 Review - Data Visualization
Tags: uiuc, review, datavis
Published: 2023-09-05 01:56:22

---
title: UIUC MCS - CS 416 Review - Data Visualization
published: true
date: 2023-09-05 01:51:05 UTC
tags: #uiuc #review #datavis
canonical_url: https://blog.seancoughlin.me/uiuc-mcs-cs-416-review-data-visualization
---

Computer Science 416 covers computer graphics, psychology, and human perception.

## Overview

- **TLDR:** [416](https://courses.illinois.edu/schedule/terms/CS/416) is a fun, laid-back class with two major assignments, a midterm, and a final. I had fun and did not have to stress very much.

- **Difficulty:** Easy

- **Opinion:** Enjoyed

- **Weekly workload:** 5 hours

- **Semester:** Summer 2023

## Class Content

### Lecture Content

The course had weekly lectures. Topics included data types, human perception, psychology, integrating data into web pages, interactive visualization, narrative visualization, and declarative visualizations. There were one to two hours of lectures per week. The lectures could easily be watched at 1.5 speed if necessary.

I found the lectures to be a nice change of pace from many other computer science courses. They covered technical concepts but focused on humans and how to design for people. For example, there were a few videos on optical illusions. The optical illusions were used to introduce various quirks of the human eye and how to design visualizations that leveraged those human features.

### Assignments

Every week of the course had an associated quiz. The quizzes were all released ahead of schedule which made time management a breeze. Thankfully, each quiz could be taken as many times as desired, so this was a nice review and an easy class grade.

The class also had two major projects. The first was a visualization dashboard that you had to build with Tableau. The second was a narrative visualization website that had to be built with HTML/CSS/JavaScript and the D3 library.

For the first project, you were required to create a dashboard that synthesized multiple datasets, visualized at least two charts, and supported cross-filtering between the charts. Students could choose to visualize any dataset of their pleasure and the assignment parameters were fairly broad so you could get pretty creative with the implementation.

I know Tableau is incredibly common among data scientists and those working in analytical jobs. I work as a software engineer for my day-to-day job. My role does not require Tableau so the visualization dashboard project was my first introduction to the tool. I think this assignment was a good introduction and very approachable. I completed it over the course of two nights.

The second project was more involved. You were required to analyze some dataset, find a story in that data, then build a website using plain JavasScript with multiple pages telling that story, and finally write a report afterward describing everything. It was a lot. I still felt like it was a good project, but it took some serious effort to complete.

### Exams

The course had one midterm and a final. The exams were non-cumulative and relatively easy for multiple choice. Each exam was about 20 questions, proctored, and you had one hour to complete it.

Each exam was administered through ProctorU. ProctorU has always been a nemesis of mine, and this semester only got worse. We were forced to use a [Chromium](https://en.wikipedia.org/wiki/Chromium_(web_browser))-based browser called [Guardian](https://guardian.meazurelearning.com). Guardian is easily one of the worst pieces of software I've ever used. It frequently crashes, and I hate downloading that type of spyware to my machine. Unfortunately, there was no other way to take the exams.

Exams were quick and easy. I'm to the point in my educational career where I'm tired of studying and taking exams. I appreciate that this course emphasized the projects over the exams.

## My Takeaways

I think this class could be really useful for anyone interested in pursuing analyst or data science-type roles. This content feels fundamental and very relevant for those roles.

As a software engineer, I didn't find many takeaways that would be useful in my current job. However, I still had a really good time in this class. The assignments were well-constructed, the lectures were novel, and the projects were fairly useful.

If you're interested in a class that focuses on the softer side of computer science, I would highly recommend this course.

### Banner Credit

The banner was generated using the [**UIUC LinkedIn Banner Generator**](https://d7.cs.illinois.edu/projects/linkedin-banner-image/). It is an awesome tool if you need an Illinois-themed banner for anything.

### More Reviews

Check out [**uiucmcs.org**](http://uiucmcs.org) for more reviews of MCS courses. I don't know who maintains this site, but it's a good review collection from many semesters.

I have also written up a [**CS 427 review**](https://dev.to/scc33/uiuc-mcs-cs-427-review-software-engineering-3cbo), [**CS 435 review**](https://dev.to/scc33/uiuc-mcs-cs-435-review-cloud-computer-networking-58c5), and [CS 498 Cloud Computing review](https://dev.to/scc33/uiuc-mcs-cs-498-review-cloud-computing-applications-b6i).

---

Originally published at https://blog.seancoughlin.me.