6 ms·
So why did we need go when Java already existed?
by google234123 5y ago
So why did we need go when Java already existed?
- matthewmacleod 5y agoBecause they're two different languages, tackling different problems, with entirely different sets of benefits and costs associated with their use.
- google234123 5y agoThat’s not enough to justify the (10s, 100?) millions of dollars of investment. Java is faster and safe and can do everything go can do. C++ can be even faster (at least there are no pauses from a gc) at the cost of some safety.
- kgraves 5y ago> Java is faster and safe and can do everything go can do. Including generating static binaries without the use of requiring to download a runtime?
- mindwok 5y agoThe fact that Go has gained so much adoption probably justifies that investment. They are completely different languages and much of it is personal preference.
- tonyedgecombe 5y agoOracle.
- cy_hauser 5y agoBecause Java has become an unpleasant to code in. Do you really think what you like is what everyone else likes?
- vips7L 5y agoAre we looking at the same languages? Java is far more a productive language with generics, lambdas, switch expressions, pattern matching.
- bob1029 5y ago> Java is far more a productive language Since when is productivity a priority for most developers? Seems like 2nd or 3rd fiddle based on HN sentiment these days.
- cy_hauser 5y agoJava (and C# and C++) have become kitchen sink sink languages. Everything is just thrown in. That makes it less productive for me. I've decided I don't want to carry around that much in my head all the time in order to read somebody else's code. I switch languages a lot these days. Go is getting generics in (hopefully) in a few months. Some features are missing but most don't cause much pain and can be either simulated or worked around. Error handling is its biggest failure, but outside of that I find is at least as productive as other compiled languages in the same space.
- vips7L 5y ago> Java (and C# and C++) have become kitchen sink sink languages. Everything is just thrown in. This is far from the truth when it comes to Java. Java doesn't add features willy nilly. They are thought out, and in general implemented better than in other languages. Java's WHOLE philosophy is to move slow and let other languages experiment with features so the kitchen sink doesn't get thrown in because Java has _actual_ backwards compatibility promises and has to support those features for eternity.
- manishsharan 5y ago
- Redoubts 5y agoDeployment story is a tentpole feature, of which these two have very different ideas.
- dunefox 5y agoI don't know, why did we need Java when CL/Smalltalk/etc. already existed?
- closeparen 5y agoTry writing e.g. a TLS proxy in Java and then in Go, and get back to us. For byte arrays, sockets, encodings, cryptography, etc. the stdlib in unparalleled.
- kaba0 5y agoNot arguing that Go is a great fit to these niches, but imo java has a really great standard library, including these areas.
- zerr 5y agoGo will loose significant market share as soon as Java and .NET have a mature and usable AOT compiler.
- henry700 5y agoSoon. Still, .NET Core is already faster even without AOT on most cases: https://benchmarksgame-team.pages.debian.net/benchmarksgame/fastest/go-csharpcore.html https://benchmarksgame-team.pages.debian.net/benchmarksgame/...
- erik_seaberg 5y agoI’m worried it won’t. There are an awful lot of people enthusing about how novice-friendly it is, who don’t seem to worry about wasting experts’ time rereading noisy boilerplate (which an expert should have abstracted out and generated instead).