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.

REWE digital trifft die Java User Group Dortmund – ein Auswärtsspiel

Bei der Java User Group Dortmund ist es in den letzten Jahren zur Tradition geworden, am Tag nach dem Javaland eine Minikonferenz zu organisieren und Sprecher aus dem Javaland nach Dortmund einzuladen. In diesem Jahr schaffen wir dies aus verschiedenen Gründen nicht, wollten aber auch nicht mit dieser Tradition brechen. Daher haben wir uns spontan entschieden, ein Auswärtsspiel zu organisieren. Gemeinsam mit der REWE digital in Köln organisieren wir im bekannten Format ein Abend mit internationalen Top-Sprechern aus dem Javaland. Auch wenn die Anreise für ein solches Auswärtsspiel etwas weiter ist, möchten wir allen Java Entwicklern in der Region die Möglichkeit bieten, zwei ausgewählte Vorträge aus dem Javaland zu besuchen.

Dieses Treffen findet bei REWE digital auf dem Carlswerkgelände in der Schanzenstraße in Köln Mülheim statt.

https://www.meetup.com/de-DE/JUG-Dortmund/events/248568771/

REWE digital
Gebäude Kupferwerk 2.15
1. Etage
Schanzenstraße 6-20
51063 Köln

Das Gelände des Carlswerks ist ziemlich weitläufig, deshalb bitte die Anfahrtsbeschreibung beachten.

Talk #1 “Making Microservices Micro Again with Istio Service Mesh”

(Ray Tsang, Google, @saturnism)

Microservices are here to stay. When applied properly, microservices techniques and culture ultimately help us continuously improve business at a faster pace than traditional architecture. However, microservices architecture itself can be complex to configure. All of a sudden, we are faced with the need for a service discovery server, how do we store service metadata, make decisions on whether to use client side load balancing or server side load balancing, deal with network resiliency, think how do we enforce service policies and audit, trace nested services calls… The list goes on.
Sure, it’s easy to have a single stack that makes everything work provided there are good microservices support – but what if you have a polyglot environment? How would you make sure all of the stack can address the same concerns in a consistent way? This is where a service mesh comes in.
In this talk, Ray will introduce Istio, an open source service mesh framework created by Google, IBM, and Lyft. We’ll see how the service mesh work, the technology behind it, and how it addresses aforementioned concerns.

About Ray Tsang

Ray is a Developer Advocate for the Google Cloud Platform. Ray had extensive hands on cross-industry enterprise systems integration delivery and management experiences since 2002. Ray has built mobile applications & micropayment systems as an independent contractor. During his time in Taiwan, Ray has built IT systems for Taiwanese government for a large scale search engine, electronic customs record management, and more. At Accenture, Ray was a team lead for a SOA deployment at a utilities company, building out common frameworks for messaging and service tracing. Moreover, Ray was an architect leading teams to implement online booking channels for a global hospitality company. During Ray’s time at Red Hat, he was specialized in Java middleware, and contributing to open source projects such as Infinispan.

Aside from technology, Ray enjoys traveling and adventures. Ray is currently a Developer Advocate at Google.

Talk #2 “Deconstructing and Evolving REST Security”

(David Blevins, Tomitribe, @dblevins)

The learning curve for security is severe and unforgiving. Specifications promise infinite flexibility, habitually give old concepts new names, are riddled with extensions, and almost seem designed to deliberately confuse. For a back-end REST developer, choking all this down for the first time is mission impossible. With an aggressive distaste for fancy terminology, this session delves into OAuth 2.0 as it pertains to REST and shows how it falls into two camps: stateful and stateless. We then detail a competing Amazon-style approach called HTTP Signatures, ideal for B2B scenarios and similar to what is use to secure all Amazon AWS API calls. Each approach will be explored analyzing the architectural differences, with a heavy focus on the wire, showing actual HTTP messages and enough detail to have you thinking, “I could write this myself.”

As a bonus at the end, we’ll peak into a new IETF Internet Draft launched this year that combines JWT and HTTP Signatures into the perfect two-factor system that could provide a one-stop shop for business as well as mobile REST scenarios. Come to this session if you want to go from novice to expert with a bit of humor, a big picture perspective and wire-level detail.

About David Blevins

Founder of Tomitribe, veteran of Open Source Java EE in both implementing and defining JavaEE specifications for over 15 years with a strong drive to see JavaEE simple, testable and as light as Java SE. Co-Founder of OpenEJB (1999), Geronimo (2003), TomEE (2011). Member of the Eclipse MicroProfile, Jakarta EE PMC, JCP Executive Committee, Java EE 8 Expert Group, past member of the Java EE 7, EJB 3.2, and EJB 3.0 Expert Groups. Contributing author to Component-Based Software Engineering: Putting the Pieces Together from Addison Wesley.

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