Link Details

I see Google's move to pull out of JavaOne as yet one more sign of how this course of action will cause many of these developers and the companies that foster Java to move on to another language, and perhaps even another ecosystem.

Posted by dsachdev  |   Aug 29 2010 / 01:01

Add your comment


Html tags not supported. Reply is editable for 5 minutes. Use [code lang="java|ruby|sql|css|xml"][/code] to post code snippets.

Comments

User 338269 avatar

Miloskov replied ago:

The problem of Go language its that is a System or lower level language. Dalvik VM is here to stay but they will come out with a language over the dalvik vm and that one I think it will be Python or Javascript. Google is heavily invested in Python as a multipurpose language and Python is a very easy language to learn so it could be for dalvik vm. I think, Python will be the choice and for lower level or speed/native it will be C++ and Go and for the web is Javascript.

So my guess will be with Google is displace Java once and for all and the 4 languages of choice for Google will be:
C++, Python, Go and Javascript.

Reply 0 votes
User 46563 avatar

rv49649 replied ago:

Go has a good bit of sensibility of Python about it. Python was one of the inspirational languages for Go's design. However, unlike Python, Go can be compiled and linked into a binary executable and delivered as such - instead of having to deliver an application as a conglomeration of source text script files. Plus it is statically type checked language. Because of it compiles and links so fast it is as nimble to work with as Python scripting. IOW, it is an entirely suitable replacement of Python, and then offers up additional programming concepts such as goroutines for addressing concurrency.

Go isn't really any more low-level than Objective C, which, of course, still retains full C language capabilities. Objective C has been an entirely successful language for native app development on Android platform's principle rival, Apple's iOS. Unlike Objective C, Go langauge intrinsically relies on garbage collected memory management (Objective C only optionally has garbage collected memory on Mac OS X - not available for iOS devices).

The Go language package library has been developed on top of POSIX and though it has been ported to Windows, it is easiest to bring up on Unix and Linux. Android has Linux as its underlying OS.

For Android development, the Android APIs would need to be re-developed with Go packages wrapping and abstracting them. That would probably be the most substantial work in adapting Go for Android.

There is already and ARM compiler for Go so there would not be a need for porting Go to run on the Dalvik VM. Hence the entire matter of Dalvik patent infringement could be dodged by using Go.

However, Go is currently statically linked into a monolithic executable. For a small Android devices, it would be good to enhance Go with a runtime shared library feature comparable to what Adobe did for the Flex SDK libraries where they can be cached by the Flash Player. There would likewise need to be version management for caching such libraries. That way different editions of apps built with Go could have their particular version of the core Go runtime libraries suitably cached.

So beyond static linking, Go would need to be enhanced to support some manner of dynamic linking to make the above library management strategy possible.

Wrapping the Android APIs with Go packages and adding runtime shared library support are the two primary issues that would need to be addressed when attempting to position Go as a new flagship programming language for the Android platform - such that it could viably replace the use of Java language in that role.

Reply 3 votes
User 191767 avatar

dsachdev replied ago:

Your comments mirror much of my thought with Go - that Dalvik would not be the VM that it would run on. Your thoughts on the monolithic executable is interesting - and something I wasn't aware of, but that I will take note of as I start my study of Go.

Reply 0 votes
User 191767 avatar

dsachdev replied ago:

Thanks for the comment. You aren't the first to mention that Python will become a key player. I haven't spent a lot of time with Python honestly, and I guess I need to change that. I have done a lot of C++ in my day, but I didn't really expect to see a huge resurgence of it for new projects. I'll have to give that a second thought

Reply 0 votes
User 799511 avatar

julialouis replied ago:

I am thankful for the new things I learned reading your post. I have been reading a lot on here and have picked up some great ideas.Thanks for the insight!


>biuro kredytowe>

Reply 0 votes
User 755021 avatar

devent replied ago:

How is Oracle suiting Google over technologies in a virtual machine are going to affect Java or any Java developer in any way?

Reply -1 votes
User 191767 avatar

dsachdev replied ago:

Sorry for the delay in commenting. I am trying to keep up with comments here as well as on my site and I was traveling today. Oracle has over the last 6 months taken various actions to show that they are going to really focus on monetizing their Sun assets. Which I can understand their desire to do this.

But this has put the future of software such as NetBeans and GlassFish a bit up in the air. In addition, I believe that much of the community was looking towards Google to foster the Java language itself - notice the number of ex-Sun people at Java - which has been a bit sticking point in the this lawsuit.

But I believe that at this point in time, Google will look towards a new future that is not under Ellison's control. I think 4 or my last 5 posts on http://www.translucent-development.com cover my thoughts on this.

Reply 0 votes
User 212753 avatar

pelegri replied ago:

> has put the future of software such as NetBeans and GlassFish a bit up in the air

Speaking on the GlassFish side... Narrowly speaking, the lawsuit should not impact GlassFish - see [1]. Time will tell if there will be any collateral impacts.

- eduard/o

[1]http://blogs.sun.com/theaquarium/entry/glassfish_v2_1_1_p7

Reply 0 votes
User 191767 avatar

dsachdev replied ago:

Reply 0 votes
User 212753 avatar

pelegri replied ago:

Check out the roadmap [1]. Or attend our GlassFish Community Event and ask directly the Product Managers (and the rest of us) [2]

[1]http://glassfish.org/roadmap
[2]http://wikis.sun.com/display/GlassFish/GlassFish+2010+Community+Event+and+Party

Reply 0 votes
User 191767 avatar

dsachdev replied ago:

I will make sure to check that out. I assume that you work with GlassFish? I did watch the Oracle presentations online when Oracle did the online transitions, and I have followed the issue of GlassFish, but have felt that that the language that they have used to "describe" the future of some product lines that compete with existing Oracle products have been less then clear.

Reply 0 votes
User 212753 avatar

pelegri replied ago:

Yes, I'm in the GlassFish team.
I agree the original "strategy presentations" left a number of open questions around the role of GlassFish, but I believe we have clarified those since then.

Reply 0 votes
User 191767 avatar

dsachdev replied ago:

Thanks for the links. I just spend some time on the roadmap link, and I see that it says that GlassFish 4 would remain Open Source as well.

Is there an indication on the length of time that the community can expect to see an open source glassfish appserver out there? The reason I ask is that I know some development teams that have built and deployed to GlassFish (and pay support contracts), but that are fearful of what the TCO will be in the coming years.

I know that there has been talks for some of these teams of if JBoss or Tomcat even would be a better solution where they can correctly budget for the future. Any thoughts or inputs on this? Thanks! David

Reply 0 votes
User 212753 avatar

pelegri replied ago:

The basic monetization model for GlassFish under Oracle is the same as that under Sun: We provide a fully tested, production-ready, GlassFish. The Oracle product is that extended with some (closed source) Add-Ons and then supported with patches and know-how.
If I understand your question correctly, you are asking for how long Oracle will keep this model. As the roadmap indicates, there are no plans to change this basic model. As the roadmap also says, all plans are subject to change, etc, etc.
On a personal level, and not talking for Oracle, the market dynamics are what they are; the GlassFish plan under Sun originated under that market and it has not changed that much since then.
Hope this helps

Reply 0 votes
User 203253 avatar

James Williams replied ago:

The problem with Go for Android is that there is no compatibility layer for Java > Go. Developing on Android often uses other Java libraries so I think dropping in Go doesn't solve the problem.

Reply 0 votes
User 191767 avatar

dsachdev replied ago:

I guess I'm looking beyond Android, and moreso, the next king (or kings) or enterprise computing. Then again, that is also taking in my opinion that java currently sits in that chair....and I know more then a few intelligent people that would take me to bat on that statement.

Reply 0 votes

Recommended Links

Scala
Written by: Ryan Knight
Featured Refcardz: Top Refcardz:
  1. Apache Hadoop
  2. Play
  3. Akka
  4. Debugging JavaScript
  5. Design Patterns
  1. Apache Hadoop
  2. REST
  3. Java
  4. Git
  5. Java Performance
Connect with DZone