There are two sides to the story of a Lazy Programmer; one is the Programmer should not be lazy and act fast to the best and second side is even a lazy programmer can be successful. Let us see some interesting points related to both sides, and then you can take a call about which type of programmer you want to be! You can also hire freelancers if they prove to be the good programmers.
Constant learning is the key to success in Information Technology field, and the learning never stops in this field. Every year, new programming languages are hitting the market, and you will always hear that the new language has something unique! Unless you keep your knowledge updated all time, it is difficult to remain in the mainstream programming.
The other side of it is a lazy programmer will think that he/she doesn’t know enough about the topic and will try to study the new technologies and new languages at their pace. The smart programmers may think that they know everything and there is nothing new to learn! In such case, a lazy person is likely to know more.
Constant learning needs to be fast as well. You will see the speed at which a new coding language enters the market and captures considerable market size in very less time. Quick learning abilities are equally important, and you should be able to understand the differences between existing and new technology and pick up the differences quickly rather than learning every single thing from scratch. Remember the basic programming concepts are not going to change in most of the cases!
Whether you are a lazy, dumb or smart programmer; the positive attitude is a must! Unless you think that you can learn, experiment or use something new and can be successful; you won’t have the confidence to work on latest technology. The attitude related to ‘I can do this’ is extremely important for a programmer. You will see that meeting difficult deadlines is possible only with a positive attitude. It is a must-to-have trait for a freelance web developer also.
Excellent Technical Skills:
You need to remember that your job primarily depends on your technical skills. Though you are expected to be an all-rounder personality, you may be lagging in some of the additional skills but not technical skills! A lazy developer also has to learn multiple new things in the industry and the primary skill. You may adapt the skills at your pace, but it is important to know all new developments within your specific skill-set and start using the same as early as possible.
Critic to Own Work:
A lazy programmer can be a good critic to his/her work, but a smart programmer will always think that whatever they are doing is correct! Sometimes it is beneficial to look at your code from a third-person view and see if it makes sense. Check whether you have written the code in best possible way and with less number of lines of code. Is the code properly commented and can someone else also understand the same? Is it well tested and 100% defect free or have you assumed that it is free of any bugs? Having this type of criticism about self-coding helps a programmer to be better.
Problem Solving Skills:
Every single programmer wants to work on new projects, new programs, and new coding. No one likes to work on enhancement, maintenance, and support projects! It is true in most cases as all maintenance type of work is not easy! You need to understand someone else’s code and make changes keeping the core functionality intact. The impact analysis and problem-solving are important in this case. Unless you know how to solve a coding issue in a program, it is difficult to be a good programmer. You need this skill if you accept the freelance work.
Considered it as a negative aspect of your work, right? Well, some lazy programmers will always try to find out the things to save their time and relax. They will find automation ideas, ways to shorten a process and ways to complete jobs in the least possible time and efforts. Sounds funny, but some lazy programmers do invest good ways in the programming world!
Understanding Complexity & Cloud:
Programming is becoming complex, and every single day more complexity is getting added to the invention of new technology and techniques. Have you heard about SaaS, PaaS, and IaaS cloud based services? Using these services effectively and efficiently is important. Understanding of Cloud is extremely important as you have to adapt to the new ways of coding, new function libraries and new ways of implementing software.
Most of the time, programming is a team job, and you have to work with one or more team members to make sure all the code pieces are ready in shortest possible time, and then they are connected to make the final program. Working in a team is by itself a skill. You need to be accommodative and respect views of others to work as a good team player. There are some basic rules you need to follow, and everyone needs to be using same style and method of programming to match it at the end. Focus on teamwork is critical to the success of your project.
Your team may have a different designer and senior developers to help with design, but as a programmer, you always have to think about structuring your code. It is an art to divide the entire work into pieces which are later the software modules or pieces of code which can be connected. The way of thinking is very important, and it differentiates a good programmer from others.
Being a lazy programmer is not always bad, but being too lazy and not maintaining your pace with peers can be a risk. You can always innovate different coding ways to carry out the work in shortest possible time with less coding, but when required, there is no shortcut for hard work. Teamwork, new learning, logical thinking, structured approach are always going to help you in being a better programmer.