So you want to be a Programmer

I have been teaching programming classes for over 5 years. I teach C#/.NET and MEAN stack JS classes. One thing I tell my classes over and over …”if you want to be a programmer you have to program”. Seems simple enough. But there is an important lesson in that statement. Learning to be a developer is different than learning other subjects. Programming requires knowledge of a computer language like C# or javascript, but at its heart programming is a skill or trade that needs practiced. It is very similar to learning a musical instrument. To learn to play the piano you have to play the paino. You will not get there but just learning to read sheet music. The same is true with programming.

Many of my students start the first couple of weeks by reading the chapters and looking over the sample code examples. They don’t actually do the examples themselves. They read the sample code and fool themselves into thinking “I got this”. Then half way through the class when we start to build our own projects from scratch they don’t know where to begin. They get writer’s block if you will. The truth is they realize that “I don’t got this”. Now they are in a hard place because they need to catch up but the class is still moving forward. This is when I hear many students complain that the class is going too fast. This is when the light comes on and they realize “to be a programmer I have to program”. Reading the book and the book’s examples will not get me there.

This is also the point in the process where people decide…do I really want to be a programmer? Or do I like the idea of being a programmer? Do I really enjoy spending hours in front of a computer solving problems, making decisions, and figuring out why this program will not work properly?

On the bright side this is also the fun part. This is where you take your book knowledge of a language, platform, and framework and start to create something from scratch. You get to create something from nothing. This is where your inner inventor comes out! This is where the light brightens for some with the endless possibilities and dims for others with the realization that being a programmer is not what I thought.