Golang, the good, the bad, the ugly

in #programming8 years ago

Hi, I am in no way a professional programmer but recently I have started learning and creating things in the go programming language. I must say most of my experiences with it have been great but there is a few annoying things about it.

#1 - Dependenies are a nightmare.
The first problem with go is that managing dependencies is a nightmare. You practically have to keep a list of all the dependencies you need for each project so you can go-get them later, the downside to this is that if the creator of the package you require pushes a breaking change to the repository then your program may no longer run. And you cannot go back versions with golang as it has no version management. The creators of go tried to fix this with a 'vendors' package. You would put all of the dependencies you need with their working versions inside a folder called vendor and you can import them from there. although it still has its quirks it works reasonably well when using go-get

#2 - Go-Get
If you want to use go-get you have to deal with some pretty annoying problems. You MUST keep everything in your Go development environment. A lot of people opt for custom c-make or dmake solutions to fix this problem and prevent having to use go-get and go-build

Fortunately, go makes up for this with a list of amazing features:
It isn't Java
It isn't C
It isn't JavaScript
It isn't VB
It isn't Blockly
and it isn't C#

Overall those are good enough reasons to learn go in my opinion.
I will most likely continue to use go for my projects as it can be very fun to use when you understand how to deal with the problems

Sort:  

The use of pointers is a bit confusing. But it seems like a good language. I have a plan to document my journey leaning Go.

Follow me @codero

I found it pretty confusing at first too! It gets easier as time goes by though