Hello and welcome back to Benderson’s Blog, this week we will be discussing another apprenticeship pattern called “Use the Source”. This apprenticeship pattern talks about seeking out other sources of code or mentors to see if what you’re doing is matching or is on the right track compared to other people code. This allows you to understand the thought process of another coder and it may help you grasp what you should be doing with your own code on certain problems or applications. If the code is open source, the pattern suggests downloading the code and inspect its history and see how it has evolved over time with the changes that were made to the code. You can really learn a lot from seeing what other people change and their thought process through the whole thing. When looking through the code you may not agree with everything that the coder did but that helps you question why the user would use that path, maybe there is something you didn’t know about later on in the code that made that person decide to do that specific thing with their code. Not only should you read other peoples code and critique it but you should have people read your code and have them do the same to yours where they read through it and make suggestions to help you be a better programmer down the line. It is kind of like peer reviewing someone’s essay in middle school but with code and people that understand code. I thought it was good that the pattern ended with a quote from Bill Gates himself who basically said you can tell that someone is a good programmer by giving them 30 pages of code and to see how quick they go through it and understand it.
This apprenticeship pattern didn’t really teach me something new but inspired me to try and find outlets to read through their code and understand what is going on. How are you going to be a good programmer, if you don’t know what is going on with what you’re doing? That is a question that has come up in my mind after reading this apprenticeship pattern. Going through open source code and being able to understand like reading through an English sentence is one of the most fulfilling things to a programmer. One day I want to be good enough to be able to do just that with a big program like the Bill Gates quotes states. One day I want to work for Bill Gates which is another thing but that is a little off topic. Learning code has it’s challenges but being able to read others give a person a guideline on how it’s supposed to be done and they will learn from that. Thank you for joining me this week on Benderson’s blog!
From the blog CS@Worcester – Benderson's Blog by Benderson's Blog and used with permission of the author. All other rights reserved by the author.