Welcome to J4432, Advanced Data Journalism, for the fall semester of 2015. You can find a syllabus and schedule on the course website. The rest of the course materials will live in this repository.
Below is a list of the key software you'll need for class, along with some resources offering tips about how to get it installed. You'll receive in-class help getting everything up and running during the first couple weeks.
The main programming language we'll be using is Python. If you're using a Mac, you should already have it installed. If you're using a PC, you can install it using this self-installer.
Be sure you install Python 2.6 or 2.7, NOT Python 3.0
To make our lives easier, Python comes with two package management tools, which allow us to install new packages that extend Python's core functionality. You'll probably need some help getting these up and running, but here are some basic instructions:
On Windows: http://stackoverflow.com/questions/4750806/how-to-install-pip-on-windows
On OSX: easy_install should already be included. To install pip, simply type sudo easy_install pip
and enter your administrative password.
Once you install pip, you'll easily be able to install the various Python packages we'll use in class using the command pip install LIBRARY-NAME
. If you're on a Mac, be aware that you may have to use the slightly different command sudo pip install LIBRARY-NAME
, and then enter your system password, in order to install the software as a superuser.
Libraries we'll be using include:
- BeautifulSoup for web scraping (
pip install BeautifulSoup
) - Mechanize, also for web scraping (
pip install mechanize
) - Flask for web development (
pip install Flask
)
There will be others. You should use the setup time early in the semester to get comfortable with installing packages in genral, so you can continue to add them as the class requires.
Github is the most popular service most open source programmers use to store and share their code. We'll also be using it to turn in assignments. You'll need to both install git on your local machine and sign up for a free account on Github.
Instructions on getting started can be found here: https://help.github.com/articles/set-up-git
A good text editor and command-line terminal can make your life a whole lot easier. I'd recommend SublimeText 2 for your text editor, and (if you're on a Mac) iTerm2 for your terminal. You'll see me use both in class.
E-mail is the best way of getting in touch with me. Unless things are crazy or I'm out of town, I'll usually respond within a day: [email protected]