Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

If I could use Go on Android (with no major headaches) and a simple way to describe the interfaces, I would be very tempted to switch to being an Android programmer.

But I just can't bear to return to Java, I'm not sure I ever had job satisfaction working with Java.



As opposed to Objective-C, or C++?

Languages for writing client side apps have always sucked. They sucked in the 90's when targeting Windows (ok Delphi wasn't too bad), they sucked in the 2000's when targeting MacOS X and they suck now when targeting mobile. Of all the languages that mainstream operating systems have used, Java is by far the least worst. Especially because you can use any JVM-compatible language and are not really restricted to Java. For example Kotlin is looking like it's going to be pretty nice, pretty soon.

Go would be nowhere near a useful upgrade on the status quo.


Sucks writing JavaScript browser based apps as well in my opinion.


I wonder, would Go be more suited for Android or Rust? Obviously Google would much prefer to use Go since they're developing it and could optimize it however they want for Android.

On the other hand, Rust seems higher performance and might be more suited for apps, but Google doesn't have much control over it. However they don't have control over Java either, and they could create a "fork" of Rust if needed, just like they did with Java/Dalvik.


I've become a Go convert and love coding in it, but for mobile devices with limited resources that are often used for gaming, Rust seems like it'd get more mileage because of its slightly more hands on approach to memory.


I program in Android/Java for my day job but use Go for my own stuff, and love Go and I'm pretty meh on Java. So I would love to see this (and to some degree work in this area is already happening in that you can technically run Go code on Android today and it will soon be suitable for things like OpenGL-based games).

When it comes to traditional apps, though I'm not sure how the existing Java APIs could be mapped to Go in a way that made any sense at all (I mean... technically you could do it via bridges to and from cgo<->ndk, but having it make sense in Go and be reasonably future maintainable seems like it would be a huge undertaking, even for Google). Seems more likely that something like Go+go-qml+Qt would be more practical, though I have yet to play around with the Android port of Qt enough to see if it is reasonably "native" feeling.


Scala runs on Android and is the most satisfying language I've ever worked in. (Admittedly you still have to call some pretty terrible APIs, but those are the platform APIs - that part would be the same in Go or anything else).


I have this almost dream-like hope that Google will encapsulate all of the Android APIs in a proxy layer in Go with much nicer APIs.

That we'll be able to have a cleaner interface to the platform, and have access to a better toolchain and programming environment.

I doubt it will happen, but one can hope.


I think the Android team will hardly consider supporting another Java 1.0-like language progress.


The problem with Java was never the language, but the 'enterprise' platforms, which suffocated it. Within Android, Java works much more as it was designed and is dare I say it, fun to use.


According to the Android team at Google IO, the official language is Java.

Now management might change this point of view, but that was the official statement.

Just search for the Android devs fireside at Google IO 2014.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: