Learning to read
I participated in the first Devbootcamp (8 week programming bootcamp) cohort and haven’t looked back since. I quickly learned that one of the most important things about becoming a better programmer was to never stop learning, and more subtly, how to do that. Now this isn’t enlightening or earth shattering, but took me ~12 months to understand.
The first thing I do when I get to work is grab breakfast, park myself in front of my computer, and open Hacker News. I know my time could be better served by doing a host of other things, but that’s for another discussion. I open about five or six articles in other tabs, reading articles from a variety of topics, not just focusing on tech related news. I make it through about three or four of these before I feel the urge to start working. I bookmark the others and decide that I will come back to them later. That never used to happen.
One day, I decided to go through my backlog of articles/tutorials. I was shocked to find that it would take me a year or so to go through all of it. I shoved articles into a distant, unused bookmarks list, superficially making my self feel better as if I would get to it later. I needed to take control of what and how I read online.
I use Wunderlist as a TODO list for almost every facet of my life. I break down tasks into manageable pieces and realized that I needed to do this as part of my learning process. I added a list with the top two topics that I wanted to learn about with subtasks that pointed to subject links or resources. I created an unsorted backlog list with the same framework, so when I thoroughly (whatever that means) learned about a topic, I could replace it with another.
While I still find myself straying from this and bookmarking articles I’ll never get to, it’s made my learning process much more efficient. I’ve started gaining in depth knowledge on a focused set of topics, rather than a shallow understanding of a variety. Not only has this directly helped with my work, but also has set me on the path to becoming a better programmer/learner. This is by no means the end all solution; all developers should learn to reflect on their learning and constantly iterate much like we do with the software we create. Fields like medicine and software development might differ greatly, but learning how to learn is a necessary skill to succeed anywhere.