←back to thread

Go is still not good

(blog.habets.se)
644 points ustad | 1 comments | | HN request time: 0s | source
Show context
figmert ◴[] No.44983166[source]
Has Go become the new PHP? Every now and then I see an article complaining about Go's shortcomings.
replies(6): >>44983193 #>>44983234 #>>44983422 #>>44983440 #>>44983954 #>>44985162 #
pydry ◴[] No.44983234[source]
Go is a pretty good example of how mediocre technology that would never have taken off on its own merits benefits from the rose tinted spectacles that get applied when FAANG starts a project.
replies(2): >>44983334 #>>44983421 #
christophilus ◴[] No.44983334[source]
I don’t buy this at all. I picked up Go because it has fast compilation speed, produces static binaries, can build useful things without a ton of dependencies, is relatively easy to maintain, and has good tooling baked in. I think this is why it gained adoption vs Dart or whatever other corporate-backed languages I’m forgetting.
replies(2): >>44983391 #>>44983553 #
pydry ◴[] No.44983391[source]
I tried out one project because of these attributes and then scrapped it fairly quickly in favor of rust. Not enough type safety, too much verbosity. Too much fucking "if err != nil".

The language sits in an awkward space between rust and python where one of them would almost always be a better choice.

But, google rose colored specs...

replies(2): >>44983644 #>>44990776 #
Mawr ◴[] No.44990776[source]
> Not enough type safety

Sure? Depends on use case.

> too much verbosity

Doesn't meaningfully affect anything.

> Too much fucking "if err != nil".

A surface level concern.

> The language sits in an awkward space between rust and python where one of them would almost always be a better choice.

Rust doesn't have a GC so it's stuck to its systems programming niche. If you want the ergonomics of a GC, Rust is out.

Python? Good, but slow, packaging is a joke, dynamic typing (didn't you mention type safety?), async instead of green threads, etc., etc.

replies(1): >>44995195 #
1. pydry ◴[] No.44995195{3}[source]
>packaging is a joke

You should see what package management was like for golang in the beginning "just pin a link to github". That was probably one of the most embarrassing technical faux pass ive ever seen.

>dynamic typing

Type hinting works very well in python and the option to not use it when prototyping is useful.

>Rust doesn't have a GC so it's stuck to its systems programming niche.

The lack of GC makes it faster than golang. It has a better type system also.

If speed is really a concern, using golang doesnt make much sense.