3 ms·
Web development is like giving a box of 50 different lego kits jumbled together to your kids, while a lot of other development is like buying a new lego kit fro
by hayst4ck 3y ago
Web development is like giving a box of 50 different lego kits jumbled together to your kids, while a lot of other development is like buying a new lego kit from the store and giving it to your kids.
For a lot of tech there are fairly settled abstractions with a low number of meaningful choices. For web development, there are a huge number of abstractions that are not so easily comparable because they run at different levels and have lots of choices that will have significant impact on how things work and how things scale.
You can render JS in a browser, in your server, in a server that your server talks to. You can serve relatively static files, or you can serve files that set up an environment on the browser. Even in your application itself, you can decide to make your view a layer or you can embed it within your business logic.
So you have 4 layers that determine what eventually show up in a browser -> CDN/cloud front end -> application front end -> backend, and the internet as a whole has not decided what behavior belongs in what location and where the hard lines for where those abstractions begin and end are. I mean, we even have webasm. You could serve a virtual OS to a browser and make it run a webserver that runs a browser that runs a web page.
That's before consideration of the infinitude of framework choices and lack of a centralized "authority" (authority from merit, not from force) telling people what the best choices are and why.
So web development is daunting because there aren't many well defined abstractions. The abstractions are weak enough that there aren't many barriers you run in to which limit what you can do. So it's like making a lego structure, but half of the pieces are actually play-dough.