DiWiSH-Fachgruppe Nordic Coding: Reactive Programming, HIP und Gradle


Am 30. September 2014 findet in Kiel das nächste Treffen der Fachgruppe Nordic Coding statt. Das Treffen steht dieses Mal unter dem Motto "Reactive Programming, HIP und Gradle" und verspricht durch interessante Fachvorträge eine spannende Veranstaltung zu werden.

Die Fachvorträge

Einführung in Gradle 
(Stefan Oehme - itemis)

Gradle ist ein modernes Build-System, das die Stärken seiner Vorgänger vereint. Auf Nutzerseite lautet das Motto "Konvention statt Konfiguration". Die verwendete Sprache ist allerdings kein starres XML, sondern eine Groovy-DSL. So kann beliebiger Code ausgeführt werden. Gegen dieselbe API werden auch Plugins entwickelt. Der Übergang vom Nutzer zum Plugin-Autor ist fließend und einfach. Im Kern von Gradle arbeitet ein Task-System, vergleichbar mit Ant. Zusätzlich leiht sich Gradle die inkrementellen Tasks des Build-Veteranen Make. Eine Entscheidung zwischen "schnelle Builds" und "lesbare Buildskripte" ist endlich nicht mehr nötig.  Aber Vorsicht, der Anblick von Maven-POMs kann nach diesem Vortrag körperliche Schmerzen hervorrufen!

Introducing HIP, the Human Interaction Protocol 
(Kees Jan Koster - java-monitor.com)

An API and framework to coworkers, managers and that idiot down the hall

Humans have wonderfully weird interfaces. Ranging from elegantly simple to brutish and infuriating. It is an interface that we use every day. It is so prevalent that, regrettably, we tend to forget it is there. For all our love of tinkering with systems, developers seem to have no interest whatsoever in hacking this particular API.

HIP is Open Source, with nearly 7 billion users and almost as many contributors. Over the course of history, the API to humans has been well documented and explored. It is the only API that can be talked about at parties.

In Human Interaction Protocol, Kees Jan Koster talks about the API to various implementations of the human class. He introduces a framework that makes it easier to interface with individual objects. The framework is particularly suitable for clustering humans. From personal experience he explains a few useful design patterns to apply in your HIP clusters.

You take home a set of recipes to apply when using HIP. Simply using these will improve your own use of HIP, and explain and possibly address some of the performance issues you've been seeing in your clusters. They serve as a starting point to tinkering and experimenting with this wonderful API.

After introducing the basic HIP protocols, Kees Jan explains the following patterns: breaking endless loops, efficient interrupt handling, scheduling, response codes and API level negotiation.

This talk is accessible to developers of all levels of experience.

Handling Data-Flow the Reactive Way using Akka Streams 
(Roland Kuhn -TypeSafe)

Akka Streams are an implementation of the Reactive Streams specification (http://reactive-streams.org/), a joint effort that aims at standardizing the exchange of streams of data across asynchronous boundaries in a fully non-blocking way while providing flow control and mediating back pressure. In this presentation we go into the details of what this new abstraction can be used for and what the guiding principles are behind its development. We then pop the hood to inspect the inner workings of how the idiomatic Scala and Java DSLs translate the description of a stream transformation into a running chain of actors. Finally I give an outlook on how this will enable the distributed processing of real-time or big data streams across an Akka Cluster.

Intended Audience: Programmers, architects, CIO/CTOs and everyone with a desire to challenge the status quo and expand their horizons on how to tackle the current and future challenges in the computing industry.

Über die Vortragenden

Stefan Oehme is a software architect and consultant at itemis. His primary focus is on connecting developers and domain experts through domain driven design, better languages and continuous delivery. In his last project at a large German bank he cut down release cycles from six months to two weeks. Stefan is a committer on Xtext and Xtend.


Kees Jan Koster is a freelance Java architect and technical project leader. He is currently starting up java-monitor.com as a community service, and as a business.


Roland Kuhn is leading the Akka project at Typesafe, a co-author of the Reactive Manifesto and the book Reactive Design Patterns, co-teaching the Coursera course “Principles of Reactive Programming” and a passionate open-source hakker. He also holds a PhD in particle physics and has worked in the space industry for several years. See also rolandkuhn.com.


16:30 Uhr Get Together
17:00 Uhr 
Einführung in Gradle (Stefan Oehme)
18:00 Uhr 
18:15 Uhr 
Introducing HIP, the Human Interaction Protocol (Kees Jan Koster)
Uhr Pause
19:30 Uhr 
Handling Data-Flow the Reactive Way using Akka Streams (Roland Kuhn)
20:30 Uhr 
Abschluss und Networking
21:00 Uhr 
Ende der Veranstaltung


Wissenschaftszentrum Kiel GmbH
Fraunhoferstraße 13
24118 Kiel


Bitte melden Sie sich kostenfrei unter dem Link  http://www.meetup.com/Nordic-Coding/events/ oder unter folgendem Anmeldeformular an.