🗝 One Key Question to Ask Yourself for Programming Success
Tags: beginners, learning, codenewbie, programming
Published: 2023-04-06 16:28:09

## A question I repeat to myself everyday…

---
Jealousy is a real emotion that I find myself battling with often during my learning journey.

Especially at the beginning of learning how to code, I would find myself getting jealous of all the people who knew more about coding than I did.

Now many of you may feel the same, but the problem with jealousy is that if you don’t turn that emotion into positive action, it can quickly eat away at you and drive you insane.

> Jealousy towards someone who knows more about a topic than you do is like being angry at a GPS for showing you the way to your destination.

The more I followed senior developers and people in the industry, and the more I read and researched the topics about programming, the more I realised that perhaps I shouldn’t feel jealous at all.

These people were sharing the knowledge they had gathered through their own research and studies. Surely, they must have started from somewhere.

They too were once at the beginning of their journeys and now they were here to show me the way.

They created the _**maps of knowledge**_ and all I needed to do was _**follow the path**_.

![Programming knowledge path](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/xx4vvdskndsms422105s.png)

Once I embraced this concept, a question started to emerge that I would start asking myself every day.

A question that would keep me motivated on the path to success so that I too could follow in the footsteps of the people I admired.

That question is: **Why not me?**

## The Myth of the "Natural Born" Programmer

When it comes to programming, there's a common belief that some people are just born with a natural talent for it. You might have heard people say things like "He's just got a knack for programming" or "She's a born programmer." But the truth is, this is a _myth_.

Programming is not something that you're either born with or without. It's a skill, just like playing an instrument, speaking a foreign language, or playing a sport. And like any skill, it can be learned through hard work and practice.

In fact, some of the most successful programmers in the world started with little or no experience. Take Mark Zuckerberg, for [example](https://selftaught.blog/mark-zuckerberg-facebook/). He started programming as a hobby in middle school, but he wasn't a natural prodigy. He had to work hard to learn the necessary skills, and he spent countless hours practising and building things.

David Karp is another example of a successful programmer who started with little or no experience. Karp is the founder of [Tumblr](https://www.tumblr.com/), a popular blogging and social media platform (back in the day). He [dropped out](https://www.famous-entrepreneurs.com/david-karp) of high school and did not attend college, but taught himself how to code by reading programming books and experimenting with code.

These examples show that programming success is not about being born with a special talent or gift. It's about putting in the time and effort to learn the necessary skills and build your knowledge and experience.

And when I think about how in 2007, at the age of 21, Karp launched Tumblr and it quickly gained popularity, eventually being [acquired by Yahoo](https://yahoo.tumblr.com/post/50902111638/tumblr-yahoo) for over $1 billion in 2013.

Or I think about all the great things Mark Zuckerberg has achieved through Facebook and now Meta.

I can’t help but ask - **why not me?**

## The Value of Hard Work and Persistence

When it comes to achieving programming success, one of the most important traits you can possess is a strong work ethic combined with persistence.

Hard work and persistence can help you overcome even the most difficult programming challenges and can help you develop the skills and knowledge you need to succeed.

Very few successful programmers can put their success down to pure luck alone.

In fact, many would say only after remaining consistent and true to their values and goals did the “lucky” opportunities arise.

When I think about everything I’ve ever achieved in life, I can safely say that the things I have been proud of the most are the things that I have worked bloody damn **hard** for.

And that includes becoming a software engineer.

I say all this, but it’s important to understand that hard work and persistence don’t just come naturally to everyone. It's a [learned](https://dev.to/evergrowingdev/the-art-of-learning-stuff-quickly-41np) skill, and it can take time and effort to develop.

However, there are people doing this every single day.

They wake up, _they code_.

They finish their day job, _they code_.

They have spare time, _they code_.

Hard work separates the **great** from the mediocre.

Like you, I too am on the path to becoming the most successful programmer I can be, and I know that if I just work hard enough then **why not me?**

## The Power of Positive Self-Talk and Self-Reflection

Positive self-talk and Self-reflection are powerful practices that can help new programmers achieve success.

### Positive self-talk

When faced with challenges or doubts, it's easy to fall into negative self-talk and limiting beliefs, but with the right [mindset](https://dev.to/evergrowingdev/youre-better-at-coding-than-you-think-you-are-1gd), you can overcome these obstacles and achieve your goals.

And as I’ve just been exploring, the one simple but effective way to shift your mindset is by asking yourself **"Why not me?"**

This question can help you overcome the belief that only certain people are born to be successful programmers. Instead, it encourages you to see yourself as capable of achieving anything you set your mind to.

Another important aspect of positive self-talk is being mindful of the language you use when speaking to yourself. Using positive affirmations, such as "_I am capable of learning this_" or "_I am a skilled programmer,_" can help you build confidence in your abilities and overcome self-doubt.

### Self-reflection

Self-reflection involves taking a step back and assessing your strengths, weaknesses, and areas for improvement.

By reflecting on your past successes and challenges, you can gain insight into what works for you and what doesn't. This can help you make more informed decisions about your learning and programming approach moving forward.

To practice self-reflection, try setting aside time each day or week to reflect on your progress and goals. Ask yourself questions like "_What did I learn today?_" and "_What could I have done better?_" Write down your thoughts in a journal or notebook to keep track of your progress and hold yourself accountable.

Be kind to yourself by shifting your mindset and being mindful of your language and actions. By doing this you can overcome limiting beliefs and achieve your goals.

---
Becoming a successful programmer is not a matter of luck or natural talent. It's a matter of hard work, persistence, positive self-talk and self-reflection.

The next time you feel jealous of someone who looks like they are doing better than you or has achieved more than you remember to ask yourself **"Why not me?"**

When you doubt your abilities, keep pushing forward.

With consistent effort and a strong work ethic, you too can achieve programming success.

Because why not **_you_**?

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 and stay on a journey of continuous self-improvement. Focusing on tips for powering up your programming productivity 🚀.

Get more articles like this straight to your inbox.

[Let’s grow together 🌱](https://evergrowingdev.substack.com/)

And stay in touch on 🐦 [@evergrowingdev](https://twitter.com/evergrowingdev)