I came across a twitter post recently by DHH (David Heinemeier Hansson) where he was reflecting back on an anti-Microsoft / Ballmer blog post he wrote back in 2010. He posted the link shortly after the announcement that Ballmer was leaving MSFT. The post is obviously a slamming session aimed at Microsoft. That’s fine, I understand DHH would probably be one of the last people to be on the Microsoft payroll and both he and they (and me!) are probably just fine with that.
However, one of the first comments (shown below) was “you should rename your blog so its initials are “git” instead of “svn”. Are you serious?
Some of the things floating around in my head after seeing this were:
- Are you serious?
- Why in the world does it matter what the Url is for DHH’s blog?
- Why in the world does it matter whether DHH uses Subversion or Git for his blog?
- If Subversion works for him and gets the job done shouldn’t that be just fine?
- This guy (commenter) must be a hipster. “Subversion is so 2005 and if you aren’t using Git, you are so not cool.”
The problem I have with the hipster subculture in software development is that “they” focus on being non-mainstream, cool and trendy for no other purpose, seemingly, than to be non-mainstream, cool and trendy. Getting the job done, productivity and the bigger picture always seem to take a back seat to being hip.
This post was originally intended to be a rant. A rant about the hipster developers. As I started to write my rant, though, I realized something. I succumb to the hipster mentality from time to time myself. Since I do love technology and development, I naturally get intrigued by new, shiny tools and technologies and want to learn and start using them. It keeps things interesting and fun. And, when I use these new tools I do start to feel kinda “hip” and cool. And who doesn’t want to feel hip and cool from time to time?
The problem comes, though, when I start to get the “you’re doing it wrong” mentality. If someone else is doing something “un-hip” and I start to criticize them for that, I need to stop. Different tools work for different people and needs. If a tool exists that will get the job done well why not use it? Even it is is old. Even if it is not cool.