Feedback is a Gift

This week I received a code review on my http server project from my mentor and a few of the other craftsman in the office. If you have never had a code review before, it is quite an experience to go through, but there is nothing else that can help you improve as a programmer than one. The hardest part of going through a code review is being able to detach yourself from your code, and accept the constructive feedback that you are being given. When you have spent a lot of time and effort on a project, it is easy to become attached to the code you have written and believe that it is perfect, but because you have become attached to it, you are no longer open to critiques that will help you grow as a programmer.

I have been making an effort during my apprenticeship to not be attached to my code in order to accept and implement the constructive criticism that is given to me so. These are the opportunities that will help me grow my programming skills, and to become a better software professional in general. Some of the things that I learned from this code review will stick with me forever: such as making sure that the tests and program will run on more than just your machine. In the first iteration of my server, I had hardcoded paths to the files on my machine that were required in the tests. This caused the test suite to fail on everyones computer except for mine. A lesson that I took away from this was to make sure that the test suite can run on a Continuous Integration platform like TravisCI in order to make sure that the program will work on more than just my machine.