11 ms·
This must've been quite an old article, because lo and behold, nearly every single complaint on that page is being addressed with gusto by the Go community! Pro
by triodan 8y ago
This must've been quite an old article, because lo and behold, nearly every single complaint on that page is being addressed with gusto by the Go community! Proposals on generics and error handling is well underway, and his complaints regarding GOPATH and the go get has been solved with Go modules.
EDIT: As I expected, the linked page is written on Feb 2018[1], things indeed have changed a lot since then.
[1]: https://github.com/grimoire-ca/bliki/commits/master/wiki/dev/go.md https://github.com/grimoire-ca/bliki/commits/master/wiki/dev...
- xg15 8y agoSorry, but the language existed for how long? I remember hearing about the same complaints about generics and error handling years ago - and they got answers back then with about the same level of arrogant dismissal like the quote about syntax highlighting in the article. It's good if the community is at least starting to listen now, but I don't think that is sufficient evidence that the language is good.
- tinco 8y agoThere is no discussion if the language is good, it's already quite convincingly proven it's good. The question was if generics would make the language even better. Some people think that's a no brainer, others are not so sure, and the latter group included the core maintainers. People use the language because it is good, I think at this point one can state that as objective fact. Once people use it, they'll complain when something is not as nice as it could be, like the error handling, and like the generics. I wonder if in 2000 people felt the way about Java 1.3 people feel about Go now. Java had a similar rise to prevalence, and it also lacked some features we now consider crucial, such as generics. I personally would never want to go back to Java 1.3. I feel I'd much rather code in Go instead, even if it lacks generics. But I still think it's worth considering if Go would turn out to become Java, if it now embraces generics.
- edem 8y agoThe language is crap. Just because people are using it does not mean it is good. Take a look at javascript. Same deal. You did not state any "fact"s why Go is good. Maybe it is good compared to Cobol or Fortran, but not compared to pretty much everything else.
- tinco 8y agoOh come on. People are forced to use Javascript, I don't think it would even exist today if it wasn't the only crossbrowser language. Almost no one is forced to use Go, and yet people flock to it. I don't feel I need to state the things that make Go good because it's already been done a thousand times, and everyone in this thread already knows why it is good. Have you ever built something in Go? I'm almost as productive in Go as I am in Ruby, and that was within a week of learning it. It's crazy good for a language that lacks so much expression.
- skohan 8y agoTo be fair, I feel like go's simplicity makes it easy to get small things up and running, but the pain comes when your project starts getting large. That's when additional abstractions are missed.
- tinco 8y agoI don't think Go should be used for larger projects. Apparently though the community disagrees because they're really adding generics.
- stephenbez 8y agoIt's interesting, I feel like it's the opposite and Go excels at large projects. Compared to other languages, Go doesn't let you use as many abstractions, so writing code takes longer, but it is much more straightforward to read. I work at a >1000 person company that codes mostly in Scala, and some in Go, and would prefer to read unknown Go code any day. With the Scala I run into things like implicit parameters and 7 layer of inheritance, but the Go code is straightforward. Go is somewhat of a lowest common denominator language. You could out perform it with a small team of strong developers, but when once your project gets to a certain size, it's unlikely all of the developers will be strong.
- dvfjsdhgfv 8y ago> There is no discussion if the language is good, it's already quite convincingly proven it's good. I'm sorry, you can't prove a language is good or bad. You can prove it's popular, widely discussed, used by several individuals and organizations, is actively developed, but "good" and "bad" are inherently subjective terms and there's no way to prove it unless there happens to be a universally accepted definition of what constitutes a good or bad programming language.
- spicyusername 8y ago> a universally accepted definition of what constitutes a good or bad programming language. Implicitly many people, rightfully in my opinion, conflate the utility of a programming language with that language being good. If many people are able to solve real problems with a language, that language is good, the end. Good does not equal perfect, there is no perfect in the real world of engineering.
- dvfjsdhgfv 8y agoOn the other hand, many people conflate the popularity of a programming language with it being backed by a big corporation. There actually are a few measurable metrics of programming languages, but even when we discuss such a simple factor as execution speed that you'd expect to be universally accepted as positive, there will be people arguing that developer time is more expensive and savings made here are more important than the gains on execution speed. There is simply no way two programmers are going to agree in classifying a number of languages as good or bad.
- spicyusername 8y ago> There is simply no way two programmers are going to agree in classifying a number of languages as good or bad. If there is one thing humans love doing is finding small reasons to disagree hah.
- joelfolksy 8y agoSo in the world you're describing, pretty much all languages are "good," and none are "perfect." Not very interesting so far. What are the adjectives that fall in the middle, the ones that some languages deserve and others don't?
- miaklesp 8y agoIt's good only for those who didn't see anything better.
- vonseel 8y agoOne might also wonder how long it took Java to respond to user complaints, and I would suspect Go core team has been much faster addressing these issues and responding to developers.
- vonseel 8y agoAre you really arguing that the language is not “good”? Sure, there are things not to like about it, but the widespread adoption of Go as a systems programming language is evidence alone that it is a “good” language. Good is such an ambiguous term that I’m not sure it’s even worth using. For one person, only esoteric languages like Haskell are “good”, for another person, Python or Javascript are “good” enough.
- 62747478182 8y ago> but the widespread adoption of Go as a systems programming language is evidence alone that it is a “good” language. Years ago PHP was the king of web development, and it was pretty awful in many ways (today is much better, though). People usually choice languages because of convenience, not because of how good they are.
- eptcyka 8y agoJudging by most responses form the Go team and/or the community around the language, it would seem that none of the issues listed in the article are actually valid. I.e. this is the _correct_ way to handle errors, sum types bring nothing, etc. Of course, things have changed since, but what does that say about the previously strongly held opinions of the team?
- grumpydba 8y ago> Judging by most responses form the Go team and/or the community around the language, it would seem that none of the issues listed in the article are actually valid Generics have been considered for years by the core maintainers. See Ian Lance Taylor's proposals. So you're either lying or not informed enough to be so assertive.
- edem 8y agoIt it is underway it is not solved. Go is crap.
- akmittal 8y agoThere are only two kinds of languages: the ones people complain about and the ones nobody uses. -Bjarne Stroustrup
- eeZah7Ux 8y agoand Python.
- joelfolksy 8y ago"There are two kinds of men: the ones complained about by their wives, and the ones who are single" - Me, before sleeping on the couch
- edem 8y agoI don't see how this adds any value to the conversation.
- akmittal 8y agoIt says no language is perfect there are some or another compromise in all.
- dragonwriter 8y ago> This must've been quite an old article, because lo and behold, nearly every single complaint on that page is being addressed with gusto by the Go community! “Being addressed” = “not yet effectively addressed” = “still an issue”
- deleted 8y ago[deleted]