The single most important thing you can do to become a better developer
Today I got a question on Skype from a friend who asked me the hypothetical question –
What would you tell someone who asked you for the single most important thing they could do to become a better WordPress developer?
My answer, the same as it is for anyone who asks, is to look at the code of people who you look up to. This is especially true in the open source world, where all the code is available to you.
Wynton Marsalis, in an interview years ago, remarked that the only way to truly become a great jazz musician was to study other great jazz musicians. Once he finished the answer, he immediately started humming a solo from Charlie Parker.
But wait…there's more!
Here's the thing. When people ask me to pick the single most important tip for anything, I normally have more to say than that. But sometimes people don't ask for a broader list.
I know. My life is filled with these terrible challenges like having too many words each day for the questions I get (said sarcastically).
So what I thought I would do is give you the four other ways to get better as a WordPress developer.
Four other ways to become a better WordPress developer
Go back and refactor some of your old code. I know it doesn't sound like fun, but sometimes the best way to see your improvement and to challenge yourself is to ask how you might enhance or optimize your old code. Specifically I'm talking about making things simpler. It's often easy to introduce complexity and much harder to make things simple.
Learn a new language or set of libraries. No two programming languages are the same. Even if the changes are more subtle than others, there are paradigms embedded in the language (or library). When you push yourself to step out of the paradigm you're used to (which can happen when learning a new language), you'll learn more about that paradigm, while also considering other ways to think about things.
Expose yourself to more of the “business” world. I know, I know. It's much more fun to be given a detailed specification of exactly what to write and to sit in a quiet room and code. But honestly, we rarely ever get that. And that means it will always be more helpful to you, even as a programmer, to develop broader business exposure. It will help you evaluate requirements and even help you leap over gaps in shared information.
Read and listen. A lot of folks like to just charge in. But you'll learn more and do better if you spend time contextualizing yourself. What I mean by that is to listen to folks around you, and to read as much history as you can. When I first started writing code for the web (a long, long time ago), I was starting in something that was new (to everyone). But remote server requests weren't new. Just the web was. So I read everything I could get my hands on.
Another way to listen is to ask a friend to do a code review. And then stay quiet as you get feedback. Trust me, nothing makes you feel like more of an impostor than that. But it will help you get better.
Now, I'm not saying you'll become a Nacin if you do these things, but I recently learned that Nacin did in fact read tons of trac before he wrote any code. He was contextualizing himself.
People often wonder how I stepped into this community so quickly, but they didn't pay attention to a year where I did nothing but just watch and listen. I know, hard to believe I could be silent. 🙂 But it gave me context.
So, there you have it. The five things I would suggest – my “one single thing” and four other ways to become a better WordPress developer.