Planet Chris

Posts from people I like written today, yesterday, and the day before.

Yesterday — Wed, 18 Oct 2017

A Brief Intro to Docker for Djangonauts

Simon Willison — 

A Brief Intro to Docker for Djangonauts This is great - a really clear introduction to both Docker and Docker Compose, aimed at Django developers. Includes line-by-line annotations of an example Dockerfile and docker-compose.yml. Via @revsys on Twitter

SRI Hash Generator

Simon Willison — 

SRI Hash Generator Handy utility for generating SRI hashes - just give it a URL and it will show you the script or link href block you need to use to safely embed that URL in your page with the correct SRI hash.

Subresource Integrity

Simon Willison — 

Subresource Integrity Now supported in Firefox 55, Chrome 49+ and Safari 11+. This makes me much more comfortable about hot-linking to JavaScript and CSS hosted by the various CDN providers, since it means that should they get breached any evil new scripts hosted at the same URL will be denied by modern browsers.

Select Transform: JSON Template over JSON

Simon Willison — 

Select Transform: JSON Template over JSON A barrage of interesting ideas here. Having clients transmit up a JSON template which is then executed against data on the server and used to return exactly the data the client needs is just one of them (significant overlap with GraphQL there). Via Hacker News

Confessions Of An Impostor

Smashing Magazine — 

    Five years ago, when, for the first time ever, I was invited to speak at one of the best front-end conferences in Europe, I had quite a mixture of feelings. Obviously, I was incredibly proud and happy: I had never had a chance to do this before for a diverse audience of people with different skillsets. But the other feelings I had were quite destructive. I sincerely could not understand how I could be interesting to anyon...

Displaying errors in Expressive with Twig

Rob Allen — 

If you're not using the Whoops error handler with Expressive and are using the Twig renderer, then you are given no information about the problem that occurred, even in debug mode. To fix this, I changed error.html.twig to this: {% extends '@layout/default.html.twig' %} {% block title %}{{ status }} {{ reason }}{% endblock %} {% block content %} <h1>Oops!</h1> <h2>This is awkward.</h2> <p>We encountered a {{ status }} {{ reason }} error.<...

'Our minds can be hijacked': the tech insiders who fear a smartphone dystopia

Susan Robertson — 

““One reason I think it is particularly important for us to talk about this now is that we may be the last generation that can remember life before,” Rosenstein says. It may or may not be relevant that Rosenstein, Pearlman and most of the tech insiders questioning today’s attention economy are in their 30s, members of the last generation that can remember a world in which telephones were plugged into walls.” I found this article fascinating and relatable in man...

How to take a nap

Susan Robertson — 

“When the Coen brothers were asked about their creative process, Joel Coen said, “We do a lot of napping.”” A good reminder, taking breaks can activate our process, and make us more efficient at our work.

Twitter's Harassment Problem Is Baked Into Its Design

Susan Robertson — 

“While nothing is stopping people from finding out more information before responding, the clearest affordance Twitter has is for these “drive-by” responses (I’ve been mansplained to by many people who I presume haven’t even looked at my bio to see the “engineering professor” there before trying to school me on my research field—per Telemachus, “of me most of all”). This amplification and context collapse, coupled with the ease of r...

The Day Before — Tue, 17 Oct 2017

Yassmin Abdel-Magied at TEDxBoulder 2017

Andrew Hyde — 

We are starting to post the videos from TEDxBoulder 2017 and this talk by Yassmin has got to be one of my favorites. It received a standing ovation from a crowd of 2200 and watch it to see just why: More talks on the TEDxBoulder website.


Anne van Kesteren — 

Node EADDRINUSE (Address Already in Use) Error

David Walsh — 

Every once in a while my Macbook Pro freaks out and a process goes rogue.  This oftentimes happens when I’m working on the excellent debugger.html project; I attempt to start the server side of the debugger and suddenly I’m hit with an error that resembles the following, leading to the process not starting from that time forward: Error: listen EADDRINUSE at Object._errnoException (util.js:1026:11) at _exceptionWithHostPort (util.js:1049:20) at Serve...

Choose Dependency Injection — If You Can

Paul Jones — 

Some people say, “You don’t need to use dependency injection for everything. Sometimes dependency injection is not the best choice.” It occurs to me that the people who say this are the ones who can’t use it for everything. They say “choose what’s best for your situation”, but their situation precludes the use of dependency injection in the first place. Anyone who says “X is not always the best choice”, but does not have X as an available...

Atlas.Orm 2.0 Is Now Stable

Paul Jones — 

I am very happy to announce that Atlas, a data-mapper for your persistence layer in PHP, is now stable for production use! There are no changes, other than documentation updates, since the beta release two weeks ago. You can get Atlas from Packagist via Composer by adding … "require": { "atlas/orm": "~2.0" } … to your composer.json file. The updated documentation site is at (with both 1.x and 2.x documentation). Submit issues and pull requests as y...

How to set up world-class continuous deployment using free hosted tools

Simon Willison — 

I’m going to describe a way to put together a world-class continuous deployment infrastructure for your side-project without spending any money. With continuous deployment every code commit is tested against an automated test suite. If the tests pass it gets deployed directly to the production environment! How’s that for an incentive to write comprehensive tests? Each of the tools I’m using offers a free tier which is easily enough to handle most side-projects. And once you...

Web Typography: Numerals

A List Apart — 

A note from the editors: We’re pleased to share an excerpt from Chapter 2 of Richard Rutter’s new book, Web Typography.When it comes to numbers we have just ten digits. Throw in a comma and a period and we’ve got grand total of twelve characters. You might not think that would present much of a challenge to a typographer, but to a professional typesetter (that’s you if you’re a designer) numerals require far more nuance and variation than you might think at firs...

Naming Things In CSS Grid Layout

Smashing Magazine — 

    When first learning how to use Grid Layout, you might begin by addressing positions on the grid by their line number. This requires that you keep track of where various lines are on the grid, and also be aware of the fact the line numbers reverse if your site is displayed for a right-to-left language. Built on top of this system of lines, however, are methods that enable the naming of lines and even grid areas. Using thes...


The Great Discontent — 

Melbourne-based musicians Chloe Kaul and Simon Lam, AKA Kllo, grew up just five-minutes away from each other, but their musical beginnings were worlds apart. Here, the two cousins open up to us about merging their individual aesthetics in order to form a new and distinct sound; about improvisation, trusting the process, and learning to let go; and how their music is becoming more old school as they continue to evolve. Read at →...