> the cases where you can use Go successfully are only o fraction of the cases where you can use Java successfully
could you elaborate why do you think so, and maybe give examples of cases where Go can't compete with Java?..
Libraries for application programming, last time I used Go nothing came close to the Java PDF creation libs for example.
Imho Go is really good for self contained micro-services. The way Go does binaries and the cross-compilation part are great.
Otoh, Java has a huge ecosystem. Huge. This plus dependency managemnt make it the first choice in most cases. Not even going to go into the massive innertia given that Java has been around for decades (who is going to rewrite everything in go?)
Today most of the time I pick Kotlin which is sort of whatbJava could have been (or maybe will become) with proper investment and care.
If anything I think the cases where you can use Go successfully are only o fraction of the cases where you can use Java successfully. It's not necessarily Java itself but the ubiquity of the JVM and its ecosystem (see Kotlin, see Scala as examplea that have leveraged this ecosystem successfully)