The growing complexity of modern software systems is slowly killing software developers. How can you regain control, without losing out on the best these technologies have to offer?
This is primarily a phenomenon in Js ecosystem I find. My team’s been using ClojureScript on the front-end and there’s no churn there. Reagent has the same API with a few minor additions, and the way its used has stayed largely the same. Meanwhile, React went through many API changes making code from a few years ago effectively obsolete, and development style changed with flux, redux, and introduction of hooks.
Amusingly, Reagent uses React internally, but abstracts it using a stable API, so that I can just update dependencies and get speed improvements without having to update all my code every few months.
And I find the same thing applies to tooling as well. ClojureScript compiler does stuff like code pruning, splitting, and minification out of the box. Meanwhile, doing that with Js requires a whole set of tools each evolving at its own pace.
I honestly don’t know how people put up with all that while maintaining large production applications.
This is primarily a phenomenon in Js ecosystem I find.
I agree. You realize that something is wrong when in your JS/TS/React/Vue/[whatever shiny toy] project you have more than 30 config files 🤯 .
That and the programmed obsolescence; a program/framework in web development these days is considered old if it doesn’t receive some “update” after a year and most likely when you try to run it after that time it won’t work correctly due to “outdated libraries/apis” is condemning this profession.
These are some of the reasons why I am moving to Rust/Clojure. They offer more congruent solutions when doing web stuff.
Yeah, that’s the worst part. The two choices you have in Js ecosystem suck/ One is simply not updating your project, at which point it quickly becomes legacy and you’re stuck any security issues in the libraries you’re using. Alternatively, you can try to keep up, which effectively means rewriting large chunks of your project every few months. It’s a no win scenario.
The worst part is that it’s often really just churn for the sake of churn. The features and complexity people add to Js frameworks are net negative for vast majority of projects out there.
This is primarily a phenomenon in Js ecosystem I find. My team’s been using ClojureScript on the front-end and there’s no churn there. Reagent has the same API with a few minor additions, and the way its used has stayed largely the same. Meanwhile, React went through many API changes making code from a few years ago effectively obsolete, and development style changed with flux, redux, and introduction of hooks.
Amusingly, Reagent uses React internally, but abstracts it using a stable API, so that I can just update dependencies and get speed improvements without having to update all my code every few months.
And I find the same thing applies to tooling as well. ClojureScript compiler does stuff like code pruning, splitting, and minification out of the box. Meanwhile, doing that with Js requires a whole set of tools each evolving at its own pace.
I honestly don’t know how people put up with all that while maintaining large production applications.
I agree. You realize that something is wrong when in your JS/TS/React/Vue/[whatever shiny toy] project you have more than 30 config files 🤯 .
That and the programmed obsolescence; a program/framework in web development these days is considered old if it doesn’t receive some “update” after a year and most likely when you try to run it after that time it won’t work correctly due to “outdated libraries/apis” is condemning this profession.
These are some of the reasons why I am moving to Rust/Clojure. They offer more congruent solutions when doing web stuff.
Yeah, that’s the worst part. The two choices you have in Js ecosystem suck/ One is simply not updating your project, at which point it quickly becomes legacy and you’re stuck any security issues in the libraries you’re using. Alternatively, you can try to keep up, which effectively means rewriting large chunks of your project every few months. It’s a no win scenario.
The worst part is that it’s often really just churn for the sake of churn. The features and complexity people add to Js frameworks are net negative for vast majority of projects out there.