Instructor: Bruce Donald Campbell

Faculty, Web Design + Interactivity - RISD
Providence, RI

Adjunct Faculty Computer Science (research), Brown University
Providence, RI

Email: bcampbel01@risd.edu
Web: http://bdcampbell.net

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
Visual Analytics
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
  • Base map generation from ASCII GRD file (Narragansett Bay)


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:


Color theory and seeing color

  • Tables
  • Attributes
  • Queries
  • Management commands and activities
In class:
  • managing data in an RDMS
  • Consider possible data sets of interest to you.
  • Exercise: Color gradients — how many can you sense (blue v. green)


analytical reasoning

In class:
  • Visual representations: vector fields — showing 3-D on 2-D
  • Analytical reasoning game


data modeling

  • Useful Data Manipulations
  • Examples of formal querying of a database
In class:
  • Consider an interesting dataset that I'm working on for us.
  • Creating a data model for a climate change analysis


interactive 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:


Data representations
and transformations

  • The processing language and the artistic mind
  • Examples of using processing for data vis
In class:


project 1 critique

  • Cognitive augmentation models
  • Investigating a train of thought
In class:
  • Follow the steps to add interactivity to a static visualization


explicit goal-based data visualization

  • Introduction to COVE and CML (COVE Markup Language)
  • Examples of genres
  • Case study: M2 tides visualization
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
  • Production, presentation, and dissemination
  • Putting our visualizations on a Web server


open project work studio

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


final projects critique