Rust and Go

On our MSc we use Python and Node.js to teach the core concepts around cryptography. We thus avoid all the horrible syntax and compilation…

Rust and Go

On our MSc we use Python and Node.js to teach the core concepts around cryptography. We thus avoid all the horrible syntax and compilation issues of C++. But, what if we need low-level access to memory and pointers, and also require fast computation? The scripted languages, too, can cause problems when they are executed, especially in generating errors within the run-time code, and that have not been checked.

I remember adding software integration into teaching exercises, and the students generally disliked the Java, C# and C++ parts, but fire-up a bit of Python code, and it all makes learning a whole lot more fun. There’s something a bit more natural with scripting, especially as it typically avoids that whole IDE/compilation/linking part. To me, creating my code is nano or vi on Linux is just as useful as me running Visual Studio on my Mac.

Well, two answers are Rust and Go, and which merge together the advantages of compiled languages and which are easy to integrate with GitHub-based code. For them the installation of a library is not through complex compilation methods, or DLL integration, but with simple Git integration.

Like it or not, the world is moving towards GitHub, and it is now the foundation of our software world.

Go thus aims to “Code less, compile quicker, execute faster”. And so, I have written a few articles on using Go:

So, Go and enjoy coding. For some reason — even though I have written books on them— I find Java and C++ just a little bit boring and bland, but a world of learning opens up for me when I fire up Python, Node.js and, of course, Go. Our software world is changing fast, so get on-board, or you will be left behind.

I will cover a bit of Rust in a future article. For just now, go and install Go, and learn some crypto.