Preliminary note: This is a recurrent question on this forum, a genuine FAQ.I want to start learning coding but am not sure what would be a good language to learn?
With a passion for cryptos and blockchain is there a language that is best to master that could help me understand the programming better and logistical process?
Thanks!
First, realize that you have a profound responsibility when you write code which handles
Other People’s Money.
I am all for helping more people become Bitcoin
users. But we do not need more coders. We need fewer and
better coders working on Bitcoin and “cryptos”. Whereas most people are innately incapable of ever becoming good coders, just as I myself am innately incapable of ever becoming an Olympic gymnast.
Do I discourage you? I intend to! You
should be discouraged from learning to code machinery which handles Other People’s Money,
unless you have such a keen ability that nothing I say could possibly discourage you. People who have such an ability always do know themselves that way.
If you think you’re up to it, and you want to take on an awful responsibility: First, learn much, much more about computing generally. Read up on the fundamentals of applied cryptography. Then, learn Bitcoin technical concepts inside and out. By the time you get through all this learning, you won’t need to ask for advice on picking a language: You’ll know enough to do that yourself.
I do
not recommend selecting a “beginner’s language” for anything whatsoever to do with Other People’s Money. Use a “beginner’s 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 People’s Money, then you need to be a serious programmer. Serious programmers usually don’t start with a “beginner’s language”; certainly if they have the aptitude, they don’t need to. If you read up on the concept of, say, pointer arithmetic, and you feel that little light bulb go on in your head—then why wouldn’t you start by playing with pointers?
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.
If that’s how you need to learn to code, then YOU SHOULD NOT BE CODING. Most of all, you should stay the hell away from Other People’s Money.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?
We will stop getting “Bad Code Lost XYZ” threads, when people take the coding of financial software as seriously as they take the practice of medicine, engineering of bridges and tunnels, and other professional tasks where errors result in
PEOPLE GETTING HURT.
Edit: Cross-reference:
Re: Bad Code Has Lost $500M of Cryptocurrency in Under a Year