Gremlins.js – Monkey testing library for web apps and Node.js

gremlins.js is a monkey testing library written in JavaScript, for Node.js and the browser. Use it to check the robustness of web applications by unleashing a horde of undisciplined gremlins. I especially like the syntax to start a test: var horde = gremlins.createHorde(); horde.unleash(); And oh, make sure you don’t run any tests after midnight …

Breaking the CSS Grid (and how to fix it)

Dave Rupert lists two scenarios in which the CSS Grid can be broken, and how to fix it: Overflow-x Elements break the Grid Form Controls break the Grid To easily fix these, Dave has whipped up a small CSS snippet he calls “Fit Grid”, containing a CSS class you can apply to prevent these issues …

Tame your Service Worker before your Progressive Web App go into the wild

Slidedeck by Maxim Salnikov: With great power comes great responsibility – trivially, but true: I’ll show the examples of how easy the “Progressive” part of the PWA term could become “Regressive”, how to fix this, and how to test our Service Worker before deploying your app. First, we’ll go through the well-known PWA functionality (App …

The Thistlegorm Project

One of the most famous wrecks to dive on is that of the SS Thistlegorm, a British merchant steam ship that was sunk by German bombers on 6 October 1941 near Ras Muhamad (Red Sea, Egypt). The University of Nottingham, Ain Shams (Cairo) and Alexandria University have joined forces to create a 3D model of …

Optimize React Performance

Good advice every React dev should be aware of: React is known to be blazingly fast with its Virtual DOM implementation. However, even with React’s built-in performance, there are instances when the UI can begin to feel sluggish. The primary culprit for poor performance is generating too many renders and reconciliations. We’ll cover 4 techniques …

Essential Image Optimization

Essential Image Optimization is an free and online eBook by Addy Osmani: Images take up massive amounts of internet bandwidth because they often have large file sizes. According to the HTTP Archive, 60% of the data transferred to fetch a web page is images composed of JPEGs, PNGs and GIFs. As of July 2017, images …

The Academic – Bear Claws (Live Looper Version)

Yesterday I’ve tweeted about this one, but it’s too great to not mention here too. It’s the video clip for “Bear Claws” by “The Academic”. For this video the band has used the lag of a Facebook Live video to their advantage. By doing so, they’ve created a loop sampler. Also note the clever use …

Asynchronous stack traces: why await beats .then()

Insightful post by Mathias Bynens: The fundamental difference between await and vanilla promises is that await X() suspends execution of the current function, while promise.then(X) continues execution of the current function after adding the X call to the callback chain. In the context of stack traces, this difference is pretty significant. The gist is that …