-
Software Development Skills For Data Scientists
- Writing modular, reusable code
- Documenting / Commenting
- Version Control - Git
- Testing
- Logging
I will give myself the whole 2016-Q4 to work on this goal. It seems like a long time, but effectively, I have only 8 weeks left (as of 2016-10-08) because of Open, Thanksgiving, and Christmas.
Timeframe: Efficiency parity by end of October. One contribution to Airpy by Mid November. One ongoing big project touching different stacks in Python by the end of 2016.
- Week of 8/8 - 8/14: Start watching Stanford CS 41
- Week of 8/15 - 8/20: Finished Stanford CS 41 + started Data School Pandas videos
- Week of 8/21 - 8/28: Detour to watch Tom Augspurgur's Pydata video
- Week of 8/29 - 9/4: Birthday week
- Week of 9/5 - 9/11: Start reading Idiomatic Python + Finished Data School Pandas videos series
- Week of 9/12 - 9/18: Start reading "Python Data Analysis" by Wes Mckinney
- Week of 9/19 - 9/25: Start practicing Python on the job (calculating cohort size from lead ranking)
- Week of 9/26 - 10/2: Continue to practice Python on the job (variable transformation model) + Data School Machine Learning videos. This is one of the best examples of learning on the job with Python.
- Week of 10/3 - 10/9: Built a simple data visualization of demand index using Python's Bokeh library + Finished Data School ML videos
- Week of 10/10 - 10/16: Continue to play with Bokeh, made slider (interactivity) worked, and made animation of world demand viz worked. A bit reading on command line in Python
- Week of 10/17 - 10/23: Practice with writing a simple Python parser for excel to get event annotation. Made timeseries and interactivity worked. Started reading Python OOP articles
- Week of 10/24 - 10/30: Simeon Franklin's OOP class - first part
- Week of 10/31 - 11/4: Simeon Franklin's OOP class - second part (less useful)
- Week of 11/7 - 11/11: BIDS video on OOP + Coursera's Introduction to DS in Python Class + Chris Albon's notes + Heroku Deployment of Airbnb-open-data-viz app
- Week of 11/14 - 11/18: (Airbnb Open - Half week) Start building First Stage Model for LTV project in Python + Pandas Plotting Documentation + BIDS: Scipy Pandas + Scientific Workflow in Python (both are marginally helpful)
- Week of 11/21 - 11/25: (Thanksgiving - Half week) On the Job learning for scikit-learn (pipeline, learning curve) + BIDS matplotlib review + Data School: writing pythonic code + Test Driven Development for Scientist blog post
- Week of 11/28 - 12/2: BIDS Ipython notebook, BIDS functions/modules, BIDS: advanced string, BIDS testing driven development, Jeff Knupp's Unit Testing, Software Carpentry on Testing with Python
- Week of 12/5 - 12/9: BIDS Numpy, BIDS Advanced Interaction, Simeon Franklin's higher order function, Jeff Knupp's "improve your python series": yield/generator, decorator, drastically improve python understanding of execution code, loop like a native (really good)
- Week of 12/12 - 12/16: During the weekend (12/9), add more newer topics (logging, command-line tool, and building packages) for 2017. No active learning for this week, but wrap up by reviewing materials for a blog post