5 ms·
He forgot the most important factor to Go's success: ignorance is bliss. Imagine releasing such a mediocre language only a decade ago an still be very popular
by trpc 7y ago
He forgot the most important factor to Go's success: ignorance is bliss. Imagine releasing such a mediocre language only a decade ago an still be very popular
- rytill 7y agoCan you elaborate?
- trpc 7y agoCriticizing Golang here in HN will get me banned for causing flamewar. However, you can find lots of reasonable criticism on Golang just by googling. IMO Golang is one of the worst languages I've ever seen considering it was only started a decade ago.
- 1_player 7y agoI downvoted you. Yours is not criticism, it's just ignorant bashing of a perfectly productive language that people adopted not because they're more stupid than you but because it made them more productive for whatever reason. No one forces you to code in Go if you don't like it. Fine, but don't belittle others if you're not prepared to understand why it's got so popular. Ignorance is bliss.
- hnbroseph 7y ago> Criticizing Golang here in HN will get me banned for causing flamewar that's either reductive or a strawman, if not both. afaict golang doesn't lack for criticism on hn, but most people do so without being insulting or hostile.
- badrequest 7y agoIt doesn't seem like you have any genuine complaints about the language, but are merely interested in causing flamewars.
- trpc 7y agoOnce I listed around 10 technical criticism points here a year ago without insulting and I got banned. I am just not going to waste a day trying to convince anybody with anything while most of the criticism has been stated a million times by a million people all over the internet.
- gpvos 7y agoWell, I haven't read it, nor have I seen much other criticism of Go. If you post here, it is up to you to make your argument, not for your readers to seek it out.
- AnimalMuppet 7y agoI have seen plenty... but not all that much substance. Much of it had the form of "How could they be so stupid to make those design choices!", as if the author's preferred approach was The Only Right Way. I've seen criticism that said "They couldn't have known anything about Modula 3 for them to make that choice!", when in fact Rob Pike talked about stealing an aspect of the object file format from Modula 3. Yeah, he knew it, and probably knew it in more detail than the critic did. Apart from "They should have done it the way I like!", the main criticism I have seen is lack of generics. That's a pretty common complaint, from a lot of different people.
- whytaka 7y agoIf the rules are consistent and persistent, then you should be banned again as you have criticized Golang, but furthermore, provided zero substance to back your criticism.
- gnode 7y agoNot the OP, but I think a good contrast is with Rust. Both languages purportedly emphasise memory safety and concurrency. Rust achieves this within the type system at compile-time; no nil pointers (conditional destructuring is used instead), no garbage collection is required, and concurrency is safe by virtue of compile-time checks. In Golang nil pointers exist and can be dereferenced, you can make a mistake when using concurrency primatives, and clobber shared memory. On the other hand, Golang is a much simpler language. It's relatively easy to learn and understand.
- hu3 7y agoI wouldn't compare Go to Rust. Their sensible usecases rarely intersect. They are quite far apart in many spectrums.
- gnode 7y agoSome popular Rust projects include actix-web (HTTP serving), diesel (database ORM), Firecracker (micro VMs for serverless). Web APIs and virtualisation / cloud computing are also areas where Go is popular. They're both statically typed compiled system programming languages; both trying to provide solutions for safe memory and concurrency.
- hu3 7y agoIt's common for different languages to have libraries that aim to solve the same problems like ORM and web server. Perl and Lisp have these as well. But this doesn't necessarily mean that these languages share a great deal of sensible usecases. Rust and Go make very different tradeoffs.
- gnode 7y agoGolang has shortcomings a plenty, although that doesn't necessarily make it a poor language to use. It's a fairly simple language, which makes it relatively easy to grasp and understand the majority of Go code. This is particularly useful for group development (i.e. in companies), where you want everyone to understand each others' work. Anecdotally, although I prefer to write Rust, and consider it a better language in many ways, it took me a lot longer to learn the language, and longer still to write idiomatic Rust code. I was up to speed with Golang relatively quickly.