A crucial step towards greatnessā¦
Before I started learning how to code, I was always fascinated and mesmerised by cool websites and software.
I often asked myself, āwho creates awesome stuff like this?ā and ālike what kind of brain do you need to have to be able to do it?ā
I couldnāt even fathom that I would be able to build cool websites too.
As a child, I was bright, but not the smartest and my maths skills were so-so. I always assumed techie stuff was for the most brilliant minds, which I was far from.
Then one day I was on my favourite website at the time, Neopets (those who know know š), and they had an option to customise your own page using simple HTML and CSS.
I was 13 and had no idea what that was, but I knew I wanted to make my page look the best.
Every day before school I would research how to make my page look good.
I looked at example after example. I experimented with colours and images until eventually, I was satisfied.
It took me months - but it was worth it.
That was the beginning of my journey into the world of programming, and although I made a successful project that I was proud of, I was far from being a successful programmer.
What does a successful programmer look like?
This is quite a subjective question, but I think there are some key common traits that all successful programmers would have, these are:
1) Strong technical skills
This goes without saying, as you canāt be a good programmer without knowing how to code well and having a deep understanding of programming languages.
2) Excellent problem-solving skills
Letās face it, programming is all about solving problems. The best programmers can analyse complex issues, break them down into smaller parts, and come up with efficient solutions.
3) Good attention to detail
Programming requires precision and accuracy. Good programmers pay close attention to details, such as syntax and formatting, to ensure that their code works correctly.
4) Creativity
Programming often requires thinking outside the box to come up with innovative solutions. The best programmers have a creative mindset and can find unique solutions to complex problems.
5) Great communication skills
As with most careers, communication is key. Programmers need to be able to communicate effectively with team members, stakeholders, and clients. Great programmers can explain technical concepts clearly and concisely and can work collaboratively with others.
There are more I could have listed, but letās say these were the 5 main skills.
How could you work on achieving and excelling in every one of these areas plus more?
As ever-growing devs we should all know one thing for sure - itās not easy.
What makes it difficult to become a successful programmer?
There is a reason why many people who try to learn how to code fail at doing so.
Now when I say āfailā I donāt mean these people are failures. I simply mean that maybe they didnāt achieve their goals: finish that project they started, get to the end of that tutorial, or managed to fix that pesky bug, for example.
I too have been there. For 17 years I had been trying to teach myself to code and become a software engineer before I got anywhere.
There are many reasons why itās difficult to become a successful programmer such as:
- Time - not having enough time to learn, especially if you are self-teaching and have other commitments
- Resources - not utilising the best resources available, e.g. following the wrong tutorials
- Motivation - not being in the mood to learn all the time
- Procrastination - always putting off learning because youāre not in the mood
- Lack of support - not finding the right help or network to support your learning
The list could go on, and Iām sure youāve experienced at least one of these at some point in your coding journey which you may feel has held you back.
But guess what? So has every successful programmer.
The difference is, to be successful, they followed one simple rule to overcome all of these difficulties.
The one rule the most successful programmers follow
To put it simply the one rule is habit.
To be a successful programmer you need to make programming a habit.
In the book Atomic Habits by James Clear, he states several important things about habits:
āHabits are like the atoms of our lives. Each one is a fundamental unit that contributes to your overall improvement.ā
āHabits are the compound interest of self-improvement.ā
āSuccess is the product of daily habitsānot once-in-a-lifetime transformations.ā
Now if you think about it, this makes a lot of sense. Anyone who is successful will probably tell you they got to where they are through hard work and consistency.
Itās not about lack of motivation or time, itās about showing up even when you donāt feel like it or have much time.
Most successful programmers were once where you may be now. Not many of them were geniuses or had great problem-solving minds. They simply practised as often as they could. They failed. But they learnt from their failures and carried on regardless.
Now Iām not here to tell you that forming good habits is easy, it takes time. But with consistent habits of learning and practising a little bit every day (even if itās only for 15 minutes), your results will compound over time:
Forming good habits and breaking bad ones, will transform your overall performance as a programmer.
So what could success look like for you?
Imagine youāve been coding every day consistently - youāve made programming a habit and part of your everyday routine.
Youāre building a new project and suddenly your app stops working.
What do you do?
You check the console for errors, and you think āoh Iāve seen this error beforeā. But you canāt remember exactly how to fix it, so you Google it.
Then you find the same forum you used the last time. But then you remember that you had to tweak the solution to get it to work.
You implement your fix. It works, fantastic! But then you think, how can I prevent this from happening again (like the last time)?
So you refactor your code to include better error handling.
You then go back to that original forum and post your implementation so that it can help others.
Congratulations, youāve just achieved the 5 traits we spoke about earlier:
- Recognising and remembering the bug ā Attention to detail
- Googling and rediscovering the forum ā Problem solving
- Tweaking the solution ā Technical skills
- Refactoring the code ā Creativity
- Posting the implementation back onto the forum ā Communication skills
If you hadnāt formed that habit of coding everyday, you may never have come across that error before. Sure you may have Googled it anyways but what if you didnāt know how to tweak the solution?
Time and consistency will give you the power and knowledge to achieve anything.
There are no shortcuts.
Success is formed from Habit Cycles:
If you can make programming a daily habit, success will follow.
Itās the one rule to conquer all rules.
All the best.
From your fellow ever-growing dev,
Cherlock Code
š If you liked this article...
I publish a weekly newsletter to a community of ever-growing developers, seeking to improve programming skills, increase productivity and share knowledge within the exciting sectors of Tech, AI and Web3.
Get more articles like this straight to your inbox.
And stay in touch on š¦ @evergrowingdev