el texto
it has literally nothing to do with the technologies underlying hashtag The Web. HTML, CSS, and JS themselves are all very performant today, and the first two in particular always have been as they existed at any given time (that is to say, HTML 2.0 performed well in the late 90s when it was created, although modern HTML 5 may not on the same machines). JS has a more complicated history, but has been fast for like 15 years, since the introduction of V8 (and now other fast runtimes). even in actual practice currently HTML and CSS are never going to be the bottleneck, they're both implemented with compiled languages in every case, and largely by people who are the most skilled at that stuff in the world, especially Blink because google has enough money to recruit whoever the hell they want. and the same goes for V8 obviously
the issue is in
some of the frameworks used. and not in others! several modern ones are really fast, and don't even jeopardize developer experience for that sake, like Svelte, Solid, Preact, or Inferno (the last three of which are all React-inspired, not because React is fundamentally best, but simply because React is popular and people know it and these frameworks aim to be used). the problem is in how frameworks are used, with a lack of care and attention (as i previously complained about). the problems come from having state changing in components that contain other components, which in turn likely contain more, and so on and so forth. meaning that a single minor change can cause large sections of the page to be re-rendered almost from scratch, and as little as scrolling or moving your mouse around can sometimes trigger these changes on particularly badly-architectured web apps
memory usage is also related, because (again due to lack of care and attention) foolish developers will often replicate state over and over again; for example, if a bunch of components need access to some basic info about the user (which is common), they will
all be given their own unique copy of the entire user object, because they write their code in naive but easy-to-write ways that results in them doing that instead of sharing a single copy of the object and simply referencing it from all of its users. now multiply this with every single piece of data an app may need, and every single component that may use some data, and you've got 300MB chrome tabs
avoiding these issues requires extra work, yes, but honestly not that much. the faster frameworks I mentioned before include optimizations to minimize the impact of these stupid, thoughtless choices, but that can only go so far. some of them have different designs that specifically discourage you from doing that kind of thing, but again, in the hands of a lazy developer, any framework can be made slow. Svelte in particular does that discouragement. I can't really speak for the others I mentioned, but their decision to take after React doesn't bode well as far as that goes frankly
as for what you said about developers being reasonable not to care, I dunno. I don't really buy that. having a bad boss doesn't excuse you from making irresponsible decisions that negatively affect other people; the stakes may (sometimes!!) be lower for developers than for doctors or something for instance, but I don't think it's a good justification nonetheless
but perhaps more importantly, that is not an issue directly with web development at all. bad developers, regardless of why they're bad, will create bad software whether it's a web app or a native ui software or an operating system. that is not a web development problem. I think the issue is that web development being relatively easy to enter (which is a good thing in and of itself) means it's also easier for idiots and people who just don't give a stuff about anything to enter it. people writing rust are more likely to care in the first place because you don't really get into rust by convenience
and to be clear I'm not saying that every developer must be passionate about software. there is a big difference between the "passion" that bad recruiters look for and a fundamental concern for how your work impacts other people. we don't expect doctors to be passionate about fixing people's respiratory diseases, but we do expect them to want to help their patients above all else
to state my ideology explicitly, I think all people should care about the work that they do to the degree that it impacts other people*. I do have more sympathy for, for example, people working at mcdonalds for pay that is less than the HHS's poverty guidelines making the same stupid burgers every day. they can get some extra forgiveness for being "lazy" about what they do, making mistakes (so long as they aren't food safety-related;
endangering other people crosses a line). but developers making 80k+ don't get that leeway in my eyes
*not investors, managers, etc. forget those guys. I'm talking about customers, clients, etc