Working Draft

Working Draft

By Vanessa Otto, Peter Kröner, Hans Christian Reinl, Stefan Baumgartner, Christian »Schepp« SchaeferNewsTechnologyEducationHow ToTech News
Download on the App Store

Working Draft episodes

  • Revision 656: State of JS 2024, Teil 3/4

    Peter, Stefan und Vanessa besprechen auch diese Woche wieder die Ergebnisse des State of JS 2024. In Teil 1 stürzten sich die Hosts vor allem auf die neuen JavaScript Features, in Teil 2 besprachen sie die Pain Points von JavaScript und Browser APIs,  die Leseliste und die Bibliotheken. In diesem vorletzten Teil schaffen die Hosts ganze zwei weitere Seiten der Umfrage: Meta-Frameworks und Testing.

    Schaunotizen
    [00:01:17] Meta-Frameworks
    Die Hosts wenden sich zunächst der Frage zu, was Meta Frameworks denn eigentlich sind. Bekannte Namen sind Nuxt, Next.js, Remix, SvelteKit, etc. Doch was genau was so ein Meta Framework aus? Ist es eine „All in One“ Lösung? Muss es zwangsweise auf einem anderen Framework basieren? Das bringt uns auch zu einer Endlos-Diskussion: Ist React ein Framework oder eine Library (deutsch: Bibliothek)? Wobei, React hat diese Frage nun selbst beantwortet: Es ist eine Library. Nun gut, die Hosts einigen sich darauf, dass man eine gewisse Erwartungshaltung an Meta-Frameworks hat: Sie kommen mit einem Router, Zustandsverwaltung (State Management), SSR und SSG und weiteren bereits eingebauten Features.
    Meta-Frameworks kommen mit diesen vielen nützlichen Features, keine Frage. Dennoch stellt man auch eine neue Abhängigkeit her. Das Benutzen dieser Meta-Frameworks kann es schwieriger machen, Bugs zu finden und zu fixen. Wie so oft, wenn man nicht mehr die Kontrolle über den kompletten Code hat. Sie können auch mit Sicherheitslücken kommen, wie es kürzlich der Fall bei Next.js war.
    Wie auch in den beiden vorherigen Teilen sind sich die Hosts wieder in einem Punkt sicher: Es kommt auf die Entwickler:innen an, nicht auf das Meta-Framework.
    Kleine Bibliotheken wie Eleventy sind dennoch immer eine gute Wahl. Das liegt bei Eleventy daran, dass man HTML und CSS losgelöst von dem Tool schreibt. Das ermöglicht eine leichte Migration in der Zukunft.
    [00:43:32] Testing
    Bei dem Thema Testing leben die Hosts in verschiedenen Welten. Während Vanessa sich schon seit Jahren mi Tests in der Welt von Frontend Frameworks beschäftigt, hat der in der Rust-Welt lebende Stefan kaum Berührungspunkte mit Framework-Component Testing und kann die ganze Problematik daher gar nicht so genau nachvollziehen. Vanessa klärt also zunächst einmal über die ganze Tragödie von Unit Tests über Component Tests zu End to End Tests oder doch auch Visual Regression Tests und Snapshot Tests auf. Die Umfrage verrät, dass aktuell viel Jest eingesetzt wird, jedoch niemand mehr so richtig glücklich mit diesem Tool ist. Vitest ist stark auf dem Vormasch, genauso wie Playwright. In Revision 652 sprach kürzlich erst Stefan Judis über automatisiertes Testing mit Playwright.
    Ähnliche Revisionen
    • Revision 655: State of JS 2024, Teil 2/4
    • Revision 653: State of JS 2024, Teil 1/4
    • Revision 652: Automatisiertes Testing mit Playwright
    • Revision 633: State of CSS 2024, Teil 1/3
    • Revision 634: State of CSS 2024, Teil 2/3
    • Revision 635: State of CSS 2024, Teil 3/3
    • Diskutiert die Folge mit uns in unserem Community-Slack: https://draft.community/

      1 hr 24 min
    • Revision 655: State of JS 2024, Teil 2/4

      Peter, Stefan und Vanessa besprechen weiterhin die Ergebnisse des State of JS 2024, so wie in der Vergangenheit auch bereits der State of CSS (Revision 633-635) besprochen wurden. In Teil 1 stürzten sich die Hosts vor allem auf die neuen JavaScript Features. Nun geht es weiter mit den Schmerzpunkten von JavaScript und Browser APIs,  der Leseliste und den Bibliotheken.

      Schaunotizen
      [00:01:35] JavaScript Pain Points
      Die JavaScript Pain Points Angaben in der Umfrage kamen durch eine Freitext Eingabe in der Umfrage zustande, Wie Peter, Stefan und Vanessa finden, eine wichtige Zusatzinformation, um die Ergebnisse etwas besser interpretieren zu können. Denn diese sind bei näherem Betrachten der eigentlichen Antworten gar nicht mehr so konkret wie die Liste an Kurzantworten erst erscheinen lässt. Ein viel besprochenes Thema ist EcmaScript Module & Common JS. Das ES Module ist ein standardisiertes JavaScript-Modulsystem, das in ECMAScript 2015 (ES6) eingeführt wurde. Es wird in modernen Browsern und Node.js unterstützt. Das CJS Modulsystem wird hauptsächlich in Node.js verwendet. Es wurde entwickelt, bevor JavaScript ein offizielles Modulsystem hatte. Vor allem die Migration von CJS auf ESM wird als komplex und kompliziert genannt.
      Ebenfalls benannt wird das Fehlen von Typen. Hierbei kommen Peter und Stefan zu dem Schluss, dass man TypeScript „einfach“ dazu installieren, oder notfalls per IDE Extension hinzufügen kann. Sie sind also anderer Meinung als die Umfrage Ergebnisse.
      Der nächste Schmerzpunkt, der genannt wird, ist der, der fehlenden Standardbibliothek. Hier argumentiert Stefan, dass das eigentlich kein Problem von der Sprache JavaScript, sondern der Runtime sei. Er streut nebenbei das Wissen herein, dass es ein Standard Committee gibt, dass sich nun um serverseitige Runtimes kümmern wird: das TC55. Stefan erzählt weiterhin, Rust hätte noch viel weniger Standards, da wäre alles frei konfigurierbar.
      Der letzten besprochenen Schmerzpunkt ist die asynchrone Programmierung. Da hätte Stefan gerne viele mehr Prozente gesehen. Denn gerade seit es async/await gibt, gibt es viele Verständnislücken über die asynchrone Programmierung. Er weist auf den hilfreichen Blogartikel „What color is your function“ von Bob Nystrom hin.
      [00:30:35] Browser API Pain Points und Readlist
      Die Liste der Schmerzpunkte über Browser APIs ist doch sehr erheiternd zu lesen: Safari und Firefox. Und eigentlich auch Chrome. Peter, Stefan und Vanessa arbeiten sich durch die Liste und finden heraus: Das Hautproblem sei wohl, dass Chrome einige APIs freischaltet, die die anderen Browser noch nicht unterstützen. Dadurch gibt es Indifferenzen zwischen den Browsern. Doch ob es wirklich die Lösung ist, dass Chrome sich besser absprechen könnte?
      In Teil 1 besprachen die Hosts das JavaScript Feature error.cause. Umso schöner nun zu sehen, dass viele der Ausfüllenden der Umfrage sich auch dieses Feature auf die Leseliste gesetzt haben.
      [00:44:04] Bibliotheken
      Über die Bibliotheken gibt es massig viele Daten anzuschauen. Doch für wen sind diese nun eigentlich interessant? Vermutlich eher, wenn man Inhalte für Blogartikel und Vorträge sammelt. Dennoch wüten sich Peter, Stefan und Vanessa durch die Daten. Webpack ist das meistebenuzte Tool, jedoch nicht das Beliebteste. React und Vite stehen beide hoch im Kurs. Zum konkreten Thema der JavaScript Frameworks besprechen die Hosts, dass man wohl irgendwie eine Entscheidung treffen muss – und richtig falsch ist keine, aber wohl oft trifft man wohl auch nicht die Richtige, wie man an den Schmerzpunkten wieder sieht. Denn hier werden Frameworks auch oft als zu komplex beschrieben. Die Hosts finden, dass Entwickler und Entwicklerinnen generell flexibel sein müssen in ihrem Beruf. Und jederzeit zwischen Frameworks wechseln können sollten.
      Links
      • State of JS – Outreach
      • Ähnliche Revisionen
        • Revision 653: State of JS 2024, Teil 1/4
        • Revision 633: State of CSS 2024, Teil 1/3
        • Revision 634: State of CSS 2024, Teil 2/3
        • Revision 635: State of CSS 2024, Teil 3/3
        • Diskutiert die Folge mit uns in unserem Community-Slack: https://draft.community/

          1 hr 19 min
        • Revision 654: TypeScript 5.8 – in Zukunft nur noch smarter Linter?

          Wusstet ihr, dass man mit der richtigen TypeScript-Config plötzlich wieder Lust auf JavaScript bekommt? Kein Witz – wir haben’s ausprobiert!

          Schaunotizen
          [00:01:08] TypeScript 5.8
          Wir steigen ein mit einem TypeScript-Feature, das Stefan so begeistert hat, dass er direkt eine ganze Revision darüber machen wollte: die „Erasable Syntax Only“-Option. Wir diskutieren, warum diese Einstellung TypeScript endlich wieder zu einem erfreulichen Tool macht – besonders in Verbindung mit einer besseren Developer Experience und weniger magischem Code.

          Danach nehmen wir TypeScript in Node-Projekten auseinander, sprechen über das Für und Wider von Linting vs. Type-Checking zur Laufzeit und streifen dabei auch Themen wie Build-Systeme, tsc vs. esbuild und warum man manchmal doch wieder Bock auf „einfaches JavaScript“ bekommt.

          Zum Ende hin geht’s noch kurz um die Realität in Teams, in denen nicht alle TypeScript gleich intensiv nutzen – und um die Frage, ob TypeScript bald nur noch Linter mit Typen sein sollte.

          Diskutiert die Folge mit uns in unserem Community-Slack: https://draft.community/

          55 min
        • Revision 653: State of JS 2024, Teil 1/4

          Peter, Stefan und Vanessa besprechen die Ergebnisse des State of JS 2024, so wie in der Vergangenheit auch bereits der State of CSS (Revision 633-635) besprochen wurden. In Teil 1 stürzen sich die Hosts vor allem auf die neuen JavaScript Features.

          Schaunotizen
          [00:03:44] State of JS 2024 – Teil 1
          Peter, Stefan und Vanessa sind sich zumindest bei Einem einig: Die Motivation, um die Umfragen „State of X“ auszufüllen, ist die eigene Weiterbildung. Dieses Jahr gab es 14.000 Personen, die die Umfrage ausgefüllt haben. Ob die Ergebnisse generell nur eher etwas über Enthusiasten aussagt?
          Egal ob JS, HTML oder CSS. Gar nicht mehr zu einig waren sie sich dann darin, wie interessant die einzelnen abgefragten JavaScript Features sind, oder auch wie interessant die Ergebnisse davon.
          Zuerst widmen sich die Hosts der Funktion groupBy. Doch vielmehr als nur über die Funktion zu sprechen, besprechen Peter, Stefan und Vanessa, ob es sich lohnt, bestehende Alternativen mit der nun nativen Funktion auszutauschen. Stefan spricht sich für eine Verschlankung der Codebasis aus und plädiert dafür, neue Sprachfunktionen zu nutzen, sobald sie verfügbar sind. Peter wirft die Frage auf, welcher bestehende Code dadurch ersetzt würde. Ein Beispiel dafür ist eine selbstgeschriebene groupBy-Funktion, die nicht ersetzt wird, weil sie gut funktioniert und leicht anders arbeitet als mögliche Alternativen. Zudem gibt es hier kein Risiko. Anders sieht es aus, wenn externe Programmbibliotheken ins Spiel kommen – hier könnten unvorhergesehene Änderungen auftreten, und generell ist das Ziel, die Anzahl an Abhängigkeiten möglichst gering zu halten.Im Gespräch über die bekannte Bibliothek Lodash wird darauf hingewiesen, dass man das Rad nicht neu erfinden möchte. Gleichzeitig merkt Peter an, dass es in bestimmten Fällen doch notwendig sein kann, eigene Lösungen zu schreiben, um spezielle Anforderungen zu erfüllen. Insgesamt herrscht jedoch Einigkeit darüber, dass Lodash nicht mehr zeitgemäß ist. Viele seiner Funktionen stammen aus einer anderen Entwicklungsära und lassen sich mittlerweile durch native Sprachmittel ersetzen.
          [00:21:03] Syntax features: Private Fields, error.cause
          Neben diesen strategischen Überlegungen geht es auch um aktuelle Neuerungen in JavaScript. Private Felder für Klassen erweisen sich als nützlich, um Objekte zu erweitern – etwa durch zusätzliche Methoden für Zeichenketten oder Mengen. Die Fehlerbehandlung wird mit der cause-Eigenschaft verbessert. Damit ist es möglich, einen abgefangenen Fehler mit einer neuen Meldung erneut auszulösen und dabei die ursprüngliche Ursache zu erhalten, was insbesondere für Fehlerprotokollierung nützlich ist. Wer sich näher damit beschäftigen möchte, findet eine ausführliche Beschreibung bei MDN.
          [00:30:36] Nullish Coalescing
          Ein weiteres Thema ist der sogenannte Nullish Koaleszenzoperator (??), die sich vom logischen Oder-Operator (||) dadurch unterscheidet, dass sie nur bei null und undefined greift, während || auf alle falschen Werte reagiert – also auch auf false, die Zahl 0, leere Zeichenketten oder NaN. Beide Operatoren lassen sich beliebig verketten. MDN. Eng damit verbunden ist die Kurzschreibweise für logische Zuweisungen (||=), die es ermöglicht, Werte nur dann zu setzen, wenn sie bislang einen falschen Zustand haben. MDN.
          Ein weiteres kleines, aber oft übersehenes Detail ist die sogenannte Hashbang-Syntax (#!). Diese ist vor allem in Kommandozeilen-Werkzeugen von Bedeutung, die in JavaScript geschrieben sind. Sie ermöglicht es, Skripte ohne expliziten Aufruf der Laufzeitumgebung auszuführen, etwa beim Starten eines Programms aus einer Paketkonfigurationsdatei heraus.
          [00:34:40] Logical Assignment
          Inneren Feldern von Objekten lassen sich nun auch neue Werte zuweisen, wenn ihr aktueller Wert falsy ist. Also wiederum nun wieder alle falsy Werte im Gegensatz zu dem vorher besprochenem Thema.
          [00:41:12] String Features, Array Features
          Beim Blick auf die neuen Möglichkeiten zur Verarbeitung von Zeichenketten zeigt sich, dass diese nur selten gebraucht werden. Ein Beispiel ist die Methode replaceAll, die etwa genutzt werden kann, um überflüssige Leerzeichen aus nutzergenerierten Inhalten zu entfernen. Zum Thema Array Features gibt es eine Liste von Funktionen, die es eigentlich vorher auch schon so gab – nur jetzt sind die Objekte immutable geworden. Also die Funktion ändert nicht mehr das Originalobjekt, sondern gibt ein neues Array wieder.
          Doch ihr Nutzen hält sich unserer Hosts nach in Grenzen. Besonders in reaktiven Anwendungsarchitekturen wie React könnten sie jedoch für die Verarbeitung unveränderlicher Daten hilfreich sein.
          [00:46:36] Async Features, Set Features, Group Features, Language Pain Points
          In der asynchronen Programmierung zeigt sich, dass Promise.allSettled hilfreich ist, wenn auf mehrere Dateien für die Lokalisierung einer Anwendung gewartet werden muss.

          Neue Funktionen für Mengen (Sets) sind zwar interessant, aber wären mit einer besseren grafischen Darstellung leichter verständlich gewesen.

          Die Beantwortung der Nutzungshäufigkeit von groupBy wird kritisch hinterfragt. Nur ein Drittel der Befragten gibt an, diese Funktion zu verwenden – doch möglicherweise liegt das auch daran, dass viele bereits eigene Lösungen im Einsatz haben.

          Schließlich geht es um den Einsatz von Programmiersprachen und Werkzeugen. Die Nutzung von TypeScript ist ungebrochen hoch, mit einer Umfragequote von nahezu 100 Prozent. Künstliche Intelligenz spielt im Entwicklungsalltag eine eher untergeordnete Rolle: Ein Fünftel verzichtet ganz darauf. JavaScript wird von 95 Prozent der Befragten im Beruf eingesetzt, 40 Prozent programmieren auch in der Freizeit damit – wobei hier eine gewisse Überschneidung wahrscheinlich ist.

          [00:55:21] Browser APIs
          Abschließend widmen sich den Hosts den Antworten zum Thema der Browser APIs. Es gint viel Begeisterung für die bevorstehende Temporal-API, die die Arbeit mit Zeitwerten erheblich vereinfachen wird. MDN. Ein oft geäußerter Wunsch bleibt die Einführung statischer Typisierung direkt in JavaScript sowie umfangreichere Standardbibliotheken.
          Links
          • State of JS – Outreach
          • Ähnliche Revisionen
            • Revision 633: State of CSS 2024, Teil 1/3
            • Revision 634: State of CSS 2024, Teil 2/3
            • Revision 635: State of CSS 2024, Teil 3/3
            • Diskutiert die Folge mit uns in unserem Community-Slack: https://draft.community/

              1 hr 6 min
            • Revision 652: Automatisiertes Testing mit Playwright

              In dieser Episode sprechen wir mit Stefan Judis über Playwright. Stefan ist Entwickler, Blogger, Autor des „Web Weekly“-Newsletters und Speaker mit einer Leidenschaft für Web-Technologien, insbesondere für Web-Performance, neue Features in modernen Browsern und Barrierefreiheit.

              Unser Sponsor

              Am 13. Juni 2025 lädt mittwald zum Head in the Cloud Summit ein – ein Tag voller Inspiration und Austausch auf dem mittwald Campus. Hier treffen sich Webworker, Developer und Digitalagenturen, um voneinander zu lernen.

              Freu dich auf spannende Talks und Sessions zu Cloud & DevOps, Technology und Culture & Creativity. Von den Herausforderungen der digitalen Arbeitswelt bis hin zu den Trends von morgen – hier bekommst du Einblicke von den klügsten Köpfen der Branche.

              Die Tickets sind begrenzt, also schnell buchen auf mittwald.de/hitc.

              Schaunotizen
              [00:02:09] Playwright
              Playwright ist ein ein leistungsfähiges End-to-End-Testing-Framework von Microsoft und darauf ausgelegt, stabile und zuverlässige Tests für Webanwendungen zu ermöglichen. Im Gegensatz zu älteren Test-Frameworks wie Selenium unterstützt Playwright moderne Features wie automatische Wartezeiten, Testisolierung und die Möglichkeit, mit mehreren Browser-Kontexten gleichzeitig zu arbeiten. Entwickler können Tests für Chromium (Chrome und Edge), WebKit (Safari) und Firefox schreiben – und das mit nur einer einzigen API.

              Ein zentrales Feature ist die Fähigkeit, Tests parallel auszuführen, was die Laufzeit von Test-Suites erheblich reduziert und die Continuous-Integration-Pipelines beschleunigt. Besonders für Teams, die viele Tests automatisieren, bietet Playwright hier große Vorteile.

              Ein wichtiger Aspekt, über den wir sprechen, ist die Art und Weise, wie Playwright UI-Tests durchführt. Die Auswahl von Elementen ist dabei besonders robust gelöst: Playwright nutzt sogenannte „Auto-Waits“, das heißt, es wartet automatisch, bis ein Element im DOM vorhanden, sichtbar und interaktiv ist, bevor eine Interaktion stattfindet. Das reduziert eine der größten Frustquellen beim End-to-End-Testing – nämlich Tests, die aufgrund von Timing-Problemen fehlschlagen.

              Zusätzlich erlaubt Playwright komplexe Selektoren, darunter CSS-, XPath- und Text-Selektoren, aber auch speziellere Methoden wie getByRole, um barrierefreie Elemente gezielt zu testen. Besonders praktisch ist auch, dass Playwright Shadow DOM und iFrames unterstützt, womit es sich besonders gut für moderne Webanwendungen eignet, die diese Techniken intensiv nutzen.

              Ein weiteres Thema sind Race Conditions. Da Playwright nicht nur die UI testet, sondern auch Interaktionen mit dem DOM und asynchrone Prozesse genau beobachten kann, hilft es, Probleme aufzudecken, die durch nicht deterministisches Verhalten entstehen. Gerade bei Single-Page-Applications oder Anwendungen mit vielen dynamischen Inhalten kann Playwright dazu beitragen, Bugs zu finden, die sonst nur schwer zu reproduzieren sind.

              Wir sprechen außerdem über die Möglichkeiten von visuellem Regressiontesting mit Playwright. Theoretisch lassen sich Screenshots und sogar Videoaufnahmen von Testläufen erstellen, um Änderungen in der Benutzeroberfläche zu erkennen und zu überprüfen. Allerdings haben wir selbst diese Funktionalität noch nicht ausprobiert – deshalb interessiert uns: Nutzt ihr visuelles Regressiontesting mit Playwright? Welche Erfahrungen habt ihr damit gemacht?

              Stefan gibt außerdem Tipps, wie sich Playwright in bestehende Continuous-Integration/Continuous-Deployment-Pipelines einbinden lässt. Besonders für Teams, die bereits mit CI/CD arbeiten, ist es wichtig, dass Test-Frameworks sich reibungslos in bestehende Workflows einfügen. Playwright bietet hier viele Optionen, darunter die Integration mit GitHub Actions, Jenkins und anderen CI-Systemen.

              Ein weiteres Highlight ist die Playwright Trace Viewer-Funktion. Damit lassen sich Tests detailliert analysieren, indem sämtliche Interaktionen, DOM-Änderungen und Konsolen-Ausgaben einer Testausführung gespeichert und später Schritt für Schritt durchgegangen werden können. Das erleichtert die Fehlersuche nach einem gescheiterten Pipeline-Durchlauf erheblich.

              Links
              Playwright
              Die Hauptseite von Playwright mit Dokumentation und Ressourcen.
              Playwright GitHub Repository
              Das offizielle GitHub-Repository von Playwright mit Quellcode und Beitragsrichtlinien.
              Playwright Tutorial auf LambdaTest
              Ein ausführliches Tutorial zur Nutzung von Playwright für automatisierte Tests.
              Playwright Tutorial auf BrowserStack
              Ein Leitfaden zur Verwendung von Playwright für Testautomatisierung.
              Playwright Trace Viewer
              Ein Tool zur detaillierten Analyse von Testläufen, um Fehler besser nachzuvollziehen.
              Parallelisierung in Playwright
              Eine Dokumentation zur effizienten Nutzung der Parallelisierungs-Funktionen von Playwright.
              Element-Selektoren in Playwright
              Übersicht über die verschiedenen Selektoren und deren Nutzung.
              Web Weekly Newsletter
              Stefan Judis‘ wöchentlicher Newsletter mit aktuellen Themen rund um Webentwicklung.
              Unterstütze Stefan auf Patreon
              Hilf Stefan dabei, weiterhin großartige Inhalte zu erstellen, indem du ihn auf Patreon unterstützt!
              Playwright Tips
              Stefans Playlist für Checkly mit Videos zu Playwright.

              Diskutiert die Folge mit uns in unserem Community-Slack: https://draft.community/

              1 hr 6 min
            • Revision 651: Accessible Rich Internet Applications (ARIA)

              In dieser Episode sprechen wir mit Marco Bretschneider über den ARIA-Standard und dessen Bedeutung für Barrierefreiheit bei dynamischen Webinhalten. Ein Accessibility-Audit war für sein Team der Ausgangspunkt, ARIA intensiver zu nutzen – daraus entstanden in seiner Firma die „ARIA of the week“-Sessions, die bis heute wertvolle Ergebnisse liefern.

              Schaunotizen
              [00:01:15] Accessible Rich Internet Applications (ARIA)
              Wir starten mit einem historischen Exkurs zur Entstehung von ARIA und werfen einen Blick darauf, welche bestehenden Standards als Vorbild dienten. ARIA wurde nämlich stark von Accessibility-APIs aus der Desktop-Welt inspiriert, darunter Microsoft Active Accessibility (MSAA) und Apples Accessibility API. Diese Ansätze wurden auf das Web übertragen, um mit Technologien wie JavaScript, React und Angular umzugehen, die für assistive Technologien lange Zeit schwer zugänglich waren.

              Marco erklärt, wie ARIA den Accessibility-Tree eines Browsers beeinflusst und assistiven Technologien wie Screenreadern wichtige Zusatzinformationen liefert, die mit reinem HTML nicht immer verfügbar sind.

              Anschließend gehen wir auf die Funktionsweise einer Auswahl des ARIA-Vokabulars ein. Wir sprechen etwa darüber, wie Tabs mit Rollen wie role="tablist" und Attributen wie aria-controls korrekt umgesetzt werden und warum bestimmte Tastatur-Interaktionen bei ARIA ein absolutes Muss sind. Außerdem reden wir über die Unterschiede zwischen Toggle-Buttons, Checkboxen und Switches sowie die Einsatzmöglichkeiten von Live-Regions mit aria-live.

              Am Ende bleibt die zentrale Erkenntnis: ARIA ist ein mächtiges Werkzeug, aber es muss gezielt und mit Bedacht eingesetzt werden. Wichtig ist ein grundlegendes Verständnis des Accessibility-Trees. Gut umgesetztes ARIA macht dynamische Webinhalte nicht nur zugänglicher, sondern erleichtert auch Entwickler*innen die Arbeit, indem es Barrierefreiheit strukturiert und nachvollziehbar macht.

              Links
              Inclusive Front-End Design Patterns
              Ein Buch mit praxiserprobten Frontend-Design-Mustern, die Barrierefreiheit und Usability in den Vordergrund stellen.
              Open UI
              Eine Initiative zur Standardisierung von UI-Komponenten, die auch Barrierefreiheit im Blick hat.
              Inclusive Components
              Eine Website, die praktische Anleitungen und Beispiele bietet, um zugängliche UI-Komponenten zu entwickeln.
              W3C ARIA Authoring Practices: Tabs
              Offizielle W3C-Dokumentation zu Best Practices für die Umsetzung von Tabs mit ARIA.
              HTML Spec: Link Type Next
              Die offizielle HTML-Spezifikation zu den Link-Typen rel="next" und rel="prev".
              Was ist Usability wirklich? (ProContext)
              Ein Artikel, der das Konzept der Gebrauchstauglichkeit-Messung und die Stufen der Usability erklärt.
              Inclusive Front-End Design Patterns
              Ein Buch mit praxiserprobten Frontend-Design-Mustern, die Barrierefreiheit und Usability in den Vordergrund stellen.
              HTML Living Standard
              Die aktuelle HTML-Spezifikation, die vom WHATWG gepflegt wird.

              Diskutiert die Folge mit uns in unserem Community-Slack: https://draft.community/

              1 hr 20 min
            • Revision 650: Sustainable Web Design

              In dieser Episode sprechen wir mit der freiberuflichen UX/UI-Designerin und Nachhaltigkeitsforscherin Sandy Dähnert (Web / LinkedIn) über die Herausforderungen und Chancen im nachhaltigen UX- und UI-Design.

              Unser Sponsor

              Am 13. Juni 2025 lädt mittwald zum Head in the Cloud Summit ein – ein Tag voller Inspiration und Austausch auf dem mittwald Campus. Hier treffen sich Webworker, Developer und Digitalagenturen, um voneinander zu lernen.

              Freu dich auf spannende Talks und Sessions zu Cloud & DevOps, Technology und Culture & Creativity. Von den Herausforderungen der digitalen Arbeitswelt bis hin zu den Trends von morgen – hier bekommst du Einblicke von den klügsten Köpfen der Branche.

              Die Tickets sind begrenzt, also schnell buchen auf mittwald.de/hitc.

              Schaunotizen
              [00:02:08] Sustainable Web Design
              Sandy beschäftigt sich seit 2018 intensiv mit diesem Thema und erklärt uns, was nachhaltiges Design bedeutet – und warum es weit über den ökologischen Aspekt hinausgeht. Wir richten unseren Blick auf die drei Dimensionen der Nachhaltigkeit: ökologisch, ökonomisch und sozial. Dabei wird schnell klar, dass der Fokus oft nur auf der Umwelt liegt, während Themen wie Barrierefreiheit, Diversität und ethisches Design genauso wichtig sind.

              Ein zentraler Punkt unserer Diskussion ist die Rolle der Nutzerforschung. Wir müssen verstehen, wie unterschiedliche Interessen und Bedürfnisse die Gestaltung von Interfaces beeinflussen. Eine divers zusammengesetzte Nutzergruppe sorgt nicht nur für bessere Produkte, sondern macht auch unsere Verantwortung als Designer:innen deutlich. Sandy schlägt darüberhinaus aber auch vor, Personas nicht nur für Menschen, sondern auch für nicht-menschliche Elemente wie die Natur zu erstellen (sogenannte „Non-Human-Personas“), um die Auswirkungen unserer Designs auf die Umwelt besser zu berücksichtigen.

              Natürlich schauen wir uns auch technische Entscheidungen an, die einen CO₂-Fußabdruck hinterlassen. Wie viel Daten eine Website überträgt, welche Hosting-Anbieter wir wählen und wie sich Design-Entscheidungen auf den Stromverbrauch auswirken – all das spielt eine Rolle. Sandy zeigt uns, dass minimalistisches Design nicht nur ästhetische Vorteile hat, sondern auch einen positiven Einfluss auf die Umwelt haben kann. Wir sprechen über Tools wie Website Carbon oder EcoGrader, die uns dabei helfen, die Performance und Nachhaltigkeit von Webseiten zu analysieren.

              Zum Schluss reflektieren wir noch über unsere Verantwortung als Designer:innen und Unternehmen. Wir diskutieren, wie wir ethische Überlegungen in den Designprozess integrieren können, welche konkreten Schritte sich umsetzen lassen und warum es wichtig ist, sich kontinuierlich weiterzubilden. Nur wenn wir verschiedene Perspektiven einbeziehen und bewusste Entscheidungen treffen, können wir die Herausforderungen der Nachhaltigkeit meistern und echten Wandel vorantreiben. 🌱

              Links
              W3C Web Sustainability Guidelines
              Richtlinien und Best Practices für nachhaltiges Webdesign
              Green the Web
              Sandys Webseite mit Ressourcen über nachhaltiges Design, Tools und Best-Practice-Beispielen.
              Der Green the Web Podcast
              Sandys Podcast über nachhaltiges UX/UI Design.
              Green.io Konferenz
              Eine Veranstaltung zum Thema nachhaltiges Design und Entwicklung.
              Website Carbon
              Analysiert den CO2-Fußabdruck von Webseiten und gibt Empfehlungen zur Reduktion.
              EcoGrader
              Ein weiteres Tool zur Bewertung der ökologischen Fußabdrücke von Webseiten.
              Cost of a pixel color (Android Dev Summit ’18)
              Dieser Vortrag zeigt, wie der Dark Mode den Energieverbrauch von OLED-Displays reduziert, und auch, dass blaue Pixel mehr Strom verbrauchen als andere Farben.
              Introducing the energy saving concept of Lower Carbon Graphics
              Developing and implementing a new idea which we believe has already saved energy in homes across the UK.
              Switching from light to dark mode on apps and websites uses more energy
              BBC R&D find energy saving recommendation doesn’t take into account user behaviour

              Diskutiert die Folge mit uns in unserem Community-Slack: https://draft.community/

              1 hr 29 min
            • Revision 649: Engineering KPIs

              Schepp und Hans erörtern in dieser Revision, anlässlich eines Gastbeitrags zum Adventskalender des Engineering Kiosk Podcasts, die vielfältigen Aspekte von Engineering KPIs, deren Bedeutung für Benutzerinteraktion und Nutzererfahrung sowie die Notwendigkeit regelmäßiger Anpassungen im Einklang mit Unternehmenszielen.

              Schaunotizen
              [00:01:13] Engineering KPIs
              Los geht’s mit einem Rückblick auf die Weihnachtsepisode beim Engineering Kiosk, in der sie erste Gedanken zu KPIs geteilt hatten. Schnell wird klar: KPIs sind genauso vielfältig wie die Perspektiven der beiden.

              Hans bringt ein Beispiel aus der Praxis und erklärt, wie man die Performance eines Produkts messen kann – etwa in einem Online-Shop: Wie viele Besucher:innen kaufen wirklich etwas? Oder bei einer Video-Streaming-Plattform: Wie viele schauen regelmäßig und wie lange bleiben sie dran? Solche KPIs helfen nicht nur Entwicklerteams, sondern auch Produktverantwortlichen, die richtigen Entscheidungen zu treffen. Schepp wiederum macht deutlich, dass KPIs mehr als reine Technik sein sollten. Sie sollen auch die Benutzererfahrung verbessern. Ein Highlight in der Diskussion: die Core Web Vitals wie Largest Contentful Paint oder Cumulative Layout Shift – unverzichtbare Metriken für die Optimierung der User Experience (höre dazu auch Revision 533: Frontend Performance Metriken – Die Core Web Vitals). Am Ende sind sich beide einig: KPIs sollten immer aus der Sicht der Nutzer:innen betrachtet werden.

              Ein weiterer wichtiger Punkt ist das regelmäßige Überprüfen und Anpassen bestehender KPIs. Hans plädiert für regelmäßige Meetings, um Metriken und Ziele auf Kurs zu halten. Auch das Thema Alerting thematisieren wir: Was tun, wenn KPIs plötzlich aus der Reihe tanzen? Schnelles Handeln ist hier entscheidend. Aber Achtung: Zu viele Metriken gleichzeitig sind kontraproduktiv. Ein Fokus auf die wirklich relevanten KPIs den größten Nutzen bringt – für Unternehmen und Nutzer:innen.

              Diskutiert die Folge mit uns in unserem Community-Slack: https://draft.community/

              1 hr 8 min
            • Revision 648: Personal Web Sites

              Mit Matthias Ott (Web, Mastodon, Newsletter) quatschen Schepp und Peter über das Indie Web im Allgemeinen und persönliche Websites im Besonderen.

              Schaunotizen
              [00:01:01] Personal Web Sites
              Matthias ist der Schöpfer des Newsletters Own Your Web, in dem (unter anderem) die persönliche, selbstentwickelte und keinen Regeln gehorchende Webseite eine prominente Rolle spielt. Warum man eine Personal Web Site statt Social Media haben wollen könnte und wie diese gebaut sein könnte, ist Kernthema der Sendung. Faustregel: alles kann, nichts muss! Wir schauen uns ein paar Beispiele an (von Lynn Fisher bis CSS-Tricks), sprechen über technische wie inhaltliche Herausforderungen (z.B. Leser-Kommentare) Publikations-Paradigmen wie POSSE und den Umgang mit großen Plattformen. Wir enden mit einer Diskussion rund um RSS als Abo-Kanal, Syndikations-Mechanismus (z.B. via RSS Parrot) und Styling-Ziel für eine sehr hippe und coole Technologie namens XSLT.

              Diskutiert die Folge mit uns in unserem Community-Slack: https://draft.community/

              1 hr 24 min
            • Revision 647: WCAG-Spezifikationen lesen und verstehen

              Zur Fortsetzung der Barrierefreiheits-Mini-Podcast-Serie hatten Hans und Peter dieses Mal Nina Jameson zu Gast! Nina ist digitale Barrierefreiheitsexpertin und Co-Gründerin der Gehirngerecht Digital GmbH. Folgt ihr und ihrem Mitgründer auf LinkedIn oder hört euch einfach an, mit welcher Leichtigkeit sie unbedarfte Podcaster durch den WCAG-Dschungel führt!

              Unser Sponsor

              Am 13. Juni 2025 lädt mittwald zum Head in the Cloud Summit ein – ein Tag voller Inspiration und Austausch auf dem mittwald Campus. Hier treffen sich Webworker, Developer und Digitalagenturen, um voneinander zu lernen.

              Freu dich auf spannende Talks und Sessions zu Cloud & DevOps, Technology und Culture & Creativity. Von den Herausforderungen der digitalen Arbeitswelt bis hin zu den Trends von morgen – hier bekommst du Einblicke von den klügsten Köpfen der Branche.

              Die Tickets sind begrenzt, also schnell buchen auf mittwald.de/hitc.

              Schaunotizen
              [00:02:17] WCAG-Spezifikationen lesen und verstehen
              Wir kreisen in dieser Revision um die Web Content Accessibility Guidelines sowie verwandte Dokumente und Regulierungen. Nina erklärt die Struktur der Spezifikationen und wie sie für Otto Normalwebentwickler:in zu lesen und zu verstehen sind. Wir quatschen unter anderem über die Szenarien für die Anwendung der WCAG-Specs, wie die Erfolgskriterien funktionieren und sogar über die Spezifikation von Spezifikations-Conformance-Claims. Jenseits der W3C-Bleiwüsten-Wegweiser kommen wir nicht umhin, auch ein wenig über das leidige Thema der Umsetzung im Alltag zu sprechen. Was bringen European accessibility act und Barrierefreiheitsstärkungsgesetz, welche Webdev-Patterns stehen der Barrierefreiheit grundsätzlich entgegen und wie lässt sich Accessibility in die tägliche Webentwicklungs-Arbeit integrieren? Nina empfiehlt die Handreichungen der Überwachungsstelle des Bundes für Barrierefreiheit von Informationstechnik (z.B. für typische Bedienelemente, Rest stehe Publikationen auf bfit-bund.de) sowie die in der WCAG stets mitverlinkten Understanding– und How to Meet-Dokumente für die jeweiligen Erfolgskriterien. Am Ende streifen wir noch kurz das in Revision 646 bereits ausführlich beackerte Thema „automatisches Testing“. Nina empfiehlt axe DevTools, ARC Toolkit und die WAVE Web Accessibility Evaluation Tools, hat für Lighthouse hingegen nicht ganz so viel Enthusiasmus übrig.

              Diskutiert die Folge mit uns in unserem Community-Slack: https://draft.community/

              1 hr 5 min

            About Working Draft

            From the publisher's feed

            Working Draft ist der deutschsprachige Podcast für Frontend-Entwicklung, Webdesign und UI Engineering.

            More shows like Working Draft

            Bits und so by Undsoversum GmbH

            Bits und so

            26 Listeners

            Freak Show by Metaebene Personal Media - Tim Pritlove

            Freak Show

            9 Listeners

            AstroGeo - Geschichten aus Astronomie und Geologie by Karl Urban und Franziska Konitzer

            AstroGeo - Geschichten aus Astronomie und Geologie

            3 Listeners

            Geschichten aus der Geschichte by Richard Hemmer und Daniel Meßner

            Geschichten aus der Geschichte

            177 Listeners

            c’t uplink - der IT-Podcast aus Nerdistan by c’t Magazin

            c’t uplink - der IT-Podcast aus Nerdistan

            9 Listeners

            Stay Forever - Retrogames & Technik by Stay Forever Team

            Stay Forever - Retrogames & Technik

            34 Listeners

            Logbuch:Netzpolitik by Metaebene Personal Media - Tim Pritlove

            Logbuch:Netzpolitik

            5 Listeners

            programmier.bar – der Podcast für App- und Webentwicklung by programmier.bar

            programmier.bar – der Podcast für App- und Webentwicklung

            0 Listeners

            Podcasts von Tichys Einblick by Tichys Einblick

            Podcasts von Tichys Einblick

            21 Listeners

            eat.READ.sleep. Der Podcast, der das Lesen feiert. by NDR

            eat.READ.sleep. Der Podcast, der das Lesen feiert.

            24 Listeners

            Finanzen ganz einfach - von Saidi, Sophie & Emil by Finanztip

            Finanzen ganz einfach - von Saidi, Sophie & Emil

            8 Listeners

            Lanz + Precht by ZDF, Markus Lanz & Richard David Precht

            Lanz + Precht

            325 Listeners

            {ungeskriptet} - Der Meinungsfreiheit verpflichtet. by Ben Berndt

            {ungeskriptet} - Der Meinungsfreiheit verpflichtet.

            45 Listeners

            KI-Update – ein heise-Podcast by Isabel Grünewald, heise online

            KI-Update – ein heise-Podcast

            9 Listeners

            Engineering Kiosk by Wolfgang Gassler, Andy Grunwald

            Engineering Kiosk

            0 Listeners