4 ms·
> Go hasn't learned a single thing. How do you explain the success then? Go hasn't tried to be all things to everyone. There are lots of things out there tha
by LanceH 6y ago
> Go hasn't learned a single thing.
How do you explain the success then?
Go hasn't tried to be all things to everyone. There are lots of things out there that need simple solutions and Go provides for that with and nice middle ground of dev and computer performance.
If I want to read from one computer, write to another computer, concurrently, with low footprint, and speed, it's a great tool.
If Go has learned nothing, are Go programmers just picking something more difficult that performs worse? I've found it has dislodged services that were previously written in Node, Ruby, or a whole J2EE stack. Sure there are people out there trying to make it all things to everyone and it fails in some of those things, but it does great at others.
- kubb 6y ago> How do you explain the success then? A megacorp funding 100 engineers to work on the compiler, libraries and tooling for 10 years
- a1369209993 6y agoIn other words, the same way you explain the success of eg Java.
- erik_seaberg 6y agoJava was a safer C++. Go was a safer C. They both ignore a lot of good ideas from other languages, but I find it easier to forgive Java given its age and how much it’s caught up.
- kubb 6y agoJava also had multi-billion dollar marketing campaigns.
- yiyus 6y agoEither Go is a horrible language that did not learn anything or it is a language developed by some of the best engineers for a long time. If you are claiming that both things are true, then how do you explain it?
- kubb 6y agoGoogle engineers are not some demigods or mythical geniuses and people should stop thinking that. They are successful within the framework of what they know, which is mostly C and C++. None of these people have academic background in language design, and it shows.
- int_19h 6y agoI suspect that much of Go's popularity stems from one thing that's completely unrelated to its language design woes: its ability to generate standalone binaries with minimal dependencies (and specifically none on Linux, which is prevalent for container use). Go itself is not particularly simple, actually. It's simplistic, meaning that you have to jump through more hoops to do common things. For a concise example, consider adding an item to a slice in Go vs adding an item to a collection in pretty much any other modern language.