Data-Oriented Programming in Java

Unser nächster Vortrag von Nicolai Parlog dreht sich um das Thema Data Oriented Programming.

Die Firma LivePerson heißt uns freundlicherweise in ihren Räumlichkeiten in den Mannheimer Quadraten willkommen.

Registration

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

Termin

Der Vortrag findet am 25.05.2023 um 19:00 Uhr bei LivePerson Germany GmbH in P3 1-3, 68161 Mannheim statt.

Abstract

Data-oriented programming models data as data: records for entities and sealed types for alternatives. Combined with pattern matching we can define operations on the data without overloading it with functionality.

In data-oriented programming (DOP), we model data as data and polymorphic behavior with pattern matching. This talk will introduce the concept of DOP and its four principles:

  • model the data, the whole data, and nothing but the data
  • data is immutable
  • validate at the boundary
  • make illegal states unrepresentable

We’ll also explore how to use pattern matching as a safe, powerful, and maintainable mechanism for ad-hoc polymorphism on such data that lets us define operations without overloading the types with functionality. The talk ends with a juxtaposition to OOP, so you not only learn how to employ DOP but also when (not).

Bio

Nicolai (aka nipafx) is a Java enthusiast focused on language features and core APIs with a passion for learning and sharing – in articles, newsletters, and books; in tweets, videos, and streams; in demo repos and at conferences – more on all of that on nipafx.dev. He’s a Java Developer Advocate at Oracle and organizer of Accento. That aside, he’s best known for his haircut.

Eine Veranstaltung des iJUG e.V., organisiert durch die JUG Mannheim (majug).

Was Java-Entwickler über Offensive Security wissen sollten

Unser nächster Vortrag von Kai Ullrich dreht sich um das Thema Java Security, das immer mehr Relevanz bekommt.

Die Firma Bridging IT heißt uns freundlicherweise in ihren Räumlichkeiten in den Mannheimer Quadraten willkommen und wird auch Getränke und Pizza bereitstellen.

Registration

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

Termin

Der Vortrag findet am 13.04.2023 um 19:00 Uhr bei Bridging IT statt. BridgingIT GmbH, N7 5-6, Mannheim

Abstract

Die meisten haben die Schockwellen von log4shell mitbekommen, aber wussten Sie auch, dass die zugrundeliegende Exploitation-Technik bereits seit 2016 wohlbekannt war? Und dass sie auch bei anderen Schwachstellen für Angreifer zentrale Wichtigkeit hat? Wussten Sie, dass XSL-Transformation brandgefährlich sein kann? Können Sie sich vorstellen, wie das Model-Binding in Spring MVC im April 2022 perfide ausgenutzt wurde, um Schadcode auf die Zielmaschine zu bringen?

Tauchen Sie mit dem Referenten für eine Stunde ein in die Welt der Java-Schwachstellen und ihrer Ausnutzung und erweitern Sie Ihren Horizont um Dinge, die in ihrem nächsten Projekt den Unterschied machen könnten zwischen sicher und unsicher.

Kai Ullrich blickt zurück auf beinahe 25 Jahre in der IT-Sicherheit. Die vergangenen sechs Jahre hat er sich mit Penetration Testing und Sicherheitsforschung befasst. In dieser Zeit fand er zahlreiche 0-day-Schwachstellen in namhaften Produkten. Aktuell ist er tätig als freischaffender Berater für Cyber-Sicherheit und unterstützt seine Kunden dabei, organisch das Sicherheitsniveau ihrer Organisation zu erhöhen.

When an immutable Object meets a modifiable force

Wir sind zurück mit einem weiteren spannenden Vortrag, dieses Mal als reine Präsenzveranstaltung. Die Firma andrena objects heißt uns freundlicherweise in ihren Räumlichkeiten in Mannheim-Eastsite willkommen und wird auch Getränke und einen Snack bereitstellen. Außerdem verlosen wir unter allen Anwesenden eine Freikarte für die diesjährige JAX-Konferenz Anfang Mai in Mainz!

Die beiden Sprecher Reinier Zwitserloot und Roel Spilker haben uns schon in der Vergangenheit besucht und einen spannenden und kurzweiligen Vortrag abgeliefert, die Erwartungen an ihren Vortrag When an immutable Object meets a modifiable force sind also hoch :-) Der Vortrag erfolgt auf Englisch.

Registration

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

Termin

Der Vortrag findet am 15.03.2022 um 19:00 Uhr bei andrena objects statt. EASTSITE ELYSIUM, Konrad-Zuse-Ring 23, 68163 Mannheim

Abstract

Immutables are great! You can pass them around without worries, have multiple threads use them concurrently, and you never need to copy them.

But your program state changes the whole time. In the past, most program state was modeled using mutable data structures. But now we’re realizing that we can make most of the state immutable, and only modify the parts that need modification.

During this presentation, Reinier and Roel will take you through the current state-of-the-art standard java features and libraries, and discuss the latest ideas for the future of java, as gathered from blog posts, presentations by core committers and public jdk mailing lists.

And they wouldn’t be core Lombok developers if they wouldn’t point out what features they already built to help developers create immutable data structures in an ever changing world.

Project Loom: Broadening Concurrency

Registration

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

Termin

Der Vortrag findet am 22.09.2022 um 19:00 Uhr bei Bridging IT statt. N7 5-6, 68161 Mannheim, Eingang links neben dem (ehemaligen) Saturn. Kostenloses parken im Parkhaus N7 möglich.

Abstract

Project Loom ist nun als Preview Feature ein Teil von Java 19. Loom verspricht dass es Nebenläufigkeit so sehr vereinfacht wie Garbage Collection das Memory Management revolutioniert hat. Es ist an der Zeit, dass wir uns Loom genauer anschauen und analysieren, wie sich der Einsatz von virtuellen Threads auf unsere Anwendungen auswirkt. Wir schauen uns technische Details an, um Nebenläufigkeit anhand von Beispielen zu verstehen. Wir werden virtuelle Threads debuggen und lernen, wie wir einfachen Code schreiben können, der von Nebenläufigkeit Gebrauch macht und dabei das meiste aus unserer Laufzeitumgebung rausholen kann.

Bio

Mark Paluch (@mp911de) arbeitet als Spring Data Project Lead bei VMware und Entwickelt den Lettuce Redis Treiber. Sein Fokus liegt derzeit auf reaktiven Treibern und Infrastrukturkomponenten.

Log4Shell – Bug oder Feature?

Registration

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

Termin

Der Vortrag findet am 23.06.2022 um 19:00 Uhr bei Bridging IT statt. N7 5-6, 68161 Mannheim, Eingang links neben dem (ehemaligen) Saturn. Kostenloses parken im Parkhaus N7 möglich.

Abstract

Um den Jahreswechsel ging ein Aufschrei durch die IT-Abteilungen der Welt, der es bis in die Mainstream-Medien geschafft hat. Noch Wochen später zeigen sich Folgeprobleme in weit verbreiteter Software.

In Log4j, einer weit verbreiteten Java-Bibliothek wurde eine massive Sicherheitslücke gefunden, die die Ausführung von Schadcode auf einem entfernten System erlaubt. In diesem Vortrag soll rekapitulierend erklärt werden, warum und wann es zu dem Problem kam und welche Auswirkungen bisher erkennbar sind. Ausserdem werden die technischen Details der Schwachstelle erklärt und in einer Live-Demo gezeigt, wie die Schwachstelle ausgenutzt werden kann.

Nach dem Vortrag gibt es Getränke, Snacks und Zeit zum socializen.

Bio

Christian Kühn ist Software-Entwickler bei dmTECH. Er beschäftigt sich mit Backend-Entwicklung, Sicherheits- und QA-Themen, aber auch mit den nicht-technischen Herausforderungen moderner (IT-)Organisationen. Er ist Mitorganisator des DevOps Meetup Karlsruhe und twittert unter @ChristianKuehn.