Hacker News new | ask | show | jobs
by tedmiston 1615 days ago
The frontend "stack" has become unnecessarily complicated in the last ~5 years.
3 comments

What an unusual take to see on HN.

I love my modern frontend tools: frameworks that put state first and let me work with lots of data instead of endlessly fiddling with the dom, linters and code formatters that eliminate the need to think about whitespace and optional parens, build tools that let me target old browsers without writing additional code, intellisense that tells me what types of arguments a function accepts.

I still build a lot of things in vanilla JS, but ease of getting going is a tradeoff, because eventually I miss having prettier and typescript.

Sometimes I've had the impression that new FE frameworks (or libraries) arise to solve the complexity problem to then become a big complexity problem themselves.
Want to use modern syntax? Easy! just:

- switch to a new language

- add a new framework

- use a build tool / bundler and polyfills since all of those modern features aren't actually supported across your user's browsers / versions

- use web components... sorta, but not directly

- use a modern front-end shadow DOM-y framework with a dependency tree so deep that it could never be audited

- while you're here, take all of your CSS and abstract it to a meta language using template strings and jam it inside your JS / TS component files directly

- i know we are using all of this cool modern stuff, but... jQuery and Bootstrap still exist, so fallback if you feel like having fun and why not just add them to the mix too

- web app? no, no, no, this is a micro-frontend

- oh yeah, btw your SEO is going to suck with all of that client-side rendering in the single-page app, but not to worry, server-side rendering to the rescue

- so amazing how the future just works!™

[On a more serious note, I do actually appreciate some of the sane and simple modern frontend tools (we need more of those!) But going through all of this crap feels like overkill for an average run-of-the-mill CRUD web app. Just my 2¢.]

The Trouble with Tribbles
Only if you make it. If you use React without trying to maintain state it's quite simple.