Continuous Delivery mit Feature Toggles

Language

The talk will be given in German.

Registration

Wir freuen uns über Eure Anmeldung (optional und unverbindlich) auf unserer Meetup-Seite.

Termin

Der Vortrag findet am 29.09.2016 um 19:00 Uhr in der Uni Mannheim A5, 6 im Raum C013 statt (Anfahrtsbeschreibung).

Abstract

Im Zeitalter von Continuous Delivery möchte man möglichst häufig und schnell Änderungen in Produktion bringen. Nur was macht man, wenn Features noch nicht fertig implementiert sind oder noch nicht veröffentlicht werden sollen?

Eine mögliche Lösung ist die Isolierung von Features über Branches. Bei vielen Features bzw. Features mit langer Entwicklungszeit kommt man hier schnell in die Merge-Hölle.

Eine andere Lösung sind Feature Toggles, über die Features im Live-Betrieb versteckt werden können. Das heißt man entkoppelt das Ausrollen von Funktionalität vom eigentlichen Deployment.

Feature Toggles bieten noch einige weitere Vorteile, wie z.B. die Möglichkeiten von A/B-Tests, Canary Releases etc. Es existieren aber auch Risiken, die in diesem Vortrag nicht unerwähnt bleiben sollen.

Der Vortrag beschäftigt sich außerdem mit der Togglz-Library. Wie damit Feature Toggles in realen Projekten umgesetzt werden können, wird an Hand von Code-Beispielen gezeigt.

Bio

Kai Hofstetter ist Senior Softwareentwickler bei 1&1. Er beschäftigt sich seit über 15 Jahren mit Java, macht aber auch gerne Ausflüge zu anderen Programmiersprachen, wie z.B. Scala.

Er interessiert sich u.a. für alles was die Effizienz der Softwareentwicklung steigert und die Softwarequalität verbessert, wie z.B. Continuous Delivery.

Kai hat bereits bei verschiedenen Web-Anwendungen Erfahrungen mit der Einführung von Feature Toggles gesammelt und ist Togglz Contributor.

Des Weiteren gilt sein besonderes Interesse dem Thema Security von Web-Applikationen.

Lean Microservices using OSGi

Language

The talk will be given in German.

Registration

Wir freuen uns über Eure Anmeldung (optional und unverbindlich) auf unserer Meetup-Seite.

Termin

Der Vortrag findet am 10.08.2016 um 19:00 Uhr in der Uni Mannheim A5, 6 im Raum C014 statt (Anfahrtsbeschreibung).

Abstract

Microservices and their frameworks like spring boot allow to start fast but can easily produce ugly monoliths again. OSGi on the other hand provides great modularity but is regarded as more complex than spring boot and alike. This Talk shows how to create lean and modular microservices using OSGi, maven and bndtools. The build result is a runnable jar or docker image and nicely fits microservice deployments. See how OSGi allows the flexibility to deploy each microservice on its own and let them communicate over (REST) remote calls or deploy them together and talk using OSGi services locally using the same business code bundles.

Bio

Christian Schneider is an Open Source Architect at Talend. He was the responsible architect for the Services Oriented Architecture of EnBW Trading GmbH (Trading floor of one of Germany’s largest utility companies). He specializes in OSGi and practical integration solutions. He was a a regular speaker at several Java conferences in Germany like JAX. W-JAX and at Apachecon.

Use functions for a greater good

Language

The talk will be given in English.

Termin

Der Vortrag findet am 21.07.2016 um 19:00 Uhr in der Uni Mannheim A5, 6 im Raum C013 statt (Anfahrtsbeschreibung).

Abstract

A lot of people refer to Java 8 as a shift towards functional programming. But what exactly does this mean? What are the benefits from using functions and lambdas? What ideas do Streams, Optionals and CompletableFutures share? And how can one exploit these? In this talk we try to give a comprehensive answer by introducing the basics of functional programming and providing a lot of real world examples in Java 8. Further, we will also have a look on how lambda expressions are translated to bytecode and, whether, there is a perfomance impact.

After this talk you will

  • know how functions are represented in Java 8
  • know the common abstractions of Streams, Optionals and CompleteableFutures
  • hopefully apply some of the given suggestions

Bio

Artem Kozlov is a Software Engineer, currently working for metaphacts GmbH in Walldorf. He is mainly interested in Functional Programming languages like Haskell, Scala, etc. and Semantic Web Technologies.

Gregor Trefs is a Research Assistent at the University of Mannheim where he uses Java 8 to develop a platform for semantically integrating business processes. He is always interested in new ways to better cope with challenges in Software Development.

Hallo, ich bin Redis

Language

As per request of some vistors the talk will be held in English!

Termin

Der Vortrag findet am 09.06.2016 um 19:00 Uhr in der Uni Mannheim A5, 6 im Raum C013 statt (Anfahrtsbeschreibung).

Abstract

Caching? Verteile Sessions? Pub/Sub? 100.000 Requests pro Sekunde? Dies und viel mehr bietet Redis. Redis ist ein Open Source NoSQL Data Store und ist ein vielseitiger Server für Datenstrukturen der sich einer immer größeren Beliebtheit erfreut. Der Vortrag ist eine Einführung in Redis und veranschaulicht mit Hilfe von Code-Beispielen, wie Redis mit Spring Data, Hibernate OGM und plain Java verwendet werden kann.

Bio

Mark Paluch ist Software Craftsman, Spring Data Engineer bei Pivotal und arbeitet als Mitglied der CDI 2.0 (JSR365) Expert Group an der nächsten Version der Spec. Er entwickelt seit 1999 Java Server-, Frontend- und Webanwendungen und sein aktueller Fokus liegt auf Software-Architektur, Spring und Redis. Mark bloggt regelmäßig über Java, Testautomatisierung, das Internet der Dinge und die Entwicklungskultur. In seiner freien Zeit beteiligt er sich als Committer an Open Source Projekten.

Jigsaw Walkthrough: Modularisierung einer Java-Anwendung

Termin

Der Vortrag findet am 12.05.2016 um 19:00 Uhr in der Uni Mannheim A5, 6 im Raum C013 statt (Anfahrtsbeschreibung).

Abstract

Die meisten werden schon von Project Jigsaw in Java 9 gehört haben, aber haben Sie es auch schon in Aktion gesehen? Dieser Vortrag führt anhand der Modularisierung einer Beispielanwendung vorbei an einigen Fallstricken durch die wichtigen Features.

Er wird zeigen wie man …

  • Module und ihre Abhängigkeiten definiert
  • eine Anwendung und ihre Abhängigkeiten auf Kompatibilität untersucht
  • eine Anwendung trotz nicht-modularisierter Abhängigkeiten migriert

Mit diesem Wissen gewappnet werden Sie in der Lage sein, die Migration Ihrer Anwendung zu beurteilen oder gleich prototypisch durchzuführen.

Bio

Nicolai Parlog arbeitet als Java-Entwickler bei Disy in Karlsruhe und bloggt nebenbei zu Softwareentwicklung im Allgemeinen und Java im Speziellen. Besonders interessiert ist er an Neuerscheinungen wie Java 8 (als es noch neu war), Project Jigsaw in Java 9, Project Valhalla in Java 10/11 oder JUnit 5.

Er hat an der TU Dortmund Informatik und Mathematik studiert und anschließend drei Jahre beim Fraunhofer ISI Energiemodelle entwickelt bevor er im Herbst 2014 zu Disy wechselte.