To Go or not to Go.
GoLang from the Perspective of C and Python Programmer.
One of the most popular languages today is Python. And with good reason. You don’t need to have so much boilerplate code. The code itself can be semantically understood. The best of them all? There’s modules for every little thing.
C- the Granddaddy of Programming Language.
C is one of the oldest programming languages. It is still included in Course Curriculums for many Colleges (including my own). The best reason one can give for using a language like C is that it is close to the core. It provides portability, speed and more control over the programming construct.
Which is why, the importance of C when it comes to Operating Systems and Embedded Tech is second to none. Naturally, if you can master your way around a language like C, you can do it for any language. Any problems with C has been well sorted by its successors like C++ and Java.
Where does Go fit into all This?
GoLang or Go.
There is a misconception of calling Go as GoLang. The former is the proper name for the language, the latter is just an abbreviation for Go+Language. With Go, you have to write a bit more code than your typical Python but not as much as C++ or C. The thing that makes Go so popular is the implementation of concurrency in Go. The only other popular programming with support for concurrency is Java. Please do not confuse Asynchronous Programming with Concurrency. They are different. You can read about it here. There’s also a bit of a difference between Concurrency and Parallel Threading and you can get it at the aforementioned article.
To Go, definitely.
Here’s the list of reasons why Go has become so popular in that span of couple of years:
· Fast and Potable.
· Go code can be compiled to JS.
· Useful for Web Development.
· No need for Frameworks for Web Development. You can develop a simple REST server or even the complete backend.
· Implements Concurrency using Go Routines.
· Moderate Level of Boilerplate code.
· Extremely Useful for Chaincode development.
The last bit there won’t be understandable if you are not familiar with Blockchains and Hyperledger Fabric.
There are many more reasons why you can choose to switch to Go from other programming language. And I intend to explore them in the upcoming articles. They are meant to help you get started with the Go Programming Language. I would try to give analogies here and there to help you relate with constructs in other programming languages.
There are not many modules available for Go as is the case with Python. But the performance perks cannot be ignored here. Not to mention, the unavailability of modules and libraries should appeal to the open-source developer in you. It gives a unique opportunity.
The community of Go is not that large (compared to the Python and JS base), but it is rapidly growing and you can be a part of it.