Committing to things has always been a challenge for me. Talk to anyone that knows me, and they’ll tell you that I have always had big dreams, but never saw things through to completion. Sound familiar?
For me, coding was always something I said I would do, but it was hard to remain consistent. Eventually, I talked myself into thinking that if I ever wanted to achieve my goal of becoming a dev, I would need the strict regimen that school offers to get there. I enrolled in the computer science program at my local community college, and am currently close to my Associate’s degree. Going back to school gave me a great framework and on occasion helped combat impostor syndrome.
However, despite doing things the traditional way, something was missing. While school was teaching me the computer science foundations, things were moving entirely too slow for someone eager to change careers. While reading blog posts and articles on how get a job in this new field, a common theme was beginning to appear: College grads sometimes do not know how to code when they graduate.
Suddenly, a strong urge not sit back and rest on a degree took hold. Self-taught was back on the menu, and for a good reason. While school was giving me the foundations and routine I need, teaching myself to code would be a perfect compliment.
However, with school and a full time job, finding the time to also teach myself to code on top was going to be difficult. As multiple stints of trying my hand at coding had stalled in the past, I knew I would have to take a different approach this time if I wanted to succeed.
In early September, I began seeing the hashtag more and more. “Publicly commit to 100 days coding for at least one hour each day.” At first I thought, “great, another way to show people I can’t commit”. But after clicking #100DaysOfCode and discovering the amazing community that is behind it, I decided I was going to try again.
Over the last 4 months, participating in this community has been transformative for me. Where there was once feelings of embarrassment for not seeing things through, there is pride.
After completing my first 100 days, coding is now a part of my every day life. It is something I do daily, and something I really don’t see me giving up anymore. When I hit snags and walls, I’m reminded that we all have similar challenges.
Remaining accountable to a group drove me to develop new habits. These new habits helped me combat old tendencies that prevented me from remaining steadfast during earlier attempts.
Here are some of the things that helped me stick to #100DaysOfCode:
1. Get a whiteboard
Yes, a plain old whiteboard. Words can’t really express how much this simple purchase has helped me on my journey to become a software developer. My initial justification for buying one was hearing that “white boarding” was a common interview technique. So part of the reason of buying one was to make sure that I knew my way around a dry-erase marker should I ever need to use one. However, after the blank canvas was hung up on my wall for a week or so, it took on an entirely different role that was not anticipated. Every day, I began writing my progress. Every night, I worked out problems and ideas. Then, the next morning, waking up and looking at the board put me right back into the mindset I had the night prior. Checklists, goals, priorities, and issues all went up there, and I was tackling each with increasing focus and vigor.
2. Code with someone
Getting stuck in programming sucks. Finding someone who you can bounce things off of is critical. For some, this comes in the form of a small rubber ducky. For me, this came in the form of pair programming with my best friend. Fran (@FrancisGlacken on Twitter) and I decided study Android programming together, and join forces to build an app together from the ground up. This was one of the smartest decisions I could have made. Fran is doing 100 days as well, and is close to finishing. Closely working with someone going through the same battles and jumping the same hurdles as yourself helps put in perspective any one individual problem.
3. Participate fully in the community
The official site, www.100daysofcode.com, lists steps that you can take to increase your chances of success. One of those steps is to encourage others also participating. This is something you may not feel like doing every day, but I urge you to try. After dropping a compliment, or cheering someone on, you begin to become more and more invested. The more you put support out there, the more it will come back to you.
4. The Pomodoro Technique
I came across an interview with freeCodeCamp founder Quincy Larson on the subject of teaching yourself to code. The entire interview is great, and I highly recommend watching it in full. The relevant bit starts at 4:20. In the interview, Quincy explains the Pomodoro Technique. This technique is the practice of breaking your work down into 25 minute segments, followed by 5 minute breaks. As they mention in the interview, what happens is you commit to that first 25 mintues, and by the end of it, you want to keep going. This technique ended up be enourmously helpful, especially after long days at work and class.
5. Constantly seek out inspiration
Some days you just can’t do it. Work was tough, school was long, you stayed up too late the night before. I’ve been there. I took about 20 days off during my 100 days. While I think some of those days off were key to remaining fresh, the truth is I was probably being lazy for most of them. Something I did to combat that was to seek out inspirational content. If I told myself I didn’t want to code, I’d find a podcast, an article, or youtube video on interesting programming topic. I’d listen to a CodeNewbie or freeCodeCamp podcast about someone who overcame enormous odds and found a way into the tech industry. I’d listen to a Fragmented Podcast on an Android topic and be inspired to try and implement it myself. I’d listen to an Andreessen Horowitz podcast about the direction of the tech industry in general, and remind myself why I so desperately want to be a part of it. Every once in a while, you should pick your head up and remind yourself why you want this, who has done it or doing it, and that you can do it too.