Hacker News new | ask | show | jobs
by pjmlp 1002 days ago
The usual Java bashing from Go folks, meanwhile Google keeps mostly using Java, Kotlin and C++, with only a couple of key projects using Go, like Kubernetes or Google downloader.
3 comments

I was a witness to a decision on whether to migrate an old Java project to Go. A proof of concept (a Go rewrite of a core part of the engine) convincingly showed that the Go version would be somewhat more performant, would have vastly better startup time, and would have a smaller and simpler codebase, since the Java version's caches and latency-hiding complexity would not be needed.

The decision made was to stick with Java.

Why? Because rewriting the long feature tail of the Java version in Go and ensuring bug-for-bug compatibility with the Java version would have taken multiple engineer-years. During the rewrite, from the perspective of the project's users, development would have stalled. It made more business sense to instead use those engineer-years to implement some new features that users were demanding. And after all, while the Java version's performance wasn't amazing, it was acceptable.

Golden question being what would a rewrite in Java achieve.
Java has been awesome for a long time so it’s boring to write blog articles about it and it doesn’t signal any hipness on your resume or GitHub profile. The problem with Java is really…almost all the Java code that has ever been written.
I work in cloud and every single one of our new projects is in go
Also work in cloud and we only do .NET, Java, and node, coupled with C++ when needed.

Anecdotes.

That's surprising to me, I don't think .NET or node are approved languages at Google. Are you part of some acquisition?
I work in cloud, as in, cloud native development, targeting AWS and Azure based infrastructure.
Ah got it. I was talking about Google Cloud
This particular thread is about golang use in google. So your comment doesn't appear to apply.
It is called Go, and whatever.