As developers, we should always strive to be become better at our craft, no matter whether you started yesterday or ten years ago. With the rapid growth and expansion of programming languages, APIs, tools, and other items typically available to a developer’s arsenal, there is always an opportunity to learn something new and grow as a developer.

I would never consider myself a great developer, but I am a far superior developer today than the developer I was three years ago, and even the developer I was just six months ago.

There are so many ways that we can grow as developers and I’d like to share a few of the methods that have helped me.

1. Have an attitude to learn

To get better you must want to get better. Period. Do you remember your high school math class where you wanted to be anywhere but there? Probably. Do you remember any of the advanced techniques they tried to teach you? Far less likely. To truly learn and retain a more advanced development knowledge, you have to yearn to get better. If you don’t want to get better, you will likely never see anything but minor improvement.

Your attitude towards learning goes a long way.

2. Challenge yourself with difficult projects

No developer will ever get better by always working on the easy projects. To grow as a developer, you must step out of your comfort zone and challenge yourself with tasks that are far beyond your current skill level.

One of the biggest weaknesses I often see in developers is the “this is too hard” mentality. Bullshit. Nothing is too hard, you just don’t yet have the knowledge or know how to accomplish the task at hand. Being faced with technical challenges is very different than mental challenges. You may not be able to make a processor run faster, but you can find ways to make the processes take less power.

Taking a difficult challenge head on with a mentality of “I will solve this” is one of the single greatest steps you can take in becoming a developer. It is also a great life lesson.

With every difficult challenge you take on, you will learn something new, even if you fail to complete the task. It may be that you learn how poor a previous design decision was, or it may be that you learn of a new-to-you technical limitation that the programming language you’re working in has.

3. Direct yourself

Becoming a better developer means helping yourself. If you stand around waiting for step-by-step directions, you will never get better. You may get really good at reading instructions, but you will be lost when forced to do it on your own.

Having someone to mentor and teach you is a wonderful luxury, but it is also a crutch. If you rely on the direction of others, you will have a really hard time freeing yourself from those chains.

If you come up against a challenge, work on it. Dig into it until you find a hint at the solution. Pursue that hint until it turns into a brick wall or opens up into another hint. Eventually, after you find enough hints, you will have a solution. If you run out of technical knowledge, go and seek more. If you’re working with an API and don’t know how to retrieve some particular data, research the documentation, and if that fails, dig into the source code.

Directing yourself at finding solutions is one of the best things you can do to become a better developer. Forcing yourself to discover a solution will drive that knowledge home and it will stay there. Copying and pasting an answer from someone else will end the same way your highschool math classes did.

Self direction is one of the number one attributes that I look for when deciding whether to work with a developer. If I’m going to have to guide them through the entire project, we will not be a good fit.


  1. Donna Fontenot

    Thanks. This is exactly the encouragement and push I needed today. Working on things that are hard for me, and I need to stick with it.

  2. Mahmud

    Thanks for your sharing!

    Can you please make a list of best practice or WP Code in both terms Plug in and Theme.


    • Thomas Scholz

      Direct yourself. 🙂

    • Samedi Amba

      Hi Mahmud,
      I beleive the WordPress Developer’s corner is an area you may want to start from:

  3. Sallie Goetsch

    They seem like good tips for becoming a better anything, actually.

  4. Bhakti Al Akbar Pasaribu

    Nice tips!

    Just like me. To be a better developer I always push myself to learn new stuffs everyday and practice it.
    I also love to challenge myself to develop a complex design, by doing that I will understand my capability and learn more.

    Anyway, I’m front-end developer. What developer are you?

  5. Mika E (Ipstenu)

    Challenging yourself with harder projects is great, but remember two things:

    1) It’s okay to fail at them. Which is good. You will.

    2) It’s okay to step back and do an easy one now and then to keep your skills sharp and remind yourself that failing (see #1) doesn’t mean you’re stupid. You’re not.

    • Pippin

      Couldn’t agree more!

  6. Prosper

    Awesome!..Very Encouraging

  7. Kyrie

    It’s inspiring to see that even developers who have some renown still strive to be better.

    I know I have a long way to go. I’m looking forward to it, though!

    Thank you for sharing.

  8. Samedi Amba

    Great Share. Love #3 all the time. was caught in a game of always looking for plugins to solve my problems. While that works in some cases, other scenarios demand that you produce sth unique to fit the situation. I mean something custom. That’s when I started to follow along the lines of learning how to code and extend code, and I’ve never looked back…

  9. govertz

    A good day, is a day spent learning new stuff.

  10. Mark

    I nearly cried after reading it. This is the kind of push I needed at this moment. A million thanks! 🙂

  11. Eric Robertson Yaw. I

    Thanks for sharing. As a developer one must continue to learn.

  12. Mitchell

    “Too hard” also applies to learning an API or language for a single, short-term project.

  13. Ishan Verma

    Having patience to learn is also important factor. I see many coders who want to learn everything in a day or two but do not want to put in efforts for it.

  14. Meed

    Good points Pippin… Well nailed and there have really galvanised me to a new world of getting extra better always… Thanks for sharing

  15. Giulio

    That is soo true. I found from my personal experience that only if you stretch your limits you can expand them. The problem at the beginning is being self confident. I mean, if you start a difficult project in your free time you may be relaxed because you’re accountable only to yourself but if you find a client that asks you to do something that you have no idea (yet) how to do, you may have the fear to fail and ruin your reputation. This has been my ‘brake’ at the beginning.
    Now, I’ve learned how to get information and overcome almost any difficulties, I’ve made plugins that only one year ago were like sci-fi for me. This gives me the confidence now that I can afford almost any project no matter how difficult it is.

Comments are closed.