This thread of comments is kinda weird to me, there's like a romanticized view of old timers or something, and the problem must be the young, money hungry and unenthused. It feels like boring old internet gatekeeping and is not insightful.
There is a totally different world in tech now than in 1994. Tons of stuff and often optimized for mean time to recovery. I crave quality too (believe me) but I think shipping fast and breaking a few eggs (not directly but that's essentially what you're left with) is what is asked of engineers in 2022.
All of my peers seem to care about quality and we do our best but even in the days of buying software on floppy disks, bugs existed.
Back then, we all could have a pretty strong hand on the wheel of our websites & how they functioned, at a detailed level. It was feasible, for the scope was small. But now, we all use package managers, we all use bundlers, we all use minifiers, we all use production builds, we all use tree shakers. Any one of these concerns is a significant realm that tends to have significant people-years worth of work poured into it. The need for these capabilities distances the practitioner from the core truth of the media: we no longer see clearly what we are doing, we no longer have personal stake or control in the processes.
There's still a strong latent desire to re-simplify, to de-configure the web, to de-build it. We had hopes that EcmaScript Modules would help, we had hope HTTP2 Push would be a viable delivery platform, for un-tooling, but we never really made an earnest go at tackling the optimization problems that all brought in; works like Cache-Digest never de-facto materialized or got made-available. Front-end architecture similarly has been dominated by high-abstraction top-down frameworks, namely React, which complects in a wide host of assumptions/abstractions that distance the practitioner from the actual media-form. Just as ESM was a hope that we might get back to understandable, without lots of framework/tools, WebComponents too presents a hope that we can strip away a lot of the specific complexity & find a more inter-modular, general & understandable grounding. The web can & should be at a similar power level to where it is, more so, but in more honest, accessible, direct manners than the crafted-of-necessity deep layering we cobble with today.
When the internet came through a modem and bandwidth was very expensive, performance was concern #1. So pages were kilobytes, not multi-megabyte monstruosities.
That effectively ended in the mid 00s. Otherwise we wouldn't have had services like YouTube.
Between those times and around 2012 there was an explosion of script bloat because back then it was more important to have an interactive page than a fast page.
Bandwidth resurfaced as a concern only with the proliferation of mobile devices.
The whole premise of tree shaking, introduced in 2012 was to reduce bloat.
we did indeed squeeze a lot out of the code we wrote. and we were very aware of js performance issues- using array.join religiously instead of concatenation was a big one. but most of the modern techniques & concerns simply werent appplicable or possible.
the shift from writing it ourselves to loading dozens or hundreds of modules came quite late, all told. that lead to the explosion of performance tools & techniques.
The most productive thing our industry could do is create an anonymous blacklist of devs to avoid and code samples of their shit work.
Sounds like Github Copilot.
The goal isn't to "build X" anymore, it's to "build X but with N engineers", with N being multiple times the minimum amount needed. This affects how tools are built. They're built "to scale", and this trickles down to smaller companies too. This also affects how software ends up looking, meaning custom GUIs and widgets all the way, even when it's not necessary.
After working in a couple Unicorns where the investors asked for larger headcount, and a short stint in a FAANG, that's my experience.
Maybe there are, I also have no idea. But in my experience most engineers are qualified and hard workers, even when there is team bloat. Companies are hiring well. It's just that they're hiring too much.
> The vast majority of software projects aren't managed by FAANG or Unicorn companies. The financial landscape in those companies is completely detached from reality and not a good basis for comparison.
But this happens on several industries, not only FAANG. Most companies that get off the ground with a skeleton crew will start hiring more as soon as they get more cash, doesn't have to be from investors. That's because they want more things faster. The reality is grimmer, though: 9 women can't make a baby in 1 month. And 9 women can't also make an adult-sized baby in 9 months.
Because there is such a big drive for growth and more bodies, we have to tip toe around crap work and crap work ethics. Nothing wrong with being a bad dev perse if you accept it and learn to improve. But instead we ego stroke juniors and poor quality developers, inflate their contributions, inflate their title and then wonder when everything is shit at the end of the day. Those poorly trained juniors and boot camp devs are now eng managers, CTOs and loud evangelists that are driving our industry into the gutter with billions of funding.