A Web Developer Is...

PPK responds to his critics.

As I expected (and mentioned in my post on Monday), there was much more to PPK’s controversial slide statement than just being incendiary. First, Adrian Holovaty, the attendee who posted the offending tweet that set off the whole controversy, posted more thorough details on what he got out of the presentation and what he thought PPK meant by that slide. However, PPK himself has responded by asking, “What is a web developer?

The truth is that he clearly was aware that the comment would be incendiary (though perhaps unaware that it would get tweeted and shouted down in quite the manner that it did). In fact, his post doubles-down on his statement, though with the additional context that a tweet simply can’t provide.

I’m not saying you should give up your tools and only work in raw CSS and JavaScript. Instead, I’m saying that you should be able to do so. That’s my definition of a web developer, and it’s what I fundamentally believe in and will stand up for — repeatedly, if necessary.

To give a more specific definition he says:

To me, a web developer is a programmer who is not only able to write HTML, CSS, and JavaScript by hand, but also has a deep understanding of what browsers can do to that code.

That means that you have to understand the basics of how browsers work, how CSS works, how JavaScript works, and general browser compatibility patterns for the code you’re about to use.

After which, he acknowledges that it is a “tall order,” especially since he also thinks you need a basic understanding of a number of other web-development-related topics.

Now, I have spoken and written many times about the overabundance of tools in web development. Mostly, I focus on not reinventing the wheel rather than judging what dependence on these tools means about you as a developer. However, I’d say that I generally agree with PPK that his definition is what you should aspire to.

That being said, I’d argue that being a real web developer is a journey not a destination. It took me nearly a decade to get to a point where I would have said I felt comfortable meeting PPK’s definition. And guess what? After about 6 years of focusing on slightly different career roles, I believe that I no longer fit the definition - despite continuing to develop to varying degrees over those years.

The web development world is rapidly changing, thus the real-world definition of a real web developer is constantly changing even if the words themselves remain the same. It is a journey of constant learning. Thus, PPK’s focus on tools, I believe, comes from decades of experience. Tools come and go. You cannot rely on your knowledge of the tools in fashion today to carry you through your career as a web developer. Your knowledge will eventually need to be deeper than that to be flexible and survive in this industry.

However, just because you may not be there today, doesn’t make you not a real web developer. To me, being a real web developer is simply embracing that journey.