One thing that I have learned throughout my journey in development is that there a myriad of ways that you can learn how to code. There are the ubiquitous online learning platforms, bootcamps, mentors, pair programming, books, etc.
However, what I have found is that the best way to learn is to just start building stuff. The struggles and joys of building something out of thin air makes the learning more long lasting. I think the more meaning we give something, the better it is for learning.
I think the only thing that beats that is when there is a lot at stake. This is why when we learn on the job, we learn it quicker, because if we don’t, then we get fired.
This is one of the reasons why I started blogging and tweeting and posting about my learning. I want what I am doing to have more meaning, I want it there to be more at stake. And, by blogging and announcing to people what I am doing, for me at least, the stake of failing while my life is in full blast is unbearable.
One other thing that I wanted to do is to contribute to the open-source community. I think that when other people are relying on you, there is even more at stake. This, I feel, accelerates learning. This also drives you to do better … to do your best.
Today, I made my first ever Pull Request to an open source project. It’s a chrome extension project that let’s you track your protein intake. You can check out the repo here.
Like I expected, this was a bit nerve wracking but exciting at the same time.
Last night I created a mock up for a redesign of the extension. Here’s what I came up with. The right is the original and the left is my design.
The design was approved which made me happy with some minor updates on the color and logo.
So, when I got home and started to work on the code, I got so nervous and felt like I wasn’t supposed to be doing this. What if I fail? What if I can’t do it.
That doubt actually drove me to just start working. There were some things that I didn’t know that I had to look up. But, I learned them and learned them quick. Like I said the combination of working on something practical with added accountability, really helps ingrain the lessons I am learning.
After an hour or so, I was able to put together the pop-up (the smaller one). I was so happy.
I reviewed my code and issued my pull request.
Below is the product in action.