Learning to Hack – Part 1: Preparing for Bitmaker Labs

Kerry Mui is a student participating in the March cohort of the Web Development Immersive program. This article was originally posted on his blog. It is Part One of his series documenting the Bitmaker Labs experience.

A few weeks ago I was accepted to Bitmaker Labs, a 9-week web development bootcamp in Toronto. I’m chronicling my journey from the initial decision of making a career change to the end of the program. This post focuses on why I chose to become a web developer, why Bitmaker Labs, and my preparation leading up to the program.
* *

Why I made a career change

This story begins almost a decade ago.

I was still figuring out what I wanted to do while in school. I graduated from university with undergraduate degrees in health sciences and business administration. The program’s cultures were vastly different, but the material was interesting and my peers were bright. Both programs were great in developing clearly identified career paths – for health sciences: graduate school for healthcare clinician training; for business administration: finance, consulting, accounting, or marketing. The important thing was that a student left with a clear path and technical skills. Too bad I didn’t fit the mold. Oops.

As most people will say, I left school with stronger critical thinking abilities, exposure to career possibilities, and improved writing skills. These skills are transferrable, but I missed an opportunity by not developing a marketable, technical skill. This was missing from my toolbox.

Over the past 3 years, I’ve honed my project management skills working as a marketer and supporting launch campaigns (business-to-business, business-to-consumer) across North America, and select global markets. As a project manager, you’re guiding technical specialists to deliver projects on time, budget, and scope. Again, it’s a transferable skill, but isn’t a technical skill until more senior levels (e.g PMP certification).

So, the biggest factor driving my decision to become a web developer was to finally gain a technical skill (bonus: I’m super excited to learn this skill). I believe programming makes me more valuable in the workforce since I can combine it with the great transferrable ones I’ve developed. Personally, I’m excited to implement ideas into real programs. There’s a satisfaction in working towards mastering a craft.

**

Why I applied for Bitmaker Labs**

I needed guidance.

I jumped into learning about web development full force after deciding my career change. I scoured online resources on teaching myself how to code. The amount of information available was daunting. Where to start? There were free and paid resources: books, courses, tutorials. Here’s the items I worked on over the first month:

  • Completed Codeacademy’s HTML and CSS course & projects
  • Began Udacity’s Introduction to Computer Science course on a friend’s recommendation. Stopped after 1/3 of the lessons, since I was uncertain I wanted to focus on Python.
  • Started Codeacademy’s JavaScript course to continue my front-end development learning. Stopped after I discovered The Odin Project.
  • Began The Odin Project’s curriculum to become a full stack Ruby developer. This site is the best resource I found since it consolidates free, high-quality online material. Continued working away at this.
  • Concurrently, I researched various books on web development. I contemplated whether I should use books as my primary resource, or continue with The Odin Project.
    I was veering from one source to another in search of the right path. A lot of resources looked good…until I discovered a new one. Was the new resource better? Should I switch resources and restart? I had taught myself some basics, but when would I qualify as a programmer?

Looking back, it’s easy to see I needed more planning. At the same time, it’s hard to see which resource had the best plan. This frustration drove me to start considering a structured learning environment.

I researched web development boootcamps in the U.S. and Canada. In the U.S., I looked at programs like App Academy and Hacker School. I wasn’t ready to make the commitment to move and work in the U.S. This left me thinking about local programs. I heard of Bitmaker Labs since a few schoolmates were involved with founding the program. I was convinced after speaking with friends who knew of the program and provided positive feedback.

**

Preparing for Bitmaker Labs**

It was challenging.

After being accepted, Bitmaker Labs provides a month-long pre-work course to make sure you’re prepared for the first day of class. This course covers the basics of most topics in the program: Unix, Ruby, HTML/CSS, and Git. The program curriculum can be found here.

Fortunately, I had covered a lot of the material through my previous work. My big gap was learning the Ruby basics. Bitmaker Labs emphasizes this section as the most important. It was also the most challenging.

Specifically, a big part of the Ruby pre-work is completing the Codeacademy course. I found the exercises started easily, but I didn’t retain certain concepts since it was moving quickly. Often, I wished there were more in-depth explanations and examples (Google-fu skills are critical here, along with StackOverflow and YouTube). I needed a more formal studying pattern, instead of just completing exercises, halfway through this course.

The best thing I did was restart the course and start taking notes of major concepts along the way. The notes were screenshots of examples from online resources. They became invaluable as I progressed to more difficult concepts; I could quickly pull up my notes as a reference when I needed to apply the concept. The repetition of re-reading notes and applying concepts in different scenarios really let the basic concepts sink in.

The next best thing I did was review the challenging course material a 2nd time. This time it was more of a check to see if I remembered a concept. If I forgot, I would read over my notes and practice an exercise. I know memorizing is not as important as understanding, but there’s definitely repetition required with the basics of any new material.

The problem I faced was that the course learning curve became steeper, which required me to change my approach. Thankfully, Bitmaker Labs was always accessible by offering time either on-site or via Skype to go through any material I had questions about. This was beneficial when I needed clarity on specific concepts.

I’m excited to meet my classmates and start Bitmaker Labs next week. It’s going to be an intense, satisfying ride. I’ll continue to post updates of my experience.

By Kerry Mui (@kmui)