7 ms·
Java is like 15 years older than Go. Go had the opportunity to learn from Java. And in some ways it’s better, fast compile times, simple to deploy binaries, etc
by bluejekyll 4y ago
Java is like 15 years older than Go. Go had the opportunity to learn from Java. And in some ways it’s better, fast compile times, simple to deploy binaries, etc.
But the language itself was a step backward from Java in some ways, and only recently has gained some of those features.
I don’t think it’s wrong to say that Go in its desire to be simple left a lot to be desired for many people.
- sremani 4y agoThere is a better Java, its Kotlin and its embrace has been lukewarm by community. I think golang serves an interesting purpose and it was always meant to be a better C not better Java.
- bluejekyll 4y agoI’ve always seen Go as far more like Java than C. They facilitate the use cases. Go isn’t a good C replacement for mostly the same reasons Java is not. People are adopting Kotlin, I’ve seen many coworkers using it for new projects. It becomes a bit more complex if you’re trying to integrate it into an existing large code base, of which there are many in Java.
- VMtest 4y agoGo is being used for system programming, that's not what Java is for
- bluejekyll 4y agoYou should go read about embedded Java: https://en.m.wikipedia.org/wiki/Embedded_Java https://en.m.wikipedia.org/wiki/Embedded_Java or define what you mean by system programming.
- VMtest 4y agonobody significant uses it in linux and cloud space nowadays don't give me the crap that java is for system programming just because java can, it doesn't mean anything if nobody significant is using it any programming language can system programming as well if you go by that definition, python, lua, javascript
- dagmx 4y agoDepends on which community. It was extremely welcomed by the Android community.
- pjmlp 4y agoActually it was been heavily pushed by Android team, which knowingly stagnate Android Java, with the agenda to replace its use outside the Android system libraries. Even Android 13 update to a newer Java 11 LTS subset seems to be caused by not losing the ability to use specific Java libraries than anything else.
- tptacek 4y agoA weird special-pleading argument, as Java is intensively used in our industry, including for new projects, and language features are engineering decisions, not moral lessons. Of course, people have to come up with special pleading arguments about Go, because most of the complaints (and all the most pointed complaints) are shared by the other most popular languages in industry. You can't get any traction with a takedown of Python, only with Go or Rust. So these kinds of complaints are invariably pretzled up into some form of "Go is a terrible language for the good language it is compared to most other languages; it may be better in many ways than its predecessors, but it had no business not being even more better". Well, peachy. Don't have a programming language as part of your identity. It takes you weird places.
- hamburglar 4y agoI’m not sure what’s more predictable: the go-hater-is-my-identity posters or the defensive go-coder-is-my-identity posters responding to the OP line by line. (Or perhaps the smug above-it-all posters such as myself). As a likely certifiable go fanboy, I like the article and see a lot of stuff I agree with. Still enjoy programming in Go. Will error handling ever be less verbose and repetitive? Not sure. If not, it’s not a dealbreaker for me. And I do acknowledge that the fact that all the error handling is right there in my face makes it easy to reason about. Pros and cons, folks.
- tptacek 4y agoI thought this article was a cut above a lot of the Go criticism I've read. Language critiques are good! Where we tend to get in trouble is language ordering.
- stjohnswarts 4y agoI agree, it was well supported rather than just one big bitch-fest.
- pjmlp 4y agoThe irony is that from point of view from Go folks, Java's type system is already PhD skill level.