I do not recommend selecting a beginners language for anything whatsoever to do with Other Peoples Money. Use a beginners language if you want to do casual programming, making little games or performing little practical tasks on your own computer. If you want to handle Other Peoples Money, then you need to be a serious programmer. Serious programmers usually dont start with a beginners language; certainly if they have the aptitude, they dont need to. If you read up on the concept of, say, pointer arithmetic, and you feel that little light bulb go on in your headthen why wouldnt you start by playing with pointers?
I have to partially disagree with you here. You can write great code in JavaScript or Python. You can write exceptionally shitty code in C or C++.
While I agree with your sentiment that "serious programmers" should heavily focus on computer science fundamentals I still believe there's nothing wrong with starting with more accessible languages as long as you are willing to move on and are aware of the limitations of the technology you use and especially your own skill level. That is to say, gather experience and knowledge before you even
think about handling people's money, regardless of which programming language you start with.
If you have NO experience start with HTML and CSS, slowly work your way into JS. Once in JS, Solidity should come fairly easy to you
This is how we eventually obtain such threads as,
Bad Code Has Lost $500M of Cryptocurrency in Under a Year. See especially the discussion downthread of Ethereum.
This I
fully agree with.
Think: Would you trust a surgeon who started his formal studies by doing surgery on pineapples with a kitchen knife, then worked up from there?
Surgeons don't
start their formal studies on human bodies either though. Point being, you need to start somewhere and that's okay as long as you're willing to continue learning and are aware of your own skill level.
Regardless of everything stated above I do agree with your sentiment that most people tend to vastly underestimate what it takes to become a software engineer that is actually able to handle money.