A masterful rant about the shit state of the web from a front-end dev perspective
There’s a disconcerting number of front-end developers out there who act like it wasn’t possible to generate HTML on a server prior to 2010. They talk about SSR only in the context of Node.js and seem to have no clue that people started working on this problem when season 5 of Seinfeld was on air2.
Server-side rendering was not invented with Node. What Node brought to the table was the convenience of writing your shitty div soup in the very same language that was invented in 10 days for the sole purpose of pissing off Java devs everywhere.
Server-side rendering means it’s rendered on the fucking server. You can do that with PHP, ASP, JSP, Ruby, Python, Perl, CGI, and hell, R. You can server-side render a page in Lua if you want.
I’m sorry, but the vast majority of this really just boils down to “all my coworkers suck.” Why the fuck are you still there? It sounds like literally nobody you’ve ever worked with knows how to do web dev
And the church said? Amen!
Preach it, brudder!
I’m not versed in the web dev scene, front end or back end. But if you mean the people that design sites where shit isn’t loaded in proper sequence and keeps shifting/moving buttons as it keeps loading more shit, then yes, fuck those people.
so, this isn’t so much a design as it is a consequence of how a lot of the technologies involved operate (as in, it’s (largely) not a conscious choice for those things to do that shifting (except in the cases of deceptive designs)), but you’re fairly correct in that it fucking sucks to have that interaction with sites/systems (because of violates principle of least surprise, etc)
(and probably also sometimes/often falls into that bucket of things where “it works perfectly fine on the dev’s 27” laptop with 16 cores and 32gb of RAM and the DC is next door" development applies)
This is so cathartic to read.
I have worked with multiple static sites delivered with React, because somebody built an enterprise design system which is so tightly tied into React that it can’t be applied any other way.
Lemmy, e.g. this here site, uses React too. Probably about as weirdly as they use Rust, even as the site appears to present an ok front end.
it’d be very nice to have a progressively enhanced static frontend instead since there’s really nothing about any of this that should require JavaScript (and something like unpoly would give us react SPA style functionality strictly as an enhancement on top of plain HTML)
this might be a cool project for someone to pick up once work on Philthy gets going; most of the alternative Lemmy frontends still have an unnecessary JS framework dependency, or are lacking features for essentially no reason
The main reason companies use frontend frameworks is it’s easier to continue development through employee turnover. If your app was written in react or angular you just have to hire someone who knows how those work and they can get up to speed pretty quickly. Modularity also allows for code reuse. It increases maintainability. Labor isbtye major cost of software development, so making things easier and faster to develop and maintain is better from a business perspective than ensuring your app can run on a 15 year old iphone.
If you wanna go frameworkless, JS-less, or whatever on your personal projects then fine. If you insist on it in a professional team environment, you’re making everyone’s lives more difficult.
we used to strive for minimum possible front-end payload, and it was an embarrassment to do anything with JS that wasn’t backed up by a non-js default. Will never forget how suddenly React removed all those things from front-end team meetings.
They were solid industry-wide concerns that just… disappeared
i keep finding so much that’s done with JS that there’s perfectly good CSS for
it turns out browser rendering is fucking fast in 2024
As someone who’s doing a ton of frontend and backend, and I can’t stress this enough, fuck the asinine attitude that somehow everything that’s even remotely web-adjacent needs to be written or rewritten in pure JS.
Also Node is an abomination and literally every other language I’ve tried is better for the backend. People love to shit on Ruby, but JS has every flaw that Ruby is criticized for and then some, and at least Ruby makes an effort to take some great design paradigms from Lisp.