26. Mai
Der Konferenztag am 26. Mai – was erwartet Euch dabei? Ein ganzer Tag mit über 20 JAX-Sessions, live performt und interaktiv gestaltet für Euch und Eure Fragen. Die Sessions sind gegliedert in drei parallele Tracks, rund um die Themen Java, Software-Architektur, Microservices, DDD, DevOps und Serverless, sodass Ihr stets die Auswahl habt. Und nicht nur das — es erwarten Euch den Tag über verschiedene Überraschungen. Es lohnt sich also, den 26.5. in Euren Kalender vorzureservieren, damit Ihr nichts verpasst!
Ob im Home Office oder im Büro – Ihr bestimmt, von welchem Ort Ihr teilnehmt.
Ihr spart Euch Reise- und Hotelkosten und zusätzlich das wertvollste Gut überhaupt: Eure Zeit!
Erlebt unsere erfahrenen und bewährten JAX-Speaker, die insbesondere auch für die Workshops mit den didaktischen Möglichkeiten von Online-Konferenzen aufwarten.
Am Hauptkonferenztag könnt Ihr euch frei zwischen den 3 parallel laufenden Sessions entscheiden und auch ein nachträgliches Wechseln ist jederzeit möglich.
An den Workshop-Tagen erwarten euch Live-Coding und praxisnahe Übungen zu ausgewählten Themen, die den aktuellen Stand der Technologie behandeln.
Ihr folgt dem Vortrag des Speakers per Videoübertragung und werdet von diesem durch die Lerninhalte geführt.
Alle Sessions des Hauptkonfernz-Tags werden aufgezeichnet und Euch anschließend zur Verfügung gestellt.
Teilnehmern der Online-Workshops werden die Aufzeichnungen ebenfalls als Film exklusiv zur Nachbereitung zur Verfügung gestellt.
Bei unseren Online-Workshops wird Interaktion großgeschrieben!
MIttels besonderer Q&A-Einheiten, einer Chat-Funktion und der Möglichkeit, sich per Audio-/Video-Kommunikation auszutauschen, können individuelle Fragen berücksichtigt und das Tempo des Workshops entsprechend angepasst werden.
Virtuelles Get-Together – ein Online-Meeting mit unseren Experten in drei virtuellen Räumen zu vorher definierten Themen.
de
Buchungshinweis: Java-Programmier-Workshop
In diesem Hands-on-Workshop werden relevante Themen zu den neuesten Java-Versionen vorgestellt. Dadurch erhalten die Teilnehmenden einen guten Überblick über wichtige, mit Java 9 bis 11 eingeführte Neuerungen sowie Erweiterungen aus Java 12, 13 und 14. Abgerundet wird der Workshop durch viele Übungen, einige Livedemos, verschiedene Tipps und Tricks sowie ein paar nützliche Handouts.
Inhalt & Ablauf
Beginnend mit Java 10 hat Oracle auf einen sechsmonatigen Releasezyklus umgestellt, um lange Verzögerungen durch potenziell noch nicht fertige Features zu vermeiden. Dementsprechend beschleunigt sich Java und es gibt viele neue Dinge zu entdecken. Java 9 enthält verschiedene Änderungen in der Syntax und vor allem den APIs, unter anderem hilfreiche Funktionalitäten in Streams und Optionals sowie Erweiterungen zur Concurrency mit CompletableFuture. Zusätzlich wurde die Modularisierung eingeführt. Java 10 brachte kleine API-Erweiterungen, vor allem aber var, um die Definition lokaler Variablen zu vereinfachen. Java 11 liefert wiederum einige API-Verbesserungen. Mit Java 12 erhalten wir eine Vorschau auf das neue verbesserte Switch, das schließlich in Java 13 in Verbindung mit mehrzeiligen Zeichenketten als Preview enthalten ist. Auch Java 14 bringt wieder kleine Verbesserungen. Es gibt also einiges zu entdecken.
Zusammenfassend lässt sich sagen, dass Java mit jedem neuen Release cooler und besser wird. Lassen Sie uns gemeinsam einen Blick auf wichtige und hilfreiche neue Features in der Sprache und in den APIs werfen.
Audience & Requirements
Die Teilnehmer sollten ein gutes Java-Know-how besitzen, Vertiefte Kenntnisse sind nicht nötig, aber hilfreich.
Dies ist ein Hands-On-Workshop. Daher ist ein eigenes Laptop mit einer aktuelle IDE sowie einem aktuelle Java 1 (und 14) wichtig.
de
Buchungshinweis: Daten-Patterns Workshop
Microservices mögen die Anwendungsentwicklung in manchen Bereichen erleichtern. Der Umgang mit persistenten Daten und ihre Speicherung in relationalen Datenbanken gehören aber leider nicht dazu. Die klassischen Lösungen, mit denen wir früher Daten ausgetauscht und ihre Konsistenz sichergestellt haben, stehen uns nicht länger zur Verfügung. Die ehemals lokalen, synchronen Methodenaufrufe in andere Module unseres Monolithen würden nun Service-Grenzen überschreiten. Komplexe Abfragen über Daten verschiedener Services würden den Zugriff auf Service-fremde Datenbanken erfordern. Und die Änderung von Daten in mehreren Microservices würde verteilte Transaktionen zur Sicherung der Datenkonsistenz benötigen. In einer modernen und effizienten Microservices-Architektur wollen wir jedoch all das vermeiden, damit unsere Microservices unabhängig voneinander und skalierbar bleiben. Wir benötigen daher neue Patterns und Tools, mit denen voneinander unabhängige Microservices ihre Daten austauschen und wir eine Service-übergreifende Datenkonsistenz sicherstellen können. Dafür stehen inzwischen einige Optionen zur Auswahl, die wir in diesem Workshop mit ihrem jeweils idealtypischen Anwendungsfall erarbeiten werden.
Audience & Requirements
Der Workshop richtet sich an Entwickler und Architekten, die über erste Erfahrungen mit Microservices verfügen.
Die Teilnehmer sollten über Grundkenntnisse in der Verwendung von Spring Boot und Docker verfügen.
Jeder Teilnehmer sollte einen eigenen Laptop mit einer IDE der Wahl, einem aktuellen Java und Docker mitbringen.
de
Buchungshinweis: Domain-Driven-Design-Workshop
Wie entwirft und implementiert man ein gutes Domänenmodell? Dieser Frage gehen wir in diesem Workshop nach und entwickeln Lösungsansätze. Durch eine Mischung von Vorträgen und praktischen Übungen erarbeiten wir uns die Grundlagen von Taktischem Design, beschäftigen uns mit geeigneten Architekturstilen, um das Domänenmodell frei von Technologie zu halten, und entwickeln schließlich anhand einer Beispieldomäne ein eigenes Domänenmodell.
Inhalt & Ablauf
Dabei helfen uns die "Building Blocks" wie Entity, Value Object, Repository usw. Außerdem betrachten wir, wie wir mit der Ubiquitous Language die Fachsprache bis in den Code bringen. Um dieses Domänenmodell sauber und frei von Technologie zu halten, bieten sich außerdem die Architekturstile Hexagonal, Onion und Clean Architecture an. Auf diese gehe ich im zweiten Teil des Workshops tiefer ein.
Als Referenzimplementierung betrachten wir den LeasingNinja (leasingninja.io).
Der Workshop wird aus Vorträgen und Übungen bestehen. Dabei werden wir uns auch mehrere Beispiele aus der Praxis anschauen und in den Übungen erarbeiten sich die Teilnehmer selbst an einer Beispieldomäne ein eigenes Domänenmodell.
I. Einführung und Überblick DDD
II. Der Weg zum Domänenmodell / Architekturstile
III. Taktisches Design mit den Building Blocks
IV. Implementieren der Building Blocks
Audience & Requirements
Der Workshop richtet sich an Entwickler und Architekten.
en
Java frameworks often need to dynamically create classes. One approach to do that easily in Java is dynamic proxies. In this talk, we will show how they compare to hand-written classes. We will then examine how we can use dynamic proxies to reduce the amount of code that we have to write. We also briefly explore other dynamically implemented patterns, such as decorator, adapter, and composite.
de
GitLab unterstützt Entwickler nicht nur bei der Versionierung ihrer Projekte, sondern u. a. auch beim Projektmanagement sowie beim Deployment der einzelnen Anwendungen. Diese Session zeigt auf, wie CI/CD mit GitLab durchgeführt werden kann. Insbesondere wird veranschaulicht, wie über GitLab einzelne Features ein- und ausgeschaltet werden können, um verschiedene Implementierungen der Anwendung im produktiven Umfeld einführen und testen zu können.
de
Java wird im Zusammenhang mit Serverless immer noch Schwerfälligkeit und hohe Start-up-Latenzen nachgesagt. Mit Hilfe des Quarkus Frameworks von Red Hat, der GraalVM von Oracle und den Layers & Custom Runtimes für AWS Lambda lässt sich eine Java-Anwendung mittlerweile einfach zu einem nativ ausführbaren Binary kompilieren und als Serverless Function betreiben. Dabei liegen die Start-up-Zeiten durchaus in konkurrenzfähigen Bereichen zu anderen Umgebungen und sind mit herkömmlichen JVM-Start-ups nicht mehr zu vergleichen. In meinem Talk gebe ich einen schnellen Überblick über Quarkus, die GraalVM und die AWS Lambda Custom Runtimes & Layers. Nachdem die Grundlagen bekannt sind, zeige ich, wie aus einer kleinen Java-Anwendung, die anscheinend schwerfällige JAX-RS-, JPA- und CDI-Prinzipien nutzt, mit wenig Aufwand ein plattformspezifisches und ausführbares Binary werden kann. Dabei gehe ich auch auf die Fallen ein, in die man als Neuling beim Erstellen von nativen Binaries gerne tritt. Am Ende deploye ich die so erzeugte Funktion dann zu AWS Lambda und vergleiche die Start-up-Zeiten mit denen herkömmlicher (Java-)Funktionen.
en
In 2009, we were awakened to Allspaw and Hammond’s “10 deploys a day”. In 2010, Jez Humble and Dave Farley advised us to “build quality in”. But in 2019, breaches hit 24 Percent of software development teams. Are we staking our future on a pace we haven’t yet learned to secure?
In a year long collaboration with Gene Kim and Dr. Stephen Magill, we objectively examined and empirically documented software release patterns and cybersecurity hygiene practices across 48,000 commercial development teams and open source projects. Our research uncovered different software development and cybersecurity hygiene behaviors that we categorized as Exemplars, Laggards, Features First, and Cautious.
In this session, I will reveal the insights we uncovered. Attendees will learn which techniques, team structures and release patterns exemplary development teams have been championed at large enterprises like ABN AMRO, Walmart, and SEGA, as well as within open source project teams from the likes of Elasticsearch, Mulesoft, and SonarSource. I’ll also share observations of exemplary DevSecOps practices that deliver 50 Percent more commits, release new code 2.4X faster, and remediate security vulnerabilities 2.9X faster.
de
Alle Welt spricht davon, dass wir unsere Monolithen in Microservices zerlegen müssen. Aber stimmt das wirklich? Immer wieder treffe ich Teams, die mit ihrem Monolithen gut klarkommen und sich bei Nachfragen ihres Managements dafür rechtfertigen müssen, warum sie nicht auf Microservices setzen. Dabei haben Microservices nicht nur Vorteile, sondern bringen ihre eigenen Schwierigkeiten mit sich. In diesem Vortrag erfahren Sie, wie Sie Ihren Monolithen strukturieren können und wann eine Zerlegung in Microservices sinnvoll werden könnte.
de
Webentwicklung ist spannend, aufregend und technologisch fordernd! Und – so unsere Erfahrung – unheimlich ineffizient, wenn es darum geht, umfangreiche, komplexe Geschäftsanwendungen mit einem Frontend zu versorgen: viel zu viel JavaScript-UI-Code wird im Client geschrieben, viel zu viel Geschäftslogik des Servers muss im Client "vor"-programmiert werden, viel zu viel Augenmerk muss gelegt werden auf eine gesunde Art und Weise der Kommunikation zwischen Browser und Cloud- bzw. Backend-Service – und viel zu hoch sind die Abhängigkeiten vom gerade verwendeten Web-Framework.
Geht's auch anders? Ja. Die Strategie heißt "Less Code", beginnend mit "No Code" im Browserclient, "No Code" im Bereich der Browser-Server-Kommunikation und "Low Code" auf Serverseite. Hinter jedem reißerischen Schlagwort steckt dabei ein einfaches Architekturprinzip – und alles auf einmal bringt einen großen Schub an Effizienz und langfristiger Framework-Sicherheit. Die CaptainCasa-Community ist den "Less Code"-Weg gegangen, der Vortrag ist gespickt mit einer großen Zahl konkreter Anwendungsbeispiele, die live vorgeführt werden.
de
Webanwendungen werden immer anspruchsvoller. Ständig neue UI Frameworks, dynamisch geladene Webseiten mit immer komplexerem Aufbau – wer kann da noch mithalten? Auch für die Tester hat das Konsequenzen. Soll sich der Test auf die Prüfung der Funktionalität konzentrieren oder auch Aspekte wie Layout und User-Experience berücksichtigen? Wie wichtig sind Cross-Browser-Tests? Setzt man auf die einfache Testerstellung per Record and Play und sind die aufgezeichneten Scripte noch lesbar? Selbst bei eigentlich selbstverständlichen Features wie der sicheren Identifikation von UI-Elementen oder der Stabilität des Tests gibt es deutliche Unterschiede zwischen den verschiedenen Tools. Wir stellen verschiedene Ansätze vor, mit denen Testwerkzeuge für den funktionalen Webanwendungstest mit diesen Herausforderungen umgehen und vergleichen typische Vertreter – von Selenium bis Cypress – anhand von Beispielen.
de
Knative ist eine Kubernetes-basierte Plattform, um moderne, containerbasierte Applikationen zu gestalten. Dabei besteht Knative aus zwei Kernkomponenten: Knative Serving und Knative Eventing. Dieser Vortrag gibt eine mit vielen Demos angereicherte Einführung in diese beiden Bereiche. Wir werden die Kernaspekte Autoskalierung, Traffic Splitting und Revisionierung von Knative Serving ebenso live erleben wie die verschiedenen Möglichkeiten, Events von Quellen wie Apache Kafka flexibel und kostengünstig zu verarbeiten. Nicht zuletzt lernen wir hier auch im Detail den Knative CLI-Client kn kennen, der es erlaubt Knative ganz ohne YAML Deskriptoren zu nutzen.Wenn Du dich für moderne, Event-gesteuerte Serverless-Applikationsentwicklung mit Kubernetes interessierst, dann ist dieser Vortrag genau das richtige für Dich.
de
Die API Economy ist in aller Munde, fast täglich werden neue APIs von Unternehmen oder Behörden veröffentlicht. Es ist praktisch unmöglich, sich einen umfassenden Überblick auch nur über die interessantesten öffentlich zugänglichen APIs zu verschaffen. In diesem Talk begeben wir uns auf eine kleine Rundreise durch die API-Landschaft. Es sollen einige sehr nützliche API-Angebote vorgestellt werden, die sich in zahlreichen Projekten sinnvoll einsetzen lassen. Manche dieser APIs sind recht bekannt, bieten jedoch teils ungeahnte Einsatzmöglichkeiten. Andere APIs sind (noch) relativ unbekannt, können aber dennoch eine große Hilfe darstellen. Reiseteilnehmer sind eingeladen, auch eigene API-Fundstücke kurz vorzustellen.
de
Neue Operationsmodelle wie Serverless und DevOps erzwingen ein Umdenken. Quarkus zeigt hier, wie schnell und schlank eine Anwendung sein kann. In unserem Talk wollen wir die Vorteile und Möglichkeiten aufzeigen und gemeinsam ein Quarkus-Projekt aufsetzten, das den ganzen Weg vom lokalen Prototyping über Anschluss von externen Systemen wie Datenbank und Single Sign-on bis hin zum Deployment zeigt.
de
Wie kamen diese Daten zustande? Wer hat die letzte Änderung gespeichert? Welche Daten waren zur letzten Rechnungserstellung gültig? Solche Fragen müssen von modernen Anwendungen beantwortet werden können. Wenn alle Änderungen in einem Auditlog dokumentiert sind, lässt sich das auch recht einfach implementieren. Aber wie erstellt man so ein Auditlog? Und wie stellt man sicher, dass auch wirklich alle Änderungen dokumentiert werden? Eine programmatische Dokumentation ist viel zu umständlich und fehleranfällig. Damit sind Lücken im Auditlog mehr als nur wahrscheinlich. Hibernate Envers bietet dafür eine einfachere und sicherere Lösung. Mit nur einer zusätzlichen Annotation werden alle Änderungen an einer Entität automatisch dokumentiert. Obendrein erhält man ein einfaches und trotzdem mächtiges API, um in den auditierten Daten zu suchen und auch komplexeste Fragen zu beantworten. Wie das genau funktioniert und wie man das Auditlog auf die eigenen Anforderungen zuschneiden kann, zeige ich in diesem Vortrag.
de
Produktivität, Nachhaltigkeit und Wartbarkeit. Wie startet man ein Jakarta-EE-/MicroProfile-Projekt optimal? Von Build-Set-up und IDEs über Strukturierung und Design bis zum (Stress-)Test und Continuous Integration/Continuous Deployment. Mit oder ohne Cloud. Aus der IDE-Perspektive. Fragen der Teilnehmer sind sehr willkommen.
en
en
Based on our study, most enterprises waste 30-70% of memory due to inefficient programming. In this session you will learn effective programming practices, techniques and tricks to write memory efficient code. Memory efficient code facilitates to deliver top performance, reduce the cloud hosting bill (significantly) and, of course, eliminate memory leaks.
de
de
Nur neue Projekte können von Microservices profitieren? Nein, gerade das Ergänzen und Ablösen von Legacy-Systemen und Monolithen ist eine Stärke von Microservices. Dieser Vortrag zeigt, wie man die Vorteile des Microservices-Ansatzes nutzen kann, um vorhandene Systeme zu verbessern und so schnell die Vorteile auszunutzen, ohne gleich die gesamte Architektur zu ändern. Dabei zeigt die Präsentation zahlreiche verschiedene Ansätze für Migration und Verbesserung auf.
de
de
Verteilte System sollten heute definitiv nicht mehr ohne Resilienz entwickelt und betrieben werden. Der zuständige Entwickler oder Architekt muss sich zuerst überlegen, welche Resilienzpatterns notwendig sind. Im Anschluss daran stellt sich die Frage, wie die Umsetzung dieser Patterns in den einzelnen Services erfolgen soll. Dabei kann zwischen zwei grundsätzlichen Alternativen unterschieden werden. Zum einen gibt es die Implementierung mit den klassischen Resilienz-Frameworks, wie beispielsweise Resilience4j, Failsafe oder MicroProfile Fault Tolerance. Andererseits ist es mittlerweile auch möglich, Resilienz mit Hilfe eines Service-Mesh-Werkzeugs, wie zum Beispiel Istio, zu etablieren. In dieser Session werden nach einer kurzen Einführung zu Istio die beiden grundsätzlichen Alternativen verglichen. Die jeweiligen Vor- und Nachteile werden aufgeführt und in einer abschließenden Bewertung gegenübergestellt. Darüber hinaus wird noch gezeigt, welche Möglichkeiten Istio für den Test der Resilienz bietet.
de
Es ist en vogue, Anwendungen in fachlich geschnittene Microservices zu unterteilen und in Kubernetes-Clustern zu betreiben. Streng genommen ist ein Kubernetes-Cluster ein monolithisches System, bestehend aus untrennbaren Services. Damit ist gemeint, dass die einzelnen Services nicht unabhängig voneinander betrieben bzw. ausgeschaltet werden können. Dieses Konzept erinnert stark an die 90er-Jahre mit ihren großer Application-Servern. Konsequent wäre es, das Betriebskonzept der Softwarearchitektur anzupassen: Unabhängig betreibbare Infrastruktur-Services anbieten, wie z. B. Service Registry, Deployment-Verteilung, Load Balancing …In diesem Vortrag möchten wir zeigen, wie man den Microservices-Gedanken kleiner, abgeschlossener, spezialisierter Bausteine auch in Infrastruktur-Services umsetzen kann, und dabei Alternativen zu Kubernetes aufzeigen und diskutieren. Wir wollen Use-Case-orientiert Lösungsskizzen vorstellen.
de
Immer mehr Projekte setzen auf reaktive Programmierung. Beim Bauen reaktiver Systeme stellen Entwicklungsteams irgendwann fest, dass sich sämtliche Vorteile dieser Umstellung nur bei einem durchgängig reaktiven Stack einstellen. Es gibt einige reaktive Messaging- und NoSQL-Integrationen, jedoch gehören SQL-Datenbanksysteme nicht dazu. Dieser Vortrag stellt die Reactive Relational Database Connectivity (R2DBC) Initiative vor. Das Ziel dieses Projekts ist es, ein reaktives API für SQL-Datenbanken zu definieren. Dieser Vortrag erklärt das R2DBC API, seine Funktionsweise und die Vorteile, die sich aus der Nutzung ergeben. Wir schauen uns R2DBC auch im Kontext von Anwendungen an und die Möglichkeiten, wie sich R2DBC effizient einsetzen lässt.
de
Ein weit verbreiteter Ansatz, mit dem Software automatisiert ausgeliefert wird, ist „Continuous Deployment“. Doch haben Sie sich Gedanken gemacht, wie sicher Ihr Continuous-Deployment-Prozess vor Angriffen ist? Schlummert vielleicht eine Schwachstelle, welche Sie noch nicht entdeckt haben?
Immer mehr Unternehmen sind dabei, moderne, kontinuierliche Softwareentwicklungspraktiken und Ansätze wie Continuous Integration (CI), Continuous Delivery (CD), Continuous Deployment oder DevOps einzuführen.
Diese Ansätze unterstützen Unternehmen dabei, ihre Entwicklungsgeschwindigkeit, die Frequenz der Produktauslieferung und die Time to Market zu verbessern.
Doch was passiert, wenn ihr Continuous-Deployment-Prozess nicht sicher ist und es Hackern gelingt, wichtige Zugangsdaten abzugreifen, um damit Ihre schützenswerten Kundendaten, wie beispielsweise Kreditarten- oder Sozialversicherungsnummern, zu stehlen?
In meinem Talk zeige ich Ihnen auf, wie Sie die Threat-Modeling-Methode einsetzen können, um das Sicherheitsbewusstsein so früh wie möglich in Ihren Entwicklungsprozess zu integrieren. Des Weiteren zeige ich Ihnen, welche möglichen Schwachstellen in diesen Prozessen existieren, und habe auch gleich eine Lösung für Sie parat.
de
Process Engines mit Unterstützung von BPMN (Business Process Model and Notation) sind in vielen Geschäftsprozessen im Einsatz. Durch die systemgestützte Ausführung von Geschäftsprozessen fallen eine Menge von Prozessdaten an, deren Nutzung ein großes Potenzial für die Optimierung der Prozesse bietet. In diesem Talk zeigen wir, wie wir mit Hilfe von Apache Spark eine leistungsfähige Pipeline zur Vorverarbeitung von Prozessdaten realisiert haben, um damit Machine-Learning-Algorithmen (z. B. in H2O) anlernen zu können. Zudem zeigen wir am Beispiel von Camunda, wie wir mit Hilfe von Apache Kafka die Prozessdaten so extrahieren und archivieren, dass der Produktivbetrieb der Process Engine nicht beeinträchtig wird, wir aber trotzdem einen schnellen und effizienten Zugriff auf die Prozessdaten haben. Weiterhin gehen wir auf die Integration von Machine-Learning-Modellen in Geschäftsprozessen ein, da diese beim Einsatz von KI in Geschäftsprozessen einen wichtigen Aspekt für den Erfolg darstellt. Wie wir dies in der Praxis bereits bei unseren Kunden Duni und Provinzial erprobt haben, darüber wird ebenfalls in diesem Talk berichtet.
de
Transparenz, Commitment, Offenheit, Kommunikation – agile Werte und Praktiken sind nicht nur in Scrum und anderen agilen Frameworks und Methoden wichtig. Firmen und deren Führungskräfte haben erkannt, dass durch geeignete Managementsysteme, die auf solchen Werten aufsetzen und einzelne Aufgaben von Teams und Mitarbeitern mit der Unternehmensstrategie, den Visionen und Plänen verknüpfen, der Erfolg nachhaltig gesteigert werden kann. Eines der innovativsten Rahmenwerke ist Objectives and Key Results, kurz OKR, das von Intel entwickelt und durch den Einsatz und die Weiterentwicklung bei Google sehr populär wurde. Aber wie lassen sich OKR mit den Backlogs und Zielen agiler Teams und ihrer Mitgliedern verbinden? Wie können wir sicherstellen, dass keine divergenten Zielsetzungen entstehen und die vielen Vorteile von OKR und einer agilen Arbeitsweise sich am Ende nachteilig auf die Mitarbeiter und das Unternehmen auswirken? Stephanie Mayer und Christian Schneiker zeigen in ihrem Vortrag pragmatische Lösungen und Tipps und Tricks aus der Praxis, wie Organisationen beide Welten miteinander in Einklang bringen können.
de
Nach der Freigabe vom JDK 14 werden die aktuellen Merkmale vorgestellt. Neben Bug-Fixes und Security-Patches, stecken im JDK 14 Featurerelease, Sprach- und JVM-Änderungen, Erweiterungen, zugefügte und entfernte Klassen und Methoden, deprecated markierte Features und JDK-Tool-Änderungen. Bereits mit der Einführung der JDK Version 11 wurden die technischen Unterschiede bei der Gleichstellung vom Oracle JDK mit dem Oracle OpenJDK entfernt. Bei diesem Technologietransfer sind alle Bestandteile vom Oracle JDK als Open-Source-Implementierungen in das OpenJDK geflossen, sodass das Oracle JDK 14 durch das OpenJDK 14 ausgetauscht werden kann. Die Anwender können ein JDK oder ein OpenJDK verschiedener Hersteller frei wählen. Im Vortrag wird auch ein Blick auf den langfristigen Einsatz vom Java-Modulsystem geworfen und dies anhand von Beispielen durch Erstellung einer individueller Java Runtime mit der Anwendung verdeutlicht. Zudem werden die Migrationsaspekte älterer Java-Anwendungen zum JDK 14 dargestellt.
en
There were two fatal crashes of the Boeing 737 Max in the fall of 2018 and spring of 2019 grounding the airplane world-wide and begging the question why? In the end, it comes down to software but there is much more to that story. Ken Sipe, our keynote speaker, is in the unique position of being an instrument-rated private pilot and a software engineer with experience working with remote teams, both will provide insight into lessons we will learn as we peel back the details of these tragic events. In this session, you will learn about aircraft types and how they affect decisions of the airline industry from pilot scheduling, plane scheduling, innovation and profits. We will see how an airplane design from 1994 causes challenges in 2018-2019. We will learn how software becomes the solution to a hardware problem of design. We will continue with plane ratings and what “in-type” means and how it plays an affect. We will broach on the topic of the USA FAA relinquishing quality standards to Boeing because of man-power and costs. Last we will hone in on what a pilot does and expects and what the MCAS system did by design. The climax of the talk will center around software requirements and how disconnected remote teams without user experience in the problem space will write exactly what you agree on ... which can be lethal.
de
Auf ein Vierteljahrhundert blickt die Java-Community seit ihrem Bestehen zurück. Zeit für eine Rückschau der besonderen Art. Im Gespräch mit Java-Legende Heinz Kabutz werden die Erfahrungen, welche in dieser Zeit gemacht wurden, erörtert, mit dem Ziel, die außerordentliche Rolle, die Java in der IT-Branche einnimmt, zu beleuchten. Diese Rückschau wird gewiss nicht ohne persönliche Beobachtungen und Anekdoten geschehen und auch für Fragen des Publikums wird es natürlich Raum geben.
de
Enterprise Java erscheint mit seinem Memory- und Runtime-Overhead in Zeiten von Cloud-native und Serverless nicht wirklich gut für die Zukunft gerüstet. Erschwerend kommt hinzu, dass viele Enterprise Frameworks mit Annotation Scanning, Aufbau von Proxies und Caches das Start- und Speicherverhalten weiter negativ beeinflussen. Bedeutet das das Aus für Java in der Wunderwelt der Cloud? Mitnichten! Projekte wie GraalVM, Micronaut und Quarkus versuchen, Java in der Cloud zur Numero uno werden zu lassen. Und das auf beeindruckende Art und Weise. Die Session zeigt anhand praktischer Beispiele, was heute bereits möglich ist.
de
Event-driven architectures are on the rise. They promise both better decoupling of components by using an event bus and improved scalability in terms of throughput. Decoupled modules help to scale your software development efforts itself. Event streaming promises to handle ever-growing amounts of "data in motion" in real-time, event sourcing allows us to time travel, and domain events have turned out to be powerful building blocks that lead to a better understanding of underlying business requirements. But there are also pitfalls that you’d better be aware of. For example, event-notifications used inappropriately can lead to tighter coupling or cyclic dependencies between components. It is also easy to lose sight of flows across service boundaries, making it hard to understand how core business logic is actually implemented. This can get even worse, if you lack tooling to get insights into your event flows. Last but not least, the event-driven approach is not well-understood by most developers or business analysts, making it hard for companies to adopt. In this talk, I will quickly go over the concepts, the advantages, and the pitfalls of event-driven utopia. Whenever possible, I will share real-life stories or point to source code examples.
en
When working out why an application has gone wrong we often find ourselves working with very limited information - we find ourselves looking at a stack trace caused by an uncaught exception, or looking at a ConcurrentModificationException where the interfering thread is unknown, or looking at a heap that has grown without bound.
We ask ourselves “What just happened?” and “How did I get here?”. Existing and new tooling including Java Flight Recorder (JFR) can provide some more info over a bare stack trace. But the ability to record and reversibly replay an application allows us to actually answer these questions.
In this talk we’ll demonstrate how to use LiveRecorder for Java to obtain a recording of a Java application, and how that recording can be used to diagnose a number of these difficult yet everyday problems.
Habt Ihr Fragen?
Kontaktiert uns unter: [email protected]
Ausgefeilte Ingenieurskunst und modernste Technik vereint in einer Drohne: Mit der Mavic-2-Pro und ihrer ikonischen Hasselblad-Bildqualität, entdeckt ihr die Welt der Luftbildfotografie in herausragender Detailgenauigkeit völlig neu.
Meldet euch jetzt für die Online Edition an und gewinnt mit etwas Glück eine Mavic-2-Pro-Drohne im Wert von 1499 €!
Wir drücken Euch die Daumen!