loading...
Cover image for 5 reasons to use Golang

Why use Golang 5 reasons to use Golang

carloslfu profile image Carlos Galarza ・2 min read

There are several reasons to start using Go:

  1. It’s statically, strongly typed with a great way to handle errors, this makes Golang more reliable and robust.
  2. It compiles down to one binary. Just execute it in wherever you want.
  3. It’s faster.
  4. The main reason why I use it is simplicity, there is only one way to do things, no more “beauty” and “clever code”, this point increases your code readability. You and your team always know what a piece of code is doing. It is the Golangs killer-feature 🔥.
  5. For the reasons above, it is easier to teach Golang to new devs from scratch and they will get productive in a short time.

In my case, I used NodeJS for a long time and had Golang under my eyes once I read an article by Tj, an important member of the NodeJS community. If you have used Node, probably you have used ExpressJS or at least read about it. Well, TJ Holowaychuk is its creator! I leave here the link to the article: https://medium.com/code-adventures/farewell-node-js-4ba9e7f3e52b

In the beginning, Golang is a bit weird and your code gets larger, you have to forget about Array.map .. filter .. and all kinds of “beauty” things of JavaScript and other modern languages, also, you have to handle every possible error. But, in the long-term, it makes your code more readable, simple and stable.

For example, the unique way to iterate in Golang is “for” and there is no ternary operator 😮, but this is the Golang strength 💪, simplicity.

A couple of months ago with my team, we are using Golang for building the LiciMatic’s backend, the platform I work on, and now Golang is my preferred language.

So, I recommend you learning Glango, you are going to learn a lot and you will have big professional opportunities.

I want to highlight that Golang is at the top of the best-paid languages of 2019: https://lvivity.com/top-highly-paid-programming-languages

I leave here 3 free learning resources:

Want to learn more about Golang and other interesting tech topics?
Follow me here on Dev.to and on Twitter: https://twitter.com/carloslfu

Thanks and happy learning! 🙂

Posted on by:

carloslfu profile

Carlos Galarza

@carloslfu

I like Software Engineering, and enjoy creating useful tools for helping people to be more productive. "The best way to predict the future is to invent it." - Alan Kay

Discussion

markdown guide
 

While Go is statically typed, I would not call it "strongly typed". It has one of the weakest type systems among popular statically typed languages.

It doesn't have real enums (you can merely name some integer values); it certainly doesn't have sum/tagged union types; it doesn't have generic/parameterized types or functions; its subtyping is only structural; everything can be null/freely "zero initialized".

These all eventually become impediments to designing obviously correct software that is verified by the typechecker.

 

"Strong" and "weak" typing aren't very well-defined terms, but according to most of the definitions on this page Go should probably count on the strong side. Go doesn't allow many implicit conversions, doesn't treat pointers as integers, doesn't have untagged unions AFAIK, and performs most type-checking at compile time, though using interface{} and reflection you can mess around with it.

 

I want to highlight that Golang is at the top of the best-paid languages of 2019: lvivity.com/top-highly-paid-progra...

You should have started with this one and then added concurrency.
All your points would benefit from good examples.

 

It's been a while since the developer community got excited over a new programming language.
But you should remember Go is handy when it’s used for addressing bottleneck issues in processing time. uptech.team/blog/why-use-golang-fo... - More about why use golang for projects here