There are countless resources online to become a better programmer. From doing katas, watching conference talks, building applications, reading, etc. This post will focus on the importance of reading.
This is an example of how you might see programming as a junior developer. When you face a new problem you go through many iterations for a solution. Once you figure it out, you’re content and move on with your other tasks. Fast forward couple weeks, and you’re faced with a similar situation. You realize that you’ve faced this issue before and solve it in a similar way, and you’re happy it works. Then you move on.
This is one of the most compelling reasons that you need to broaden you’re knowledge. When there are many ways to solve a problem, how would you know that you’re solution is best? You don’t. Having a large set of knowledge helps you make sound decisions. By reading blogs, articles, and lines of code, can help you gain knowledge quickly.
I’m not saying that your first implementation is shit and it isn’t right. Who know’s it may be the best solution for your situation. My point is that you won’t have a clue without having any alternative solutions.
Here are favorite tools to learn through reading
- Reading my co-workers pull requests. I like to take time and read what problem they were solving (commit message), and then reading each changed line. Open Source projects works well too!
- Ruby Weekly. If you’re not signed up for the news letter I highly recommend you do that now. Peter Cooper curates articles, tutorials, and tools to help you develop in Ruby. This way, I don’t have to search the web for quality content
- Books are your best friend