Revision 152: JSPerf, Open Source, Gulp, Funktionales
Nach vielen Revisionen mit Rumpfbesatzung und Themenmangel geht es diemal wieder voll zur Sache: Schepp, Rodney, Stefan und Peter erklären ranten und mäandern durch die diesmal durchaus vorhandenen Themen der vergangenen Woche.
Außerdem führen wir versuchsweise eine neue Rubrik ein: beim Tipp der Woche werden wir (un)regemäßig Kleinst-Tipps für den Weballtag absondern, die uns im Laufe der letzten sieben Tage über den Weg gelaufen sind. Außerdem neu aus Github: Workingdraft-Metadata!
[00:00:12] News
- Autoprefixer 1.0
- Jetzt mit Source Maps!
- Workingdraft Metadata
- Alle Daten zu allen Episoden von Working Draft auf Github. Gehet hin und hacket!
Schaunotizen
- [00:00:34] Stop JSPerf abuse
-
Wir reden über einen Rant, der einen unsauberen JSPerf-Vergleich von jQuerys
.addClass()
mit nativerclassList
(MDN) zum Thema hat. Rodney zürnt über die classList-API und berichtet von seinen eigenen JSPerf-Erfahrungen. Performance-Pontifex Schepp ordnet das Thema etwas ein: Man sollte kein JSPerf-Nazi werden, da Rendering und CSS die eigentlichen Problemfelder sind und der Browser automatisch JS optimiert, was im Falle von Chrome auch bequem nachvollzogen werden kann. - [00:16:30] Upgrading to iScroll 5
- Rodney hatte großen Spaß am Versuch, Version 5 von iScroll (einer Library für Scrollerei auf Mobilgeräten) zu benutzen und lässt uns alle daran teilhaben. Breaking Changes beim Wechsel von 4 auf 5 sind laut Semantic Versioning zwar möglich, werden aber zum Ärgernis wenn sie nicht dokumentiert sind. So fordern wir Changelog und Migration Guide für alle Open-Source-Projekte, denn das reduziert nicht nur Nutzerfrust, sondern sorgt auch dafür, dass Autoren von Software weniger Supportanfragen bearbeiten müssen – Rod spricht aus Erfahrung.
- [00:39:42] Gulp und funktionale Programmierung
- Gulp ist ein Buildsystem wie Grunt, allerdings streambasiert (siehe Slides). Ein Wechsel scheint dann sinnvoll, wenn man großen gruntinduzierten Leidensdruck verspürt, was bei Peter noch nicht der Fall ist, bei Rodney hingegen schon ein Gruntfile-Vergleich ergibt, dass Rod den mit Abstand längsten hat, was mit Streams weniger unübersichtlich wäre. Dem Stream-Prinzip gegenüber sind wir grundsätzlich alle sehr positiv eingestellt; Pipes und die daran andockende Unix-Philosophie sind was feines. Über Pipes kommen wir zum Thema Promises und funktionale Programmierung, das Peter mit etwas Fabuliererei über Bacon.js abschließt.
[01:14:47] Keine Schaunotizen
- PostCSS
- Tool zum Parsen und Manipulieren von CSS.
- Polyfill.js
- Das Tool für euren nächsten CSS-Polyfill.
- JS Test – Code Coverage
- Drei Artikel erklären wie ihr die Coverage eurer JS-Tests ermitteln könnt.
[01:18:54] Tipp der Woche
- Chrome Devtools
- Stefan hat herausgefunden: die Suche im Elements-Panel (
STRG /CMF +F ) akzeptiert auch CSS-Selektoren (und XPath).