Quora uses cookies to improve your experience. Read more
Kaveh Shahbazian
Kaveh Shahbazian, So far used Elixir in brown field projects

You are probably too young & inexperienced to get the "cut the sh!t" spirit of Go (I'm coding for nearly 31 year). But what ever you do, keep Go around, in your tool-belt. Go helps you to achieve your goal. But it will fail you if you are looking for a shiny tool to flirt around with.

Companies and organizations use Go - more and more everyday. And it has an awesome community (& yes, you'll encounter some trolls - tiny ones). Go helps us to build a graph of big, maintainable code bases & writing tests is so natural that you'll find yourself writing programs gradually by playing inside tests.

Another side of Go's spirit is that, it encourages building tools - not pile of hierarchies (of whatever sh!t). Docker is a nice, real world example - and much more out there. Despite the way some try to promote Go; if you try to get Go as another programming language in OO line, your code would become super inefficient & horrible to read.

I like these lines from this blog post:

adopting a high-level language without fully understanding what it’s compiling down into can be a recipe for disaster

Said about Elixir; but it's also true for any programming language. Go's simple and clear syntax and the built-in tools (like fmt and vet) gives you a clean environment to work with. Also it's sane default for (almost) every kind of data, saves you a lot of time and brain power.

Go lightens your cognitive load. When using a complicated environment, you are working on things, according to your environment, not your problem. That's not a big deal when you are doing homework. But it kills products is real world - we are still awful at any kind of estimation for software development; better to cut the unnecessary out. Go helps you to cut the sh!t!

About the Author

Knows English
193.5k answer views2.6k this month