The Bloated State of Web Development

cover
6 Oct 2023

Another day, another JavaScript framework popping up. Seriously, web devs nowadays are like little kids in a candy store, grabbing at every new shiny toy that comes along.

Do we really need another f#@$ing framework to add a hamburger menu or a listbox component? Give me a break.

Back in the day, all you needed was some good 'ol HTML and CSS to build a website (and that was not even that long ago).

No node, no npm, no 39483 dependencies to slow your site down to a crawl.

And it worked just fine! Pages loaded fast, code was clean and simple, you didn’t have to worry about shipping a damned compiler for a single website.

But then… JavaScript came along barging in like an overeager frat bro and complicated everything.

All of sudden you needed build tools to bundle and minify your code, package managers to wrangle dependencies, transpilers to convert between 37 flavors of JS.

Web development went from sipping tea on the porch to doing tequila shots at a frat party real quick.

And for what? So you can have a bloated SPA that takes 5 seconds to load and runs like crap on mobile? Great job people.

The worst part is this mess keeps piling up year after year. Grunt, Babel, Webpack, Rollup, Parcel, Vite, Bun, and a hundred more I can't even remember.

I have to be honest, I don't even know what half this crap does anymore.

I just npm install it and pray to the JavaScript gods that it works.

"Just use React, it's the best!", they said.

Yeah well, now I have to learn JSX, Redux, React Router, and a bunch of other React-ecosystem nonsense just to build a simple web app.

Don't even get me started on how many new frameworks pop up every year. It's like the Framework-of-the-Month club out here.

Hot new framework drops and every YouTube or Twitter “influencer” is buzzing about it.

Vue gets hot for a minute, then React takes over again. Svelte comes out of nowhere promising to fix everything, again.

Next month is Solid JS, or Astro, or Remix, or whatever new shiny toy comes up.

What the hell happened to just picking a tool and sticking with it? Now it's like if you're not re-writing your app in the latest hotness every 6 months, you're screwed.

And I’m only talking about the front-end part. I can't keep up with this crap anymore.

Ain't nobody got time to rewrite everything in Nuxt or SvelteKit because it's the cool kid of this month.

And let’s not talk about the TypeScript vs JavaScript debate. There’s enough people already on both camps.

“Ohh TS is better because it has types and my editor helps me correct errors”.

“Ohh you don’t need TS, just put JSDoc on your project and you won’t need to do type gymnastics”.

Look, if I wanted a static typed language, I’d use a real language like Python or PHP for that.

Instead of some pseudo-statically typed BS that it’s supposed to work both on the backend and the frontend.

I hope that the day when JavaScript implements those features as default in the language will come soon and we can get rid of this useless TS vs JS debate.

Here's an idea, how about we just freeze JavaScript for a while? No new frameworks, no new syntax, just stick with what works for a year.

But no, the JavaScript hype train keeps on chugging, bloated as ever. Everyone wants to be the next rockstar with their own popular framework and 100k GitHub stars.

Meanwhile, I'm just trying to make a website layout without needing a CS degree and 200 dependencies.

Look, I get why it is this way. Moving fast and breaking things a la Silicon Valley, right?.

But web devs have gone from adopting new tech to just recklessly grabbing every new shiny object like hungry seagulls.

Just because you can build a new framework doesn't mean you should.

We have enough choices already. How about improving the tools we already have instead of starting from scratch every year?

And I know that every new framework that has come up till this point has done so with the intention of improving the web dev space.

But you know what they say, “The road to hell is paved with good intentions”.

We not only have an overabundance of web frameworks/libraries but also of web dev tooling.

And most of them are doing a very similar thing just in a different way because of “innovation”.

Why don’t we stop acting like petty little kids and instead collaborate to make web development the simple and enjoyable space it once was.

But who am I kidding, really?

This industry will keep attracting new developers trying to make a name for themselves while churning out another amount.

New frameworks and tools aren't going away anytime soon.

And websites will keep getting big and bloated with all fancy things like WebGL, 3D animations, and whatever else.

I’ll better order another tequila shot, cause this crowded frat party ain't slowing down anytime soon.