Python Question

Hello Ivan and everyone,

I have just started up the blockchain programming course (I am loving it so far). I just had a question that maybe anyone can answer but would like to know your input.

Is there a reason we aren’t learning python? I am close to finishing the first java-script unit, so I have no idea what is to come when I start the smart contracts programming. The reason I ask is that my college, who is a Cryptography professor, is very adamant about python being a superior language.

I, on the other hand, have limited knowledge on the difference between java and python.

In summary, what is your opion on python and what do you think about its place in blockchain compared to java and the other languages?

P.s I would like to appologise in advanced if you cover this later on in the course, I like to jump the gun sometimes.

One Love.

Here is the deal about programming languages, they are usually built for a particular purpose or to be the best within a certain scope. Most provide the functionality where anything could be implemented with them, but it might be harder or more complex as compared to some other one for a given task.

Python is a powerful interpreted language, but it abstracts many of the lower level machine concepts away from you as a programmer. It also does not share in the C/C++ family of syntax ( way you structure statements in a language [ symbols and code structure ] ), but JavaScript does.

The smart contract programming that we learn in this course is performed in the Solidity language, for Ethereum contracts, and in C++ for EOS. Solidity is a lot like JavaScript, but I would not say the same. However, learning JavaScript sets you up with good fundamentals for tackling the lower level manipulations of C++ which will provide a level of understanding required to move into smart contract programming.

Also JavaScript is a powerful front end language that will help you design the interactive user interface for your websites and Dapps. Python doesn’t do anything in the front end of a webpage.

Python may be the best language for you if all you were concerned with was Cryptography and Machine Learning, or even back end server programming ( though node.js is a good application here as well, personally lean on the Go language for this myself ), but learning Python won’t really prepare or help you for/with smart contract programming on the environments covered in the course.

1 Like

Hey CurtGreen,

Thanks for the clarification really helped!