Comment by anyfoo
> I put all of my eggs in one basket most of the time, and I've been part of at least a dozen ventures that all failed. It's like flipping a coin and getting tails 30 times in a row, which feels like 1 in a billion odds of losing to this extent.
But it's not. It's more like playing the lottery over and over. The chance of succeeding even once is pretty low.
> My best years were invested in techs like C++ that nobody even uses anymore, and I wouldn't use because they don't provide enough leverage.
Bit of an odd choice. Not only is C++ still being used, as far as I know, but even if it weren't: If you know C++, you know C, and that is definitely very relevant. If you know C, you have vastly more low-level knowledge than the average programmer nowadays. C is not my favorite language by far (I like rust, or Haskell, depending), but just being proficient in it means I can program a lot of different things.
Anyway, to the rest of your point: I never wanted to get rich or anything like that, I always just did what interested me on a technical level. I fared very well with that.
Ya I kind of answered what you are getting at in my longer response. Basically it's a question of fulfillment.
I can feel how much more fulfilled I'd be if I got to make the personal contributions in my heart. I wanted to write languages and frameworks, even design hardware like multicore CPUs, that would have made tech work easier so I could accomplish more and maybe win the internet lottery in the process.
But instead, I just endlessly ran the treadmill to make rent, in the end only standing in place as if I had done nothing. That's what the very essence of the suffering of life is: we insert a coin from the astral plane to incarnate in this life and run the rat race, eventually losing it all to end up right back where we started. Do it enough and we might ascend to the next level, but even then, we eventually volunteer to start over as the fool.
So nothing against C++. In many ways, it's still the most capable bare-metal language. The catch is that the developer has to do everything by hand. It's like comparing a protected memory process to one that can take out the whole OS at any time. I know from personal experience, having programmed my first computer (a Mac Plus) with C++ in the early 90s and having to reboot up to 30 times per day.
Today my time is stretched so thin that in an 8 hour day, I usually get less than 1 hour of actual work done, and probably more like 20 minutes if I'm being honest. It's all logistics now. Travel, orchestrating containers, meeting with team members, researching workarounds for unfortunate snafus in whatever framework, navigating large codebases, maintaining the body and living area, etc.
If I was using C# or C++ instead of PHP and the shell, I simply wouldn't be able to get any real work done in any reasonable amount of time. And PHP is a lackluster language, a far cry from what I would design, but it's the only imperative language with copy-on-write arrays like functional languages, so runs circles around them and avoids countless conceptual pitfalls. It's like MS Excel, simultaneously the best and worst software that I've ever used.
I really want to learn Haskell and Scala to extend my functional programming knowledge, but so far have only made it to Lisp and Clojure. I think I need a course to overcome some of my misunderstandings around decomposition, currying, functors, monads, impurity, etc. The utility of MATLAB jumped out to me immediately (operations happen on arrays, not primitives, similarly to shaders), but I haven't found a use for lambdas as much.
I'm happy that you've fared well and are able to do what interests you. I'm struggling with discipline, motivation and giving myself the space to play as a people-pleaser. I've had a scarcity mindset and been in survival mode for so many decades that I don't know how to put myself first. I just procrastinate and project my frustrations onto the web..