Go

From APIDesign

(Difference between revisions)
Jump to: navigation, search
(New page: Go is a programming language developed by Google. When it was introduced in 2009, it was promoted as: * [[wikipedia:static typing|statically ty...)
Line 9: Line 9:
it became more known with the rise of popularity of [[docker]] (as most of the [[docker]] ecosystem is written in [[Go]]).
it became more known with the rise of popularity of [[docker]] (as most of the [[docker]] ecosystem is written in [[Go]]).
 +
 +
=== Forget Go! ===
 +
 +
The above is probably all you need to know about [[Go]]. Because this post isn't here to promote [[Go]], the post is written to explain that you don't need [[Go]] at all. That there are better, faster, more approachable, more toolable alternative [[language]]. If you are a happy [[Go]] user, stick to it, but if you are considering to use [[Go]] for development of a new system, then the main take away is: **Forget Go!**, there are better options.
 +
 +
Let's start by enumerating what are the problems with the [[Go]] language.
 +
 +
==== Slow ====
 +
 +
[[Go]] is slow. The same algorithm written in [[Go]] runs at least twice as slow than the same algorithm written in [[Java]] or [[C]]. I have created a project to measure [[Turing Speed]] of various programming [[language]]s on a variant of [[Ancient]] and well known [[Sieve of Eratosthenes]] [[algorithm]].
 +
 +
==== Hard for Coding ====
 +
 +
Support in [[IDE]]s is really bad. [[TBD]].
 +
Not an industry standard.
 +
 +
==== Proprietary ====
 +
 +
[[TBD]]: whole stack is written from scratch and it shows.

Revision as of 15:05, 21 September 2018

Go is a programming language developed by Google. When it was introduced in 2009, it was promoted as:

it became more known with the rise of popularity of docker (as most of the docker ecosystem is written in Go).

Contents

Forget Go!

The above is probably all you need to know about Go. Because this post isn't here to promote Go, the post is written to explain that you don't need Go at all. That there are better, faster, more approachable, more toolable alternative language. If you are a happy Go user, stick to it, but if you are considering to use Go for development of a new system, then the main take away is: **Forget Go!**, there are better options.

Let's start by enumerating what are the problems with the Go language.

Slow

Go is slow. The same algorithm written in Go runs at least twice as slow than the same algorithm written in Java or C. I have created a project to measure Turing Speed of various programming languages on a variant of Ancient and well known Sieve of Eratosthenes algorithm.

Hard for Coding

Support in IDEs is really bad. TBD. Not an industry standard.

Proprietary

TBD: whole stack is written from scratch and it shows.

Personal tools
buy