←back to thread

Go is still not good

(blog.habets.se)
644 points ustad | 1 comments | | HN request time: 0s | source
Show context
SkepticalWhale ◴[] No.44985889[source]
Go has its fair share of flaws but I still think it hits a sweet spot that no other server side language provides.

It’s faster than Node or Python, with a better type system than either. It’s got a much easier learning curve than Rust. It has a good stdlib and tooling. Simple syntax with usually only one way to do things. Error handling has its problems but I still prefer it over Node, where a catch clause might receive just about anything as an “error”.

Am I missing a language that does this too or more? I’m not a Go fanatic at all, mostly written Node for backends in my career, but I’ve been exploring Go lately.

replies(10): >>44985997 #>>44986010 #>>44986136 #>>44986517 #>>44986991 #>>44987075 #>>44987252 #>>44987361 #>>44987973 #>>44992564 #
ecshafer ◴[] No.44986010[source]
> It’s faster than Node or Python, with a better type system than either. It’s got a much easier learning curve than Rust. It has a good stdlib and tooling. Simple syntax with usually only one way to do things. Error handling has its problems but I still prefer it over Node, where a catch clause might receive just about anything as an “error”.

I feel like I could write this same paragraph about Java or C#.

replies(3): >>44986143 #>>44986282 #>>44991589 #
acedTrex ◴[] No.44986143[source]
Java and C# are both languages with A LOT more features and things to learn. Go someone can pick 80% of the language up in a single day.
replies(4): >>44987049 #>>44987141 #>>44987283 #>>44990787 #
gf000 ◴[] No.44987283{3}[source]
Java is a very tiny language. I don't buy that it would take significantly longer to learn.
replies(1): >>44987420 #
acedTrex ◴[] No.44987420{4}[source]
Now throw in spring on top of it, which is the standard in large java web codebases. Its very very daunting
replies(1): >>44987512 #
1. gf000 ◴[] No.44987512{5}[source]
Well, you ain't adding together two numbers in Go either.

Give me an apples to oranges comparison. With routing, cookies, authN/authz, SQL injection, cross site scripting protection, etc.