What's changed in Webdev in the past few years

In the magical world of WebDev, things move fast. Because of this you should be aware of what the hot new things are, but more importantly, you should be looking for "boring technologies that just work". Practical tools will save you years of hassle and headeache. But most importantly is to kill technologies that serve no purpose any longer. Types JS Frameworks Testing Bundling, treeshaking, live-reloading, HMR, etc Local JS runtimes/package managers Styling Linting Browsers Types JS is and always will be a dynamically typed language. There is a lot of power and convenience that comes with this. But with power comes dangers. There are those that dedicate themselves to JS and know it well enough to have no problem working around the danger and still taking advantage of this power. "TypeScript solves problems I don't have, in ways I don't like." – Kyle Simpson, Author of the highly influential "You Don't Know JS" book series. But if you don't want to be an expert, or just want a tool to make sure you don't run into these problems, that's where TypeScript comes in. TS hype hit its peak a few years ago and has mostly plateaued. It solves some problems, but also creates a lot of new ones. Though adoption has slowed down, it is still extremely widely used, and there is wide support across the ecosystem and tooling for it. Though having to deal with so much tooling could be avoided by using the next option: Some people use JSDocs + ESLint-Plugin-JSDoc to solve the same problems differently without all the downsides TS comes with. Svelte, for example, switched over to this approach, and many others (myself included) have as well. The JSDoc approach is fully compatible with the TypeScript Compiler (tsc) and the TypeScript Engine (used in editors like VSCode), and is also recommended by the TS maintainers. JSDocs isn't a "cool" or "sexy" option, but it is very practical. JS Frameworks React is still the "most used", but is also quickly becoming quite unpopular. It has consistently been the worst option every year since its inception. Despite massive improvements over the years, its just never been able to keep up with the rest of the landscape. For example, in the past ~5 years all JS frameworks have introduced some form of "signals-like" API. React was the last one to the party, releasing their attempt at this concept less than a year ago. Even Angular beat them too the punch. But with all these years, and all these other examples to look at and learn from, their API was still somehow the worst designed of them all. React, to this day has still, never come up with a solution for how to deal with styling that doesn't have huge drawbacks. It has thousands of weird idiosyncrasies that require you to learn entire books of bandaid patterns to work around these react-exclusive problems. It's just plain slow and painful. The only people using it now are newbies that have never tried anything other than it. or people that are forced to by their jobs. The current trend for those stuck with using React is to try to obfuscate it as much as possible behind Next (mediocre meta framework). Next has had a lot of controversy recently though due to its security issues and the company that owns it being dicks or something, I don't know, I don't care about this ghetto-ass basic-bitch drama. Fuck anyone still using this trash. Because no one wants to deal with this garbage anymore, there are tons and tons of "red flag" React jobs that flood all the online job markets, which perpetuates the stereotype that everyone is hiring for it, which makes newbies think they need to learn it, and it makes other companies think it's a good idea to use it. It's basically the same problem we saw with PHP in the 2000's and early 2010's. Similarly I think the only path forward for React is for the community to relentlessly mock it, like we did PHP for over a decade until PHP finally fixed all of its issues. New generations need to be warned away from React the same way we warned them away from PHP. Svelte It has the most hype at the moment. Its main claim to fame is that it does not use a Virtual DOM, and instead requires a compilation step to produce render functions that mutate the DOM directly. It is the fastest JS framework. Its templating system isn't the best, but it's much better than JSX (commonly used by other JS Frameworks, like React, Solid, etc). It has a much smaller ecosystem. However, because it's mutating the DOM directly, it's more compatible with existing "vanilla js" libraries, which sort of helps. But ultimately you use a framework for the ergonomics, so having libraries built specifically in the same style with it in mind will feel better to use, there just isn't a lot of that. Vue - Still the best option, though hype has completely died off at this point. Vue's hayday was back in 2018 where it out-paced React in GitHub stars and was the open-source darling savin

May 4, 2025 - 07:09
 0
What's changed in Webdev in the past few years

In the magical world of WebDev, things move fast. Because of this you should be aware of what the hot new things are, but more importantly, you should be looking for "boring technologies that just work". Practical tools will save you years of hassle and headeache. But most importantly is to kill technologies that serve no purpose any longer.

  • Types
  • JS Frameworks
  • Testing
  • Bundling, treeshaking, live-reloading, HMR, etc
  • Local JS runtimes/package managers
  • Styling
  • Linting
  • Browsers

Types

  • JS is and always will be a dynamically typed language. There is a lot of power and convenience that comes with this. But with power comes dangers. There are those that dedicate themselves to JS and know it well enough to have no problem working around the danger and still taking advantage of this power.

"TypeScript solves problems I don't have, in ways I don't like."
– Kyle Simpson, Author of the highly influential "You Don't Know JS" book series.

  • But if you don't want to be an expert, or just want a tool to make sure you don't run into these problems, that's where TypeScript comes in.
  • TS hype hit its peak a few years ago and has mostly plateaued. It solves some problems, but also creates a lot of new ones.
    • Though adoption has slowed down, it is still extremely widely used, and there is wide support across the ecosystem and tooling for it. Though having to deal with so much tooling could be avoided by using the next option:
  • Some people use JSDocs + ESLint-Plugin-JSDoc to solve the same problems differently without all the downsides TS comes with.
    • Svelte, for example, switched over to this approach, and many others (myself included) have as well.
    • The JSDoc approach is fully compatible with the TypeScript Compiler (tsc) and the TypeScript Engine (used in editors like VSCode), and is also recommended by the TS maintainers.
    • JSDocs isn't a "cool" or "sexy" option, but it is very practical.

JS Frameworks

  • React is still the "most used", but is also quickly becoming quite unpopular.
    • It has consistently been the worst option every year since its inception. Despite massive improvements over the years, its just never been able to keep up with the rest of the landscape. For example, in the past ~5 years all JS frameworks have introduced some form of "signals-like" API. React was the last one to the party, releasing their attempt at this concept less than a year ago. Even Angular beat them too the punch. But with all these years, and all these other examples to look at and learn from, their API was still somehow the worst designed of them all.
    • React, to this day has still, never come up with a solution for how to deal with styling that doesn't have huge drawbacks.
    • It has thousands of weird idiosyncrasies that require you to learn entire books of bandaid patterns to work around these react-exclusive problems.
    • It's just plain slow and painful. The only people using it now are newbies that have never tried anything other than it. or people that are forced to by their jobs.
    • The current trend for those stuck with using React is to try to obfuscate it as much as possible behind Next (mediocre meta framework). Next has had a lot of controversy recently though due to its security issues and the company that owns it being dicks or something, I don't know, I don't care about this ghetto-ass basic-bitch drama. Fuck anyone still using this trash.
    • Because no one wants to deal with this garbage anymore, there are tons and tons of "red flag" React jobs that flood all the online job markets, which perpetuates the stereotype that everyone is hiring for it, which makes newbies think they need to learn it, and it makes other companies think it's a good idea to use it. It's basically the same problem we saw with PHP in the 2000's and early 2010's.
    • Similarly I think the only path forward for React is for the community to relentlessly mock it, like we did PHP for over a decade until PHP finally fixed all of its issues. New generations need to be warned away from React the same way we warned them away from PHP.
  • Svelte
    • It has the most hype at the moment. Its main claim to fame is that it does not use a Virtual DOM, and instead requires a compilation step to produce render functions that mutate the DOM directly. It is the fastest JS framework. Its templating system isn't the best, but it's much better than JSX (commonly used by other JS Frameworks, like React, Solid, etc). It has a much smaller ecosystem. However, because it's mutating the DOM directly, it's more compatible with existing "vanilla js" libraries, which sort of helps. But ultimately you use a framework for the ergonomics, so having libraries built specifically in the same style with it in mind will feel better to use, there just isn't a lot of that.
  • Vue - Still the best option, though hype has completely died off at this point.
    • Vue's hayday was back in 2018 where it out-paced React in GitHub stars and was the open-source darling saving us from a miserable life of using React and Angular (the worst, and second-worst frameworks that were consequently the most and second most used