So it's a totally risk career move but that's either that either being sad at my workplace. Hopefully I'll feel empowered by the degree and be able to move on professionnaly.
Societal norms are not always right. Do what makes sense.
Maybe at 55 I’ll pick up mechanical engineering as a hobby.
Edit: also, in 96 the Internet was very different. Many problems were solved by reading man pages, reviewing library source code, and thinking hard about what was happening. Modern Internet and stackoverflow /can/ make you more efficient in the short term but in the long term, it’s worth not rushing to google every error or weird problem. Give it a few minutes. If you’re writing a web app for example, in say Django or Rails go peek at the source code (they are beautiful projects). It’s almost a crime to not review the Go standard library source code, it is one of the cleanest out there. Etc, etc.
I had a similar experience growing up as well. At age 8, I learned QBasic (on an MS-DOS / Win 3.1 system). At age 13, I learned C, and wrote a lot of code in it as well. (I used to write tons of C code up until around the middle of age 17. I had grand plans for all sorts of glorious software projects.)
But then, at the middle of age 17, a certain mild depression ("dysthymia") set in, and I lost a lot of hope, inspiration, and motivation. And now, I'm 31, and I've accomplished very little of my teenage dreams (even though I still hold/aspire towards those software dreams). I might be "successful" in society's eyes, with software engineering jobs paying in the ~200k range (which is not really that impressive, as I have many friends making in the 300k to 400k (USD) range); but in my own eyes, I still feel very much like a failure.
The depression or dysthymia had a crippling effect, that made a lot of dreams hard to accomplish. My 2021 New Year's resolution has been to overcome it my mental issues, and live life to the fullest.
It's more like "I am not accomplishing my goals and dreams" type thoughts.
I am just living an existence of working for tech companies (doing stuff valuable to people indeed), and making good money; but however, with the talents, and gifts, and skills that I've been gifted with, I could be doing so much more.
I’ve wasted so much time in the past decade learning random shit that I never used, it’s been a poor ROI compared to just continuing to hone the skills and languages I use daily. Really demotivating.
There are some keen insights about computing that are revealed by these languages - and those insights are transferable to your daily work in JS, C#, Python, Java, etc to some degree.
When Streams came to Java, I felt like I was already an expert in that paradigm, and was able to adopt it immediately in ways that made my Java code clearer and more concise, and maybe even more performant in some cases. (Streams can allow you to transform a very long sequence of data, without needing to realize the whole sequence in memory first, as one example.)
I also use immutable data structures by default wherever possible, unless I know I really need to mutate the data.
I try to make the output of a method dependent only on the inputs, wherever possible.
You shouldn't take it to extremes, but incorporating paradigms from one language into another can pay big dividends.
Some people say this, others say that it makes your daily work worse because going back to a language that isn't on the cult-approved list is so difficult.