One of the changes I've been able to witness over the course of my career involves the way web developers refer to themselves. In the early days, when nothing web was considered real development, you were a "webmaster". For those of you unfamiliar with the term, a webmaster is like a beastmaster with more clothes but fewer beasts.
Eventually we all became "web developers", which meant that we built everything from the frontend to the backend. As web development became more complex, however, these split to where many web developers became frontend developers.
Here's where I believe things started to change. Suddenly you'd meet people who wouldn't identify either as a web developer or frontend developer, but as things like an Angular developer or React developer.
What's Changed?
We've had web frameworks since the early days. While it may be more prevalent today than before, as you can see by the below timeline, it's not a new phenomenon.
Source: The History of Web Frameworks Timeline by Matt Raible
Back between 2006 and 2012 though, you'd likely never hear a web developer refer to themselves as a jQuery developer or Dojo developer. It really wasn't until the rise of modern frameworks like React, Angular, Ember and Vue that developers (and even their employers) started referring to themselves in relation to their chosen framework.
Why It's Problematic to Tie Your Tool to Your Identity
Developers have always had issues with a semi-religious affiliation with their favorite tools. Historically, this took the form of "my language is better than your language" debates. Part of this is because being a Java developer or a Ruby developer or a .NET developer becomes infused in a sense of identity.
These aren't healthy debates, but today we've taken them many steps further by narrowing those into smaller niches defined by frameworks within a given community.
If I'm an Angular developer, for instance, I might be in Angular groups, read Angular blogs and go to Angular developer conferences. The same goes for other communities - and this isn't even specific to Angular or web frameworks.
I believe that becoming too entrenched in your specific tool and defining yourself by it is problematic for a number of reasons:
- You limit your own career flexibility and opportunities by tying yourself to a specific tool. The tools we use to build the web come and go, but web development is here to stay.
- It limits your perspective to viewing things as a threat or an aid depending solely on its impact to your chosen tool. An Angular developer may view things that benefit Vue adoption as a threat to their own livelihood or even identity.
- It can tie your career success to the fortunes of a specific company or project.
- It can lead to judging people's value based upon their affiliation to your tool of choice.
Developers put a lot of time and effort into learning tools and the ecosystems that sometimes exist around them, so it is understandable that they feel invested in them. But let's be honest - we have enough problems we need to address in the developer community right now than to let one's choice of web framework get between people. Let's focus on the things that bind us together - a love for the web and building great experiences on it!