If you’re new to my posts, I’m a mathematics lecturer studying to transition into data science — with a particular interest in artificial general intelligence — and I’ve started keeping a roughly weekly blog on my progress. The last three weeks have been more about taking things as they came than crossing items off of my to-do list (though some items have been crossed off as well). I teach math at CSU East Bay, and some weeks — hello, midterms! — are busier than others.


In my previous post, I’d planned to do the following each week:
One lesson of the “Practical Deep Learning for Coders” course by fast.ai
One unit of “Statistics and Probability” on Khan Academy
0.5–1 sections of the “Python for Data Science and Machine Learning Bootcamp” by Jose Portilla on Udemy (some sections are brief, and others are full projects)
Read one deep or machine learning paper

The last three weeks have thrown some curveballs at me, though (two great! One not at all great!). First, I was accepted to attend the WiMLDS scikit-learn sprint, an event designed to increase the participation of women and gender minorities in open source, in this case, scikit-learn. I’d never done anything like this before, so I followed the recommendations for prep work prior to attending.

I began with the friendly-sounding Git for Ages 4 and Up. One might think such a video would be intended for total beginners, but a couple of minutes into the video the presenter says you’re actually supposed to already know all of this:

Git for Ages 4 and Up

Ahem. So I went back to the list of suggested Git resources, and did GitHub’s own tutorial first, followed by some of the excellent interactive tutorials on Learn Git Branching.

Approaching the day of the sprint, I almost considered backing out, because I was sure I didn’t have the background to be there. I had to keep reminding myself that my application had been completely honest about my background and progress so far with ML, and I’d been accepted, not even waitlisted, so I should probably accept the confidence of the organizers. I’m so glad I did, because while the day was a long series of me asking the wonderfully helpful TAs about seemingly every step of the process, I did submit a PR for a docstring documentation fix, and it was merged! An exciting first for me, and I’m deeply grateful to the WiMLDS team for making this event possible. I also met some fun and interesting people, including a Twitter friend.

Photo credit: Katarina Slama

The other exciting but unscheduled detour in my study plans was the opening of applications for the OpenAI Scholars program. I’ve been dying to participate in this since I first heard about it on an interview with Christine McLeavey Payne on the Chai Time Data Science podcast. I almost talked myself out of applying, though, because where the requirements had previously been practically a description of my background, the requirements had changed for the upcoming cohort and now asked for two years’ software engineering experience. I started learning Python in March, and quite a lot of what I’ve done since then has been coursework in Jupyter notebooks for the @deeplearningai Deep Learning Specialization on Coursera, and currently the fast.ai course, so I had barely six months’ programming experience, and very little of it outside Jupyter notebooks. I asked on Twitter whether I should apply anyway, and got the green light, so I spent several days working on my application (long-form answers to several questions).

And I made it to the second round of the process! That consisted of solving a timed math problem using Python on HackerRank, and I could barely even begin it. Without going into the details, there was a code snippet provided that didn’t seem to match the problem description, though possibly I would have been able to weather that if I’d had more experience going into it. Still, I was thrilled to have made it that far after only six months’ part-time studying.

Then the next day, I was hit with a virus that then swept through my family, and lost an entire week to recovery. The fatigue and weakness left me channeling my inner sloth.


Through these weeks, I did also complete the Probability unit for the Khan Academy stats course, brushing up on combinations and permutations. I also finished the Matplotlib section of the Python course, learning how to plot data in graphs.

Finally, I started working through Lesson 5 of the fast.ai course, and will have an update on that this week. No papers were read.

See you next week!