3 ms·
I see no facts or genuine refutation in this article, just opinions. Therefore I can only assume that truth hurts because the article you are trying to argue wi
by edem 9y ago
I see no facts or genuine refutation in this article, just opinions. Therefore I can only assume that truth hurts because the article you are trying to argue with has a bunch of valid points. If you look at the history of Go you have to realize that it was created for the reason which is in the original article: to be a better C.
If you come from C it is good, sure. And you can write big projects in it like in C (just think about Linux or Unix). But if you come from a high level language like Java (which is also performant by the way) Go feels like wearing a straitjacket! Go lacks the most basic tools which any seasoned developer can expect from a language (like generics). Just look at [my response](https://medium.com/@addamsson/this-article-is-wrong-in-so-many-ways-47c91584fd6 https://medium.com/@addamsson/this-article-is-wrong-in-so-ma...) to this topic elsewhere.
- majewsky 9y agoOkay, let's say I agree with your arguments: 1. Go "is still not as fast as Java can be" [1] 2. "Go lacks the most basic tools which any seasoned developer can expect from a language (like generics)" 3. "Go does not have a de facto build system and you can’t handle dependency management in an easy way" [2] 4. odd error handling 5. not a lot of libraries to choose from [3] 6. possibly more arguments that I missed when summarizing your post The way you paint it, people would be stupid to use Go. However, thousands of very talented developers use Go everyday. How can you explain this disconnect? [1] I like how you didn't say that Go "is not as fast as Java". That's a subtle, but important difference. [2] `go install` is the build system and I have solved dependency management for myself with literally a small shell script [4], and an official solution is in the works [5]. [3] I never had trouble finding libraries for use-cases both common and obscure). [4] https://github.com/holocm/golangvend https://github.com/holocm/golangvend [5] https://github.com/golang/dep https://github.com/golang/dep
- Erlich_Bachman 9y agoIt's not really stupid, it can be misinformed, or just a matter of taste. For some people having a small couple of specific qualities of a language is more important (because they "like" them) is more important than even some objective overall quality/ease of use. Many people are just forced to used it because the company uses it. And of course, all the people who actually ARE looking for a "Better C" - then they will of course use something like Go. It would be very "stupid" to use Java in that case.
- GenericsMotors 9y ago> The way you paint it, people would be stupid to use Go. However, thousands of very talented developers use Go everyday. How can you explain this disconnect? Billions of people hold staunch religious beliefs, yet this doesn't mean they're stupid or mentally handicapped.
- edem 9y agoIt is not about stupidity, more like the blub paradox. If you only know C and Go you have no idea why for example Kotlin would be better for the majority of the cases because to see it you have to use it.
- jstewartmobile 9y agoI came to it from embedded C, and would not call it a better C. Not that it is bad. It is just a wildly different use case. The lack of a preprocessor alone (as ugly as that may be) rules it out for a great many embedded and cross-platform scenarios. The binaries are also fairly enormous. 10M for a shell util on a desktop may be good enough. Beneath that level, it is a deal-breaker and a scandal. Agree with the straitjacket part though. Comparing it to something like Clojure, the best I could say for it was, "At least I don't have to deal with the JVM..."
- powerslacker 9y agoYou are unfortunately right about the embedded scenario. It always ends up being a C/Go abomination - and eventually you end up asking yourself...why didn't I just use C?