Sundry notes and code bits for Stanford's Programming in Journalism class (winter quarter 2020).
- Syllabus
- Assignments
- Bookshelf - recommended books, tutorials, cheatsheets, etc.
- Code solutions - A private repo containing solutions to class exercises.
- Datakit - overview and details on install and usage
- Getting Help - Resources and strategies for finding help.
- Glossary - technical terms used in class
- Python - overview, tutorials, etc.
- Technical setup and FAQ - recommended and required software (all free)
- Workflow advice - working on the command line, etc.
- Overview of the course and syllabus.
- Discuss the history of code and data analysis in journalism.
- Dip our toes into Bash.
- Software install party (w00t!!)
- Assignment 0 - Tech setup; Unix practice and reading (Due: Mon. Jan 13th)
- The Owl, Problem Solving, and the Unix Workbench
- Group problem-solving exercise: Program your way to the Oval
- Hands-on bash practice with CLI murder mystery and bashcrawl
- Software installs, part deux (ssh keys and Python)
- Assignment 0 - Tech setup; Unix practice and reading (Due: Mon. Jan 13th)
- Bash drill
- Wrap up csvkit exercise from Power Tools for Data Wrangling
- Automating workflows and DataKit install
- Assignment 1 - Python ramp-up and Failed Banks shell script (Due: Wed. Jan. 22nd)
No class.
- Workflow Advice - In particular, working in the shell and with a code editor.
- Getting Help - How to ask G.O.O.D. questions and other advice/resources on getting help when programming.
- DataKit overview, including details on virtual environments, the benefits of git/GitHub, and daily workflow with DataKit.
- Submit Assignment 1 using DataKit.
- Assignment 2 - DataKit reading and Python lists and dicts (Due: Mon. Jan. 27th @ 1:30pm)
- Python intro and applying the basics
- Python overview and coding contexts
- The (i)Python interactive interpreter:
pip install ipython
- Embracing errors
- Counting and filtering
- Reading and writing text files
- Assignment 3 - Python strings and Awesome Animals coding exercise (Due: Wed. Jan. 29th @ 1:30pm)
- Review Assignment 1 solutions, assuming everyone has submitted and time allows
- Working with libraries - standard library and 3rd-party libraries
- Reading and writing CSVs
- Downloading files
- Assignment 4 - Python functions and failed banks Python script (Due: Mon. Feb. 3rd @ 1:30pm)