Altabel Group's Blog

Golang: pros and cons

Posted on: November 10, 2015

The Go Programming Language (Go) is an open-source programming language sponsored by Google and created by Robert Griesemer, Rob Pike, and Ken Thompson that makes it easy to build simple, reliable, and efficient software.

Go has gained popularity since it was first announced in 2009, and it’s now being used by many companies worldwide and for a variety of applications; Dropbox, Google, SoundCloud,  CloudFlare,  Docker and Cloud Foundry are some of the Go programming users.


Like any technology, though, it has its adherents and critics. Here are some key benefits and perceived drawbacks of the language as told by experts familiar with it.


  • It is fast. And not only fast in the sense that programs written in it run fast when compared to other common languages; but also fast in the sense that its compiler can compile projects in the blink of an eye. You can even edit and run Go programs directly on the Web.
  • It is a garbage-collected language. This puts less pressure on the developer to do memory management, as the language itself takes care of most of the grunt work needed.
  • It has built-in concurrency, which allows parallelism in an easier way than is possible in other languages. Go has the concept of goroutines to start concurrent work and the concept of channels to permit both communication and synchronization.
  • Go has documentation as a standard feature. That makes it easier for developers to document their code and generate human-readable data out of source code comments.
  • Go has a rich standard library which covers a lot of areas. In fact, Go is probably the only language that can claim to have a fully working Web server as part of its standard library.
  • Go’s built-in build system is both elegant and simple. No need to mess with build configurations or makefiles.


  • Go is still a very young language and has a very young ecosystem. This means there aren’t many libraries for it yet, leaving developers to write libraries themselves. There is also a shortage of books and online courses on the language.
  • Go is simple to the point of being superficial. Go’s simplicity is mostly superficial, and in its effort to find simplicity, it threw away decades of valuable programming language progress.
  • Although Go is a high-level language, it still has low-level features such as pointer-arithmetic which does not rule out the chance of doing systems and OS programming.
  • Go’s tooling is really weird, on the surface it has some really nice tools, but a lot of them, when you start using them, quickly show their limitations.
  • It is still not so easy to learn Go and it’s difficult to handle errors in it.

What is your attitude to Go? Is it worth learning? What do you think are Go’s advantages and disadvantages? Can you tell us about a real use you have given to this programming language? Please, feel free to share your thoughts here below.

Katerina Kviatkovskaya

Katerina Kviatkovskaya
Skype ID: kate.kviatkovskaya
Business Development Manager (LI page)
Altabel Group – Professional Software Development

3 Responses to "Golang: pros and cons"

I think you are missing one very important point with Go, one of the reason for the existence of Go. That is the life cycle management and the cost for maintainability of software. Writing code cost appr 10%, maintaining it 90%. Keeping it simple make maintainability less costly. A very low selling argument for alot of programmers, but extremely important for larger organizations.

I have the feeling you are not writing, production code in Go.
And from the tutorial : “Unlike C, Go has no pointer arithmetic.”

Go language is good and lots of code is present in Github. You can get the free libraries from public github and need to utilize in your code properly. You can also include your functionality top of existing functions.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: