Hacker News new | ask | show | jobs
by bryanph_ 1018 days ago
I don't quite understand the mentioning of node at the start of the article as a cause of this. You can write a monolith in node just as well as you can write a web of microservices. That said I agree with the sentiment of this article, it's very frustrating to deal with in any company. Especially when these microservices aren't versioned under the same repo and/or are hosted at different providers causing unnecessary latency.
2 comments

They argue that Node tricks frontenders into thinking they can do server-side, then says they 'huff and puff' when this is pointed out to them. It's an incredibly patronizing argument to make.
One piece that I removed from the draft was about how I wanted to join in on the Node fun. In 2014, when I was writing very simple async Python Tornado code with "await", I saw the mess that was Node asynchronous development, and I was truly bewildered by why it was considered revolutionary and cool.

Is it opinionated and condescending? Absolutely.

Node is just the whipping boy for the old guys who are afraid of 2023. I say this as an old guy.
How would you sell Node to other old guys? Especially compared to Go.

I try to favor simple, efficient software. I used to dislike PHP because it was so messy and inefficient, until newer frameworks like Django made it look like it was slim and snappy. Maybe, in this race to the bottom, Node stands out in a way I hadn't seen, so I'm genuinely interested.

> How would you sell Node to other old guys? Especially compared to Go.

JavaScript has a huge business case in the front-end. Going another direction is possible, but you're really fighting against the grain to do so.

Go node/bun/deno and you can build back-end and front-end with one language. This has pretty significant advantages. Particularly if your goal is small teams (or solo) with "full stack" style devs. There are fewer siloed specialists required in the org.

Language concepts, syntax and patterns are a significant part of the cognitive load needed to develop.

If you're in a siloed org with specialists anyway, there is minimal draw.

I've done things like have a backend I brought into the front end to mock an immature system. Shared code between the back end and front end for offline-first systems. You just can't do that kind of stuff when you don't share a language between front-end/back-end.

Did you mean Python, or did you mean Laravel?