Repository for ITP Fall 2015 Course
JavaScript HTML CSS Processing Java LiveScript
Latest commit 75871cd Nov 4, 2016 @shiffman more redirects
Permalink
Failed to load latest commit information.
_layouts oops wrong layout name Sep 21, 2016
feedback Update index.html Oct 19, 2015
javascripts notes on regex and examples Sep 28, 2015
stylesheets working on notes about closures Nov 3, 2015
week1 Update notes.md Sep 21, 2016
week10 chrome extension notes Nov 25, 2015
week11 more redirects Nov 4, 2016
week2 Update notes.md Sep 21, 2016
week3 Update notes.md Sep 21, 2016
week4 redirect Oct 20, 2016
week5 more redirects Oct 1, 2016
week7 redirects Oct 20, 2016
week8 redirect Oct 28, 2016
week9 redirects Oct 20, 2016
.gitignore more example cleanup and fixes Nov 10, 2015
README.md syllabus updates Nov 30, 2015
index.html week 11 notes in progress Nov 29, 2015

README.md

Programming from A to Z, Fall 2015

This course focuses on programming strategies and techniques behind procedural analysis and generation of text-based data. We'll explore topics ranging from evaluating text according to its statistical properties to the automated production of text with probabilistic methods to text visualization. Students will learn server-side and client-side JavaScript programming and develop projects that can be shared and interacted with online. There will be weekly homework assignments as well as a final project.

Info

Mailing List

Week 1 - Intro

Week 2 -- Strings and DOM

Week 3 - Regular Expressions

  • Notes
  • Notes on callbacks in a loop
  • Homework Assignment: Regular Expression Exercise
  • Project 1 (due week 6): Use a text input source (user input, raw text file, API/data source) to generate an output presented back to the user in the browser. Possibilities include data visualization of text data, generative text maker, etc. We'll discuss details in class.
  • Review OOP in JS
  • Regular Expressions
    • meta-characters
      • position
      • single character
      • quantifiers
      • character classes
    • Regex in sublime text
    • Regex in JS: test(), search(), match(), exec()
    • Splitting with regex: split()
    • Replace with regex: replace()
    • randexp.js

Week 4 - Data/API Workshop

Week 5 - Text Analysis Workshop

  • Notes and examples
  • In class, we'll build a simple concordance together as well as demonstrate and discuss TF/IDF and Bayesian analysis.
  • Simple Concordance
  • TF/IDF
  • Bayesian Analysis

Week 6 - Show text analysis projects

Week 7 - Text Generation: Markov chains

  • Using google sheets for text input
  • Object "prototypes"
  • ngrams and markov chains
  • Homework Assignment

Week 8 - Text Generation: Grammars

Week 9 - Twitter Bots

Week 10 - More Bots + Chrome Extensions

Week 11 - Final Project Proposals part 1

Week 12 - Final Project Proposals part 2

Week 13 - User Testing

Week 14 - Final Presentations

References and Inspiration

Tools

JS reference books

Learning / Intro

Tools

Requirements

  • You are required to attend all class meetings and submit all weekly assignments and a final project.
  • Grading (pass/fail) will be based on a combination of factors:
    • Attendance, participation in class discussion, and engagement in other students' projects (25%)
    • Quality of assignments (50%)
    • Final Project (25%)