Your interviewer is David Mertz: This is David Mertz, reporting again on OSCON for IBM® developerWorks. In this installment I've had an opportunity to speak with Steve Chin, who was the organizer of the OSCON Java™ track, and we had an opportunity to speak about a number of interesting topics but especially focused on directions that the JVM and languages board have gone in.
Chin: My day job is I'm the chief agile methodologist at GXS, which is a supply chain company. So we're users of Java technology but either I don't work for O'Reilly conferences, I don't work for Oracle or any other companies which most of our speakers are from.
My main interests and how I got involved in this is, so I'm pretty well known as the expert on Java GSX's technology. So I wrote the book with the pro JavaFX GSX's platform book with Jim Weaver and Weiqi Gao and Dean Iverson talking about it at conferences and also on the Silicon Valley Java GSX users group out here.
Mertz: Were you able to cover in a different manner that you might be able to at one of the more corporate conferences?
Chin: Some of the things which I think are also different formatwise is we have some nice tutorials going on. And unlike the OSCON tutorials, it's free to all attendees. But it's ... one of the things at the conferences is you get the 40-, 50-minute spiel from somebody, which is just enough time for them to sell you on the technology or what it is they're pitching.
They can't actually get into enough detail where you could actually see a real code samples or taking any of the technology or really ask tough, hard-hitting questions. So the tutorial format really opens up for more in-depth stuff. And we're using it for some traditional topics like JavaBeans, some JVM language topics. But we're also, you know, a bunch of mobile talks set up as well.
Mertz: Do you know much about dalvik and the use of a Java like language on Android systems?
Chin: Yes. So, I mean, we actually...that's a good point, that's one of the other things which we bring to a conference which you're not going to get at some other Java conferences is we ... we treat Android as an equal player from a technology standpoint.
And I think the way of looking at it from a developer's standpoint is as a Java developer, developing for Android is very similar, same language, same APIs for the core Java libraries. You know, different UI classes for mobile. But for the most part it's a seamless experience and it gets you on a leading-edge mobile platform with existing Java skill set.
Mertz: You mentioned Jython as one of the languages that's targeted at JVMs and of course JRuby's there, and you mentioned Scala briefly in a previous comment. And those are something I've looked at recently that [INAUDIBLE] seems to be getting some buzz. And obviously there is, you know, a number of other languages for the JVM that...
Chin: Yes, no, those are the major ones. We also have a talk on Clojure. And we're actually holding a kind of a mini-unconference event which is free to the public on Sunday about API languages summit, or symposium rather on guest on JVM languages symposium.
And that event we're actually get the advantage of having all these great speakers out. You know about JVM languages and [INAUDIBLE] sign up for that independently whether or not they're attending us.
Mertz: I wonder to what degree you think that the ... I mean, existence, but then gain attraction and improvement, non-Java JVM languages affect use of the JVM in open communities and symmetrically how did the assistance of these affect the Java equal system?
Chin: Yes, so I think while the Java language will continue to evolved incrementally. A really opportunity for growth of Java technology just related to JVM and JVM based languages.
With Java 7, one of the big features was invoke dynamic which is more efficient dynamic dispatch for languages which are dynamically ... either dynamically typed languages or languages in which you need to invoke methods on the fly.
And it allows essentially the alternative language implementers to create higher-performance languages on top of the JVM other than Java. There's a whole host of smaller upshot JVM languages coming out like Phantom and go to, all of which have very interesting language features like combined dynamic static type systems and a lot of research-type stuff going into them.
And the JVM is a great platform for building out languages because as a new language implementer you get the advantage of all the optimizations and just in time compiler and infrastructure which Java provide.
Combined static typing has actually gotten quite popular in some of the newer languages because it allows you to do static typing where it makes sense for building APIs or things where you want to have a high level of consistency.
And there's this huge fact that the static typing in terms of productivity because the compiler can catch errors before you even run your application. On the other hand, there's cases when you're building out new APIs or getting things dynamically where you really want a dynamic type system. So having a combination of both in a single language it's really powerful.
Mertz: This is David Mertz reporting again on OSCON for IBM developerWorks.