*created & maintained by @clarecorthell, founding partner of Luminant Data Science Consulting*

## The Open-Source Data Science Masters

The open-source curriculum for learning Data Science. Foundational in both theory and technologies, the OSDSM breaks down the core competencies necessary to making use of data.

### Contents

### The Internet is Your Oyster

With Coursera, ebooks, Stack Overflow, and GitHub -- all free and open -- how can you afford not to take advantage of an open source education?

### The Motivation

We need more Data Scientists.

...by 2018 the United States will experience a shortage of 190,000 skilled data scientists, and 1.5 million managers and analysts capable of reaping actionable insights from the big data deluge.

-- McKinsey Report Highlights the Impending Data Scientist Shortage 23 July 2013

There are little to no Data Scientists with 5 years experience, because the job simply did not exist.

-- David Hardtke "How To Hire A Data Scientist" 13 Nov 2012

### An Academic Shortfall

Classic academic conduits aren't providing Data Scientists -- this talent gap will be closed differently.

Academic credentials are important but not necessary for high-quality data science.The core aptitudes – curiosity, intellectual agility, statistical fluency, research stamina, scientific rigor, skeptical nature – that distinguish the best data scientists are widely distributed throughout the population.

We’re likely to see more uncredentialed, inexperienced individuals try their hands at data science,

bootstrapping their skills on the open-source ecosystem and using the diversity of modeling tools available.Just as data-science platforms and tools are proliferating through the magic of open source, big data’s data-scientist pool will as well.

And there’s yet another trend that will alleviate any talent gap: the democratization of data science. While I agree wholeheartedly with Raden’s statement that “the crème-de-la-crème of data scientists will fill roles in academia, technology vendors, Wall Street, research and government,” I think he’s understating the extent to which

autodidacts – the self-taught, uncredentialed, data-passionate people – will come to play a significant role in many organizations’ data science initiatives.

-- James Kobielus, Closing the Talent Gap 17 Jan 2013

### Ready?

## The Open Source Data Science Curriculum

Start here.

**Intro to Data Science** / UW Videos

*Topics:*Python NLP on Twitter API, Distributed Computing Paradigm, MapReduce/Hadoop & Pig Script, SQL/NoSQL, Relational Algebra, Experiment design, Statistics, Graphs, Amazon EC2, Visualization.

**Data Science** / Harvard Videos & Course

*Topics:*Data wrangling, data management, exploratory data analysis to generate hypotheses and intuition, prediction based on statistical methods such as regression and classification, communication of results through visualization, stories, and summaries.

**Data Science with Open Source Tools** Book `$27`

*Topics:*Visualizing Data, Estimation, Models from Scaling Arguments, Arguments from Probability Models, What you Really Need to Know about Classical Statistics, Data Mining, Clustering, PCA, Map/Reduce, Predictive Analytics*Example Code in:*R, Python, Sage, C, Gnu Scientific Library

### A Note About Direction

This is an introduction geared toward those with at least **a minimum understanding of programming**, and (perhaps obviously) an interest in the components of Data Science (like statistics and distributed computing).
Out of personal preference and need for focus, I geared the original curriculum toward **Python tools and resources**. R resources can be found here.

### Ethics in Machine Intelligence

Human impact is a first-class concern when building machine intelligence technology. When we build products, we deduce patterns and then reinforce them in the world. Ethics in any Engineering concerns understanding the sociotechnological impact of the products and services we are bringing to bear in the human world -- and whether they are reinforcing a future we all want to live in.

### Math

**Linear Algebra & Programming**

- Linear Algebra Khan Academy / Videos
- Linear Algebra / Levandosky Stanford / Book
`$10`

- Linear Programming (Math 407) University of Washington / Course
- The Manga Guide to Linear Algebra Book
`$19`

- An Intuitive Guide to Linear Algebra Better Explained / Article
- A Programmer's Intuition for Matrix Multiplication Better Explained / Article
- Vector Calculus: Understanding the Cross Product Better Explained / Article
- Vector Calculus: Understanding the Dot Product Better Explained / Article

**Convex Optimization**

- Convex Optimization / Boyd Stanford / Lectures / Book

**Statistics**

- Stats in a Nutshell Book
`$29`

- Think Stats: Probability and Statistics for Programmers Digital & Book
`$25`

- Think Bayes Digital & Book
`$25`

**Differential Equations & Calculus**

- Differential Equations in Data Science Python Tutorial

**Problem Solving**

- Problem-Solving Heuristics "How To Solve It" Polya / Book
`$10`

### Computing

Get your environment up and running with the Data Science Toolbox

**Algorithms**

- Algorithms Design & Analysis I Stanford / Coursera
- Algorithm Design, Kleinberg & Tardos Book
`$125`

**Distributed Computing Paradigms**

- *See Intro to Data Science UW / Lectures on MapReduce
- Intro to Hadoop and MapReduce Cloudera / Udacity Course *includes select free excerpts of Hadoop: The Definitive Guide Book
`$29`

**Databases**

- Introduction to Databases Stanford / Online Course
- SQL School Mode Analytics / Tutorials
- SQL Tutorials SQLZOO / Tutorials

**Data Mining**

- Mining Massive Data Sets / Stanford Coursera & Digital & Book
`$58`

- Mining The Social Web Book
`$30`

- Introduction to Information Retrieval / Stanford Digital & Book
`$56`

**Data Design**

How does the real world get translated into data? How should one structure that data to make it understandable and usable? Extends beyond database design to usability of schemas and models.

*OSDSM Specialization: Web Scraping & Crawling*

**Machine Learning**

*Foundational & Theoretical*

- Machine Learning Ng Stanford / Coursera & Stanford CS 229
- A Course in Machine Learning UMD / Digital Book
- The Elements of Statistical Learning / Stanford Digital & Book
`$80`

& Study Group - Machine Learning Caltech / Edx

*Practical*

- Programming Collective Intelligence Book
`$27`

- Machine Learning for Hackers ipynb / digital book
- Intro to scikit-learn, SciPy2013 youtube tutorials

**Probabilistic Modeling**

- Probabilistic Programming and Bayesian Methods for Hackers Github / Tutorials
- Probabilistic Graphical Models Stanford / Coursera

**Deep Learning (Neural Networks)**

- Neural Networks Andrej Karpathy / Python Walkthrough
- Neural Networks U Toronto / Coursera
- Deep Learning for Natural Language Processing CS224d Stanford

**Social Network & Graph Analysis**

- Social and Economic Networks: Models and Analysis / Stanford / Coursera
- Social Network Analysis for Startups Book
`$22`

**Natural Language Processing**

- From Languages to Information / Stanford CS147 Materials
- NLP with Python (NLTK library) Digital, Book
`$36`

- How to Write a Spelling Correcter / Norvig (Tutorial)[http://norvig.com/spell-correct.html]

### Data Analysis

One of the "unteachable" skills of data science is an intuition for analysis. What constitutes valuable, achievable, and well-designed analysis is extremely dependent on context and ends at hand.

- Big Data Analysis with Twitter UC Berkeley / Lectures
- Exploratory Data Analysis Tukey / Book
`$81`

**in Python**

- Data Analysis in Python Tutorial
- Python for Data Analysis Book
`$24`

- An Example Data Science Process ipynb

### Data Communication and Design

**Visualization**

*Data Visualization and Communication*

- The Truthful Art: Data, Charts, and Maps for Communication Cairo / Book
`$21`

*Theoretical Design of Information*

- Envisioning Information Tufte / Book
`$36`

- The Visual Display of Quantitative Information Tufte / Book
`$27`

*Applied Design of Information*

- Information Dashboard Design: Displaying Data for At-a-Glance Monitoring Stephen Few / Book
`$29`

*Theoretical Courses / Design & Visualization*

- Data Visualization University of Washington / Slides & Resources
- Berkeley's Viz Class UC Berkeley / Course Docs
- Rice University's Data Viz class Rice University / Slides

*Practical Visualization Resources*

- D3 Library / Scott Murray Blog / Tutorials
- Interactive Data Visualization for the Web / Scott Murray Online Book & Book
`$26`

*OSDSM Specialization: Data Journalism*

**Python** (Learning)

- Learn Python the Hard Way Digital & Book
`$23`

- Python Class / Google
- Think Python Digital & Book
`$34`

**Python** (Libraries)

Installing Basic Packages Python, virtualenv, NumPy, SciPy, matplotlib and IPython & Using Python Scientifically

Command Line Install Script for Scientific Python Packages

- numpy Tutorial / Stanford CS231N
- Pandas Cookbook (data structure library)

*More Libraries can be found in the "awesome machine learning" repo & in related specializations*

**Data Structures & Analysis Packages**

- Flexible and powerful data analysis / manipulation library with labeled data structures objects, statistical functions, etc pandas & Tutorials Python for Data Analysis / Book

**Machine Learning Packages**

- scikit-learn - Tools for Data Mining & Analysis

**Networks Packages**

- networkx - Network Modeling & Viz

**Statistical Packages**

- PyMC - Bayesian Inference & Markov Chain Monte Carlo sampling toolkit
- Statsmodels - Python module that allows users to explore data, estimate statistical models, and perform statistical tests
- PyMVPA - Multivariate Pattern Analysis in Python

**Natural Language Processing & Understanding**

- NLTK - Natural Language Toolkit
- Gensim - Python library for topic modeling, document indexing and similarity retrieval with large corpora. Target audience is the natural language processing (NLP) and information retrieval (IR) community.

**Data APIs**

- twython - Python wrapper for the Twitter API

**Visualization Packages**

- matplotlib - well-integrated with analysis and data manipulation packages like numpy and pandas
- Seaborn - a high-level statistical visualization package built on top of matplotlib

**iPython Data Science Notebooks**

- Data Science in IPython Notebooks (Linear Regression, Logistic Regression, Random Forests, K-Means Clustering)
- A Gallery of Interesting IPython Notebooks - Pandas for Data Analysis

#### here

Datasets are now#### here

R resources are now### Data Science as a Profession

- Doing Data Science: Straight Talk from the Frontline O'Reilly / Book
`$25`

- The Data Science Handbook: Advice and Insights from 25 Amazing Data Scientists Book
`$22`

### Capstone Project

- Capstone Analysis of Your Own Design; Quora's Idea Compendium
- Healthcare Twitter Analysis Coursolve & UW Data Science
- Analyze your LinkedIn Network Generate & Download Adjacency Matrix

### Resources

#### Read

- DataTau - The "Hacker News" of Data Science
- Wikipedia - The free encyclopedia
- The Signal and The Noise - Nate Silver
`$15`

- Bestseller Pop Sci - Zipfian Academy's List of Resources
- A Software Engineer's Guide to Getting Started with Data Science
- Data Scientist Interviews / Metamarkets
- /r/MachineLearning

#### Watch & Listen

- The Life of a Data Scientist / Josh Wills
- The Talking Machines - Podcast about Machine Learning
- What Data Science Is / Hilary Mason

#### Learn

- Metacademy - Search for a concept you want to learn
- Coursera - Online university courses
- Wolfram Alpha - The smart number and info cruncher
- Khan Academy - High quality, free learning videos

### Notation

Non-Open-Source books, courses, and resources are noted with `$`

.

## Contribute

Please Contribute -- **this is Open Source!**