Connect with us

Entwicklung & Code

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


close notice

This article is also available in
English.

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

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 zweiten Teil kommen Bernd Müller (Programmkomitee JavaLand und Professor Hochschule Ostfalia), Heinz Kabutz (Java Champion und Java Specialist Newsletter), Patrick Baumgartner (Java Champion, Co-Organisator JUG Schweiz), Wolfgang Weigend (Oracle Deutschland) und Gernot Starke (Buchautor und Gründer von arc42) 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.

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

Bernd Müller: 1996, 1.0

Heinz Kabutz: 1.0

Patrick Baumgartner: Meine erste Begegnung mit Java hatte ich während meines Studiums, damals mit Java 1.4. Die Sprache war zu dieser Zeit bereits weitverbreitet, insbesondere in der Unternehmenswelt, und galt als stabil und zuverlässig. Was mich besonders beeindruckt hat, war die Plattformunabhängigkeit – der berühmte „Write Once, Run Anywhere“-Ansatz, der es ermöglichte, Code ohne Anpassungen auf verschiedenen Betriebssystemen auszuführen.

Weiterlesen nach der Anzeige

Wolfgang Weigend: Ende des Jahres 1996 bin ich als Senior System Consultant bei Texas Instruments Software erstmals mit der Programmiersprache Java in Berührung gekommen. Meine erste Java-Version war das JDK 1.0. Anfang Juli 1997, habe ich als Senior System Consultant bei Sun Microsystems in Frankfurt am Main begonnen und noch im selben Jahr habe ich die Java-Technologie bei der TLC GmbH (DB AG / DB Systel GmbH) mit der IT-Abteilung bei der Deutschen Bahn eingeführt.

Gernot Starke: Zum „Marktstart“ von Java durfte ich das Object-Reality Centre in Köln leiten, eine Kooperation von Sun Microsystems mit der Kölner Beratungsfirma „Schumann AG“. Das war 1995/1996, und Java war in den USA gerade mit TamTam angekündigt worden. Wir haben seinerzeit auch das allererste deutsche Java-Projekt (gemeinsam mit Sun und der damaligen HypoVereinsbank in München) durchgeführt und in Produktion gebracht.

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

Heinz Kabutz: Es ist eine Sprache mit unendlich vielen Macken, über die man herrliche Rundbriefe schreiben kann.

Patrick Baumgartner: Definitiv die Konferenzen und der Hallway-Track! Java ist nicht nur eine Sprache, sondern eine weltweite Community mit unglaublich engagierten und inspirierenden Menschen. Ich bin oft mit Spring-Themen auf Konferenzen unterwegs und hatte dort die Möglichkeit, mit Gleichgesinnten tief in technische Diskussionen einzutauchen, neue Ideen zu entwickeln und von den Erfahrungen anderer zu lernen. Über die Jahre sind aus diesen Begegnungen nicht nur wertvolle fachliche Kontakte, sondern echte Freundschaften entstanden. Es ist immer wieder spannend, bekannte Gesichter auf Konferenzen wiederzutreffen und gemeinsam über die neuesten Entwicklungen im Java-Ökosystem zu diskutieren – oft auch nach einem Java User Group Talk. Diese Interaktionen, sei es auf einer großen Bühne, in kleinen Gruppen oder ganz spontan auf den Fluren zwischen den Talks, sind für mich eine enorme Bereicherung. Java ist für mich daher weit mehr als eine Technologie – es ist ein Ökosystem, das Menschen verbindet, inspiriert und gemeinsam wachsen lässt.

Wolfgang Weigend: Es waren die vielen Java-Projekte, die von den Entwicklern bei den Unternehmen in Deutschland im Jahr 1998/1999 gestartet wurden. Ein Highlight war, als ich zum ersten Mal die JavaOne-Entwicklerkonferenz in San Francisco mit 25.000 Teilnehmern im Moscone Center besuchte. Diese Eindrücke haben meine Erfahrungen mit der Java Community maßgeblich geprägt.

Gernot Starke: Kann man sich heute kaum noch vorstellen, aber ich konnte plötzlich ohne „#ifdef“-Makros im Code programmieren und meine Sourcen trotzdem auf anderen Betriebssystemen übersetzen. Das Java-Ökosystem: die fast unvergleichlich hohe Vielfalt und Gebrauchstauglichkeit der vielen Open-Source-Komponenten/Frameworks im Java-Umfeld. Da hat Java gegenüber C# ganz eindeutig die Nase vorn. Projekte im Dunstkreis von C, C++ oder C# konnten und können in dieser Hinsicht nur aus einer deutlich eingeschränkten Auswahl von Open-Source-Komponenten/Frameworks schöpfen. Das halte ich für ein riesiges Asset. Weiterhin fand ich vor Jahren die Erfindung von Groovy als alternative Sprache auf der JVM großartig. Die Möglichkeit, in anderen Sprachen zu entwickeln (Kotlin, Scala, Groovy) und dabei die Vorzüge der JVM zu behalten.

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

Bernd Müller: Das Verschleppen des Releases von Java EE 8 durch Oracle.

Heinz Kabutz: Mir hat Sun Microsystems mehr gefallen als Oracle, aber leider haben die zu viel Verlust gemacht. Oracle hat aber Java gut geführt.

Patrick Baumgartner: Eines der Dinge, die mich im Java-Ökosystem immer wieder stören, ist das oft unsachliche Java- oder Spring-Bashing. Kritik ist wichtig und notwendig, aber manchmal habe ich das Gefühl, dass bestimmte Diskussionen weniger auf fundierten Argumenten basieren, sondern eher aus Prinzip geführt werden. Technologien entwickeln sich weiter, und natürlich gibt es in jedem Framework oder jeder Sprache Herausforderungen und Fallstricke. Doch statt konstruktiv darüber zu sprechen, wird oft pauschal behauptet, dass Java „veraltet“ oder „zu schwergewichtig“ sei oder dass Spring „zu komplex“ sei. Dabei ignorieren solche Aussagen meist die Gründe, warum diese Technologien in vielen Bereichen so erfolgreich sind und kontinuierlich weiterentwickelt werden. Was ich mir stattdessen wünsche, ist ein offener Austausch auf Augenhöhe – ein Diskurs, der auf Erfahrungen basiert, bei dem sowohl Stärken als auch Schwächen beleuchtet werden. Nur so kann sich ein Ökosystem langfristig weiterentwickeln und verbessern.

Wolfgang Weigend: Es waren unternehmerische Entscheidungen von Sun Microsystems, die an der einen oder anderen Stelle herausfordernd waren, aber sie haben mich in Bezug auf Java nicht negativ beeinflusst. Ich habe mich immer für die ganzheitliche und vorwärtsgerichtete Technologie eingesetzt.

Gernot Starke: Oh, da gibt’s einiges:

  • In den frühen Zeiten gab’s keine ordentliche Infrastruktur für Build und Test. „ant“ war nur so mittelgut für Entwicklungsteams.
  • Build-Prozesse in früheren Maven-Versionen haben Ewigkeiten gebraucht, das war lange Zeit sehr nervig.
  • Die unsäglich schwergewichtigen EJBs und der Versuch, zu viele technische Details auf Java-Application-Server auszulagern. Diese Software-Monstren haben vielen Teams das Leben zur Hölle gemacht. Ich habe Stunden mit dem technischen Support von den großen Herstellern verbracht, weil diese Biester ihre Kinderkrankheiten ewige Zeiten nicht kuriert haben. Der Gipfel war der Vorschlag, das gesamte Server-Betriebssystem neu zu installieren und beim Kompilieren des Betriebssystem-Kernels einige (nicht-Standard-)Parameter zu setzen – dann würde der Bug im Application-Server vielleicht nicht mehr auftreten.
  • Grafische Oberflächen für Desktop-Anwendungen in Eclipse-RCP (V2) entwickeln und dann auf eine neuere Version von Eclipse (V3) portieren müssen – ich glaube, unser gesamtes Team hat über Kündigung oder Flucht nachgedacht.
  • Der Kauf von Sun Microsystems durch Oracle.
  • Dass OSGI niemals so richtig ans Fliegen gekommen ist, bzw. niemals in der Breite der Praxis ankam. Und dass der Versuch, das Java-Modulsystem zu etablieren, leider an der Verweigerung der Praxis gescheitert ist. Ich halte das immer noch für nützlich aus Architektursicht, aber viele Projekte ignorieren das ja beharrlich.

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?

Bernd Müller: Es ist sehr relevant und spielt eine sehr große Rolle, da es sehr verbreitet ist. Ich glaube, dass Java wartbarer ist als andere Sprachen, sodass wir in einigen Jahren sehen werden, wie große Systeme in anderen Sprachen veralten, da sie nicht mehr gewartet werden (können).

Heinz Kabutz: Java wird noch von sehr vielen großen Unternehmen benutzt. Es ist ein solides System, schnell und zuverlässig.

Patrick Baumgartner: Definitiv! Java hat sich über die Jahre enorm weiterentwickelt und bleibt eine der wichtigsten Sprachen für Unternehmensanwendungen, Cloud-Native-Systeme und verteilte Architekturen. Die kontinuierlichen Verbesserungen – von Lambdas über Records bis hin zu Virtual Threads – zeigen, dass Java am Puls der Zeit bleibt. Natürlich gibt es mit Kotlin, Go oder Rust starke Alternativen, aber Java bietet ein stabiles, performantes und sicheres Ökosystem. Das macht die Sprache für viele Unternehmen und Entwickler weiterhin äußerst attraktiv.

Wolfgang Weigend: Nach meiner Einschätzung ist Java bis heute relevant, insbesondere weil die Verbreitung, Abwärtskompatibilität und Lesbarkeit für sich sprechen. Mittel- und langfristig sehe ich die Programmiersprache Java gut gerüstet, weil Innovation über das OpenJDK ständig einfließen kann. Besonders die Code-Assistenz-Systeme mit den Entwicklungsumgebungen werden existierenden Java-Code durchforsten und mittels KI & ML die Entwickler bei der Bewältigung ihrer Aufgaben effizient unterstützen.

Gernot Starke: Sprachen wie Python, Go und Java/TypeScript haben durch Self-Contained Systems und Microservices kräftig an Aufwind gewonnen. Andererseits haben wir riesige Mengen bestehenden Sourcecodes in Java als kritische Softwarekomponenten in vielen Unternehmen. Daher halte ich Java und das Java-Ökosystem weiterhin für sehr relevant.



Source link

Entwicklung & Code

TypeScript 6.0 steht in den Startlöchern: Die letzte JavaScript-basierte Version


Microsoft hat die Betaversion für TypeScript 6.0 veröffentlicht, das letzte Release mit der aktuellen JavaScript-Codebasis. Ab Version 7.0 werden der Compiler und der Language Service in Go geschrieben sein, was Geschwindigkeitsvorteile bringen soll. TypeScript 6.0 soll in erster Linie den Weg zum Umstieg ebnen.

Weiterlesen nach der Anzeige




(Bild: jaboy/123rf.com)

Tools und Trends in der JavaScript-Welt: Die enterJS 2026 wird am 16. und 17. Juni in Mannheim stattfinden. Das Programm dreht sich rund um JavaScript und TypeScript, Frameworks, Tools und Bibliotheken, Security, UX und mehr. Frühbuchertickets sind im Online-Ticketshop erhältlich.

Einige Aspekte gelten in TypeScript 6.0 als veraltet (deprecated) – doch derzeit lassen sich diese Deprecations noch einfach ignorieren. Dazu dient die Einstellung "ignoreDeprecations": "6.0" in der tsconfig.json-Datei. Ab Version 7.0 wird das nicht mehr möglich sein, und die veralteten Funktionen lassen sich dort nicht mehr nutzen.

Die Änderungen sollen den Prozessen Rechnung tragen, die in den vergangenen zwei Jahren seit Version 5.0 stattgefunden haben, so das TypeScript-Team. Unter anderem seien Bundler und ECMAScript-Module zu den häufigsten Modulzielen für neue Projekte geworden, und tsconfig.json habe sich zu einem fast universellen Konfigurationsmechanismus entwickelt, während der Wunsch nach strengerer Typisierung zugenommen habe.

Konkret entfällt unter anderem das Target ECMAScript 5, denn seit über einem Jahrzehnt steht der Nachfolger ECMAScript 2015 (ES 6) bereit und alle modernen Browser können damit umgehen, wie das TypeScript-Team ausführt. Damit einhergehend ist nun auch --downlevelIteration veraltet, da es lediglich für ECMAScript 5 relevant war. Statt der veralteten asserts-Syntax kommt nun das Keyword with für Import-Attribute zum Einsatz.

Ein ausführlicher Blogeintrag geht auf diese und weitere Deprecations sowie Feature-Neuerungen ein.

Weiterlesen nach der Anzeige

TypeScript 6.0 gilt mit der Beta als Feature-stabil und soll keine weiteren Funktionen oder Breaking Changes erhalten. Neben der Betaversion sind auch Nightly Builds verfügbar, um frühe Einblicke in das nächste Release zu erhalten. Daneben geht die Arbeit an TypeScript 7.0 weiter, und auch dafür können Interessierte Vorschauversionen ausprobieren sowie Feedback abgeben.

Wer mit TypeScript 6.0 Deprecation-Warnungen erhält, sollte diese zunächst beheben, bevor er oder sie auf Version 7.0 wechselt, empfiehlt das TypeScript-Team. Schon bald nach TypeScript 6.0 soll TypeScript 7.0 erscheinen.


(mai)



Source link

Weiterlesen

Entwicklung & Code

Redox OS kompiliert erstmals Code auf sich selbst


close notice

This article is also available in
English.

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

Das vollständig in Rust geschriebene Betriebssystem Redox OS hat im Januar 2026 einen bedeutenden Meilenstein erreicht: Entwickler konnten erstmals einen Commit komplett aus Redox heraus durchführen. Jetzt funktionieren sowohl der Rust-Compiler rustc als auch der Paketmanager Cargo auf dem System.

Weiterlesen nach der Anzeige

Dieser Fortschritt markiert einen wichtigen Schritt in Richtung eines eigenständigen Entwicklungssystems. Das Projekt wurde maßgeblich durch Anhad Singh im Rahmen des Redox Summer of Code vorangetrieben. Dank seiner Arbeit können Entwickler nun einfache Programme in Rust, C und C++ direkt auf Redox kompilieren.

Darüber hinaus haben die Entwickler zahlreiche weitere Verbesserungen implementiert. Eine neue Capability-basierte Security-Infrastruktur bietet granulare Berechtigungen für Prozesse. Der SSH-Support wurde erweitert und funktioniert nun zuverlässig für den Remote-Zugang. Zudem wurde die Latenz bei USB-Eingabegeräten deutlich reduziert.

Der Bootloader bietet jetzt eine Text-Editing-Umgebung zum Hinzufügen, Entfernen und Ändern von Boot-Parametern. Der Login-Manager wurde um Menüs für Energieverwaltung und Tastaturlayout ergänzt. Das Kernel-Memory-Management erhielt signifikante Verbesserungen, während ARM64-Systeme nun Dynamic Linking unterstützen.

Die POSIX-Compliance wurde weiter verbessert, was die Kompatibilität mit Unix-Software erhöht. Zusätzlich behobene Fehler betreffen den Intel HD Audio-Treiber, PS/2-Touchpads sowie UEFI-Firmware. Die Entwickler arbeiten außerdem am RISC-V-Port und haben QEMU auf Redox selbst portiert. Alle im Januar umgesetzten Änderungen finden sich im Redox-Blog.

Weiterlesen nach der Anzeige

Für die Zukunft plant das Projekt spezialisierte Versionen: Hosted Redox für virtuelle Maschinen, Redox Server für Edge- und Cloud-Umgebungen mit Sandboxing-Funktionen sowie Redox Desktop mit COSMIC-Integration und Wayland-Support. Diese Pläne wurden bereits 2023 skizziert und werden schrittweise umgesetzt.

Redox OS basiert auf einer Microkernel-Architektur und nutzt Rusts Memory-Safety-Eigenschaften, um die Sicherheit zu erhöhen. Das System unterstützt Intel-, AMD-, ARM- und RISC-V-Prozessoren sowie verschiedene Speicher- und Eingabegeräte. Die Desktop-Variante benötigt weniger als 512 MByte RAM, während Minimal-Images unter 50 MByte groß sind. Im Oktober 2023 kündigten die Entwickler erstmals konkrete Pläne für Server- und Desktop-Editionen an.


(fo)



Source link

Weiterlesen

Entwicklung & Code

Android 17: Google macht Rückzieher bei erster Beta – das steckt drin


Google wollte gestern das Update auf Android 17 Beta 1 veröffentlichen. Der Konzern hatte einige US-Medien wie üblich mit Vorabinformationen versorgt, die sie zu einer bestimmten Uhrzeit veröffentlichen durften. Die Meldungen gingen online, bei Google passierte dann aber nichts. Weder die Ankündigung auf Googles Android-Entwicklerseite noch Systemabbilder der neuen Vorabversion sind erschienen. Trotz der kurzfristigen Kehrtwende – mittlerweile heißt es, das Update werde „in Kürze“ freigegeben – ist immerhin klar, was im Update steckt und wie die Roadmap bis zur Veröffentlichung aussieht.

Weiterlesen nach der Anzeige

Wie unter anderem Android Authority und 9to5 Google schreiben, richtet sich die erste Betaversion von Android 17 an Entwickler. Der Release soll ihnen dabei helfen, anpassungsfähigere und leistungsoptimierte Apps zu erstellen. Zudem enthält es zahlreiche neue Tools für „Medien- und Kameraerlebnisse“.

Laut Google ist eine der größten entwicklerseitigen Neuerungen von Android 17 die erweiterte Anpassungsfähigkeit von Apps. Einer neuen „Adaptive Roadmap“ zufolge von Google sollen Entwickler die Anforderungen hinsichtlich Ausrichtung und Größenanpassung für Apps auf Geräten mit großem Bildschirm nicht mehr deaktivieren können. Die neue Regel gelte für Android-Geräte mit einer Mindestbreite von 600 dp oder mehr. Dies umfasst in der Regel Tablets, aufgeklappte Foldables und Desktop-ähnliche Fensterumgebungen.

Lesen Sie auch

Das bedeutet, dass Apps, die auf Android 17 (SDK 37) ausgerichtet sind, die Größenanpassung und das Multitasking in Fenstern nach Googles Vorgaben unterstützen. Sie dürfen damit nicht mehr auf eine feste Ausrichtung oder ein festes Seitenverhältnis festgelegt werden.

Android 17 Beta 1 liefert außerdem Tools zur Verbesserung der Medien- und Kamera-App-Erfahrung. Unter anderem führt das große Update professionelle Kamera-APIs für flüssigere Übergänge ein, mit denen Kamera-Apps zwischen den Modi wechseln können, ohne die Kamerasitzung vollständig neu zu starten, heißt es. Mit dieser Lösung sollen kleinere Pausen, sichtbare Fehler und Verzögerungen beim Wechseln der Kameramodi vermieden werden.

Weiterlesen nach der Anzeige

Außerdem erlaubt Android 17 Apps auch den Zugriff auf Metadaten aller aktiven physischen Kamerasensoren und nicht nur des Hauptsensors. Dadurch sollen Kamera-Apps einen tieferen Einblick „in die Vorgänge hinter den Kulissen beim Objektivwechsel oder beim Zoomen“ erhalten.

Wie Android Authority die Vorabmeldung zitiert, führt Google verbesserte Audiosteuerungen ein, um die Lautstärke über alle Apps hinweg zu normalisieren. Zudem erhält Android 17 Unterstützung für Versatile Video Coding (VVC), auch bekannt als H.266. Dieser Videokomprimierungsstandard ist dazu in der Lage, eine ähnliche oder bessere Videoqualität bei geringeren Dateigrößen zu liefern, vorausgesetzt, das Android-Gerät verfügt auch über kompatible Hardware.

Android 17 Beta 1 enthält zudem einige zusätzliche Neuerungen für Entwickler: Dazu gehören Leistungsverbesserungen für eine bessere Ressourcenverwaltung und schnellere Interaktionen, Optimierungen in Bezug auf Datenschutz und Sicherheit sowie Verbesserungen der Konnektivität. Dazu gehört auch die Darstellung von VoIP-Anrufen (aus Apps wie WhatsApp) im System-Dialer.

Weiter erhält Wi-Fi-Ranging (IEEE 802.11az) neue Funktionen zur Näherungserkennung, die genauere Entfernungsmessungen und die Erkennung von Geräten in der Nähe ermöglichen. Google fügt außerdem Begleitgeräteprofile „Medizinische Geräte“ und „Fitness-Tracker“ hinzu. Dies soll etwa den Einrichtungsprozess für Apps, die eine Verbindung zu diesem Zubehör herstellen, vereinfachen.

Für Android XR bringt Android 17 einen neuen Interaktionsmodus, mit dem Apps intelligenter auf die Interaktion des Benutzers mit einem Extended-Reality-Gerät reagieren können, beispielsweise wenn sich der Anzeigestatus ändert.

Durch die Umstellung der Android-Entwicklung auf einen ganzjährigen Release-Zyklus, bei dem der im Sommer 2025 eingeführte Android-Canary-Kanal das bisherige Developer-Preview-Modell ersetzt, sollen Entwickler schneller künftige Funktionen testen können. Die Betas könnten durch die kontinuierliche und ganzjährige Feedbackschleife stabiler und fehlerfreier sein als die bisherigen.


Android 17 Roadmap

Android 17 Roadmap

Bis Juni 2026 dürfte die stabile Version von Android 17 für Pixel-Geräte erscheinen.

(Bild: Google)

Laut der Roadmap von Google wird Android 17 einen ähnlichen Release-Rhythmus wie Android 16 verfolgen. Das Unternehmen plant, bis März 2026 die Plattformstabilität zu erreichen. Im zweiten Quartal, voraussichtlich im Juni 2026, soll dann die stabile Version für Pixel-Geräte erscheinen. Eine kleinere SDK-Version wird im vierten Quartal 2026 folgen.

Sobald Google den Schalter umlegt, können Nutzerinnen und Nutzer, die ihr Gerät im Android-Beta-Programm registriert haben, die erste Beta von Android 17 als OTA-Update installieren. Bereits registrierte Geräte erhalten das Update automatisch. Kompatibel sind alle Pixel-Smartphones ab dem Pixel 6, sämtliche Pixel-Foldables und das Pixel Tablet.


(afl)



Source link

Weiterlesen

Beliebt