What Makes a Good Programmer?
What makes a good programmer? Obviously a good program can program well, but what exactly does that mean? Do you have to be a math wizard? Do you need to know fifty different languages fluently? To some, the answer to those questions is yes. But in the professional world, a good programmer just has to get the job done, and make sure it ‘stays done‘. That is what being a programmer is all about.
Getting the Job Done.
You do not have to be an expert to get a job done. Anyone can do it. If I asked an average person with no coding experience to create a website, they could use one of many website builders to build a pretty decent website. The same is true event for experienced website builders. The ones who want to keep up with modern technology and styling trends will often try things new quite often. That’s how to grow as a programmer. The experience that you gain getting little jobs done and learning new things can later be applied in a more deliberate way. That’s the second part: Making sure the job stays done.
Making Sure the Job Stays Done
This is the tricky part of being a good programmer. I admit, as a novice, I have made some very disorganized, ill-fitted programs in the past. When asked to go back and modify them, I had the task of rifling through my old code to try to make sense of it all just to update something that should only take a minute. Those type of experiences taught me to make sure that the job stays done. Instead of hard-coding a url in an API calls, I am using global variables, instead of storing my code on my desktop, I am using Github for version control. The time that I save not frantically trying to look for lost code, is now spent creating new code, and I am happier for it. This, to me, is the only real difference between an amateur programmer and a good programmer.
Learn New Things
While it’s not true for some programmers, most programmers under most disciplines, will require active learning to stay ahead of the game. Designers will need to learn about trendy design patterns, game developers need to learn about the newest game engines and platforms. The right next thing to learn is not always clear. That’s why it’s important to reach outside of the comfort zone and try to do something that you are not exactly familiar with. The experience will force you to learn something you wouldn’t normally learn, and the experience gained can later be applied in a deliberate way to possibly a new discipline.
A good programmer is whatever you think it is. If you think a good programmer needs to write machine learning algorithms, and sentient AI, then that is what it is. But, for those of us who aren’t ready for that, a good programmer just gets the job done, and makes sure it stays done. If you can do that, then you are a good programmer. And you’re probably a good choice for a hire!
June 23, 2021