Hacker News new | past | comments | ask | show | jobs | submit login

>“ Things have really changed since I began learning, and rightly so. Instead of coding in plain HTML, CSS and JS, I'm now using endless frameworks, modules and libraries to build increasingly more complex web and mobile applications. It's great, if I didn't use these tools my code would be an unmaintainable mess.”

How sad that this has become the widely accepted narrative. There’s a lot of value right now in NOT building things that way. Last week I had to deal with fixing another dev’s mess on a stuck project. Big company website, but nothing fancy at all. Purely a marketing window. The amount of complexity he put into it by using Vue.js was insane for the scope of the project. INSANE. To do something as easy as changing the pages <title> tag we had to write an unjustified amount of lines of code. Framework-itis really is a bad disease, it not only affects your work, but it definitely clouds the simplest form of judgement, it appears. Then we have exactly this: someone who got a hammer and spent years treating everything like a nail comes to a reckoning, usually framed as a longing for the good old days when things used to be simple. Well, you know, things can still be simple, if you don’t offload to unjustifiably complex frameworks the duty of understanding what’s going on in your project. To be clear, I’m not at all against frameworks. I love and use some of them, but they’re like a closet. If you are a tidy and organized person, your closet will be full of neatly folded clothes; if you’re a messy person, it will still be a repository for heaps of displaced garments, ready to fall out as soon as you open the door.

As someone that has used vue.js quite a bit in the past, I have to admit what you came up against is quite odd. It is a very minimal framework.

He might just be that kind of JS dev that really likes to build a webpack castle.

You know, if you can drop in a url to a cdn-distributed version of a JS, you'll instead rebuild the whole thing in webpack, babel, and several other things just to be able to type "import".

I don't understand why changing a title tag would require any code. Is it the framework or the code?

(I don't know Vue, but this smells a bit.)

We had a similar scenario at my workplace, but with React rather than Vue.

We wanted an internal component to be able to change the page title, which ended up with a project to transition to using react-helmet. It ended up taking a few weeks before this project completed.

Which is nuts, because you can also just write your own little one-liner to manipulate the title


const setTitle = (t: string): void => document.title = t


Yeah, that would've been great but it was a shared codebase among many teams and one of the hard rules was no access to stuff like document :(

We also couldn't console.log in this codebase, it was very ideologically pure but it took ages to make any changes

Sounds to me more insane than pure

It's not about Vue (or React for that matter). Incompetent developers will take whatever tools they have at their disposal and turn a few hours project into an unmaintainable monstrosity.

True, but in my experience a lot of younger developers have been trained to think in frameworks all the way, with the result of growing a dangerous fondness for unnecessary complexity. To them, I feel, turning something easy into an opaque mess that the client is of course too dumb too appreciate, let alone understand, is a sign of quality and somehow a matter of pride. For the aforementioned project, that I could have built up in three days with HTML + CSS + some js sprinkled on top for effects, it took them a month and a half, and then he bailed on minor Cosmetic changes because “the allotted time was over”. The client was literally fooled into spending more for this bullshit.

It's a syndrome of modern web dev, killing mosquitoes with bazookas

From my experience complexity often hides hidden and undocumented requirements, which will only become apparent after the complexity is removed.

However, I've also seen simple pages that are line by line copies of tutorials for whole sites, pared down to a single page.

Frameworks aren't bad, unstructured working practices and environments often breed this sort of toxicity in code.

I agree. Table saws are amazing, but I wouldn’t cut bread with them :)

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact