It's pretty astounding what reading to kids every day can do for them regardless of the environment they grow up in.
I feel like I rarely upgraded anything except GPU and storage. And GPU's are not needed for a server.
Enclosure means easy storage upgrade and I can always reattach the enclosure to another machine quickly. Might even install OS on the enclosure, then the whole setup will survive compute upgrades until the predominant architecture changes.
Having a couple of pre-built nas' from QNAP or Synology can go a long way to getting one's feet wet to learn what they offer that we sometimes learn the hard way about.
I got soooo tired setting up a gaming system for parties on my projector. There are so many various problems and tweaks, gamepads disconnecting if you put a hand between the gamepad and the pc/playstation etc. BSODs on windows, driver problems and stupid obscure things varying from pc to pc. I want plug and play, but consoles have their own problems and limitations. I am too old to debug this stuff to play a game for so little time, I would rather not. I didn't really believe in steam machines at the time, but now I sort of do, especially with game streaming and local LLMs that might be hosted there now.
But I can't help but agree with a lot of points in this article. Go was designed by some old-school folks that maybe stuck a bit too hard to their principles, losing sight of the practical conveniences. That said, it's a _feeling_ I have, and maybe Go would be much worse if it had solved all these quirks. To be fair, I see more leniency in fixing quirks in the last few years, like at some point I didn't think we'd ever see generics, or custom iterators, etc.
The points about RAM and portability seem mostly like personal grievances though. If it was better, that would be nice, of course. But the GC in Go is very unlikely to cause issues in most programs even at very large scale, and it's not that hard to debug. And Go runs on most platforms anyone could ever wish to ship their software on.
But yeah the whole error / nil situation still bothers me. I find myself wishing for Result[Ok, Err] and Optional[T] quite often.
The format and protocol of communication was never fixed.
In addition to the rest api’s of today, soap, wsdl, web sockets could all can deliver some form of API.
Looking beyond Apple/Intel, AMD recently came out with a cpu that shares memory between the GPU and CPU like the M processors.
The Framework is a great laptop - I'd love to drop a mac motherboard into something like that.