Hacker News new | ask | show | jobs
by markokocic 5333 days ago
Google support for Go in their products seems half-hearted at most. Seems like only a few engineers in core Go team are working on it.

AppEngine doesn't support Go (no, without windows Go SDK it is not supported).

Android doesn't support native full featured Go apps, although in theory it seems like a perfect match.

Given that lack of support, I'm not even sure it is as widely used inside Google, or the story about inside usage is just a marketing.

3 comments

I have answered your statement about App Engine in another post.

As for Android, it would be a colossal undertaking to implement native support for writing Android apps in Go. How can you say it's "half-hearted" to choose not to do such a massive project? Engineering time is not an infinite resource.

Unfortunately it is Google's policy not to comment on internal infrastructure, otherwise I could comment more on our internal usage of Go. But think logically: why would Google continue to invest the time of some of its best engineers (myself excluded) in something that wasn't of benefit to Google?

I would have to disagree. They seem to be putting a lot of support behind it.

"AppEngine doesn't support Go" Go itself is still pretty experimental. Changes are still made and with preparation for Go 1 they are making many backwards incompatible changes. They plan to remove the experimental tag on AppEngine the same time Go 1 is released. Until go itself becomes stable, they can hardly call the AppEngine version stable.

"no, without windows Go SDK it is not supported" Considering that the compiler they use for go (gc) is not supported on windows, that is not much of a surprise.

"Android doesn't support native full featured Go apps, although in theory it seems like a perfect match." This does not seem like a very good match at all. First, android GUI is programmed in java, it makes very little sense to try and make some sort of bridge between go and the java gui. Also, go at this stage is much better for servers than client facing applications. You know what would be an awesome fit? Go on AppEngine...

"Given that lack of support, I'm not even sure it is as widely used inside Google, or the story about inside usage is just a marketing." So far you have given evidence that Go is not being supported for people who use Windows and for programming phones. That means Google does not use it in house? The fact that AppEngine supports Go is an indication of the opposite. They probably wanted Go on AppEngine so they could use it themselves.

I know that Go support for appengine is marked as experimental, but being linux/mac only for half a year, without any roadmap for window support is exactly what I call half hearted.

And full windows support for Go wouldn't be that hard. Many open source projects have windows support thanks to mingw/msys. Having Go and Go appengine fully supported on Windows wouldn't take more than 1 full time engineer. If that is too much to ask for Google, than Go is not even half-hearted supported.

For android, I know that it would be a bad choice to bridge it to Java UI framework. I was thinking of having native Go SDK for Android that will have its own UI and other API, which doesn't have to be similar to Java. Gooogle has already separate appengine SDKs for Python, Java and Go. I know that it would be a lot of work to do the same for Android, but that will at least show that Google is really pushing behind Go.

Let me correct some mistakes:

- Go (gc) runs on Windows just fine. Go under Windows is now well-supported. We'll do a better job of communicating this once we (the Go team) are able to provide Google-built Windows binaries (currently they're provided by the community). This will come with Go 1 early next year.

- Go for App Engine is near feature parity with the Java and Python runtimes. It will come out of experimental early next year.

- The Go App Engine SDK will be available for Windows early next year.

I'm a bit insulted that you call our (very strenuous) efforts half-hearted, but I guess you can't please everyone.

"AppEngine doesn't support Go" http://code.google.com/appengine/docs/go/ They have an experimental support for Go at the moment but it's not a mainstream project.