←back to thread

159 points mpweiher | 4 comments | | HN request time: 1.22s | source
1. liendolucas ◴[] No.43673383[source]
Putting aside this particular topic, I'm seeing posts talking negatively about the language. I got my feet wet with Go many many years ago and for unknown reasons I never kept digging on it, so...

Is it worth learning it? What problems are best solved with it?

replies(1): >>43674773 #
2. jtolds ◴[] No.43674773[source]
Author of the post here, I really like Go! It's my favorite language! It has absolutely nailed high concurrency programming in a way that other languages' solutions make me cringe to think through (await/async are so gross and unnecessary!)

If you are intending to do something that has multiple concurrent tasks ongoing at the same time, I would definitely reach for Go (and maybe be very careful or skip entirely using channels). I also would reach for Go if you intend to work with a large group of other software engineers. Go is rigid; when I first started programming I thought I wanted maximum flexibility, but Go brings uniformity to a group of engineers' output in a way that makes the overall team much more productive IMO.

Basically, I think Go is the best choice for server-side or backend programming, with an even stronger case when you're working with a team.

replies(1): >>43675322 #
3. liendolucas ◴[] No.43675322[source]
Thanks for the tip! Will definitely take into account your insights on channels if I decide to dive into it.
replies(1): >>43676699 #
4. jtolds ◴[] No.43676699{3}[source]
I have written channel code in the last week. It's part of the deal (especially with the context package). I'm just happy to see them restrained.