How Crafting Code Can Change Your Life
This March 2020, I received an invitation letter from the MIT Sloan School of Management, Boston, MA, to be a Visiting Graduate Student. While Covid19 currently prevents me to relocate to Boston, I started remotely from May 1, 2020. How did I get this amazing opportunity?
The Motivation - Start with Python.
Rewind to February 2019, I had no coding experience, did not know what machine learning was, and thought of it as very nerdy. So why dealing with Python, Docker, Github, you name it?
Photo by Christopher Gower on Unsplash
- Well, my flatmate at the time had this great idea to start a personal project and asked me, if I could help him with the Python code to set up an Internet-of-Things infrastructure, and I was foolish enough to say: sure, why not.
- Secondly, by the time, I was working as a business analyst and constantly producing PowerPoint slides while observing the works of IT professionals, or read about the perks and environments in tech companies which just impressed me.
- Lastly, at my role I had to collaborate with feature team leads (product owners) and they would tell me a lot of different issues each day. Often, it seemed very plausible but quite a lot I had the idea that they were not entirely sincere.
These circumstances made me look for different learning platforms but I never managed to start. Until this one day when I finally took a free trial and told myself to do a few courses.
Learning Path
To learn how to code or write programs, I followed a path of online ‘private’ courses, university-style lectures, and then getting my hands dirty on projects. On such a path, you can find so much more learning material, hence, it is advisable to strictly follow one trajectory for the minimum of a month, and then to assess your progress. I followed my outlined path while having a full-time job in a bank, and a social life (with a girlfriend, friends, and loads of sport). So it works ;).
Photo by Justin Kauffman on Unsplash
Online ‘private’ courses (February - April 2019)
It was intuitive to start with structured learning paths in the form of instructional videos. Particularly, the platform TeamTreeHouse kept me very engaged. You have to pay a little monthly contribution but for that you get a constant mix of short instructional videos, followed by exercises or quizzes to replicate what you have just learned. Such a set-up can be very funny, and motivational as you are exposed to constant feedback. Soon, you kind of start to feel quite nerdy as your little projects start to work, and you start laughing about the instructors’ jokes . I subscribed to this platform for three months, and worked through the following courses:
- Basics of Python and a simple career track to get an idea of coding.
- Advanced Python that were additional libraries and concepts that made me dive into data science and machine learning.
- Introductory courses to other systems/languages like Github, Docker, Markdown, etc.
While this training may sometimes also be frustrating, just try to remember that a search query on www.google.com will be your best friend to find solutions if something does not work. A friend and professional developer once told me: ‘I feel like I know nothing when it comes to coding but I am very very good at googling for solutions’; I now understand so well what he meant.
Fast.ai (May + June 2019)
After having some basic knowledge about different data types, and concepts like inheritance, broadcasting, or list comprehensions gathered on Teamtreehouse, I found this amazing deep learning platform fast.ai. While the author Jeremy Howard recommends to have one year of coding experience, I thought my three months may just be enough. With my positive self-perception, I started looking into completely free lectures and became very happy to realise that I, indeed, understood almost everything. You may follow these lectures. They are very nicely as Jeremy focuses on showing you live demonstrations first, and only moves into theory recursively which really renders it hands-on and exciting:
- Part 1: Practical Deep Learning for Coders
- Part 2: Deep Learning from the Foundations
- Natural Language Processing
Going through state-of-the-art deep learning applications, really drove my spirit up because as architectures like neural networks with reinforcement learning structures may count as the most complex setups in the world, it was just so intuitive how the fast.ai - team would explain them. Thanks again!
Starting Projects inspired by Monetizing Machine Learning (Summer 2019)
Then in summer 2019, it was time to get an own project live. I found quite an interesting book named Monetizing Machine Learning that would particularly focus on getting ML projects out. By illustrating how to practically apply different concepts for web startups with very little need for financial resources, you get all the tools you need to make money and constantly improve. These are:
- User management & Paywalls
- A/B-Testing & Attribution Tracking
- Model Deployment & Serverless Infrastructures
Equipped with these competencies, I started a blog duerr.se, and a project based on a deep neural network infrastructure provided through the API of Huggingface.co (thanks to you guys, too!) which you can find here bonmot.co.
My vision to Become a Professional in Deep Learning - Demanding for Study Leave (Autumn 2019)
After adopting all these new skills by following my learning path, I asked my employer to take a year of ‘study leave’ to pursue my wish to become professional in machine learning. Additionally, I reached out to Peter Gloor from MIT Sloan School of Management, and introduced him to my skills and plans, showed him few of my projects, and asked him whether I can support him for a year while attending classes at an elite US research facility. He agreed.
Photo by Tracy Adams on Unsplash
The next Steps (May 2020 - April 2021)
Now, I find myself in professionalizing my service offer of Bonmot.co, consequently, extend my skills on the useful platform DataCamp, and by being a machine learning apprentice with Peter Gloor for the project Plant Emotions who works at the MIT in Boston.