Working Draft

Vanessa Otto, Peter Kröner, Hans Christian Reinl, Stefan Baumgartner, Christian »Schepp« Schaefer
undefined
May 16, 2016 • 54min

Revision 262: News, Glücksrad, Links

In Ermangelnung großer Themen ließen Stefan, Schepp, Peter und Anselm mal wieder das Glücksrad rotieren. [00:00:15] News Geolocation API removed from unsecured origins in Chrome 50 Ab jetzt gibt es Ortung nur noch mit HTTPS. [00:00:46] Glücksrad window.open() Popups, blast from the past! Wir erinnern uns an die seltsamen Parameter dieser Funktion (die interessanterweise in einer CSS-Spezifikation festgehalten sind) sowie an rel=noopener. CSS Marquee Module Level 3 Stellt sich raus: das gibt‘s gar nicht. CSS Scroll Snap Points Kurze Diskussion über Sinn und Zweck der Scroll Snap Points, die zwei verschiedenen Spezifikationsversionen und Vorreiterrolle des IE. Microdata Erfolgloser Versuch, zwischen Microformats, RDFa und HTML5-Microdata den Überblick zu behalten. Anschließende Grundsatzdebatte über Semantik (und JSON-LD), SEO (und schema.org) und Standards. CSS Round Display Wurde bereits in Revision 236 für mehr so mittelgut befunden. a href=“https://www.w3.org/TR/css3-hyperlinks/“>CSS3 Hyperlink Presentation Module Ein weiterer ad acta gelegter Spezifikationsentwurf. Cascading Style Sheets, level 1 Wir bewundern das revolutionäre Frühwerk der Standards-Entwicklung. [00:53:33] Keine Schaunotizen Caching best practices & max-age gotchas Jake Archibald in gewohnt lehrreich-humorvollem Stil.
undefined
May 16, 2016 • 57min

Revision 261: SVG Icons, Element/Container Queries

Anselm, Schepp und Stefan nehmen sich zwei herumsurrende Artikel als Anstoß für ein ausgedehntes Plaudern aus dem Nähkästchen. Schaunotizen [00:00:27] Converting Font Icons to SVG Sara Soueidan erklärt den Icon Fonts den Tod mit diesem ausführlichen Migrations-Guide. Wir sprechen über unsere Erfahrungen und den Problemchen, loben aber auch gleichzeitig neue Workflows und ein viel „sauberes“ Entwicklungserlebnis. [00:25:20] Container Queries: Once more unto the breach Media Queries sind fein, man stößt allerdings schnell an seine Grenzen wenn man nicht das gesamte Bild betrachten möchte, sondern im Detail pro Komponente das Look and Feel bestimmen möchte. Container Queries sind der Titel einer neuen Spezifikation, die sich genau um solche Dinge kümmern wollen. Wir erklären warum die ehemals genannten „Element Queries“ nun anders heißen, welches grundlegende Problem mit dieser Neubenamsung umgangen wird und wie man sie heute schon einsetzen kann. Schepp zum Beispiel schwört auf diesen Polyfill. [00:51:21] Keine Schaunotizen Hotel Hotel lässt alle eure Entwicklungsserver und die damit verbundenen Host-Einträge bequem über eine Weboberfläche verwalten. Riot.js Eine User Interface Bibliothek, die sich an React hält aber mit deutlich geringerem Footprint auskommt. Stylefmt Coding Guidelines sind wichtig, sie einzuhalten kann schwer sein. Stylefmt formatiert eure Stylesheets nach einem festgelegten Regelwerk. Pre-Commit-Hook, und fertig ist die Einheitlichkeit. Rollupify Rollup ist groß. Browserify ist groß. Beides zusammen gibt laut Engineering-Meister Rodney in seinem Projekt über 40% Platzeinsparung. Hossa!
undefined
May 1, 2016 • 48min

Revision 260: Spezifikations-Neuheiten

Zwei Änderungen in der Spezifikation sorgen für den nötigen Gesprächsstoff in der nächsten Stunde. Rodney, Hans und Stefan stellen sich Fragen zur HTML Sektionierung und JavaScript Modulen. Schaunotizen [00:00:20] H1-H6 statt beliebiger Sektionsverschachtelungen Die wunderbaren Möglichkeiten des HTML5 Outlining Algorithmus. Großartiges wurde von ihm erwartet, die Implementierung auf Seiten der Werkzeugshersteller und Webseiten-Entwickler hält sich allerdings in Grenzen. Schade, wie wir finden. Wir resümieren über unsere eigene Verwendung und hinterfragen den Entscheid, ob es gut ist die <section> Verschachtelung als Best Practice Beispiel aus der Spezifikation zu nehmen. Denn nach einem Herausnehmen folgt meistens ein Vergessen … [00:26:57] Adding JavaScript modules to the web platform JavaScript Module! Wir reden hier nicht von Entwicklungsmustern oder Werkzeugs-Gedöhns, sondern vom echten Zeug: JavaScript Module im Browser. Was bringt die Spezifikation, warum hat es so lange gedauert, und wie schaut die Zukunft damit aus. Rodney steht unseren Fragen Rede und Antwort. [00:44:26] Keine Schaunotizen JS Kongress In München steht ein Kongresshaus. Eins, zwei, JavaScript. 2 Tage, 16 Speaker, Brezen. Stefan ist dort. Service Worker Toolbox Die Service Worker Toolbox bringt Express-ähnliches Routing und Standardfunktionalität wie „Netzwerk zuerst! Cache danach!“. Erleichtert die Arbeit für Standard-Tasks. EmberConf 2016 Das Stefan nicht alleine mit seiner Ember.js Freude ist zeigen die Videos der EmberConf. Mindestens 20 andere Menschen auf diesem Erdball nutzen das Framework. Leute, die gerne mehr darüber lernen wollen, sollen sich diese Case Studies sehr detailliert anschauen.
undefined
Apr 18, 2016 • 42min

Revision 259: React Entwicklung und Frontend Einstieg

Da die Stammbesetzung diesmal extrem spärlich besetzt und zudem unsere Themenauswahl begrenzt war, lud sich Anselm für die Sendung Max Stoiber ein, um über React Entwicklung und den mittlerweile nicht mehr so einfachen Einstieg in die Front-end Entwicklung zu sprechen. [00:00:54] News Grunt 1.0.0 Endlich ist die stabile Version 1.0.0 von Grunt veröffentlicht worden, die jede Menge Bugs behebt und Kleinigkeiten verbessert. Schaunotizen [00:02:10] React Boilerplate Wir nehmen das von Max entwickelte React Boilerplate als Anlass, um über React Application Development zu sprechen und kämmen hier den gesamten Stack durch: Wir beginnen bei Erleichterungen im Workflow, Refactoring hin zu allumfassenden Components und die Erfahrung, die Max machen konnte. Wir sprechen über Component Generators, Server-Side Rendering, CSS Modules und versuchen zu lösen, warum so viele React Applications nur mittelmäßigen Code ausgeben. [00:22:10] „… nobody has a clue what they’re doing” ist ein Statement von Max, als er von einem Junior-Developer gefragt wurde, ob er sich auf eine Stelle bewerben solle, weil er die Anforderungen nicht ganz erfüllen könne. Wir sprechen über den Einstieg in die Frontend Entwicklung, die heutigen Hürden dabei und warum es wohl keinen Frontend Entwickler geben wird, der von sich behaupten kann, alles zu wissen. Abschließend sehen wir in die Zukunft und erzählen, wie wir uns diese vorstellen. [00:41:29] Keine Schaunotizen Why you should enforce Dangling Commas for Multiline Statements Max hat uns noch einen Link mitgebracht, in dem erklärt wird, warum Dangling Commas durchaus sinnvoll sein können.
undefined
Apr 17, 2016 • 1h 31min

Revision 258: Das npm Debakel und warum wir so lahme Seiten bauen

Schepp, Peter und Anselm erklären nochmal, was beim npm-Gate so abging und warum wir endlich mal vorher nachdenken sollten, wie wir Tools und Workflows aufbauen, statt erst dann, wenn es zu spät ist. Und danach nehmen wir uns gleich noch ein Thema vor, was nach wie vor spannend bleibt: Warum bauen wir so lahme Seiten, vor allem für mobile Endgeräte? [00:00:11] News Developers can run Bash Shell and user-mode Ubuntu Linux binaries on Windows 10 Was sollen wir noch dazu sagen, außer: Endlich! Und: Das ist großartig! Schaunotizen [00:00:47] Left-Pad / npm-Gate Der Entwickler eines npm Moduls für eine Left-Pad Function hat selbiges ge-unpublished und damit das halbe Internet kaputt gemacht. Da leider Babel und viele andere Projekte dieses als Dependency verwendeten, schlugen sofort alle CI Systeme fehl. Daraus entstand eine hitzige Debatte um kleine Module in JavaScript, npm und Workflows an sich. Wir sprechen darüber und versuchen herauszufinden, wie wir robustere Workflows bauen können ohne Module nur zu copy-pasten. Seitdem gibt es eine neue npm unpublish policy, Lösungs-Ansätze und auch direkt neue npm Problemchen. Aber da wäre ja auch noch Bower und auch sowas wie das relativ unbekannte IPFS, was sich ziemlich gut als distributed package manager eignen würde. [00:28:38] The Chrome Distortion: how Chrome negatively alters our expectations. Diesen doch sehr fraglichen Artikel-Titel haben wir zum Anlass genommen, zu hinterfragen, warum wir überhaupt feststellen können, dass mobile Browser langsam sind und ob das überhaupt die Ursache des Problems ist? Wir kommen selbstverständlich zu einem ganz anderen Schluss, denn wir bauen einfach immer unnötig größere Seiten, mit vielen unnötigen Spielereien. Trotzdem versuchen wir, unsere Verantwortung dann am Ende auf die Browser zu schieben, einfach um uns besser zu fühlen. Letztendlich sprechen wir auch noch über Projektmanagement und Verantwortung als Entwickler, sowie Hardware, die Nicht-Entwickler besitzen. [01:28:48] Keine Schaunotizen link rel=noopener Ein neues Attribut, um zu verhindern, dass window.opener durch nutzergenerierten Inhalt missbraucht werden kann. A kick-start into server push Ein leicht verständlicher Artikel zum Thema Server Push. Node.green Eine coole tabellarische Aufstellung, welches ECMA-Script Feature in welcher Node Version unterstützt wird. Referrer and cache control APIs for fetch() Auch wenn es noch ein klein wenig dauert, bis zum Firefox 48 Release, finden wir diese Features äußerst hilfreich und ihr könnt gleich mal anfangen, das zu nutzen.
undefined
Mar 30, 2016 • 53min

Revision 257: Contentful – Das API-first CMS

Es war mal wieder an der Zeit, dass wir uns Gäste zur Verstärkung ins virtuelle Studio holen. Nachdem sich die letzten Revisionen viel um Content Management Systeme die Arbeit als Frontend-Entwickler mit ihnen gedreht haben, lag es nahe, dass wir uns mal mit den Leuten hinter dem rein API-basierten „headless“ CMS Contentful unterhalten. Aus Berlin zugeschaltet waren Rouven Weßling und Thomas Scholtes. Wir redeten über die Idee hinter dem CMS und seine Aufteilung in ein Multiuser-Fähiges Backend und fünf Teil-APIs: die Content Delivery API, deren Inhalte vom Fastly CDN ausgeliefert werden die Content Management API, das mehrbenutzer- und rechte-/rollenfähig ist die Images API, die Bilder per URL-Parameter resizen, croppen und dekorieren kann und auf Amazons CloudFront CDN aufsetzt die neue Widgets API, mit der sich das Backend-Interface um selbstentwickelte Eingabefelder aufbohren lässt und über die Content Preview API, über die man eine Vorschau seiner Inhalte an der Content Delivery API vorbei abruft. Wir erfuhren außerdem weitere schöne Details, nämlich dass Contentful Mehrsprachigkeit, respektive Lokalisierbarkeit ermöglicht. Und auch dass man mit Hilfe der Content Delivery Sync API seine Daten zur Offline-Speicherung im Client regelmäßig abgleichen kann. Wohlwollend nahmen wir zur Kenntnis, dass Rich Content ausschließlich im Markdown-Format verarbeitet wird. Mehrere Seiten lassen sich mit Hilfe von Spaces unter einem Account betreiben. Volltextsuchen sind dank der Search API leicht zu implementieren. Und es lassen sich Webhooks einrichten, die jedes Mal getriggert werden, wenn Inhalte aktualisiert wurden. Wer nun Blut geleckt hat: Contentful bietet für den schnellen Einstieg eine Reihe von fertigen SDKs und Plugins für JavaScript und alle gängigen serverseitigen Sprachen sowie für diverse Frameworks, native Plattformen und statische Seitengeneratoren. Zu guter Letzt wiesen wir noch auf ein interessantes Gast-Posting im Firmenblog hin, wo beschrieben wird, wie man mit Contentful und Snipcart sogar ein Shopsystem abbilden kann. Der einzige Nachteil, den wir während des ganzen Gesprächs an dem CMS ausmachen konnten: Durch die Art und Weise des Hostings lässt sich nicht sicherstellen, dass Inhalte ausschließlich in Europa gespeichert sind (zumindest derzeit). Wir sind beeindruckt. Salespitch bestanden!
undefined
Mar 21, 2016 • 55min

Revision 256: Arbeiten mit einem CMS – Berichte aus der Praxis

Zur Revision 256 ergab es sich, dass wir uns eine ganze Sendung lang einer Hörerfrage widmeten, welche uns im Rahmen der Revision 253 – CMS, CMS, CMS! gestellt wurde. Schaunotizen [00:00:36] Hörerfrage CMS-Workflow Ein Hörer, Tilman, fragte, wie wir denn mit unterschiedlichen Bereichen bei der Webseiten-Entwicklung umgehen, wenn wir mit Content Management Systemen arbeiten. Wir sprechen darüber, welche CMS wir verwenden, welche Rollen wir in diesen Projekten einnehmen und wie wir moderne Frontends im Zusammenspiel mit fast jedem CMS bauen können. [00:51:39] Keine Schaunotizen Styling broken Images Bilder, die nicht geladen werden können, sehen meistens etwas „zerschossen“ aus. Mithilfe dieses Tutorials lässt sich da Abhilfe schaffen. Material Conference 2016 in Island Dieses Jahr wird erstmalig die Material Conference stattfinden. Eine Konferenz, die das Web als „Material“ untersucht. Die Veranstalter brauchen eure Hilfe und haben eine Kickstarter Campaign ins Leben gerufen. Schaut’s euch mal an.
undefined
Mar 13, 2016 • 45min

Revision 255: Hack the Planet!

Hans und Peter hatten keine Themen, also plauderten sie ein wenig über die diversen Hacks, die sie in ihren langen und ruhmreichen Frontendler-Karrieren so auf die Browser-Welt losgelassen haben. Schaunotizen [00:00:09] Hack the Planet Angestoßen durch lave, eine Art JSON für ganz harte (und wohl eine Ergänzung zum Structured clone algorithm), pflügen Hans und Peter durch ihr Hack-Archiv. Angefangen bei klassischen CSS-Hacks über Conditional Comments und dem hasLayout-Allheilmittel zoom: 1 geht es recht bald zum Thema Clearfix und seinen divseren Permutationen im Wandel der Zeit (Hans schwört auf overflow: hidden). Peters Lieblings-CSS-Hack bleibt hingegen .wichtig, .egal:not(.egal){}. In Folge betreten wir das Feld der HTML-Hacks, spekulieren über Details im head– sowie über Anwendungsfälle des noscript-Elements. Da data-Attribute letztlich auch nur die Großzügigkeit des HTML-Parsers ausnutzen, sortieren wir diese (speziell ohne data-Präfix) auch in der Hack-Rubrik ein. Wir beenden das Thema mit Erzählungen aus der React-Hackerei, erwähnen neben dem Universal-Schlangenöl setTimeout(fn, 0) auch das modernere setImmediate(fn) und hören auf, bevor wir auf noch schrägere Hacks als Peters Funktionsverasynchronisierungslibrary zu sprechen kommen. [00:43:30] Keine Schaunotizen tbranyen/diffhtml: Easily swap out markup with an intelligent virtual dom Für alle, denen React zu High-Level ist.
undefined
Mar 4, 2016 • 28min

Revision 254: Progressively loaded CSS, Grunt 1.0

Der wöchentliche News-Podcast hat wieder mal Neuigkeiten! Nebenbei wird noch über progressives Laden von CSS Dateien philosophiert. Anselm, Hans, Schepp und Stefan diesmal im Boot. [00:00:25] News Grunt 1.0 Release Candidate Nein! Doch! Oh! Oder: Die Hölle friert zu und Node kommt ohne Dependencies aus. Grunt 1.0.0. bringt das verwaiste Projekt auf den aktuellen Stand mit NPM, löst einige bekannte Bugs und ist ein wichtiger Schritt zur Reanimation des Projektes. Statt dem Big Bang gibt’s jetzt die bekannte API gesichert und veröffentlicht. Touch Action CSS Property Die touch-action CSS Eigenschaft bekommt Browserreichweite. Hier gibt’s Informationen dazu. Transitioning from SPDY to HTTP2 Chrome schmeißt in absehbarer Zeit SPDY raus. Hier gibt’s Informationen für Leute, die ihre Server noch damit betreiben. Schaunotizen [00:04:10] The future of loading CSS Jake Archibald beschreibt eine gravierende Änderung in Chromes Lade- und Renderstrategie für blockierende CSS Dateien. Diese Änderung (die in Edge schon so umgesetzt wird) erlaubt, CSS auch an anderen Stellen als dem Head zu laden und so progressiv Stylesheets für gewisse Bereiche der Website nachzuladen. Jake belegt dies mit einem entsprechenden Demo und einigen Use Cases. Wir beleuchten die Vor- und Nachteile und diskutieren über Properties wie lazyload und postpone [00:24:54] Keine Schaunotizen Finessing feColorMatrix Una beleuchtet SVG Filter Eigenschaften bis ins äußerste Detail. New ways to make your web app jank with Houdini Houdini, eine Einführung. Hier gibt’s massiv Informationen und erste Code-Beispiele zum erweiterbaren CSS Standard. Creating Fun and Immersive Audio Experiences with Web Audio Die Web Audio API kann viel. Hier findet man ein paar gute Beispiele und Anwendungsfälle. The Fab Four technique to create Responsive Emails without Media Queries Eine sehr einfache, aber doch effektive Implementierung von Element Queries mit calc, min-width und max-width . Art directed responsive images Automatische Art Direction für responsive Images? Hier.
undefined
Feb 28, 2016 • 59min

Revision 253: CMS, CMS, CMS!

Obwohl es nicht die Kernkompetenz von Anselm, Stefan und Peter ist, waren diese Revision mal wieder Content Management Systeme dran. Dazu kommen die üblichen drei Links. Schaunotizen [00:00:10] CMS, CMS, CMS! Cory Etzkorn hat mit Choosing the Best CMS einen langen, detaillierten Artikel über Content Management Systeme geschrieben, an dem wir uns entlang hangeln. Stefan ist ein Fan des flexiblen Craft CMS – außer richtig guten Lösungen für Mehrsprachigkeit und Content Staging fehlt es an nichts. Einigkeit herrscht darüber, dass unter den Homepage-Zusammenklick-Baukästen Squarespace der beste Baukasten ist. An WordPress finden wir besonders die Vielfalt und Flexibilität beeindruckend, speziell dass man mit sehr wenig Fachwissen sehr weit kommen kann. Während keiner von uns Siteleaf kennt, können wir umso mehr positives über Kirby (kleines textbasiertes CMS) sagen. Der nerdige statische Seitengenerator Jekyll wird gerade von Peter evaluiert, doch vor Langsamkeit und Ruby-Gefrickel wird gewarnt. Für Software-Nerds ist die Kombination von Jekyll mit Github Pages sehr zu empfehlen, jedoch ist es prinzipbedingt nicht unbedingt kundentauglich. Das gilt auch für das ähnliche Middleman, das einem noch mehr Ruby-Skills als Jekyll abverlangt. Zum Ende geben wir noch unsere gänzlich unfundierten Meinungen und Vorurteile zu Drupal, Typo3, Joomla, MODx und Perch zum Besten. Als kostenlose Geschäftsidee offerieren wir das Konzept Static Site Generator als App mit gegenüber klassischen CMS klaren Vorteilen bei Sicherheit und Performance. [00:56:31] Keine Schaunotizen Investigating the overhead cost of compiled es2015 Konkrete Zahlen zum Aufbläh-Effekt von JS-Transpilern. CSS Variables: Why Should You Care? Kurzer Überblick. Anlass: demnächst auch in Chrome! Let’s Encrypt Smart Renew.sh Damit das Zertifikat auch in Zukunft schön knackig und frisch bleibt.

The AI-powered Podcast Player

Save insights by tapping your headphones, chat with episodes, discover the best highlights - and more!
App store bannerPlay store banner
Get the app