Web Development is not Broken
…it’s just the natural result growth, advancement and change in the technology.
Today this post hit the HN front page and to me, the overall gist of it came across as: “Web development is broken because it has too many choices which require too much time to understand.” One point in particular exposed the main issue I have with the authors thesis quite clearly.
You have reached that stage, because you have the time and skills to do this, but what about Joe beginner? Do they deserve this?
Well yes, actually they do deserve this. The difficulties and challenges Joe beginner is experiencing is often referred to as learning. However in return for the time invested each of these difficulties, when overcome, tend to give new insights and over time this makes Joe better, smarter and probably faster, preparing him for the next time he needs to make these decisions. This is the reason why a web designer can’t simply choose to be a web developer overnight. That isn’t to say they _can’t _choose to be at all, just that it doesn’t simply happen because they will it to.
Let me put it another way. Say I decided to start building a modern house tomorrow and then get frustrated because the process wasn’t completely turnkey. Obviously, I’ll be required to not only to make a lot of seemingly mundane decisions, but I’ll need to understand the implications of each of those decisions. It is for this reason specifically that I don’t attempt my own renovations. I am however mostly self taught when it comes to web development because at least with software it doesn’t cost more than my time for making the wrong decisions, and I still get all the benefit of learning from my mistakes.
That being said, I certainly agree there is a dilemma of choice out there, and in many cases some of these choices are even largely unimportant: Rails v. Django, jQuery v. Prototype, your pick of any of a multitude of JS MVC frameworks, etc., etc., etc. There is no doubt that this is somewhat annoying, however the question remains: Should this surprise us and is it really a solvable problem, or is this simply a natural result of the growth and advancement of technology?
I’m going to go right ahead and admit that I’d like to agree with the authors manifesto at the end, because heck those things sound like good things I want and wouldn’t it be nice to have all those things just for free. Where this conclusion falls flat though is the main assertion that because these things aren’t free and don’t come easy that web development as a whole must be considered broken.
Of course we all want those things, but those things are not easy for a reason, the main reason is that web development is still, well… developing. Technology evolves and as it evolves it actually becomes more complex as it provides us with more capabilities. Furthermore, we work in an industry that want’s to start utilizing these hot new capabilities before the standards they’ve been written on have had time to cool. Of course this is going to have it’s challenges, and of course not all of those challenges will be the fun and interesting part.
This experience is common to just about every line of work and it’s called “the grind”. But the process and experience of grind is also what drives us to improve and increase our efficiency at what we do. This is how we stay on top of and manage the growing complexity of our craft and to continue to get #$% done. It’s the desire to minimize the grind that leads to frameworks like Rails and Django and Node and jQuery (and unfortunately for anyone familiar with it, drag-and-drop WebForms). It’s what leads people to try to build new frameworks, languages and tools to solve their own personal grind better. But what is good for the goose here is not always good for the gander so you are not going to have one-web-to-rule-them-all any time soon, if ever.
Unfortunately for me, this was yet another blog post that opens up with an attention getting and somewhat controversial (certainly overly general) title and then leaves us with a “+1 me too” conclusion we want to agree with but in the middle there isn’t any meat to it. It’s like an empty blog post sandwich, it left me hungry and confused as to what point was really made and what the author expected to be done about this supposed problem.