Dierk König, Alexander Casall, Zoran Sevarac berichten von der JavaOne 2016

Highlights von der JavaOne: Machine Learning, NetBeans, Frege, JavaFX

Dierk König, Alexander Casall, Zoran Sevarac

Die JavaOne 2016 hat viele Aspekte, und jeder Teilnehmer fährt mit anderen Erkenntnissen und Erfahrungen zurück. Wir haben verschiedene Mitglieder aus der Community gebeten, ihre persönlichen Highlights der Konferenz mit uns zu teilen.

Dierk König: Persönliche Eindrücke von der JavaOne

dierk_2_0

Dierk König

Die JavaOne ist immer ein Highlight des Jahres. Einerseits wegen der technischen Neuerungen auf der Java Platform, aber hauptsächlich, weil sich die Community der Java-Programmierer trifft und Ideen austauscht.

Die technischen Neuerungen waren dieses Jahr eher spärlich gesät. Die Eigenschaften von Java 8 sind schon seit langem bekannt und finden langsam ihren Weg in die Projekte. Java 9 kommt mit etwas Verzögerung. Dabei bekommt das Modulsystem eine hohe Aufmerksamkeit, auch wenn das Design schon länger feststeht.

Es gibt aber auch schöne Verbesserungen. Mir haben die factory-Methoden in der Java 9 Standard Edition gefallen, die als Ersatz für literale collections eingeführt werden.

Hier ein Beispiel in der jshell, die auch mit Java 9 kommt:

$JAVA_HOME/bin/jshell
jshell> List.of(1,2,3)
$1 ==> [1, 2, 3]
jshell> $1.getClass().getName()
$2 ==> "java.util.Collections$UnmodifiableRandomAccessList"

Die shell hat übrigens eine schöne tab-completion.

Besonders gefreut habe ich mich über den Erfolg von Frege, einem Haskell für die JVM, bei der diesjährigen „emerging languages bowl“. Die Veranstaltung fing mit dem Titel der Super Bowl als Eingangsmusik an, was für die ersten Lacher sorgte. Dann stellten Mirah, Ceylon, Kotlin und Frege je eine in dieser Sprache geschriebene Chat-Applikation vor. Das Publikum stimmte ab und kürte Frege wie schon letztes Jahr zum Gewinner.

Die Frege-Implementierung nutzte FregeFX (Frege für JavaFX) und einen in Frege geschriebenen MicroService auf Basis von Chinook (Frege für SparkJava). Ausschlaggebend für den Sieg waren wohl nicht nur die Geschwindigkeit (3ms Antwortzeit) und das nette Aussehen der Clients, sondern vor allem die Garantien, die Freges Typsystem zur Compilezeit durchsetzen kann: korrektes thread-handling in JavaFX und korrekte Statusübergänge auf dem Server.

Die gesamte Konferenz hindurch sammelten die „Canoo Voting Machines“ das Feedback der Konferenzteilnehmer ein. Das stets aktuelle Leaderboard war am JavaHub präsent. Die Voting Machines standen vor jedem Konferenzraum, und die Teilnehmer stimmten beim Verlassen des Raumes durch Tippen auf den Bildschirm ab.

Die Maschinen sind natürlich in Java geschrieben. Sie laufen auf einem Raspberry Pi, der hinter einem preisgünstigen Touchscreen hängt. Sie nutzen JavaFX mit OpenDolphin. Das Verfahren hat sich schon letztes Jahr bewährt und führte zu deutlich mehr und besserem Feedback als in allen Jahren zuvor.

Einen letzten Auftritt hatten die Maschinen in der abschliessenden Community Keynote als Babelfisch-Übersetzer für „Chew-Java“ (= Chewbaka). Die Keynote war geeky und voller Gags aus der Kombination von Star Wars und Java. Mein Favorit vom Yoda-Time-Meister: „Do or do not. There is no try – without a catch“.

Eingewoben in die Geschichte wurde viele Projekte der Java Community samt ihren Entwicklern vorgestellt und von Stephen Chin charmant in Szene gesetzt.

Auch wenn die JavaOne als „Anhängsel“ der großen Oracle OpenWorld nicht mehr das gleiche Flair hat wie zu Zeiten von Sun Microsystems, so bleibt sie doch der Kristallisationspunkt für alle Java-Enthusiasten.

Zoran Sevarac: NetBeans‘ Umzug zu Apache

Screen-Shot-2016-09-15-at-11.28.36-AM

Zoran Sevarac

Für mich war die diesjährige JavaOne die beste bisher. Besonders gefreut habe ich mich über das große Interesse und die vielen Sessions zu den Themen Maschinelles Lernen, Big Data und Internet of Things. Meiner Meinung nach war die Session „Building Cognitive Applications with Watson APIs“, in der uns die Macht von IBMs kognitiver Computing-Plattform in der Cloud (Watson) demonstriert wurde, eine der spannendsten. Ein weiterer Favorit war für mich die Session „Java and the Commoditization of Machine Intelligence“, eine gemeinschaftliche Präsentation von <em>Machine Intelligence Services</em> der Unternehmen Google, Microsoft und IBM.

Ich selbst bin auch in zwei Talks aufgetreten: Im Zuge der Session „Deep Learning for Visual Object Recognition“ stellte ich DeepNetts vor, eine Java-Bibliothek für die Bilderkennung von Maschinen, die auf Deep Learning basiert und ein <em>Machine Vision</em> API beinhaltet. In der anderen Session, „Big Data and Image Recognition with Free and Open Source Tools“, zeigten wir, wie man Bilder mit Spark verarbeiten kann.

Eine große Neuigkeit war vor allem NetBeans‘ Umzug zur Apache Foundation. Jeder, mit dem ich darüber gesprochen habe, freut sich darauf, auch James Gosling. Er begrüßte diesen Schritt ebenfalls und hat uns Mut gemacht; er wird zukünftig auch weiter an NetBeans mitarbeiten. Die NetBeans Community war überhaupt während des NetBeans Days mit sehr vielen Sessions vertreten und auf der ganzen Konferenz sehr aktiv.

Auf der JavaOne habe ich zudem beeindruckende Visualisierungssoftware gesehen, die Sean Philips mit JavaFX entwickelt und in der Session „Deep-Space Trajectory Design for Ocean Worlds Orbiters Using JavaFX“ vorgestellt hat. Seine Software wird von der NASA für die Visualisierung von Flug- und Umlaufsbahnen genutzt.

Alexander Casall: Was macht die JavaOne besonders?

alexander20casall_0

Alexander Casall

Ich nutze die alljährliche Begleiterscheinung der JavaOne, den Jetlag, dazu, einen kurzen Kommentar über die diesjährige JavaOne zu schreiben. Was könnte man nachts um 4 Uhr Besseres machen!

Was macht die JavaOne eigentlich so besonders? Fangen wir an, bei ihrem Veranstaltungsort. San Francisco ist eine der schönsten Städte der Welt, und es ist jedes Jahr eine erneute Freude, diese bunte und offene Stadt zu besuchen. Die JavaOne fand wie in jedem der letzten Jahre im Hilton und dem Parc 55 Hotel statt und wurde im Moscone Center durch die technische Keynote am Sonntag eröffnet. Es folgten hunderte Vorträge, die über die anschließende Woche bis Donnerstag verteilt waren. Einen kleinen Teil der Vorträge kann man sich auf YouTube ansehen – reinschauen lohnt sich.

Doch kommen wir zur Eingangsfrage zurück – was macht die JavaOne eigentlich aus? Neben den Inhalten steht ganz klar die Community im Vordergrund. Auf keiner anderen Konferenz, die ich besuche, treffe ich mehr bekannte Gesichter als auf der JavaOne. Nicht zuletzt liegt das an den unzähligen Events, die nach den Konferenztagen am Abend stattfinden. Dazu zählt z.B. die JCP Party am Montag, bei der man einen wunderbaren Blick über die gesamte Stadt vom obersten Stockwerk des Konferenzhotels genießen kann und dabei den Tönen der Java-Band „Null Pointers“ lauscht. Viele der technischen Inhalte der Konferenz kann man sicher auch auf anderen europäischen Konferenzen sehen, der Community-Aspekt ist bei der JavaOne außergewöhnlich.

Eine kurze Geschichte, die gut zum Thema Community passt: Bei einem meiner vier Vorträge hatte ich ein besonderes Treffen mit einem der Zuhörer. Er hieß Honkee (https://twitter.com/HongKee) und saß in zwei meiner Vorträge. Wir unterhielten uns kurz und kamen darauf, dass er ebenfalls in Dresden lebt und zwei Minuten von meiner Wohnung entfernt arbeitet. Nachdem wir aus allen Wolken gefallen sind, werden wir uns nun die nächsten Wochen auf einen Kaffee in Dresden treffen. Tolle Momente, einer tollen Konferenz.

Kommen wir zu meinem inhaltlichen Highlight. Eine Technologie, die mich dieses Jahr besonders beeindruckt hat, ist jpro. Bei jpro handelt es sich um eine Laufzeitumgebung, die es ermöglicht, annähernd jede JavaFX-Anwendung im Browser auszuführen (Demos: http://jpro.io/). Anscheinend sah Oracle das Potential der Technologie ähnlich und verlieh den Machern den Dukes Choice Award. Es ist gut zu sehen, dass Oracle weiterhin die Arbeit der Community rund um JavaFX würdigt und fördert.

Da ich mich selbst stark für JavaFX interessiere, fand ich den Ausblick auf JDK 10 besonders spannend:

Ich freue mich auf das, was kommt. Zudem waberte durch die Gerüchteküche der JavaOne die Information, dass Oracle die Ressourcen rund um JavaFX wieder erhöhen wird.

Da mich doch so langsam wieder die Müdigkeit packt, werde ich es an dieser Stelle belassen und beginnen, mich auf die JavaOne im nächsten Jahr zu freuen. Gute Nacht!

 

Geschrieben von
Dierk König
Dierk König
Dierk König ist Fellow bei der Canoo Engineering AG, Basel. Er betreibt die Open-Source-Projekte Canoo WebTest und Dolphin und ist Committer in den Projekten Groovy, Grails und GPars. Er publiziert und spricht auf internationalen Konferenzen zu Themen moderner Softwareentwicklung. Er ist Autor des Buchs „Groovy in Action“.
Alexander Casall
Alexander Casall
Alexander Casall hat 2011 seinen Master in Informatik abgeschlossen und arbeitet seitdem bei der Saxonia Systems AG als Softwareentwickler. Sein Fokus liegt auf der Implementierung moderner Multi-Touch-Applikationen mit JavaFX. U.a. arbeitet er an Kollaborationswerkzeugen zur verteilten, agilen Entwicklung. In seiner Freizeit entwickelt Alexander native iOS Apps (www.buildpath.de), veröffentlicht Artikel in Fachzeitschriften, oder hält Vorträge auf Konferenzen (JavaOne, JAX, W-JAX) und User Groups.
Zoran Sevarac
Zoran Sevarac
Dr. Zoran Sevarac is an Assistant Professor at Department for Software Engineering, Faculty of Organisational Sciences, University of Belgrade, Serbia. His main interests are software engineering and artificial intelligence. Zoran is also founder and lead developer of the world’s leading open source Java neural network framework Neuroph, member of JavaChampions program and member of NetBeans Dream Team.
Kommentare

Hinterlasse einen Kommentar

Hinterlasse den ersten Kommentar!

avatar
400
  Subscribe  
Benachrichtige mich zu: