Working Draft

Wöchentlicher News-Podcast für Webdesigner und -entwickler

Spenden für Soundqualität!

Unsere Aufnahmen werden optimiert mit Auphonic.
Dort könnt Ihr uns Processing-Time kaufen.

Alternativ findet Ihr uns jetzt auch auf Patreon:

Become a Patron!

Ihr sucht neue Kollegen? 🤔 Wir suchen Sponsoren!

Als Podcast versuchen wir die Qualität der Aufnahmen hoch zu halten. Dafür verwenden wir Equipment und Tools, die nicht kostenlos sind. Und jede Folge kostet Zeit: Aufnehmen, Schneiden und Shownotes schreiben, Gäste und Termine koordinieren.

Mit rund 15.000 Downloads pro Folge im Schnitt haben wir auch Herausforderungen im Hosting zu bewältigen.

Um diese Kosten decken zu können, suchen wir Sponsoren. Wir glauben, dass unser Podcast eine gute Plattform ist, um darüber gleichgesinnte Programmierkollegen als Verstärkung für Euer Team zu finden. Wenn Ihr das auch so seht, dann sprecht doch mal mit Euren Chefs. Bei Interesse, kontaktiert uns per E-Mail: sponsoring@workingdraft.de.

Revision 383: TypeScript im Backend

23. April 2019 | Keine Kommentare

Tim Schumacher, seines Zeichens Backend-Entwickler in Jena und großer TypeScript-Fan, fand sich mit Hans und Peter zusammen, um genüsslich eine Runde über TypeScript allgemein und TS im Backend im Speziellen zu plauschen.

Schaunotizen

[00:02:18] TypeScript im Backend
Es hat sich viel getan, seitdem wir TypeScript zuerst in Working Draft erwähnten (damals ganz am Rande der Revision 90)! Neben den altbekannten Typ-Annotationen und Generics gibt es mittlerweile auch auf Decorators basierende Späße wie den Class Validator und vor allem Tools wie ts-node. Die mit ts-node einhergehenden Performacenachteile könnten in deno (Node mit nativem TypeScript-Support) nicht mehr ins Gewicht fallen und wenn alls Stricke reißen ist auch das gute alte nodemon noch da und unterstützt ebenfalls TypeScript. Weitere Tools im Alltagseinsatz sind noch immer TSLint (demnächst dank ESLint überflüsig) in Kombination mit Husky und der typescript-formatter. An Backend-Libraries kommen neben TypeORM und Sequelize der praktische class-transformer und routing-controllers für Express und Koa.

Flattr this!

Revision 382: REST vs. GraphQL

6. April 2019 | 2 Kommentare

Die Revision 382 beschäftigt sich mit modernen Austauschformaten zwischen Software System. Wir sprechen mit Dr. Ralf Engelschall zu den Themen REST und GraphQL und lassen uns über die Vor- und Nachteile aufklären.

Schaunotizen

[00:03:52] REST
REST ist als Programmierparadigma stark verbreitet. Viele Schnittstellen folgen dem Standard, der sich in den vergangenen Jahren stark verbreitet hat. REST bietet einige Vorteile, die Ralf mit uns durch geht. Wir sprechen aber auch darüber, dass Themen wie Stateless oder das Caching mit REST zum Problem werden können.
[00:23:18] GraphQL
Eine mögliche Lösung für diese Probleme ist das bereits in einigen Revisionen, zuletzt Revision 292 angesprochene GraphQL, eine graph-artige Anfragestruktur für Daten. Ralf gibt uns einen Einstieg in GraphQL, wie es technisch funktioniert und was das spannende an GraphQL ist. Anhand eines Beispiels aus seiner täglichen Arbeit lassen sich die Vor- und Nachteile gut erkennen.
[00:54:23] GraphQL-IO
Nacktes GraphQL ist manchmal zu wenig für Anwendungen aus Frontend und Backend. Um die beiden Teile zusammen zu bringen, hat Ralf eine All-in-One Lösung gebaut, mit der die Implementierung von GraphQL für Entwickler wesentlich vereinfacht wird.

Flattr this!

Revision 381: Layered APIs und der Stand der Dinge bei HTTP/2

24. März 2019 | Keine Kommentare

In kleiner und gemütlicher Runde besprachen Stefan und Schepp, was es mit dem Konzept der Layered APIs auf sich hat und wie es derzeit so um HTTP/2 steht.

Schaunotizen

[00:01:20] Layered APIs
Bei den Layered APIs handelt es sich um sowas wie eine im Browser mitgelieferte Standard-Bibliothek, welche neuen syntaktischen API-Zucker bereitstellt, ohne dazu auf neue API-Primitive zurückgreifen zu müssen. Die Idee dabei ist, den Entwicklern an den Standardgremien vorbei schneller bessere Werkzeuge zu liefern, die Sie zudem auch nur bei Bedarf hochfahren/laden können. Das hält die Browser schlanker. Da die neue APIs rein per JavaScript geschrieben sind und auf längst bestehenden APIs aufsetzen, können Browser, die diese Layered APIs nicht eingebaut mitbringen, diese Bibliotheken einfach aus dem Netz nachladen. Analog zu einem Polyfill. Dafür gibt es eine spezielle, neue und rückwärtskompatible Modul-Syntax. Der erste Kandidat für eine Layered API ist der KV Storage, den man jetzt per Origin Trial Verfahren auf seine Besucher loslassen kann.
[00:26:18] The Right Way to Bundle Your Assets for Faster Sites over HTTP/2
Unser zweites Thema befasste sich nach längerer Zeit mal wieder mit HTTP/2. Anlass war der oben verlinkte Artikel, in dem getestet wurde, inwiefern veränderte Bundling-Strategien zu besserer Performance führen, und wo Dinge sich ins Negative verkehren. Das ist insofern relevant, als dass mittlerweile gut 50% aller Webseiten mit dem Prototoll ausgeliefert werden. Wir fanden außerdem beiläufig heraus, dass rund 75% aller Webseiten auf HTTPS laufen.

[00:54:50] Keine Schaunotizen

swc
swc, der „speedy web compiler“, ist ein in Rust geschriebener, besonders schneller JavaScript-Transpiler, der laut eigener Aussage Feature-technisch mit Babel gleichauf liegt.
sucrase
sucrase ist ein Babel-Fork und verfolgt ähnliche Ziele. Diese werden in diesem Fall dadurch erreicht, dass verlangsamende, aber auch kaum benötigte Features aus Babel wegfallen. Darunter das Rückkompilieren zu älteren ES-Versionen. Dadurch wird sucrase also eher zu einem Metasprache-nach-Current-ES-Compiler.
Feature Policy Playground
Der Feature Policy Playground möchte eine Art „Can I Use“ für Feature Policy Features sein. Es geht zum einen um den aktuellen Browser-Support, als auch darum, auf die entsprechenden Explainer-Dokumente zu verlinken.

Flattr this!

Revision 380: Chrome-Devtools-Extension-Entwicklung

20. März 2019 | Keine Kommentare

Eine Rarität! Das komplette Podcast-Kernteam vereint in einer Revision. Keine ganz so große Rarität: der Löwenanteil der Sprechzeit entfällt auf Peter, der einen Einblick in die Entwicklung einer Chrome-Devtools-Extension gibt.

Schaunotizen

[00:02:40] Chrome-Devtools-Development
Für Warhol, ein Joint Venture von Peter und Hans, entsteht eine Browser-Extension, von deren Entwicklung Peter lang und breit berichtet. Zu den Herausforderungen zählt die Verteilung der einzelnen Extension-Bauteile über viele verschiedene Browsing Contexts, die Verwendung von TypeScript (@types/chrome hilft) und die nicht besonders strukturierte API-Dokumentation (für Extensions allgemein und für Devtools im Besonderen), in deren Angesicht Stack Overflow Gold wert ist.

[01:09:02] Keine Schaunotizen

Mask Compositing: The Crash Course
Die CSS-Magierin Ana Tudor führt in die Geheimnisse von Mask Composition ein.
Cache-Control for Civilians
Cache-Control Header so erklärt, dass man es auch als Nicht-Performance-Nerd versteht.
@pika/web
JavaScript-Pakete ohne Buildprozesse und sonstigen Overhead im Browser benutzen! Ganz wie früher!
Baldower
Aus der Rubrik „Shameless Plug“: die Musik von Tobi Lessnow

Flattr this!

Revision 379: Requirements Engineering, Agilität und Wasserfälle

17. März 2019 | Keine Kommentare

Für diese Revision holten sich Schepp, Peter und Rodney Unterstützung von Yara Meyer (Principal Consultant bei , auf Twitter @whythecode) in Studio, um die Untiefen der Projektplanung zu erforschen.

Schaunotizen

[00:01:28] Requirements Engineering, Agilität und Wasserfälle
Yara hat im Rahmen ihres Schaffens als Consultant schon so manches mehr oder weniger erfolgreiches Projekt begleitet und quatscht mit uns über Requirements Engineering, Agilität und alles, was in der Softwareentwicklung so schief läuft. Als ein großes Problem ist die Planung von Software durch Nicht-Software-Firmen zu nennen, die sich besser Requirements Engineering von einem extern Dienstleister eingekauft hätten. Das ist aber gar nicht mal so leicht zu verkaufen. Agilität (vor allem innerhalb von Legacy-Strukturen und großen Konzernen), Deadlines, Features und Milestones sind genau so Thema wie Berichte über ein paar Worst Cases vom Planeten Wasserfall.

Flattr this!

On Tour @ #ctwebdev 2/2 mit Robert Weber

11. März 2019 | Keine Kommentare

Dieses Interview ist einer von Teilen unserer Serie On Tour @ #ctwebdev.

Anfang Februar waren wir bei einer brandneuen Konferenz zu Gast, der <c’t webdev> in Köln. Nachdem der heise-Verlag ja schon erfolgreich andere Entwicklungsfelder wie zum Beispiel JavaScript mit Konferenzen beackert, schien es wohl Zeit zu sein, das Thema „Frontend“ in den Fokus zu nehmen. Wir würden sagen: Die Premiere ist gelungen!

Und netterweise durften wir vor Ort wieder ein paar der Sprecher interviewen.

Robert Weber: Inclusive Design

Einer davon war Robert Weber, freiberuflicher Frontend-Entwickler aus der Gegend um Berlin, der auf der Konferenz einen Vortrag zum Thema „Inclusive JavaScript“ gab. Darüber wollten wir gerne mehr wissen. denn von „Inclusive Design“ haben wir wohl mal gehört, aber was genau steckt hinter „Inclusive JavaScript“?

Flattr this!

Revision 378: Tailwind CSS

9. März 2019 | Keine Kommentare

Zur aktuellen Sendung ist Markus Schober (zur Website) zu uns gestoßen und wir sprechen mal wieder ein typisches Frontend-Thema an. Aber hört selbst…

Schaunotizen

[00:01:03] Tailwind CSS
Tailwind CSS ist ein CSS Utility-Framework. Markus führt uns in die Thematik ein und wir nehmen es zum Anlass die Vor- und Nachteile von Utility-Frameworks zu beleuchten.
Dies mündet in einer fröhlichen Diskussion mit der Fragestellung: Will man als Entwicklerin und Entwickler wirklich kleinteilige Klassen im HTML anpassen oder sollte Styling-Komposition eher im CSS stattfinden?

Hier noch einige weiterführende Links zum Thema:

[00:51:03] Keine Schaunotizen

Global Diversity CFP Day
Am 15. März findet der Global Diversity CFP Day in Köln statt. Falls ihr zu einer unterrepräsentierten Gruppe auf vielen Tech-Konferenzen gehört und Interesse daran habt in Zukunft vielleicht als Sprecher präsenter zu werden, dann ist der Global Diversity CFP Day genau das richtige.

Flattr this!

On Tour @ #ctwebdev 1/2 mit Mirjam Bäuerlein

3. März 2019 | 2 Kommentare

Dieses Interview ist einer von Teilen unserer Serie On Tour @ #ctwebdev.

Anfang Februar waren wir bei einer brandneuen Konferenz zu Gast, der <c’t webdev> in Köln. Nachdem der heise-Verlag ja schon erfolgreich andere Entwicklungsfelder wie zum Beispiel JavaScript mit Konferenzen beackert, schien es wohl Zeit zu sein, das Thema „Frontend“ in den Fokus zu nehmen. Wir würden sagen: Die Premiere ist gelungen!

Und netterweise durften wir vor Ort wieder ein paar der Sprecher interviewen.

Mirjam Bäuerlein: Quereinstieg in die Frontendentwicklung & Conference Buddy

Eine davon war Mirjam Bäuerlein, Frontend-Entwicklerin bei Cosee in Darmstadt, die auf der Konferenz die Closing-Keynote über „Component-based CSS“ gab, und die wir gerne zu zwei Dingen befragen wollten: Zum einen hat uns interessiert, wie sie als vormalige Office Managerin und Hundetrainerin den Quereinstieg in die Webentwicklung gemeistert hat – und das auch noch in unter zwei Jahren! Zum anderen haben wir über ein wichtiges Side-Project von Ihr gesprochen, nämlich über Conference Buddy, das das Problem angeht, dass wir auf Konferenzen (oder Meetups) oft nicht genau wissen, wie wir uns anderen Personen annähern und mit Ihnen erfolgreich „socializen“ können.

Flattr this!

Revision 377: MobX

25. Februar 2019 | Kommentare deaktiviert für Revision 377: MobX

Mit unseren ewigen, aufopferungsvollen Bestrebungen, gebildetes Halbwissen zu verbreiten, holen wir die eigentlichen Experten an Land. So auch geschehen mit dem heutigen Gast Timo Zöller der meinte, wenn die Working Draft Runde meint das M in MobX stünde für Magie, könnte man doch mal aufklärend zur Seite stehen!

Schaunotizen

[00:02:02] MobX
MobX ist eine Bibliothek für reaktives, auf Pub Sub aufbauendes State Management. Einfach in der Anwendung, umfangreich in der Ausführung. Wir analysieren Modelle, kommen dahinter wie ähnlich MobX zu Vues Reactivity Model ist und fragen uns wie es um die Komplexität bestellt ist.
[00:26:14] MobX State Tree
Hat man mit der Freizügigkeit von MobX ein gewisses Maß an Sauhaufen erreicht, hilft der MobX State Tree das ganze wieder in nachvollziehbare Bahnen zu lenken.
[00:34:11] Next.js
Weil der Baumgartner auch immer wieder auf sein Lieblings-React-Framework zurück kommt, vergleichen wir die Euphorie mal mit Echtwelt Projekten und erkennen Uneinigkeit.

[00:56:24] Keine Schaunotizen

Immer.js
Vergessen wir Immer! Immutable states durch einfache APIs.
CSS Remedy
CSS Reset für die moderne Welt. Mit allen Anführungszeichen der Welt.

Flattr this!

Revision 376: Angular, Angular, Angular!

20. Februar 2019 | Kommentare deaktiviert für Revision 376: Angular, Angular, Angular!

In dieser Revision ließen sich Schepp, Peter und Stefan von Johannes Busch (@jomungand) alles über aktuellen Angular-Angelegen ausrichten.

Schaunotizen

[00:01:20] Angular
Die Sendung beginnt mit Geschichten aus dem Krieg: Schepp erzählt von seinen Angular-Anfängen und wir hören nichts gutes über die schlechte alte Zeit, vor allem die Migration von V1 (AngularJS) zu V2. Danach beginnen wir uns halbwegs systematisch in die Grundkonzepte von Angular einzufuchsen (Module, Provider, Templates), spechen ausführlicher über TypeScripts Decorators und die heutige Angular-Compiler-Pipeline (sowie dessen Vorgänger AtScript). Weiter geht es mit Angular-Templates, Direktiven, Syntax und Data Binding. Beim Thema Datenverbeitung kommen wir auf Redux (im Angular-Kontext) sowie ngrx mit RxJS sowie diverse Alternativen zu sprechen. Zwischendrin geht es natürlich auch immer wieder um Upgrades und Breaking Changes sowie die Konkurren (v.a. React und Ember inkl. Next und Nuxt, Googles internes Wiz Framework und Exoten wie Stimulus). Als gern verwendete Third-Party-Libs listet Johannes unter anderem Angular Material, das Component Dev Kit und Nx Workspace auf. Über die Themen Server-Side Rendering und Lazy Loading kommen wir auf Ivy, die neue aber bald verfügbare Rendering Engine von Angular zu sprechen. Zum Einstieg in die Angular-Welt empfiehlt Johannes neben den offiziellen Docs das Programm von Workshops.de, die Sandbox von StackBlitz, die Angular Checklist sowie Konferenzen in Deutschland, Belgien und nordischen Gefilden.

Flattr this!