We have done the “Level Up as a WordPress dev” topic a few times, and even have a whole series dedicated to it. This is the latest installment / re-iterating what someone should learn to go from “hacking WordPress code” to “writing code”
Chris Flannagan, a FlowPress developer wrote a great article about being a hack developer. The title, “Are you a Hack Developer?” is pretty important in WordPress, because I think there are self-titled “developers” who are actually just hacking code. Just to define a “hack” developer for a second, it doesn’t mean you are aren’t talented, we are specifically talking about those who are just starting out and are copy pasting code, or just messing with code without the certainty of their actions.
A lot of developers, myself included, start out by hacking. I learned HTML by opening up Dreamweaver and seeing what happens when I move HTML around. I’m learning Angular 2 by taking code already put together (that works), and seeing how I can change it. As you grow as a developer, learning what effects the changes you make have, you become more knowledgeable in what you are doing.
In our discussion hacking is the base level, if you want to be a developer and aren’t hacking WordPress theme code yet, start there. See what happens when you move <?php the_title(); ?> somewhere else.
Read more about being a hack developer on Chris’s site.
The tier we are hoping to get to as developers, is advanced, or being someone who can write code from scratch. In the episode we talked about a few criteria for what we expect of an advanced developer, primarily those working with others
If you code is sloppy, not notated, or just poorly formatted, that is a big red flag and we might not take as seriously as an “advanced developer”. Yes sometimes you build something quick like Chris did with knowyofro.com and so code cleanliness isn’t your top priority, however his day job code is on a much higher level.
Along with the clean code, documentation is also key.
“Being a lazy developer is easy” – Chris F.
Adding inline or other documentation is one more step you can take to show you take your code seriously. With things like documentation and unit testing the future investment of time is going to be a lot lower. If you are building something and down the line an error comes up, with proper documentation and unit testing you may be able to fix that bug in minutes versus hours.