JUG Talk Night zum Thema “Event Sourcing & CQRS” am 01.08

Wir laden euch herzlich ein zu einem weiteren Talk, dieses mal zum Thema Event Sourcing und CQRS.

Datum: 01.08 ab 19 Uhr
Ort: adesso Dortmund, Stockholmer Allee 20, Raum “Aalto”

Für Verpflegung wird wie immer gesorgt.

Bei Interesse bitte über Meetup anmelden: https://www.meetup.com/de-DE/JUG-Dortmund/events/252827612/

Abstract:

`Event-Sourcing` bietet eine Alternative zur traditionellen Nutzung von
relationalen Datenbanken und speichert den State einer Anwendung als Abfolge
aller Änderungen (`Event-Streams`).

`Event-Sourcing` alleine bietet jedoch nicht alle Möglichkeiten, die man als
Entwickler einer datenbank-gestützten Anwendung benötigt.
Wird bspw. in einer E-Commerce-Anwendung eine Liste von Produkten einer
bestimmten Kategorie benötigt, so stellt man schnell fest, dass sich dies nicht
effizient aus den gespeicherten Event-Streams beschaffen lässt.

Um diese Lücke zu schließen wird `CQRS` als Architektur-Muster meist im selben
Atemzug mit `Event-Sourcing` genannt. `CQRS` trennt das Model in zwei Modelle
auf und unterscheidet bei Aktionen strikt zwischen schreibende und lesende
Aktionen.

Der Talk liefert zunächst eine kurze Einführung in `Event-Sourcing` und `CQRS`
und beleuchtet im Anschluss einige Vor- und Nachteile, die sich durch die
Umsetzung ergeben.

Speaker:

Christian Hammerl entwickelt seit 18 Jahren Software, seit 7 Jahren ist er angestellt bei der Crosscan GmbH in Witten. Seine Projekte sind primär im PHP- und C++-Umfeld angesiedelt.

JUG Talk Night – “DDD als Basis für Microservices” mit Henning Schwentner

Wir freuen uns auf einen Talk über DDD mit Henning Schwentner!

Es geht los gegen 19.00 Uhr mit ein paar kühlen Getränken. Gegen 19.15 Uhr fangen wir dann mit dem Talk an. Danach gibt es wie immer Pizza.

Anmeldung bitte über unsere Meetup-Gruppe.

Talk:
“It’s all about the domain, honey – DDD als Basis für Microservices in Java”

Abstract:
Beim Bauen von Software werden tolle Technologien, Programmiersprachen und Tools eingesetzt. Das ist gut und richtig. Aber leider wird dabei oft aus den Augen verloren, dass das Entscheidende für den Projekterfolg nicht die Technik, sondern die *Fachlichkeit* ist. Um die Fachlichkeit (=Domäne) verstehen zu können, brauchen wir eine gemeinsame Sprache mit den Fachexperten. Außerdem: wenn wir in der Software und ihrer Architektur nicht das fachliche Modell abbilden, dann wird sie unseren Anwendern nicht bei Ihrer Arbeit helfen. Davor schützt uns keine Technologie der Welt.

Als Informatiker kann man leicht in die Falle tappen, sich auf Technologie statt auf Fachlichkeit zu fokussieren. Um das zu verhindern, zeige ich in diesem Vortrag, wie man mit Domain-Driven Design (DDD) das Wissen um die Fachlichkeit lernen und in eine Ubiquitous Language übertragen kann. Dazu werden Techniken wie Interviews, Domain Storytelling und Event Storming eingesetzt.

In der Praxis ist es schwierig zu erkennen, wie wir unsere Domäne schneiden und daraus Microservices entwickeln können. Hierbei kann uns das Prinzip der Bounded Contexts aus DDD helfen. Es gibt uns Hilfestellung wo vertikale Schnitte sinnvoll sind.

Setzt man diese Techniken gemeinsam ein, dann kann man die Architektur von Software-Systemen so bauen, dass sie die Fachlichkeit darstellt und unsere Anwender glücklich macht.

Speaker:
Henning Schwentner liebt Programmieren in hoher Qualität. Diese Leidenschaft lebt er als Software-Architekt, Berater und Entwickler bei der WPS – Workplace Solutions aus. Seine Projekte sind Domain-Driven, agil und in Programmiersprachen wie Java und C# aber auch ABAP. Ihn interessieren Menschen, langlebige Softwarearchitekturen, große Refactorings und die Evolution von Programmiersprachen. Gerade hat er »Domain-Driven Design kompakt« von Vaughn Vernon ins Deutsche übersetzt. Er ist verheiratet, hat Kinder und lebt in Hamburg.

Talk Night im April

Wir laden herzlich ein zu einem Talk von Chis Chedgey – Co-Founder von Structure 101 – zum spannenden Thema “Bridging the Divide between Architecture and Code”.

Für Getränke während und Pizza nach dem Talk wird wie immer gesorgt :).

Wir freuen uns auf eure Teilnahme!

Location:
adesso AG
Stockholmer Allee 20
44269 Dortmund

Bitte über meetup anmelden.

Hinweis: der Talk wird auf Englisch gehalten

Abstract:
Static diagrams on wikis and white-boards might capture the vision of architects, but they don’t much help programmers to understand how the code they’re working on right now fits into the architecture. Nor are the programmers warned when they violate the diagrams as they forge changes, line-by-line.

This is a huge problem – it is ultimately individual lines of code that make or break an architecture; and we know that a clean architecture will help teams develop a more flexible product, with less complexity, less wasted effort, etc. Worse, without practical architectural guidance, programmers wrestle with invisible structures that emerge from thousands of inter-dependent lines of code.

And being invisible, these structures become ever more complex, coupled, and tangled. In fact, uncontrolled structure actively fights against productive development.

This talk shows how to rein in emergent code-base structures and gradually transform them into a cogent, defined architecture. You will see how…

Visualizing the emergent structure makes a code-base easier to understand.
Restructuring to remove tangles and reduce coupling makes the visualized code-base easier to work on.
Specifying layering and dependency rules converts good structure into a controlled architecture that guides the team as the code-base evolves and grows.
A key ingredient is a live visualization, inside the IDE, of the detailed code the programmer is working on, in the context of the overall architecture. In short, you will learn how bridging the architect/programmer divide can convert code-base structure from liability into an asset that actively works for development productivity.

Hacking Challenge am 27.02.2018

Verspielter Start in das Jahr 2018. Am Dienstag, den 27. Februar ab 19:00 laden wir ein zu einer Java-Hacking-Challenge ein. Die Aufgabe wird sein, in Teams mit Java-Bordmitteln eine kleine Snake KI gegen eine API zu implementieren. Die verschiedenen KIs lassen wir dann in einem Turnier gegeneinander antreten und die Gewinner bekommen einen Preis.

Bringt einen Laptop mit WLAN und eure Lieblings-IDE mit!

Für Pizza und Getränke wird gesorgt.

Wir freuen uns auf einen lustigen Abend mit euch!

Location:
adesso AG
Stockholmer Allee 20
44269 Dortmund

Wir bitte um Anmeldung über unser Meetup.

Vortragsabend mit Simon Ritter am 28.11

Tag zusammen,

wir laden euch am 28.11. herzlich zu einem Vortragsabend in die adesso-Räumlichkeiten mit Simon Ritter ein. Simon begleitet Java fast seit seit Anfang an und war Java Evangelist bei Sun und Oracle, bevor er zu zu Azul Systems wechselte, wo er als Deputy CTO unter anderem die Entwicklung eines JDK für IoT-Geräte begleitet. Das Thema des (englischsprachigen) Vortrags lautet “Is an Agile Standard for Java Possible?”.

Für etwas zu Essen und Getränke wird wie immer gesorgt :).

Anmeldung auf Meetup.

Abstract:
Java has had nine releases (almost) over 22 years, with a cadence that has varied between 13 months and four and a half years. When JDK 9 is released in September, it will have been three and a half years since the launch of JDK 8. Many factors affect how long it takes to complete a release of Java, but Oracle has stated publicly that they want to move to a much more agile release process. The idea behind this is that features will be released when they are ready, and they won’t be grouped together to form significant major releases. How this works in practice and how developers and users will react to this is a cause for some debate. In this session we’ll look at some of the history behind the way standards for Java have been developed and what the advantages and disadvantages these proposed changes will have.

Viele Grüße,
Tom