Juli 11 2022

Learnings vom Java Forum Stuttgart 2022

Das Java Forum Stuttgart hat schon zum 25ten mal stattgefunden und war ein super Event!

Folgende Erkenntnisse haben wir von der Konferenz mitgenommen:

Softwarearchitektur:

  • Erst Qualitätsanforderungen definieren, dann die Architekturentscheidungen treffen.
  • Conference Driven Development vermeiden (wenn man was cooles auf einer Konferenz gesehen hat und dann sofort in seine Projekte einbaut)
  • Dokumentation als Code: z.B. mit Doctoolchain. Damit kann die Dokumentation bzw. Architekturentscheidungen einem definierten Reviewprozess im Git unterzogen werden.

Die wichtigsten Änderungen in Java 19:

Virtual Threads kommen und gleichen den Nachteil aus, dass ein Thread mindestens 1 Mb Speicher braucht.
Anwendungen die Threadlocal verwenden, bekommen durch das neue Konzept eventuell Probleme, falls virtuelle Threads verwendet werden sollen.

Java Anwendungen auf Kubernetes

Good practices für die Anwendung als Container

  • Nur eine Anwendung pro Container
  • Ausführung als root vermeiden
  • Priviligierte Container vermeiden
  • Zustanslose Anwendungen bevorzugen
  • Log-Nachrichten auf stout
  • Anwendungsüberwachung bedenken
  • Robust hoch- und runterfahren können

Simulierte Evolution

Spannendes Thema. Kann z.B. mit Jenetics implementiert werden.

Die Evolution dient hier als Inspiration um Codegenerierung zu optimieren. Der generierte Code entspricht in dieser Vorgehensweise den zufälligen Mutationen die natürlicherweise stattfinden und die Fitness-Funktion simuliert das Prinzip des "survival of the fittest" im Sinne der Darwinschen Evolutionstheorie.

Das Grundprinzip ist sehr simpel:

Das Problem ist, in der Praxis eine gute Fitness-Funktion zu implementieren, die den generierten Code bewertet, um gute von schlechten Lösungen zu unterscheiden.

DeepFake

Der heutige Stand der Technik erlaubt es schon relativ leicht DeepFake Technologie in Echtzeit zu verwenden, um etwa in Videocalls Gesichter zu verändern, was zahlreiche Möglichkeiten eröffnet, gleichzeitig aber auch eine Gefahr darstellt und Missbrauch ermöglicht. Zum Glück lassen sich Stimmen nicht oder nur schwer live verändern, wodurch man zumindest über dieses Detail fakes relativ leicht erkennen kann. Vorsicht ist bei postprocessed Videos geboten, die nicht nur täuschend echt aussehen, sondern auch so klingen.

Agile Development

Agile Softwareentwicklung bedeutet nicht nur das erreichen kurzfristiger Ziele, sondern vielmehr das schnelle Reagieren und das enge Zusammenarbeiten mit dem Kunden um dessen Anforderungen und Wünsche schnell umzusetzen. Hierbei wird der Fokus mehr auf Interaktion als auf Prozesse gelegt und das Reagieren auf Veränderungen gegenüber dem Befolgen eines Planes priorisiert. 

  • Fachexperten oder POs sollen nicht nur lenken sondern auch unterstützend zur Seite stehen
  • Informationsübermittlung am besten von Angesicht zu Angesicht
  • Der wichtigste Erfolgsmaßstab ist funktionierende Software
  • Teams sollten selbstorganisiert sein
  • Regelmässiges Reflektieren um Effektivität zu steigern 
  • Nachhaltige Entwicklung fördern 
  • Errichten von Projekten rund um motivierte Individuen - Umfeld und Unterstützung anbieten

Readable Code

  • Code sollte selbsterklärend sein. Comments sollten nicht das "wie", sondern das "warum" beschreiben
  • Konsistente Formatierung 
  • Methodennamen deskriptiv gestalten, aber dennoch kurz genug halten, damit man sich die Namen merken kann
  • Parameter Anzahl, wenn möglich, auf maximal 4 beschränken
  • Einfach und prägnant programmieren und fancy tricks vermeiden
  • Single responsibility Prinzip - jeder Baustein eines Programmes macht exakt eine Sache
  • Kontinuierliches refactoring um Lesbarkeit zu erhalten

Autism in Tech

Einer der interessantesten Vorträge auf dem Java Forum hat sehr schön aufgezeigt, dass auch in der IT-Branche immer der Mensch im Mittelpunkt steht, bzw. stehen sollte.

Dennie Declercq erklärt als Betroffener, wie unkompliziert es sein kann, autistischen Personen den Zugang in die IT-Branche zu ermöglichen, wenn man einige Besonderheiten berücksichtigt, um den besonderen Anforderungen der Betroffenen gerecht zu werden. Als sehr einfachen Beispiel wird der Austausch der Leuchtmittel in Büros erwähnt, um der verstärkten Reaktion auf visuelle Reize entgegenzuwirken.

Was für Personen mit Autismus im besonderen Masse gilt, lässt sich aber auch verallgemeinern. Der Vortrag sensibilisiert in Hinsicht der Invividualität jedes Menschen beziehungsweise Mitarbeiters und dessen individuellen Bedürfnissen. Managern wird suggeriert dem Bedarf der Angestellten individuell nachzukommen und dabei persönliche Charakterstrukturen zu berücksichtigen, um Effizienz und Wohlbefinden der Mitarbeiter zu fördern.

Feedback kann bestimmten Menschen helfen ihr Selbstwertgefühl zu stärken und zu wachsen. Es fördert das Gefühl integriert zu sein und eine signifikante Rolle zu haben. Andere wiederum empfinden zu häufige Interaktion als störend und interpretieren das als Kritik.

Zusammenfassend kann man sagen, dass individuelles Potential nur durch Individuelle Interaktion maximiert werden kann. Richtig angewandt kann diese Vorgehensweise das Wohl, die Motivation und die Effizienz jedes Mitarbeiters fördern und nicht zuletzt Personen mit besonderen Bedürfnissen den Zugang zur IT-Branche ermöglichen.

Java Forum Stuttgart wir kommen wieder

Zum Abschluss gab es noch Musik und was zu leckeres zu Essen. Vielen Dank an die Java User Group Stuttgart für die tolle Organisation!

Über Jens Jäger.

Meine Mission ist es, den Unternehmens-Impact, meiner Kunden durch agile Softwareprojekte zu steigern:

  • Digitale Transformation ankurbeln.
  • Routineaufgaben automatisieren.
  • Freiraum für Innovation schaffen.

Das könnte dich auch interessieren

Online-Marketing Trends 2020

Online-Marketing Trends 2020

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert. Infos zum Datenschutz.


Dein Kommentar *

{"email":"E-Mail Adresse ungültig","url":"Website address invalid","required":"Das Feld wird benötigt"}

Du möchtest mit mir zusammenarbeiten? 

Werde ein Teil unseres Teams: