Connect with us

Entwicklung & Code

Ein Tag im Leben eines Softwarearchitekten – Überleben im Unternehmensdschungel


Heute erzähle ich von einem typischen Arbeitstag als Softwarearchitekt, der schon vor dem Weg zur Arbeit beginnt.

Weiterlesen nach der Anzeige


Michael Stal

Michael Stal

Prof. Dr. Michael Stal arbeitet seit 1991 bei Siemens Technology. Seine Forschungsschwerpunkte umfassen Softwarearchitekturen für große komplexe Systeme (Verteilte Systeme, Cloud Computing, IIoT), Eingebettte Systeme und Künstliche Intelligenz.

Er berät Geschäftsbereiche in Softwarearchitekturfragen und ist für die Architekturausbildung der Senior-Software-Architekten bei Siemens verantwortlich.

Der Wecker schreit mit der Begeisterung eines Junior-Entwicklers, der gerade Designmuster entdeckt hat. Als Softwarearchitekt beginnt mein Tag nicht mit Kaffee, sondern mit einem kurzen Blick auf die Produktionswarnungen der letzten Nacht. Drei kritische Systeme sind ausgefallen, zwei Datenbanken laufen aus unerfindlichen Gründen so, als würden sie auf einem Server aus dem Jahr 1995 mit einem antiken Prozessor laufen, und es gibt eine dringende Slack-Nachricht von jemandem, der fragt, ob wir „einfach schnell Blockchain zu unserem Warenkorb hinzufügen können, weil der CEO gehört hat, dass das revolutionär ist“.

Ich schenke mir eine Tasse Kaffee ein, der so stark ist, dass er wahrscheinlich selbst Code kompilieren könnte, und bereite mich mental auf einen weiteren Tag vor, an dem ich Geschäftsträume in technische Realität umsetzen und mich dabei durch die tückischen Gewässer der Unternehmensbürokratie navigieren muss.

Während meiner Fahrt zur Arbeit erhalte ich den ersten von insgesamt siebzehn Anrufen, die ich heute erhalten werde. Er kommt vom Projektmanager, der entdeckt hat, dass unsere sorgfältig geplante Microservices-Architektur möglicherweise mehrere Dienste erfordert. Der Horror! Ich verbringe zwanzig Minuten damit, zu erklären, warum „einfach einen großen Dienst daraus zu machen“ den Zweck der letzten Sechs-Monats-Planung zunichtemacht. Dieses Gespräch wird sich heute noch viermal mit verschiedenen Personen wiederholen, die offenbar an derselben Besprechung teilgenommen haben, aber völlig unterschiedliche Dinge gehört haben wollen.



Source link

Entwicklung & Code

30 Jahre Java – Interview mit Community-Vertretern (Teil 3)


In den vergangenen 30 Jahren hat sich eine rege Community im Java-Umfeld gebildet. Ich habe im Laufe des Jahres einige deutschsprachige Vertreter zu ihren Erfahrungen befragt. Die Resonanz war überwältigend. Vielen Dank an alle, die mitgemacht haben. In diesem dritten Teil kommen Jens Schauder (Spring Data Team und ehemaliger Organisator der JUG Ostfalen), Richard Fichtner (Java Champion und Organisator JCON), Cay Horstmann (Java Champion, Buchautor), Ralf D. Müller (Open Source Committer und arc42 Contributor) und Mark Paluch (Spring Data Team und ehemaliger Organisator der majug) zu Wort.

Weiterlesen nach der Anzeige


Neuigkeiten von der Insel - Falk Sippach

Neuigkeiten von der Insel - Falk Sippach

Falk Sippach ist bei der embarc Software Consulting GmbH als Softwarearchitekt, Berater und Trainer stets auf der Suche nach dem Funken Leidenschaft, den er bei seinen Teilnehmern, Kunden und Kollegen entfachen kann. Bereits seit über 15 Jahren unterstützt er in meist agilen Softwareentwicklungsprojekten im Java-Umfeld. Als aktiver Bestandteil der Community (Mitorganisator der JUG Darmstadt) teilt er zudem sein Wissen gern in Artikeln, Blog-Beiträgen, sowie bei Vorträgen auf Konferenzen oder User Group Treffen und unterstützt bei der Organisation diverser Fachveranstaltungen. Falk twittert unter @sippsack.

Java prägt viele Entwicklerinnen und Entwickler seit ihren ersten Schritten in der IT – und hat in dieser Zeit Höhen, Tiefen und mehrere Neuerfindungen erlebt. Die folgenden Antworten spiegeln persönliche Anfänge, prägende Erlebnisse, kritische Momente und eine Einordnung von Javas Rolle in der heutigen Softwareentwicklung wider. Abschließend wagen sie einen Blick nach vorn: mit Tipps für die eigene Weiterentwicklung und Erwartungen an Java in den kommenden Jahren.

  • Alexander Culum , Birgit Kratz, Simon Martinelli , Dierk König, Christian Stein

  • Bernd Müller, Heinz Kabutz, Patrick Baumgartner, Wolfgang Weigend, Gernot Starke

  • Jens Schauder, Richard Fichtner, Cay Horstmann, Ralf D. Müller, Mark Paluch 

Wann und mit welcher Version bist du erstmals mit Java in Berührung gekommen?

Jens Schauder: Das war 1997. Ich habe zu der Zeit mit Fortran 90 an meiner Diplomarbeit gearbeitet und ein Bekannter hat mir total begeistert von Java erzählt. Ich habe mir dann das JDK heruntergeladen und ein kleines Applet gebaut, in dem ich Würfel gezeichnet habe. Im Wesentlichen eine Portierung eines der ersten Programme, die ich auf meinem ersten Rechner geschrieben habe, einem Apple. Ich kann mich an die Versionsnummer nicht wirklich erinnern, aber es war vermutlich 1.1.

Richard Fichtner: Meine erste Java-Anwendung habe ich im Jahr 2003 mit der Version J2SE 1.4 geschrieben. Java hat mir nicht gefallen. Ich war damit nicht produktiv. In Visual Basic 6.0 gab es einen GUI-Builder und mit PHP ließen sich schnell Webanwendungen bauen. Zum Glück hat Java hier nachgelegt.

Cay Horstmann: 1995 rief Gary Cornell mich an und teilte mir mit: „Cay, wir schreiben ein Java-Buch.“ Wir waren beide bekannte Buchautoren, ich für C++ und er für Visual Basic. Ich wusste dagegen nichts über Java, außer ein paar Gerüchten. Und er auch nicht. Aber er hatte es fertiggebracht, einen Buchvertrag mit Sun Microsystems Press zu bekommen. Denn Sun Microsystems Press hatte ein Problem. James Gosling und Ken Arnold hatten Sun Microsystems Press umgangen und den Vertrag für „The Java Programming Language“ mit einem angesehenen Verlag geschlossen. Also verbrachten wir den Herbst und Winter 1995, um Java gründlich zu lernen. Es half, dass ich als Professor eine „Research License“ für den Quellcode bekam. Das war lange vor Open Source. Dadurch konnten wir schreiben, was wirklich funktionierte und wo man vorsichtig sein musste. Das machte das „Core Java“-Buch, das zusammen mit Java 1.0 erschien, zum Bestseller.

Weiterlesen nach der Anzeige

Ralf D. Müller: Das war ganz früh an der Uni Frankfurt. Am 12. April 1996 haben einige Studenten die Java User Group Frankfurt (Vorgänger der heutigen JUG Frankfurt) gegründet. Damals war Java 1.0 aktuell.

Mark Paluch: Java 1.1, kurz bevor 1.2 im Dezember 1998 released wurde.

Was war rückblickend dein schönstes Erlebnis mit der Sprache oder dem Ökosystem Java?

Jens Schauder: Am meisten Spaß mit der JVM hatte ich in der Zeit, als ich mich mit Scala beschäftigt habe. Ich habe unglaublich viel darüber gelernt, was eine Programmiersprache, ein Compiler, ein Typsystem tun kann. Ich bin ständig mit Knoten im Hirn rumgelaufen und das war sehr, sehr cool.

Richard Fichtner: Das Schönste an Java sind die Menschen in der Community. Java hat sicherlich auch technisch viele tolle Sachen zu bieten, aber die Haltung und Kultur der Java-Community machen es aus. Open Source war für viele vor 20 Jahren unvorstellbar. Bei Java User Groups Wissen teilen – seid ihr wahnsinnig? Heute haben viele Organisationen verstanden, dass man zusammen erfolgreicher ist und offene Standards sowie Austausch uns alle voranbringen.

Cay Horstmann: Ich habe viele schöne und produktive Erfahrungen mit Java gemacht, aber wenn ich mir eine Erfahrung aussuchen muss, wäre das der Violet UML Editor. Ich weiß, heutzutage kräht kein Hahn mehr nach UML, aber wir fanden es damals (2002) wichtig. Ich wollte meinen Studenten Sequence-Diagramme beibringen. Die damals erhältlichen Produkte versagten mit diesem Diagrammtyp und außerdem waren sie sehr teuer. Ich schrieb eine Swing-Anwendung und war begeistert, dass ein Großteil der Routinearbeit durch die Java-Standardbibliothek abgedeckt war. Einige Jahre später hatte ich ein anderes Problem. Meine Studenten hatten Probleme mit Schleifen. Sie brauchten einfach mehr Übung. Ich entwickelte eine Webanwendung. Zum Glück in Java, denn ich bekam seitdem stetig Fragen von Studenten aus der ganzen Welt, ob sie nicht bei meinem Open-Source-Projekt mitmachen können. Dann lade ich sie gerne ein, um ein offenes Problem zu bearbeiten. Weil das Projekt in Java ist, finden sich die Studenten zurecht. Bei Rails (zu unbekannt) oder JavaScript (zu chaotisch) wäre es nicht so einfach, Mitstreiter zu finden. Und Java ist wahnsinnig stabil. Die Webanwendung hat sich über die Jahre von Glassfish zu Play und jetzt zu Quarkus gewandelt, aber der Kerncode besteht weiterin.

Ralf D. Müller: Ich hatte immer viel Spaß mit Groovy und Grails im Java-Ökosystem. Groovy hat es geschafft, eine leichtgewichtige Skriptsprache im Java-Ökosystem zu etablieren, die auch ohne IDE beherrschbar ist.

Mark Paluch: Für mich ist es wichtig, Wissen an andere Entwickler weiterzugeben und dabei auch von ihnen zu lernen, wie sie Java verwenden und in welchem Kontext. Konferenzen sind eine großartige Möglichkeit, mich mit der Java Community auszutauschen, und ein ganz besonderes Highlight.

Aber es ist nicht alles Gold, was glänzt. Was hat dich negativ beeinflusst beziehungsweise was war ein unschöner Moment im Java-Umfeld?

Jens Schauder: Das war Gradle. Ich habe eine Zeit lang Gradle als Build-Tool genutzt und es geliebt, da es mir erlaubte, kleine Skripte direkt im Build-Tool zu schreiben. Ich konnte damit Probleme lösen, die durch kafkaeske Architekturvorgaben eines Kunden verursacht wurden. Sehr cool! Das böse Erwachen kam, als ich ein Projekt, das ein Jahr lang herumlag, versuchte wiederzubeleben. Durch Updates von was auch immer funktionierte nichts mehr und ich habe mein eigenes Build-Skript nicht mal ansatzweise mehr verstanden.

Richard Fichtner: Die große Verunsicherung um die Lizenzierung von Java vor einigen Jahren war unschön und bedurfte viel Erklärung. Das hat sich zum Glück heute alles gelegt und die Auswahl an JDKs ist so groß wie noch nie.

Cay Horstmann: Circa 2009 war ich schon unglücklich mit der langsamen Weiterentwicklung von Java. Ich lernte Scala, benutzte es für einige Projekte und schrieb ein Buch darüber. Scala ist wirklich eine schöne und elegante Sprache, aber einfach ist sie nicht. Und auch nicht sonderlich stabil. Seitdem hat sich Java enorm weiterentwickelt. Scala ist immer noch eleganter, aber Java hat eine bessere Infrastruktur.

Ralf D. Müller: Die Open-Source-Community ist in der Java-Welt recht stark. Demgegenüber stehen im starken Kontrast die Rechtsstreitigkeiten zwischen den großen Firmen, die aus Java Kapital schlagen wollen. Das hat immer wieder die Community verunsichert.

Mark Paluch: Es ist schade, dass ein guter HTTP-Client (Java 11) und so etwas wie Single-File Programs es erst so spät in ein Java Release geschafft haben. Das sind Features, die gerade für den Einstieg in die Sprache eine große Rolle spielen. Es ist auch schön, dass Java nun eine API für Bytecode-Interaktion bereitstellt und ASM vielleicht langsam nicht mehr notwendig sein wird. JPMS ist für das JDK ein großer Schritt nach vorn gewesen. Für Bibliotheken ist es schade, dass Module-Info so sehr viel restriktiver (z. B. ein Modul pro JAR) gehandhabt wird, was zu der Wahrnehmung führt, dass Bibliotheken Bürger zweiter Klasse sind.




(Bild: DOAG)

Vom 10. bis 12. März 2026 findet die JavaLand-Konferenz statt. In diesem Jahr zieht die Community-Konferenz in den größten deutschen Freizeitpark, den Europa-Park Rust. Das Programm bietet knapp 130 Vorträge in 13 Themenbereichen.

Glaubst du, dass Java auch nach 30 Jahren noch relevant ist? Welche Rolle spielt Java deiner Meinung nach in der modernen Softwareentwicklung, insbesondere im Vergleich zu anderen Sprachen und Technologien?

Jens Schauder: Java ist das langweilige Arbeitstier unserer Zeit und wird es noch lange bleiben. Projekte im Enterprise-Umfeld, in dem Java besonders stark ist, laufen lange und werden noch länger gewartet. Ich vermute daher, dass auch in 30 Jahren Java noch relevant sein wird. Ich sehe momentan nur einen Weg, das zu verhindern: Wenn es ein Tool gäbe, das Code in einer Sprache in hochwertigen Code einer anderen Sprache überführen kann. Viele Tools versuchen etwas Derartiges, um Cobol-Programme in Java umzuwandeln. Das Ergebnis ist aber meist noch schlimmer als der ursprüngliche Cobol-Code. Wer weiß, was KI da noch für uns tun wird. Und generell darf man nicht vergessen, wie viel 30 Jahre sind. Vor 30 Jahren hatten Handys das Format einer kleinen Werkzeugkiste. Und ein Rechner mit der Leistung eines aktuellen Mobiltelefons würde vermutlich einen Raum füllen.

Richard Fichtner: Ich hoffe, dass Java noch relevant ist. Mit dem neuen sechsmonatlichen Release-Zyklus und den zweijährlichen LTS-Releases ist viel Bewegung und Erneuerung in die Java-Welt gekommen. Java hat viele moderne Features und ist gleichzeitig noch sehr rückwärtskompatibel zu Code von vor 30 Jahren. Ich bin zuversichtlich.

Cay Horstmann: Die am meisten benutzten Programmiersprachen (C++, Python, Java, JavaScript) sind alle etwa 30 Jahre alt. Neuere Sprachen wie Go, Ruby, Rust und Swift haben ihre Nischen, aber es ist nicht einfach, darüber hinaus zu wachsen. Die Programmiersprache ist nur ein Teil der Infrastruktur. Java hat ausgezeichnete Tools und Bibliotheken sowie ein technisch kompetentes und motiviertes Team, das die Sprache weiterentwickelt. Die JVM gibt Stabilität und Einsicht in das Verhalten laufender Programme. Das ist für viele Anwendungen wichtig. Ich sehe zurzeit keine Sprache oder Technologie, die Java das Wasser abgraben würde. Zumindest abgesehen von KI. Es ist natürlich vorstellbar, dass es bald keine menschlichen Entwickler mehr gibt, sondern dass ein Manager der KI einfach erzählt, was sie programmieren soll. In irgendeiner Sprache. Aber ganz glauben kann ich das nicht. Ich benutze gerne KI für „Autocomplete“-Vorschläge. Aber selbst da geht genug schief, dass ich meine, wir sind nicht so schnell ersetzbar.

Ralf D. Müller: Java ist etabliert. Die Sprache hat zwar ihr ursprüngliches Versprechen „Write once, run anywhere“ nicht so erfüllen können, wie andere Sprachen es gefühlt schaffen, aber Java-Programme laufen auf einer Vielzahl von Systemen, die den Betrieb unserer modernen Welt sicherstellen. Durch Python und JavaScript gibt es zwei Herausforderer, denen Java in verschiedenen Bereichen (ML, Web) das Feld überlassen muss. Hier wird es spannend zu sehen, welchen Einfluss GenAI auf die weitere Entwicklung haben wird. Da die Large Language Models gerade in der Erzeugung von Python-Code sehr stark sind, wird hier ein verstärkter Effekt entstehen. Java ist durch seine Struktur eher nicht optimal für die Generierung durch LLMs aufgestellt.

Mark Paluch: Java ist ein fundamentaler Baustein moderner Softwareentwicklung und gleichzeitig wird Java jedes Jahr neu totgesagt. Jetzt sind wir hier nach 30 Jahren Java. Die Veränderungen in der Sprache und der Standardbibliothek zeigen, wie relevant Java ist. Derzeit ist für mich das Wichtigste, dass die Sprachentwicklung durch eine diverse Community vorangetrieben wird. Valhalla, Babylon und Leyden sind die bedeutendsten Projekte seit Generics und Functional Interfaces.



Source link

Weiterlesen

Entwicklung & Code

Microsoft: XAML Studio ist jetzt Open Source


close notice

This article is also available in
English.

It was translated with technical assistance and editorially reviewed before publication.

Microsoft hat sein Entwicklungstool XAML Studio Open Source gestellt, acht Jahre nach dessen erstmaliger Veröffentlichung. Als nächstes steht Version 2.0 an, und es sind einige Neuerungen geplant, die Interessierte dank dem auf GitHub befindlichen Quellcode bereits ausprobieren können.

Weiterlesen nach der Anzeige

XAML Studio ist ein Rapid-Prototyping-Tool für WinUI-Developer, die die XML-basierte Markup-Sprache XAML (eXtensible Application Markup Language) nutzen. Zu den Features von XAML Studio zählen Live-Editierung und -Interaktion, ein Binding-Debugger, ein Data-Context-Editor sowie automatisches Speichern und Wiederherstellen von Dokumenten. Nachdem Entwicklerinnen und Entwickler ihren Code in XAML Studio geprüft haben, können sie diesen in Visual Studio kopieren.

Derzeit ist Version 1.1 das aktuelle Release, das sich aus dem Microsoft Store beziehen lässt. Auf GitHub ist jedoch schon der Quellcode für die nächste geplante Version XAML Studio 2.0 mit neuen, teils experimentellen Features zu finden.


Die GitHub-Diskussion bietet einen Blick auf das neue Live Properties Panel.

Die GitHub-Diskussion bietet einen Blick auf das neue Live Properties Panel.

Die GitHub-Diskussion #44 bietet einen Blick auf das neue Live Properties Panel.

(Bild: Microsoft)

Zu den neuen Features zählen die überarbeitete Optik im Fluent-UI-Design, ein Echtzeit-Panel für den Umgang mit Eigenschaften (Ändern, Inspizieren und Experimentieren), Visual-Tree- und Visual-State-Explorer als Teil des Eigenschaftspanels und ein Rechtsklick-Menü zum Duplizieren des geöffneten Tabs. Daneben wurden die Libraries aktualisiert und Bugs behoben.

XAML Studio ging einst aus einem experimentellen Projekt im Rahmen der Microsoft Garage hervor. Laut der neuen Ankündigung auf Microsofts Entwicklerblog bestand bereits seit einer frühen Phase das Ziel, XAML Studio quelloffen zur Verfügung zu stellen. Die Roadmap bietet die Möglichkeit, den Weg zu Version 2.0 mitzuverfolgen.

Weiterlesen nach der Anzeige


(mai)



Source link

Weiterlesen

Entwicklung & Code

Software Testing: Thermomanagement bei E-Autos testen


In dieser Episode sprechen Richard Seidl und Patrick Meuth über Thermomanagement-Software in Elektroautos. Getestet wird bei Fahrten auf der Straße und mit Hardware-in-the-Loop (HIL). Zur Nutzung kommt ein virtuelles Steuergerät, das nur die Thermofunktionen ausführt. So sinken Kosten und Fehler werden früher sichtbar.

Weiterlesen nach der Anzeige

Im Fokus stehen Alltagsszenarien zwischen Wüste und Tiefgarage: Batterie schützen, Innenraum kühlen, Leistung priorisieren, Reichweite sichern.

Patrick Meuth begann 2016 seine berufliche Laufbahn bei der TKI Automotive mit seiner Bachelorarbeit im Bereich modellbasiertes Testen. Anschließend wurde er 2017 als Testingenieur für Systemabsicherungen an HIL-Prüfständen übernommen. Durch seine Erfahrungen in verschiedenen Projekten entwickelte er sich kontinuierlich weiter und wurde 2020 zum Senior Test Engineer und anschließend zum Testmanager ernannt. Mit dem Übergang zur Cariad 2021 setzte er seine Tätigkeit als Testmanager fort. Seither leitet er das Team zur Systemabsicherung in einer agilen Struktur und übernahm als Product Owner die fachliche Verantwortung.

Bei diesem Podcast dreht sich alles um Softwarequalität: Ob Testautomatisierung, Qualität in agilen Projekten, Testdaten oder Testteams – Richard Seidl und seine Gäste schauen sich Dinge an, die mehr Qualität in die Softwareentwicklung bringen.

Die aktuelle Ausgabe ist auch auf Richard Seidls Blog verfügbar: „Thermomanagement bei E-Autos testen – Patrick Meuth“ und steht auf YouTube bereit.

Weiterlesen nach der Anzeige


(mdo)



Source link

Weiterlesen

Beliebt