We moved Railway's frontend off Next.js. Builds went from 10+ mins to under two
https://blog.railway.com/p/moving-railways-frontend-off-nextjsIt’s absolutely mind boggling to me that we have gotten to a point that building a web frontend takes longer than compiling the Linux kernel..
As a non-frontend developer mainly observing and touching something here and there, a lot of the things that frontend developers do seem vastly over-engineered.
I'm not insanely deep into frontend, I mostly just pick up React and call it a day, but it seems like this is also over-engineered?
I've seen vanilla JS before, and I just know I wouldn't want to do the housekeeping that comes with it. People claim it's less work because it' simpler, but I fully expect myself to rewrite the thing at least twice, only to give up because I have no actual mental model anymore of how it works.
I have never in my career encountered a Vanilla JS project of at least medium size that I would have called simple. They all feature brittle selfmade frameworks whose developers have since left the company years ago.
loading story #47687902
Isn't the main problem that the building blocks the modern web is based on are not a good fit for what we do with it?
CSS is a total mess. HTML is a mess. JS is okay, but is not a high quality language.
We would save so much time and money if we would have a modern base to build on. Sadly this will probably never happen, because company interests will try to corrupt the process and therefore destroy it.
How are CSS and HTML a mess? Combined, they're an incredibly powerful layout engine that works almost the same across all environments and devices while also featuring easy accessibility.
loading story #47688187
loading story #47687611
This is my understanding too - tools like react are like microservices - they’re a technical solution to an organisational problem. HTML/css/JavaScript is an imperfect abstraction, so we got bootstrap. Then we got client side frameworks which introduced a build step, and then we got asset bundles, optimisers, linters, validators, tree shakers, package managers, validators for your package managers. All of these monkey patched around the actual problem with more abstractions, and the end result is what we have now.
Like using SPAs for classical Web development, and then they rediscover PHP.
It’s mind blowing when you check the generated code, because it goes over 50 elements deep for a simple looking website.
Makes me think that there’s no way this is computationally efficient either.
That particular issue is nothing to do with Next or React and everything to do with how HTML/CSS is a really shitty layout engine.
loading story #47687679
Same reason why 90% of websites have serious UX issues and constant bugs. This and ad frameworks.
C is infinitely less complex to parse and validate than Typescript. C is compiled in a single pass, the `tsc` type checking algorithm has to check structural typing, conditional types and deep generics while also emulating JS' dynamic behaviour.
loading story #47687583
loading story #47688133
loading story #47687658
loading story #47687544
loading story #47687466
loading story #47687001
loading story #47687100
loading story #47687322
loading story #47688682
loading story #47687576
loading story #47686961
loading story #47687575
loading story #47687362
loading story #47687227
loading story #47687705
loading story #47687151
loading story #47688188
loading story #47687342
loading story #47686969
loading story #47687204
loading story #47687311
loading story #47686907
loading story #47688123
loading story #47687252