5 ms·
Surprised to see language satisfaction so high. Error handling is very painful, and Go's own tools don't work together (eg. go mod tidy doesn't work properly wi
by kbd 4y ago
Surprised to see language satisfaction so high. Error handling is very painful, and Go's own tools don't work together (eg. go mod tidy doesn't work properly with `go.work` since being released in 1.18). So many things in the language feel bad for no reason. At least they finally added generics!
- the_gipsy 4y agoCompiler simpleness is the reason, and in return it's fast. Still sucks, though.
- _wolfie_ 4y ago> and in return it's fast I'm still curious where this came from. There are slower compilers, sure, but golang's compiler is not that fast. It is very smart about caching, but that is not the same thing...
- 5d8767c68926 4y ago>Surprised to see language satisfaction so high. Who else do you think responds to these surveys? I have a long list of grievances against Go, so I don't use it, and am not qualified to participate in a survey.
- bheadmaster 4y agoTo be honest, many other languages have a lot of users that are quite unsatisfied with it, despite using it regularly (Java comes to mind). The fact that most of the people who use Go are happy with it isn't that insignificant.
- maximus-decimus 4y ago"There are two types of languages, the ones no one complain about and the ones no one uses" -- C++ dude
- beltsazar 4y agoSelection bias. Those who are dissatisfied with Go either have abandoned using Go or—if they have to use it at work—wouldn't bother to participate in the survey.
- deleted 4y ago[deleted]
- randomdata 4y ago> Error handling is very painful Wait until you try Typescript. First you have to try/catch and then you also need an if statement to type assert the error in order to do anything with it. Now that's painful. If errors were commonly returned as values you could beautifully reduce it to if statements alone.
- mekster 4y agoIf the called function only returns a specific type, how is there a need to type check the returning value?
- randomdata 4y agoThrown errors are always of type unknown, so you have to assert them back into a known type. Or throw caution to the wind and arbitrarily cast them to a type of your choosing, but that never ends well. A robust and maintainable system can’t reasonably do that.