News for hackers. Stuff that matters.
Re:Ask HN: I'm 40 and feel my mental ability declining. Prog... by riskable on Tuesday January 10, 2023 @11:14AM (#34327095)
Don't compare web development with "normal" software development. Writing code for the web is 10,000 layers of added complexity far above and beyond literally any other kind of programming.

"Normal" programming involves writing code that will run on one specific thing with (usually) one specific use case using tools (and often whole languages) made for that purpose. Web programming involves writing code that will run on any number of servers/devices/containers in any number of locations/networks using any number of architectures with arbitrary resources of wildly varying quantities and qualities that serves other servers, desktops, mobile devices, embedded things, and who-knows-what else; also of wildly varying quality/resources and quantities with wildly varying and unpredictable workloads/traffic intensity.

In other words, web development is about 100 orders of magnitude greater complexity than "normal" software development. It has become so bad that "premature optimization" is the norm; because the cost of re-doing things later to support a new feature/device/endpoint or fix an issue (e.g. lacking screen reader support) can be so great that adding a dozen layers of complexity to writing and deploying your code at the start can feel like a bargain in comparison.

Re:Ask HN: I'm 40 and feel my mental ability declining. Prog... by mmcnl on Tuesday January 10, 2023 @11:35AM (#34327438)
I agree that web development is complex. I disagree that abstraction layers add complexity. Abstraction layers solve problems. If you don't have the problems that these abstraction layers solve, then you might perceive that as complex, but most people actually do experience these problems.

The web is not just for websites anymore, it's a universal platform for app distribution. This means web apps can instantly be made available to billions of users. You noticed that yourself. This brings all kinds of complexity that these layers solve. They absorb complexity, not add it. So I don't understand why you would say things have gotten "bad". Things were way worse, but individial contributors never noticed.

Re:Ask HN: I'm 40 and feel my mental ability declining. Prog... by clnq on Tuesday January 10, 2023 @01:00PM (#34328812)
> I agree that web development is complex. I disagree that abstraction layers add complexity. Abstraction layers solve problems.

True, until there's a bug in abstraction level 6 caused by an upstream change in proprietary abstraction level 3 that's been patched in abstraction level 8, but not for your specific case. Then it becomes complex.

Re:Ask HN: I'm 40 and feel my mental ability declining. Prog... by mmcnl on Tuesday January 10, 2023 @03:46PM (#34331228)
Yes, but in my experience this doesn't actually happen that often as long as you don't rely on external dependencies too much. This happens in any ecosystem btw.
Re:Ask HN: I'm 40 and feel my mental ability declining. Prog... by mgkimsal on Wednesday January 11, 2023 @11:06AM (#34339952)
> as long as you don't rely on external dependencies too much. This happens in any ecosystem btw.

I can't think of many 'modern' projects in the web world that do not rely heavily on an often very large number of external dependencies.

Re:Ask HN: I'm 40 and feel my mental ability declining. Prog... by teamonkey on Tuesday January 10, 2023 @11:45AM (#34327573)
> Writing code for the web is 10,000 layers of added complexity far above and beyond literally any other kind of programming.

Video games? Mission-critical real-time embedded code? Operating system development?

I don't want to knock anyone down, but web programming is not the most complex or challenging thing going, it's just software development.

True, it's made more difficult and annoying than it should be, because you need to deal with a jenga-like stack of badly-designed and poorly-documented APIs, forced to use languages and systems with inherent flaws, and have your targets constantly shifting due to the latest fad. But then, that's not unique to web dev, it's just worse.