1. Type safety and inferred types

Go is type safe by default, which allows you to right more reliable code and have better developer tooling, plus with the := operator, you can initialize a variable without having to define its type because it automatically gets its type from the initial value.

2. Performance

There isn't much to be said here, but on most counts go beats both Python and Node.js on performance.

3. Documentation

I'm not talking about the Go language itself, although it does have good docs. I'm talking about Go's auto generated documentation tool, which allows people to document their packages easily and works amazingly with Go's type system.

4. Compiles to binary

If you are making a local program for somebody and they don't want to download the Go compiler, you can make Go into a native binary.

5. Built for the web

Go has built in Http libraries to rival Express.js and has a HTML/Text templating system.

6. Great Concurrency

Go utilizes Goroutines to help developers utilize multiple threads easily.

Conclusion

Go is an excellent choice for any system code, especially http networking and web backends.

READ LESS
16 upvotes·3 comments·336.2K views
Ahmet Berk Bektaş
Ahmet Berk Bektaş
·
July 24th 2020 at 7:36PM

As a Python developer for the last two years and new to go, I definitely agree with you on all those points. I think most people choose Python at the beginning mainly because its really easy to use, has some amazing libraries.

·
Reply
almenon2144835
almenon2144835
·
August 2nd 2020 at 5:21PM

With typescript and a documentation library node can have points 1) and 3).

Node is also pretty fast, although with go being compiled it might be slightly faster. Do you have any links showing perf gains w/ go?

·
Reply
awesomebanana2018
awesomebanana2018
·
August 2nd 2020 at 8:26PM

https://benchmarksgame-team.pages.debian.net/benchmarksgame/fastest/go-node.html

Also, there is a bunch of stuff I forgot to add, like the fact that Go has built in Http libraries that rival Express.js and a HTML templating system built in. I will edit the post to add more reasons.

EDIT: Node.js is great, in fact I use it a lot, but in lots of cases Go works well too.

·
Reply
Avatar of awesomebanana2018