Instructor: Bruce Donald Campbell

Faculty, Continuing Education - RISD
Providence, RI

Adjunct Faculty Computer Science Research, Brown University
Providence, RI

Email: bcampbel01@risd.edu

Prerequisites: None


Our information-saturated society is awash in data, but how do you give it useful form? This course provides an answer to students who build on their coding experience to develop a personal data acquisition process. This collection becomes a sustainable set of interest for use throughout the semester as they are given opportunities to investigate popular visualization libraries like Processing and D3.js. The class explores PHP and server-side JavaScript as middleware scripting languages for manipulating data, as well as JavaScript interaction features for exploring visual interfaces to data as a cognitive augmentation. A goal is to master the use of a relational database management system (RDBMS) like MySQL or PostgreSQL.


Class participation - 10%
Data Project - 30%
Visualization project - 60%





welcome and course overview

Course Overview

Data Visualization Pipelines
Relational Database Management Systems
Useful Data Manipulation Types
Data Visualization Techniques
Interactive Data Presentation
Dynamic Data Sources
Your Responsibilities in Class

  • Introduction
  • Course Objectives
  • Course Motivation
  • Obtaining Data
  • Our Development Process
  • Ideas Brainstorming Session
In class:
  • Set up a Relational Database Management System
  • Investigate Processing and D3
  • Walkthrough of Useful Examples


data processing and relational theory

Inputs and Outputs for data visualization

Data Quality Concerns

  • Three distinct roles involved in useful relational database management systems use:
    • Data Modeler
    • Database Administrator
    • Data Analyst
  • Consider roles associated with the Parts Tutorial
  • Free study time
In class:


managing data in an RDMS

  • Tables
  • Atributes
  • Queries
  • Management commands and activities
In class:
  • Practice our third day exercises.
  • Consider possible data sets of interest to you.
  • Review steps to set up a data back-end service.


data modeling

In class:


open data studio and critique

  • Useful Data Manipulations
  • Examples of formal querying of a database
In class:
  • Consider an interesting dataset I'm working on for us.
  • Map out a state machine for your visualization


data visualization strategies

  • Setting a narrative for analysis
  • The value of visualization in good story telling
  • Explore data visualization genres
  • Develop an internal dialogue regarding which genre to use in different scenarios
In class:


processing as a data vis language

  • Processing and the artistic mind
  • Examples of using processing for data vis
  • In-class step-by-step development example
In class:


the value of interactivity

  • Cognitive augmentation models
  • Investigating a train of thought
In class:
  • Warm up with the eighth day exercise.
  • Follow the steps to add interactivity to a static visualization


explicit goal-based data visualization

  • Useful processes of analysis
  • Examples of genres
In class:


dynamic data integration

  • Middleware systems for dynamic data management
In class:
  • Design front-end, middle, and back-end
  • Reasons to optimize in the back and middle
  • Examine PHP-based middleware templates


open project work studio

  • Sharing development and debugging strategies
  • Class Project Due Next Week
  • Feel good about your new skills


final projects critique

  • Putting our visualizations on a Web server