This blog is about the first pattern in the Apprenticeship Patterns book by Adewale Oshineye and Dave Hoover called Your First Language.
This chapter was about picking your first language as a programmer. Picking your main language is difficult. There are so many languages out there that it is really hard to weigh the pros and cons of each of them. But you have to pick one since obtaining your first job will most likely depend on your proficiency in a specific programming language.
This chapter offers different solutions to this problem. One is to have an actual problem and solve it using the language that you chose. Instead of just following tutorials and examples in a book, solving an actual problem provide your first feedback loop. One other suggestion that they have is to write simple tests to check your understanding of the language. Since test-driven development techniques are so popular nowadays, it is impossible not to find a language that does not have a testing framework. It is a great way of learning how other people’s libraries work. One can always learn about a language and try to be proficient in that specific programming language, but it is still important to find a mentor.
I thought it was interesting how they kind of emphasize on having a mentor for your first programming language. Since we keep using different languages throughout the course, it was hard to find and settle on your first programming language. Not to mention, finding a mentor. Finding my first programming language is still a problem even now. I still cannot seem to settle on one language to master since each of them offers different specialties. This pattern has caused me to change the way I think. Since I always try to learn something new, I never really “specialized” on something. My mind is usually all over the place and I am always trying to learn new things. But, the problem is that I never mastered anything. I always seem to only learn the basics and then move on to different things. After reading this chapter, I want to try and settle on one language try to be better at it before moving on to other things.
From the blog CS@Worcester – Computer Science by csrenz and used with permission of the author. All other rights reserved by the author.