

Working Draft
Vanessa Otto, Peter Kröner, Hans Christian Reinl, Stefan Baumgartner, Christian »Schepp« Schaefer
Working Draft ist der deutschsprachige Podcast für Frontend-Entwicklung, Webdesign und UI Engineering.
Bei uns geht’s um HTML, CSS, JavaScript, Frameworks wie React, Vue und Angular, Responsive Webdesign, User-Interfaces, moderne UI-Patterns, Barrierefreiheit, Tooling, Design-Systeme, Webstandards und mehr.
Unser Team besteht aus erfahrenen Frontend-Entwickler:innen aus Deutschland und Österreich – mit Gästen aus der Praxis, die regelmäßig Einblicke in aktuelle Tech-Themen geben. Ob neue CSS-Features, die Zukunft von JavaScript, KI im Frontend-Workflow oder einfach gute UI-Erfahrungen: Wir reden drüber – jede Woche neu.
Bei uns geht’s um HTML, CSS, JavaScript, Frameworks wie React, Vue und Angular, Responsive Webdesign, User-Interfaces, moderne UI-Patterns, Barrierefreiheit, Tooling, Design-Systeme, Webstandards und mehr.
Unser Team besteht aus erfahrenen Frontend-Entwickler:innen aus Deutschland und Österreich – mit Gästen aus der Praxis, die regelmäßig Einblicke in aktuelle Tech-Themen geben. Ob neue CSS-Features, die Zukunft von JavaScript, KI im Frontend-Workflow oder einfach gute UI-Erfahrungen: Wir reden drüber – jede Woche neu.
Episodes
Mentioned books

May 1, 2015 • 47min
Revision 216: Working Draft considered harmful
Stefan, Schepp und Peter regen sich über das Thema der Woche auf und beenden die Sendung mit ein paar interessanten Links.
Schaunotizen
[00:00:09] jQuery considered harmful
Lea Verou liefert einen der weniger guten Anti-jQuery-Artikel der letzten Monate ab. Weil sie sich vor Wrapper-Elementen und Technologie-Lockdown fürchtet, schlägt sie vor auf jQuery zu verzichten. Dass jQuery zahllose Browserbugs (nicht nur im IE) repariert und durch seine API und seine Plugins Webentwicklern das Leben sehr viel einfacher machen kann, wird übersehen – auch wenn es um jQuery-Alternativen wie Zepto und Shoestring geht. Nur in Ausnahmefällen können wir uns vorstellen, auf jQuery zu verzichten; Schepp berichtet von einem solchen Ausnahmefall. Am Ende richtet sich unser Unverständnis auf Leas Technik zur Erweiterung der DOM-Prototypen „ohne“ Kollisionen. Dass das grundsätzlich eine dumme Idee ist ist seit Ewigkeiten bekannt und würde selbst durch die Symbols in ECMAScript 6 nur ein wenig besser.
[00:43:48] Keine Schaunotizen
Git Large File Storage
Git-Erweiterung für große Binärdateien (PSD etc).
Understanding the Real Advantages of Using ESLint
Wie sich ESLint zu JSHint verhält und warum es rockt.
Gulp-Rezepte
Gulp-Guru Stefan sammelt Lösungen für häufige Probleme mit dem trendigsten Buildsystem aller Zeiten.
Diskutiert die Folge mit uns in unserem Community-Slack: https://draft.community/

Apr 25, 2015 • 44min
Revision 215: Einheitsbrei
Schepp, Hans, Stefan und Rodney quatschen über rem, em, px und vh.
Schaunotizen
[00:00:19] R.I.P. REM, Viva CSS Reference Pixel!
In unserer Aufzeichnungswoche ist dieser Artikel halbwegs viral gegangen und auch bei uns am Schirm gelandet. In argwilliger Meinungsmache (hatten wir das nicht schon letztens?) werden Einheiten wie rem und em angefochten und der gute, alte Pixel wieder hochzelebriert. Wir feuern kampflustig mit allem dagegen, was wir haben setzen uns mit der Thematik kritisch auseinander und reflektieren, kommen auch zu dem Schluß dass nicht alles Schwarz-und-Weiß ist. em haben durchaus ihre Verwendung bei relativen Abständen, mit rem lassen sich responsive Fragestellungen äußerst elegant lösen. Einziger Nachteil: Die IEs kleinergleich 10 haben Probleme mit rems (und Rehms!) und Pseudo-Elementen. Darüber hinaus gibt uns Rodney Einblick in die Zusammenarbeit mit seinen Designern, die die fiktive Einheit „bu“ erfunden haben, und streifen folgende Artikel und Videos:
You should understand CSS Units
A pixel is not a pixel (Video)
The mobile viewports (Video)
[00:23:09] Precise Control over Responsive Typography
Eine interessante Technik, die flüssiges Skalieren von Schriften auf unterschiedlichen Screengrößen erlaubt, gibt uns genug Zündstoff um die sehr beliebten, allerdings umfangreich kaputten Viewport Units wieder aufzuwärmen. Rodney erzählt als Inhaber des Viewport Unit Buggyfills von den Problemen, die seine Anwender haben, und Schepp kennt ein paar gefinkelte Techniken, wie man gut ohne JavaScript beim Fixen auskommt. Darüberhinaus philosophieren wir über Umsetzungsstabilität von Webstandards, den einen oder anderen Hack, und ab welcher Projektgröße die vertretbar sind. Denn: alles, was man halbherzig ausbügelt, kommt wohl irgendwann wieder auf einen zurück.
[00:39:31] Keine Schaunotizen
IE Diagnostics Adapter
Mit den Chrome Dev Tools mal eben den IE debuggen? Microsoft (richtig gelesen!) macht’s möglich.
Oppoturnistic Encryption
Wem halbgare Werbekampagnen mit gemeinsamen Wunsch nach HTTPS schonmal übel auf den Kopf gefallen sind, darf sich über folgende Lösung von Firefox freuen.
Annnotated version of the original jQuery release
John Resig kann nicht nur programmieren, sondern auch gut Geschichten erzählen. Hier kombiniert er mit Nähkästchenplauderei zur ersten jQuery Veröffentlichung.
Building better interfaces with SVG
Die Königin der Vektorgrafiken Sara Soueidan brilliert wieder einmal mit einem Slideset, dass sich gewaschen hat. Auch ohne Tonspur wertvoll!
NPM Shrinkpack
NPM dependencies in ihrer Version einfrieren und gleichzeitig als Binärdatei für das eigene Team verfügbar machen, so die NPM Repository Abhängigkeit loswerden? Dieses Tool macht’s möglich.
Diskutiert die Folge mit uns in unserem Community-Slack: https://draft.community/

Apr 8, 2015 • 58min
Revision 214: Fetch, Zentralisierung, Links
Anselm, Hans, Peter und Stefan versammelten sich in vorösterlicher Stimmung um in Eintracht mal wieder festzustellen, wie kaputt doch alles ist.
Schaunotizen
[00:00:12] That’s so fetch!
Jake Archibald verteidigt die unter Beschuss geratene Fetch-API. Fetch soll als Ersatz für das alterwürdige XHR dienen, wird aber unter anderem kritisert, weil man laufende Requests (noch) nicht abbrechen kann. Man diskutiert darüber und denkt über abbrechbare Promises nach, was Peter aufs heftigste kritisiert. Streams wärend vielleicht sinnvoller. Während das unfertige Fetch bereits in neue Noch-Nicht-Standards wie Service Worker integriert wird, Object.observe() ziemlich kaputt ist und asynchrone Funktionen (mit dem gleichen Nichtabbrechbarkeits-Problem wie Fetch) dank BabelJS bereits verwendet werden diskutieren wir, ob heutzutage nicht zu viel halbgares Zeug im Browser landet.
[00:32:20] Zentralisierte dezentrale Versionskontrolle
In der Woche vor der Aufnahme dieser Revision war Github tagelang aufgrund von DDOS-Angriffen kaum zu erreichen. In Folge dessen war Bower kaputt, manche Builds funktionieren nicht – wir berichten von unseren Erfahrungen und machen uns Gedanken über mögliche Abhilfen. Man kann sich zwar ein eigenes Zentralrepository stricken (z.B. mit GitHub Enterprise oder GitLab), muss da aber das Für und Wider sorgfältig abwägen.
[00:54:35] Keine Schaunotizen
Gulp Cheat Sheet
Nomen est omen.
GitHub TODO > Issue Hook
Git-Hook, der TODO-Kommentare in Github-Issues verwandelt.
So Coded 2015
Ist eine Konferenz, müsst ihr hin.
Front Trends Ticket von Hans
Hans hat Tickets zur Front-Trends 2015 übrig und will sie loswerden.
Diskutiert die Folge mit uns in unserem Community-Slack: https://draft.community/

Mar 30, 2015 • 51min
Revision 213: React is a Good Idea!
Rodney, Anselm, Schepp und Stefan trotzen sämtlichen Bahnproblemen und stellen Schlechtredner gnadenlos bloss.
[00:00:18] News
Opera Mini server upgrade
Operas Presto existiert tatsächlich noch. Und hat sogar ein Update erfahren: Auf den Render-Servern des Opera Mini. Flexbox, rem Einheiten und vieles mehr sind jetzt auch nun hier verfügbar.
Schaunotizen
[00:03:07] React is a terrible idea
Kaum ein weiteres Pamphlet ging so viral wie Panda Strikes Äpfel und Birnen Vergleich zu React. Wir schütteln verbal Köpfe und zeigen deutlich, warum dieser Beitrag auf so vielen Twitter-Zeitleisten kam, und warum die eigentlichen Inhalte mehr schlecht als recht sind. Man hört schon in den Schaunotizen den allgemeinen Konsens heraus, wie wir zu dem Thema stehen, und hinterfragen kritisch und reflektiert diverse Punkte aus dem Schrieb.
[00:46:40] Keine Schaunotizen
Lint like it’s 2015
ES6, Babel, ESLint? So geht’s.
Introduction to fetch()
fetch() (a.k.a das native $.ajax) gibt’s nun in Chrome, der Artikel erklärt die Funktionsweise.
Push Notifications on the open web
Notification API und Web Push Notficiations jetzt in Chrome 42. Hier wird erklärt, wie man solche entwickelt.
Detecting injected content from third-parties on your site
Der Titel sagt alles. Gute Sicherheitslehre von Paul Kinlan.
UI Animation Reviews: Web Navigation
Wieder mal ein UX Thema. Von Val Head im Screencast.
Diskutiert die Folge mit uns in unserem Community-Slack: https://draft.community/

Mar 21, 2015 • 52min
Revision 212: HTML5 (Retro | Per)spektive
HTML5, lange nach dem Hype. Was war gut, was weniger, was nutzen wir tatsächlich und wie hat sich die Weiterentwicklung geändert. Hans, Peter und Stefan resümieren.
Schaunotizen
[00:00:10] HTML5 number inputs – Comma and period as decimal marks
Den Artikel über schwer lokalisierbare number-<input>s nehmen wir zum Anlass um über Erfolg und Misserfolg von HTML5 Technologien zu reden. Wo ging gewaltig was schief, welche Dinge sind passabel geraten. Wie schaut der Entwicklungsprozess heute aus und gefällt er uns? Kleiner Spoiler vorweg: Wir sind nicht sonderlich begeistert und haben dutzende Verbesserungsvorschläge, sehen aber gewissen Dingen positiv entgegen. Frage an die Hörerschaft: Welche HTML5 Technologien habt ihr regelmäßig und gut im Einsatz, wo seht ihr Verbesserungspotential? Zum Thema gehören: das inputmode-Attribut, ein Video zu Zahlen (ohne Graf) und Douglas Crockford als Chuck Norris
[00:34:12] Intent to deprecate: Insecure usage of powerful features
Blink-Entwickler überlegen, Features wie Webcam, Geolocation, etc. nur noch über HTTPS zur Verfügung zu stellen. Eine Entwicklung, die wir begrüßen und entsprechend kritisch analysieren.
[00:46:00] Keine Schaunotizen
List of pseudo elements
Vendor-prefixte Pseudo Elemente wollen wir nicht! Aber zu wissen, welche es für welche Hersteller es gibt, ist trotzdem eine gute Sache.
ngConf Videos
In der ersten Märzwoche fand die ngConf statt. Tolle Sachen sind dort passiert, und ein paar sehr lehrreiche Talks gabs auch. Alles dokumentiert auf YouTube.
EmberConf Videos
Beinah selbe Zeit, anderes Framework. Nicht minder schlechter Inhalt. Hochwertige Keynote und sehr interessante Einblicke in die aktuelle Entwicklung rund um Ember.js.
Side Effects in CSS
Phil Walton bricht eine weitere Lanze für BEM.
Slideout
Off Canvas Menü zum Dazuinstallieren? Und eines, das sogar funktioniert? Hans ist davon überzeugt.
Diskutiert die Folge mit uns in unserem Community-Slack: https://draft.community/

Mar 8, 2015 • 1h 18min
Revision 211: Project Spartan with Jacob Rossi
Herr Rossi hat das Glück gefunden. In einem Spartaner. Jacob, seines Zeichens Project Manager bei Microsoft für den IE Nachfolger, erzählt ausführlich alles, was wir vom Projekt wissen wollten und uns nicht fragen trauten. Ab nun in Englisch:
Shownotes
[00:02:08] Project Spartan
Jacob gives deep insights behind the strategy of Spartan, how it’s related to the Internet Explorer of old, and what we as web developers can expect from it. Included are: The difference between EdgeHTML and Trident, Enterprise Mode (not related to Leonard Nimoy) and overall performance discussion.
[00:44:49] WebRTC and ORTC
Microsoft’s browser was still lacking a WebRTC implementation. This will change with Spartan, and more: We also will get the next level called „Object RTC“. Jacob explains what’s behind.
[00:47:45] Pointer Events vs Touch Events
Jacob not only is deeply involved in Project Spartan, but has also co-written the sublime and solid Pointer Events API. He explains how it came to fruition, and how Microsoft will behave with not having Apple on board. While the Working Draft crew is strongly ranting about Apple’s broken Touch API, Jacob calls Safari developers „nice guys“ and tells how it came to reverse engineering the standard by the W3C and the implementation in Windows Phone.
[01:00:09] Vendor Prefixes and what could be their successor?
This also leads us to a discussion on vendor prefixes, which we all think are bad and should be avoided. Nevertheless, browser vendors need to test things. Jacob gives ideas. Nothing written in stone, tough
Diskutiert die Folge mit uns in unserem Community-Slack: https://draft.community/

Mar 5, 2015 • 56min
Revision 210: Webfonts und JavaScript-Module
Peter, Rodney, Hans und Anselm nahmen sich aktuelle Themen zum Anlass, mal ganz grundsätzlich die Lage rund um Webfonts (bescheiden) und JS-Module (kompliziert) auszudiskutieren.
Schaunotizen
[00:00:10] Font Loading Revisited with Font Events
Die Filament Group widmet sich in epischer Breite dem überaus kniffligen Problem des Webfont-Ladens. Da @font-face CSS bzw. das Rendering blockiert (mit unterschiedlichen Effekten in unterschiedlichen Browsern), gibt es zahllose Font-mit-JS-Lade-Techniken, die allesamt mehr oder minder Hacks sind. Es soll mal eine Font-Face-API geben (Polyfill, Wrapper-Library) doch eigentlich sind wir uns einig: hier liegt ein Browser- bzw. Spezifikations-Bug vor und die ganze JS-Hackerei ist äußerst unbefriedigend.
[00:15:45] JavaScript-Module
Dichtmachung des jQuery-Plugin-Repositories nehmen wir zum Anlass, ausführlich über JavaScript-Module (AMD vs. CommonJS vs. ES6) zu quatschen. Peter und Hans glauben dass es lange dauern wird bis ES6-Module in Browsern ankommen werden, sie aber dank Transpilern schon schneller adaptiert werden könnten, wenn die Entwicklerschaft will. Warum sie das ggf. nicht unbedingt möchte, erkkärt Rodney aus seiner Enterpriseperspektive. Nur wenn er demnächst ein komplett neues Script basteln würde, könnte sich Rod die Nutzung von ES6-Module vorstellen, wenn er denn davon ausgehen kann, dass die Community solche Module in der Breite denn schon akzeptiert (was fraglich ist). Und natürlich ist keine Moduldiskussion komplett ohne einen Schwenk in dem Themenbereich Isomorphic JavaScript.
[00:52:22] Keine Schaunotizen
Transitioning to SCSS at Scale
Etsy hat seine bizarr gigantische CSS-Codebase auf SCSS transformiert und dabei einige bemerkenswerte Techniken zum Einsatz gebracht.
Diskutiert die Folge mit uns in unserem Community-Slack: https://draft.community/

Feb 24, 2015 • 1h 1min
Revision 209: Geschwindigkeitsrausch
In trauter Zweisamkeit diskutieren Stefan und Anselm über den Drang zu sechzig Frames pro Sekunde.
[00:00:21] News
Browsersync 2.0
Die neue Version des Entwicklertools kommt mit graphischer Oberfläche und verstärktem weinre Support.
Schaunotizen
[00:03:10] FLIP your animations
Geschwindigkeitsrausch: Paul Lewis stellt eine Micro Optimisation für CSS Transitions und Animations vor, und wir fragen uns nur: Warum gibt’s das nicht nativ in den Browsern? In der anschließenden Diskussion sprechen wir über Sinn und Unsinn dieser feingranularen Optimierungen und stehen für „nichts implementieren, was eigentlich schon so funktionieren sollte“ ein.
[00:17:48] 60 fps on the mobile web
Da der DOM für Flipbook viel zu langsam war hat man kurzerhand mit Canvas und React das ganze Ding selbst implementiert (The Fast). Damit aber auch gleich einen massiven Shitstorm der Community ausgelöst (The Furious). Wir hinterfragen die Mutter dieses Gedanken, loben die Vielseitigkeit von React und analysieren ab welchem Zeitpunkt man mehr Probleme damit schafft als löst. Gegen Ende stehen wieder einmal für „nichts implementieren, was eigentlich schon so funktionieren sollte“ ein und verweisen auf Chris Heilmanns exzellenter Sicht der Dinge zu diesem Thema.
[00:41:51] CSS Variables are a bad idea
Aaron Gustafson schreibt den „considered harmful“ Artikel der keiner sein möchte und spricht sich gegen CSS Variablen aus. Den Grundgedanken hinter seinen Überlegungen verstanden versucht Stefan allerdings zu missionieren: Sieht man die Spezifikation als Variablen im Sinne eines Präprozessors sollte man es wirklich besser bleiben lassen. Hat man allerdings den Scope der „CSS Custom Properties“ (so wie sie eigentlich heißen) erkannt, hat man damit ein mächtiges Werkzeug in der Hand, für das es viele ungelöste Use Cases gibt. Vorsicht sei geboten bei Poylfills wie Pleeease. Wenn man’s wirklich meint, lassen sich CSS Custom Properties nicht polyfillen, ohne massiv Browserfeatures nach zu implementieren. Und wir wissen ja, dass wir „nichts implementieren, was eigentlich so funtionieren sollte“. Ein Hinweis auf Rodneys Artikel zu dem Thema aus dem Jahr 2013 sei noch einmal sehr ans Herz gelegt.
[00:56:39] Keine Schaunotizen
Designing for the Elderly
Worauf man achten muss, wenn man für ältere Menschen designed. Guter Artikel auf Smashing Magazine.
Plumin.js
Schreib dir deinen eigenen Webfont mit einer pfiffigen JavaScript API. Wir sagen nur Wow!
Revisiting LESS
Als Sass User schreibt Stefan über seine Erfahrungen mit der zwangsbeglückten Nutzung von LESS. Die herausragenden Features scheinen banal, sind aber am Ende die, die am glücklichsten machen.
Diskutiert die Folge mit uns in unserem Community-Slack: https://draft.community/

Feb 22, 2015 • 46min
Revision 208: JavaScript Dialekte
Einen Dialekt im Team (bestehend aus Hans, Peter, Anselm und Stefan), zig Dialekte in unserer Themenliste.
Schaunotizen
[00:00:28] JavaScript Dialekte
Wir nehmen den jüngsten Artikel des Doktors zu Googles SoundScript zum Anlass mal generell über JavaScript Dialekte und deren Sinnhaftigkeit bzw. -losigkeit zu reden. Wir erkennen, dass SoundScript etwas ganz anderes vorhat als Googles andere Dialekte wie AtScript und mit der zwingenden VM-Unterstützung wohl weiterhin Nische bleiben wird.
Bei der Diskussion zu Dialekten und statischer Typisierung ebenso im Programm: TypeScript, CoffeeScript, Facebook’s Typechecker Flow, sowie der ursprüngliche und eingestampfte Versuch von EcmaScript in der Zombie-Version 4.
Sämtliche Themen in Union finden sich dann in einem anschließenden Review zu EcmaScript 6 und den Möglichkeiten mit SweetJS und 6to5 (jetzt BabelJS). Mit der unausweichlichen Frage: Werden wir das überhaupt nutzen?
Gegen Ende brechen wir allerdings eine Lanze für ReactJS (und den damit verbundenen JSX Dialekt): Sieht auf den ersten Blick etwas abstoßend aus, macht aber Spaß.
[00:41:18] Keine Schaunotizen
htaccess Snippets
Mal wieder was für Apache konfigurieren? Hier gibt’s Rezepte. Gibt’s ebenso vom HTML5 Boilerplate für verschiedene Servertypen.
Client-side templating’s major bug
Tim Kadlec beschreibt seine sehr interessante Sicht bez. Client-side Templating.
EcmaScript 5 compatibilty table
Für mittlerweile ausrangierte Browser.
Reframing Accessibilty for the Web
Accessibility hat nicht zwingend mit Behinderungen zu tun. Der Artikel von A List Apart klärt gut auf.
Codrops CSS Reference
Sehr umfangreiche und mit vielen, vielen Beispielen ausgestattete CSS Referenz von Sara Soueidan.
Diskutiert die Folge mit uns in unserem Community-Slack: https://draft.community/

Feb 9, 2015 • 1h 3min
Revision 207: 6to5, Yeoman, Links
Mit Ehrengast Michael Kühnel (@mkuehnel, Selbstbeschreibung „Webentwickler seit seit Netscape 4.7“) ackerten sich Schepp, Hans, Peter und Stefan durch die Themen der Woche.
[00:02:22] News
HTML5 Boilerplate 5.0
Die neueste Version des allseits beliebten Webseiten-Starterkits.
Schaunotizen
[00:02:54] 6to5, 2to3
Der neueste ES6-Transpiler im Hype-Durchlauferhitzer ist aktuell 6to5, laut der ECMAScript 6 compatibility table mit der größten Feature-Abdeckung überhaupt. Nachdem Hans eine mäßig steile ES6-These in den Raum geworfen hat, beginnt ein unausgeschlafener Peter über alles mögliche aus dem ES6-Dunstkreis (v.a. Klassen und die diversen Tools und Transpiler) abzuranten. Zentrale Aussage: so viel wird sich für Otto Normalentwickler gar nicht ändern, dann die meisten Features einer Programmiersprache benutzt man in 90% der Fälle eh nicht.
[00:37:30] Yeoman
Michael ist Yeoman-Fan und lässt seiner Begeisterung freien Lauf. Vor allem wirbt er dafür, eigene Generatoren zu bauen, was mit Hilfe der Docs und dem Yeoman-Generator für Yeoman-Generatoren (yo dawg) auch ganz einfach ist. Mit Inquirer.js wird Prompting einfach und auch testen ist ganz einfach. Selbst Generators für WordPress und Typo3 sollen in freier Wildbahn gesichtet worden sein.
[00:57:19] Keine Schaunotizen
FormatJS
Diverse JavaScript-Libs um Daten nutzerfreundlich zu formatieren.
Making Pinterest — Demystifying SEO with experiments
Die wissenschaftliche Methodik (est. 1700) erreicht Pinterest bzw. Suchmaschinenoptimierer. Das ist schon eine Meldung wert!
Devdocs.io
Die Webdev-Dokumentations-Metasuchmaschine ist jetzt offlinefähig!
[01:01:28] Jobbörse
Software-Entwickler in Kassel gesucht
Michaels Firma (Softwarehaus mit Sitz in Kassel und Bonn) sucht fähige Entwickler – vom Frontendler bis hin zum Java-Guru.
Diskutiert die Folge mit uns in unserem Community-Slack: https://draft.community/


