Update: I have since been accepted to the Master's in Artificial Intelligence program at UPC in Barcelona, and am currently completing the degree, which has changed my plans from that described below. I've kept the original post for my own historical continuity and for others thinking about taking the self taught route into AI. I've received a few inquiries why I ultimately chose to do a Master's degree, and my response is in the comments of this HackNews thread discussing this exact issue.
Artificial Intelligence seems like a drastically difficult discipline to master, but is a conventional degree a prerequisite for being an AI practitioner? This blog documents my attempt at a self-curated, self-taught and self-evaluated education in Artificial Intelligence.
I'm Cole MacLean, a classically trained Chemical Engineer from Calgary, Alberta, Canada.
I've been developing my Computer Science skills since 2009, where I made my first VBA program that colored Excel charts red or green dependent on the data's relationship with 0. Having saved myself 8 hours a week of brain-numbing mouse-clicking, I've developed an addiction to building fun and useful computer programs. I've since equipped myself with a foundational skillset in Python programming and recently graduated from Udacity's Data Analyst Nanodegree program. Having spent more effort in developing my CS skills then I ever have as a Chemical Engineer, it's time for me to start listening to what my actions and my gut have been trying to tell me. Having quit my job at an Oil and Gas company here in Calgary, I'm all-in on this adventure. I'm not sure what the ultimate result will be, but I'm super excited about making the jump to the path I'm now on.
About This Blog
This blog will be where I document my challenges and successes, along with the overall process of a self-curated online education in Artificial Intelligence. Mostly for my own benefit in tracking and historizing my progress, I hope that others will find tidbits of useful information as I document my journey.
This blog is split into 3 main sections representing the 3 main components of this self-education.
The Projects page displays blog posts about projects I'm working on to apply the skills I learn from online courses, and solidify my understanding of the concepts.
The Competitions page displays blog posts about kaggle competitions I enter and the techniques and models I develop for them.
My motivation for pursuing an education in Artificial Intelligence is rooted in the creative outlet that building computer programs provides. I've always been interested in the things computer programs can do, but care less about the actual code required to make it happen. Artificial Intelligence provides a new way of developing computer programs, by showing instead of telling a computer what you're desired result is. This new method of computer programming allows developers to focus on creative solutions instead of the details in line-by-line instruction writing, and opens the door to things we never thought possible. Instead of enumerating the near-infinite set of instructions required to drive a car, we can build a system to mimic the actions of human drivers. Instead of doctors spending valuable time studying MRI images, we can build machines to detect anomalies based on those identified by doctors in the past. The power that labeled and unlabeled based computer learning is currently unleashing is only beginning to be realized, and I'm excited to start being a part of unleashing that power.
Kaggle is an online competition platform, pitting Data Scientists against each other to solve real-world data science problems. Competitions are posted by institutions with a business need and often provide monetary prizes. Working through this self-education individually, it will be challenging to gauge the success of my development in AI. Using kaggle as a proxy to measure my advancement, I'll enter competitions and record my kaggle rank as I progress through online courses.
This might be the largest life decision I've yet made, so there are some apprehensions bubbling under my excitement.
Of my worries, I think this is really the only legitimate one. The social network that a job or a university provides is important to personal development, and taking the path I'm on might be a lonely one. I've thought of some potential mitigations to this worry, and with enough effort believe I can establish a social network to accompany me on this journey.
- Living in my hometown, I have access to my base family and friends support system
- This blog, where I reach out to the world. I've come to build a great respect for the community at HackNews, and will be posting each blog entry there for comments and feedback. Including this one! **Link Link Link **
- Project and Competition collaboration with colleagues I've met and hope to meet
- Calgary's makerspace: protospace for meetups, events and volunteer teaching
A potential worry that without the guaranteed value in a shiny piece of degree paper, my efforts might be a complete waste of time. Personally, this isn't a real worry for me. The worst that will happen is I spend ~18 months developing a skillset that I have a deep interest in but nobody else values and have to return to a career in Chemical Engineering. Also limiting my worry is my confidence in the effort I'm ready to put into this will leave me with the ability to build cool things that will have value.
I'm fortunate enough to have been employed and saved diligently over the last 4 years to allow me to pursue this path. And ultimately this should be cheaper then paying tuition at a formal institution. But with an estimated timeframe of 18 months, it could be a long time before my next paycheque. I've thought of some ideas to investigate that may help give me a longer runway.
- The obvious dream situation would be to win kaggle competition prize money to pay sustaining expenses, but I'm pretty realistic about this not happening
- Freelancing on sites like Guru or Freelancer
- Affiliate marketing off this blog, such as with Guru or Freelancer
- Accepting donations for open source projects I develop if I think they're of value
- Tutoring High School or University students in computer programming
My knee has been bouncing through the entirety of writing this post. There is a substantial amount of time and effort that has gone into this plan, and I'm ready to start executing it. I know it will be fun for me and I hope others join in.
The Coles Notes
I'm a Chemical Engineer turned computer programmer attempting to self-educate myself in Artificial Intelligence using online resources and kaggle competitions to assess my performance. I've quit my full-time job and am committed to transitioning my career path to AI. This blog will be documenting the journey, and I hope you'll enjoy following along.