paint-brush
5 Practical Tips to Become a Better Programmer in 2020by@alexlash
2,957 reads
2,957 reads

5 Practical Tips to Become a Better Programmer in 2020

by Alex LashkovJanuary 18th, 2020
Read on Terminal Reader
Read this story w/o Javascript
tldt arrow

Too Long; Didn't Read

Serhii Korniushov, a programmer and IT manager with more than 10 years of experience, outlines five practical tips to become a better programmer in the upcoming year. Here are five tips to follow outlined by a programmer with over 10 years experience. Always do your job and help others and be respectful towards junior colleagues. Always test your code and use standard-compliant libraries to build better software with lesser effort. Always think about delivering the product, getting the feedback and solving problems, solving the problems users have.
featured image - 5 Practical Tips to Become a Better Programmer in 2020
Alex Lashkov HackerNoon profile picture

The beginning of a new year is always a time to think about the future. Also, everyone wants to become a better professional in the upcoming year. For those whose job is coding, here are five practical tips to follow outlined by Serhii Korniushov, a programmer and IT manager with more than 10 years of experience.

Always do your job and help others

Being a junior, middle, or senior programmer has little to do with the years of experience. It is more about skills and a mindset. And even a senior programmer with vast experience can grow and become a better professional by improving his mindset.

You need to understand that as a senior, your job is not only working on the most complex tasks but also mentoring mid- and junior-level programmers. You have the highest responsibility.

Senior (and actually mid-level) programmers should not live in their own world and be respectful towards junior colleagues. You always have to understand that people can make errors, and very often, juniors don't know how to fix the problem they've caused. It will be your job. Be prepared and try to prevent such situations from even happening in the first place. The best way of doing it is by helping others.

Vice versa, as a junior specialist, you have to be open to new knowledge, listen to more experienced colleagues and never hesitate to ask for help. This will significantly speed up your progress.

Use standards

Using coding standards and standard-compliant libraries allows you to build better software with lesser effort. Using PSR, http://openjdk.java.net/jeps/0, PEPs, and compliant libraries help a lot.

Even if some tool or library works slower than you might want, it is always better to use such compliant tools as a foundation for further work rather than coding everything from scratch.

When using compliant libraries, you will be able to change things under the hood, but the implementation of UI elements, APIs and other important things will remain operational.

As a result, the outcome of your work will be robust, consistent, and reliable.

Develop and follow coding guides

If you want to grow your skills, you need to gather an understanding of what is right and what is not. When you learn from your mistakes, it is always a good idea to translate this experience into a text of a somewhat similar to a coding guide.

If you develop a habit of implementing coding guides, analyzing the ones from the internet, the whole coding process will become more sustainable. This is especially handy for newbie programmers.

Standards are crucial to set up transparent rules to follow so that no one was wondering why people ask particular questions during the code review. When you are doing the code review, you can refer to the specific rule in the standard, which simplifies the communication.

Always test your code

Sure, when working on real projects, very often, you will have deadlines and limited time for the delivery. This is especially typical for tech startups, which need to get to the market ASAP to test the product and the demand.

However, even if you have almost no time for writing automated tests, it is not a reason for avoiding quality assurance at all.

Use free code analyzers like SonarQube when you need to deliver fast, and there is no time for implementing proper automated Quality assurance (QA) process. Especially if you are using a scripting language. Sure, code analyzers can't replace the whole QA process and automated tests, but this is better than nothing.

No premature optimization

Premature optimization is evil. If you spend a lot of time on something that you may not actually need, it will not make you a better programmer. Instead, it will add unnecessary complexity and cause bugs.

This involves both thinking about solving problems that do not exist at a current product development stage or doing irrelevant things like covering 100% of the code by tests for the not yet released product.

For an early-stage product, the acceptable level of test coverage is 30-50%. You have to balance the development speed and code quality. The faster you move, the lower the quality you will get.

Always think about delivering the product, getting the feedback, and solving problems users have. These are the only things that matter for you as a programmer. All other bells and whistles are the number two priority.