When I woke up last January 1, I didn’t set out to code for a whole year with no days off. I didn’t set out to code in my car on long trips, to go to my first tech conference, or to be on tech-related podcasts. I woke up with the goal of creating a positive habit when so many other things around me still felt chaotic. I made one New Year’s Resolution, and that was to complete 100 days of code. I didn’t have to code for hours everyday, but I should put some code down on the screen. And then after 100 days, I kept going. Someone on Twitter asked me what my ultimate goal was, and at the time I didn’t have one. I just liked what I was doing. In retrospect, coding everyday taught me a lot about what I am capable of, and only one part of that is being a developer. Here are the biggest lessons I’ve learned:
Well, not they, but it. The drive to want to code increased with everyday I coded. I’ll add a caveat to that. It increased when I was working on the curriculum I loved with [Flatiron School](https://flatironschool.com/. I wanted to wake up earlier to get in more coding time. It became more than just a habit, it became a dream.
When I started, I wasn’t using atom, my terminal, dev tools, or pry. I was just committing and reloading. Or trying and trying and trying without really knowing what wasn’t working. Honestly I just didn’t realize how important these tools were for my learning. Taking the time to understand what exactly was happening with this code was not only practical, but it was an investment in the long-term goal.
There was a period where I thought I wasn’t learning anything, that I was stuck in one spot. But evaluating what I had learned over a six month period helped me to see that I was learning more than I had thought. If you would’ve handed me a screen with a bunch of code a year ago, I wouldn’t have been able to even begin to understand what I was looking at.
I’m not saying everyone needs to code everyday, but for me it set the tone for the rest of my life: I have a goal and I’m going to accomplish it. I’m going to put all my free time into something that I enjoy doing and that my whole family benefits from.
There were more than a handful of times where I just wanted to get through the lesson, to pass the lab. But unless you slow down and really have some understanding, you’re hurting yourself. Notice I said “some understanding.” That’s intentional. For me, it’s really hard to fully understand a concept unless I’ve used it, broken it, had to work through errors. Some of the best advice I’ve received this year is to slow down. This is not an easy thing for me to do, especially since I was just coming off of a year of my life that felt empty, like I had wasted a whole year doing nothing–slow recovery is really difficult for me. I’ve found that a good marker of understanding is if I can verbalize the concepts I’m working with.
If you’re coding everyday, you’re creating a habit. That’s great, unless you’re forming bad habits. More than a couple of times I’ve made tons of edits to a project without committing to GitHub. Not. My. Best. Habit. This became such a bad habit that I had to scrap one of my projects for Flatiron School and start over because I had maybe 1/3 of the commits that I should have. Now this was a small project, but if I were working on something larger this could lead to real problems.
And with all of this, I’ve had an amazing year. I don’t know if I’ll keep coding everyday, but I don’t have plans to stop. Here are some of the great things that happened over that 365 days:
The first six months of this year were a struggle. The last six, I rocked it. But I’ve learned how far I can stretch myself, how hard I can work towards my goals. There were days I thought I wouldn’t get through, but now I know I can. A lot of that has to do with drive, motivation, but without community there’s nothing. Over the last 365 days, I’ve learned to dream again, to be proud of myself, and that may have been my biggest challenge.