SPRING
2018

CLASS SYLLABUS

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

DESCRIPTION

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.

GRADING

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

RESOURCES

CLASS LINKS

WEEKLY OUTLINE

TOPIC1

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)

TOPIC2

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:

TOPIC3

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)

TOPIC4

analytical reasoning

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

TOPIC5

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

TOPIC6

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:

TOPIC7

Data representations
and transformations

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

TOPIC8

project 1 critique

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

TOPIC9

explicit goal-based data visualization

  • Introduction to COVE and CML (COVE Markup Language)
  • Examples of genres
  • Case study: M2 tides visualization
In class:

TOPIC10

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

TOPIC11

open project work studio

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

TOPIC12

final projects critique