Faculty Forum: 2018-02-08

Homer White

The New Minor

The Minor

http://gccs.surge.sh

  • Basic Programming (CSC 115, 215)
  • Data Analysis (CSC 303, CSC 405)
  • Web Design (CSC 324: continues ART 323, supplements ART 370)

Who Might Care

  • Biology: minimize suffering in T-Griff labs
    • 115, 303
  • Soc Sc, Humanities: data-analysis complexification of major
    • 115, 303, 405
  • Grad School: computing side-skill
    • 115, 215, 303, 405
  • Web: web design hobby, blogger, complements Graphic Design
    • 115, 324
  • Full Minor: data vis practitioner, general geek
    • 115, 215, 303, ART 323, 324, 405

Misc Larger Lessons

A Few Giants

“If I have seen further it is by standing on the shoulders of Giants.”

—Isaac Newton (in a letter to Robert Hooke)

Many Midgets

Mathematicians stand on each others’ shoulders and computer scientists stand on each others’ toes.

—Richard Hamming

It’s all about figuring out how to set up an environment in which many people can collaborate freely but efficiently.

Giants in the Background (Mathy)

Mathematicians, logicians, philosophers ask:

  • What tasks can a perform? (Logic, Automata Theory)
  • For a given performable task, how might it be performed quickly or efficiently? (Algorithms, Computational Complexity)

Not considered in the minor.

Giants in the Background (Administrative)

Computer Scientists (proper) ask:

  • How should we organize information?
  • How can we manage complexity?

Convention

  • how one names variables
  • how one organizes files into directories
  • how one asks for help
  • how one frames an answer

Regard for Others

Discovering the good conventions and adhering to them does not obviate your own individuality/creativity. It’s a way of showing regard for others.

Regard for Onself

At any given moment in a big project, your most important collaborators are:

  • you, a few months ago;
  • you, a few months from now.

How This Works Out

Interactive Data Visualizations

  • “data journalism”
  • becoming common in data analysis reporting

Typical example:

The Changing American Diet, by Nathan Yau.

Problem: For even simple visualizations, you need to know a lot about web design!

Solution

Build tools that link the data analysts programming language to the JavaScript libraries that enable the visualizations.

In R, the linking tool is the package htmlwidgets.

A Toy Example: Exploding Boxplots

The R Code

bpexploder(m111survey,
           settings = list(
             yVar = "fastest",
             groupVar = "seat",
             levelLabels = c("front", "middle", "back"),
             yAxisLabel = "speed (mph)",
             tipText = list(
               fastest = "speed",
               sex = "sex"
             ),
             relativeWidth = 0.75,
             referenceId = "r2"
           ))

Other Themes

  • collaboration
  • computer code as free cultural gift

See this at work in the bpexploder package:

https://homerhanumat.github.io/bpexploder