Why I dropped out of Free Code Camp
I worked through Free Code Camp’s curriculum, contributed to its open-source codebase, then got a coding job much faster than I expected. These days I’m busy juggling being a dad, husband, and full time software engineer. So I’ve decided to drop out of Free Code Camp.
I arrived at Free Code Camp six months ago with a newfound seriousness. I was done merely dabbling in self-study. I was firmly committed to my goal of becoming an employable junior developer as quickly as possible.
I first started tinkering with code when I was in elementary school, sitting behind my family’s first computer: a Macintosh Centris 610. Hypercard was my casual intro to coding. A brief diversion into C++ scared me away from lower-level languages. Then I began making websites and fell in love with my first real text editor: BBEdit.
In middle school, I joined my school’s first-ever student webmaster team. And in the late 1990’s I was paid $500 to design a website for a nonprofit. I had gone pro.
After high school, life led me in what I thought was a more creative direction than coding. I studied abroad in South-East Asia. I went on to get a Bachelor’s degree in Theatre Arts from the University of Iowa.
I iterated through many callings: waiter, massage therapist, playwright, mask maker, photographer, podcaster, and published cookbook author. Most of these weren’t successful. Aside from the intensity of writing a book under a tight deadline, none of these paths challenged my brain like I craved. I became frustrated with my lack of purpose.
Through all of this, coding slowly crept back into my life. About three years ago, I started learning Ruby. But after more than six months of self-study, I felt more lost than when I began. I returned to Ruby off-and-on, but it never really stuck.
By this point I was a stay-at-home dad with my toddler son. I would often stay up late or rise early in order to cram as much self-study into my day as possible. My biggest challenge was not my lack of sleep, but my lack of structure.
When I’m accountable to someone, I feel I can accomplish anything. But when I’m completely independent, my plans tend to become scattered.
Finding Free Code Camp
I searched for structure in books, in long-form video tutorials, and in ad-hoc curriculum suggestions from blog posts. And then, in October 2014, I saw a tweet about a new community called Free Code Camp. I immediately signed up. I loved the structure and the concept of working on real projects with nonprofits.
But I continued to jump between my different programs and styles of structure. I rarely joined in on discussions in Free Code Camp’s chat rooms. I became an occasional Free Code Camp lurker.
Still, I had a strong desire to whip myself into legitimate developer shape. I knew I needed accountability. I forced myself to join discussions in Free Code Camp’s chat rooms.
Soon I discovered that some of the campers were volunteering by contributing to its open source codebase and nurturing its community. This was a great opportunity for me to participate with a purpose.
The late night discussions. The pair programming. These were the transformational moments, when I journeyed out of the darkness of independent study, and into the light of shared challenges.
I soon realized that I wasn’t alone in my struggles. What I’d previously thought were inadequacies in my own intelligence turned out to be common stumbling blocks that all people encounter when practicing the art and science of writing code.
Learning to code is a challenge. Everyone learns differently. What comes easy to one person may be difficult for another. But in aggregate, we all have knowledge to share. Each of us brings at least one experience or skill to the community — something that comes easy to us, and that we can then help others understand. And likewise, others will be there for us when we’re stuck beyond comprehension.
I seem to learn best through teaching others. So I jumped at the opportunity to design a bit of Free Code Camp’s curriculum. Specifically, I worked on some of the original Bonfires. Writing these algorithm challenges gave me a deeper understanding of the code behind them, which led me directly to the job that I have today.
Getting the job
Whenever possible, I attended local developer meetups. At one event, I ran into a friend whom I hadn’t seen in over a year. I shared my Free Code Camp experience with him. I told him that, after having designed some Bonfire algorithm challenges, testing was finally starting to make sense to me.
My friend told me he had a friend who worked for a company that was looking to hire a developer who could write automated tests.
That one chance encounter lead to a series of interviews. One week later, I found myself with a job offer. I was hired.
My 2015 goal was to become a working developer by the end of the year. Instead, I got a job in the first quarter.
My official title is Associate Software Engineer in Test. I work on a small remote team in Madison, Wisconsin, for a company called Interactive Intelligence. I code primarily in Angular.js, Node.js, and Protractor. The work is challenging and rewarding, and I get paid better than ever. Thus far, a career in code is everything that I had hoped it would be.
I’m surprised with how seamless the transition was from camper to worker. Could I have gotten a job without Free Code Camp? Eventually, sure. But Free Code Camp provided a far denser experience than in my roughly 24 previous years of dabbling in tech.
I haven’t quite regained my work/life equilibrium, or the time to contribute to Free Code Camp. But I am forever grateful to all my fellow campers who accelerated me in the right direction.
Oh, and that fear I had as a kid of being a programmer sitting behind a computer all days? It was completely unfounded.
For one, I love being behind a computer, and always have. Getting paid to do this is a huge perk. And second, I don’t sit, I stand. And I don’t just stand still, I am moving all day on a balance board while I type. But balance boards are a post for another day.
Until then, happy coding!