spatie/test-time – A PHP package to control the flow of time

Freek has created spatie/test-time, a package to easily freeze/rewind/advance time in PHP. Imagine you’re building that your app can notify your user, but you don’t want to send more than one notification in a timeframe of five seconds. How are you going to test the time aspect? Do you have to create a test that …

Resilient Management, an excerpt

On A List Apart you can read an excerpt from the book Resilient Management by Lara Hogan. It’s from chapter 2, entitled “Grow your teammates”: To spur this course-correction and growth in your teammates, you’ll end up wearing four different hats: Mentoring: lending advice and helping to problem solve based on your own experience. Coaching: …

Indicating focus to improve accessibility

Great article by Hidde. It totally rhymes with my Building Better Forms™ by not taking away affordances post. It’s a common, but fairly easy-to-fix accessibility issue: lack of indicating focus. In this post I will explain what we mean by focus and show you how focus outlines make your site easier to use. Indicating focus …

An introduction to the JAMstack

This introduction to JAMstack – or is it SHAMstack? – is quite complete: Traditional websites or CMS sites (e.g WordPress, Drupal, etc.) rely heavily on servers, plugins and databases. But the JAMstack can load some JavaScript that receives data from an API, serving files from a CDN and markup generated using a static site generator …

Accessible Icon Buttons

Sara Soueidan: An icon button is an icon that triggers some sort of action on the page. More accurately, technically speaking, an icon button is a button that contains an icon and no (visible) accompanying text. Putting aside the UX side of the coin and whether or not an icon alone is enough to convey …

Why the Soviets doctored this iconic photo

With the recent 75 year remembrance of the Normandy Landings (D-Day), I was reminded of this video by Vox, from the Vox Darkroom series: “Raising the Flag on Iwo Jima” and “Raising a Flag over the Reichstag” are similarly iconic photos from World War II. They’re both beloved images of victory, and they’re both taken …

Internal classes in PHP

As a (PHP) package developer, you sometimes have classes that are meant for internal use – inside the package itself – only. PHP has no built-in solution for this, but using a DocBlock Tag one can indicate its intended use. As Nuno Maduro explains: Maybe in the future, the PHP language will have the internal …

Tests and types

Brent has some thoughts on strong and weakly typed programming languages. Starting point: a simple function that needs testing: rgbToHex(red, green, blue) { // … } Testing the result the function should return is easy. But what about edge cases? What happens though if we pass doubles instead of integers? Or numbers outside of the …

The new Mac Pro is a design remix

Arun Venkatesan takes a deep dive into the design and engineering behind the new Mac Pro: Apple held its annual developer conference, WWDC, this week in San Jose. In the keynote, aside from a slew of developer-focused software announcements, one new hardware announcement has attracted the most attention, the 2019 Mac Pro and Pro Display …