1st Jan, the first day of this month or year is over and we expect that you might have started working on your new year resolution… If yes then we appreciate your effort and keep going on like this every day…if the answer is no and you are feeling bad for yourself then sit back, relax and remember it’s never too late to mend. The morning is when you wake up.
If you are a newbie programmer and reading this post then whatever we are going to discuss it’s not going to only help you today, tomorrow, this year but also it will help you rest of your life in your career to become a great programmer (Yes we want you to become a great programmer…not just programmer).
If you don’t belong from the programming community or background still go ahead and pick up whatever is beneficial for you from this article…
“How should I choose my career?” (This is for everyone). A lot of youngsters get confused and get distracted while deciding their career path. A lot of suggestions about the job and career they get from friends, parents and their circle. Whatever you choose or wherever you go we just want to mention two important things that we really think matters for everyone, everywhere…
- Decide whether you want to do a job or you want to make a career (identify the difference between job and career). A job is what you do, a career is what you grow. Think about the long term. Making a career means it should add value to you. How you learn and how you grow in your day to day job. There should be a clear direction for your career when you start doing a job. Learn every single day (not just on new year) because learning is the single most important aspect of any career. Once you keep this in your mind and commit yourself towards it everything else falls into place over time.
- Learn to learn. You might not be an experienced person in your field. You might not be the best, strongest or the fittest for your job but to learn and grow you need to stretch yourself and you need to be adaptable to change. Every industry is changing so be willing and flexible to adapt, learn and grow. While building your career make a balance and evolve yourself with industry to remain relevant.
Now let’s discuss 5 resolutions every novice programmer should take to become a great programmer (not just a programmer…)
1. Practice, Practice, Practice (Hands-on Experience)
Code every single day. Not just 1st day, second day, 1 week….every single day. Don’t leave a gap and commit yourself this year to build something. Contribute to various projects, start your own projects or publish some mobile/web-app by the end of 2020. If you want to become a software developer, you need to develop software. It doesn’t make any sense if you just keep watching youtube programming tutorials but when it comes to write a program or develop software you struggle with that. A coding session of 3 hours every day consistently over a period of a year would amount to over 1000+ hours of coding which will take you from novice to at least an intermediate programmer so get your hands dirty in the coding.
2. Learn How to Google, be Self-Learner
If something is not working google… “Why it’s not working?“. If something is working google… “Why it’s working?.”. If there is a bug or error google how to fix it. If you don’t understand some syntax…google it. Google like crazy for everything you want to know. This is how you increase your productivity and become a smart developer. A lot of novice programmers seek immediate help from someone instead of finding the solution on their own when they get stuck somewhere. Read other developers’ code on various resources and check how they solve some specific problems. Reading code will help you to inherit coding style to become a good programmer. Always remember that in programming nobody knows everything, in that case, google is your best friend to acquire new skills or solve some programming related problems.
Most programmers self-teach their skill sets. When they need to acquire some new skills or learn new frameworks, libraries, technologies, methodologies they do it on their own. Programmers who are eager to teach themselves are much better than those who don’t like to learn outside a formal training program. Self-learner programmers know how to adapt to new situations and new environments very quickly.
3. Always Stay Curious
Most of the people end up with being average programmers and the reason is….lack of curiosity. Great programmers are always curious about how things work at the root level and are driven by it. Hunger for knowledge comes from curiosity and knowledge is something that rules the world. Great programmers are always interested in technology, new solutions, etc. They are always curious about how things work behind the scene and how a specific problem can be solved.
Dennis Ritchie (Father of C Programming Language) who was a great programmer attended a lecture on how the UNIVAC I worked. His curiosity pushed him further to study how the computer really worked. Today the world knows his contribution to the computer science field which is the result of his curiosity. So always stay curious in programming and use your curiosity to build some different kinds of projects like Dennis Ritchie.
4. Have Patience, Don’t Give Up
It becomes really tough for novice programmers to continue programming when they get frustrated and unable to solve some problems. They give up easily and think that they are not born to become a developer or programmer. Remember that it takes a decade or years to become a great programmer and that requires a lot of patience. Nobody was born geek and nobody can become a geek within just a couple of weeks or months. You will encounter a lot of situations where you won’t even understand how to start solving a specific problem. At that time if you give it’s over but if you look at the problem carefully and observe with patience you will be able to solve it. Break the problem in smaller chunks and solve that individually.
In projects, if you find some issue, take your time, relax then see what’s wrong you did in the previous attempt and again with another attempt try to fix the issue patiently. If you failed again in solving the problem, take some break, do something else, come back and then look at the complete project or problem with a fresh mind. Always remember that in programming when you first start out, it might feel like progress is slow but over time, as you learn more, it then becomes easier to learn even more.
5. Solve Problems and Don’t Skip Fundamentals
Programming is not about learning or mastering the language or syntax. In programming, your problem-solving skill is more important than your language you choose to write the code. Also in industry, you are paid to solve problems not to write a thousand lines of code. Every time you will encounter a new problem and you will have to come up with the best possible solution considering the business requirement and app performance. Dennis Ritchie, Linus Torvalds, James Gosling, Guido van Rossum and a lot of programmers are great because they really solved some real-life problems.
Don’t forget to master the fundamentals in programming before picking up any problem. Remember that skipping the fundamentals and jumping directly to the shiny tools and technology won’t help you in the long run. Understand data structures and algorithms, oops concepts and other computer science fundamentals to start your journey as a programmer.