CodePen Snippets

I’ve started a new Code Snippets collection on CodePen. It will be populated with the little and sometimes peculiar CSS techniques I’ve used. Mostly CSS but with occasional JavaScript sprinkles. Progressively enhanced, of course. Stuff like this styled range input: See the Pen Styled input range (slider/progress) by David Bushell (@dbushell) on CodePen. […]

Hello Twenty Eighteen

In 2018 I’ll be celebrating 10 years as a professional. I graduated in 2008. I hopped on a train to London and spent five years with two agencies. In 2013 I dusted off my return ticket and headed back up North. I’ve been freelancing ever since. My first office was the window end of my parent’s […]

Raspberry Pi + e-Paper module + Node.js

A few weeks ago I was digging through storage and I found an original Raspberry Pi. When I’d bought it years ago interest was lost rather quickly. I wasn’t as comfortable with a Unix command line as I am today. The Raspberry Pi / Arduino / single-board computer ecosystem has exploded since then. Maybe I can […]

#TIFU by deleting my work

Ever get that feeling you’ve lost something? I’ve long been a paying user of CodePen. It’s nice for sharing snippets, quick mock-ups, or messing around with code. CodePen Projects is a newish addition. It provides a more complete development environment. A mini-project came along for a client that gave me the perfect excuse to try CodePen Projects. Development […]

SSH Passphrases in MacOS Sierra (and learning Vim)

Managing SSH keys for remote repositories ain’t easy to grok. “Multiple Accounts and SSH Keys” is to no suprise one of my most popular articles. It’s still relevant and I have to refer to it myself at least once a year. Recently MacOS began requesting my passphrase with every Git push and pull. That is not productive. The solution is two […]

TypeScript over React PropTypes

React v15.5.0 is here and the React.PropTypes module gives a deprecation warning. Moving forward you’ll find it in it’s own package. I’ve always used React PropTypes because it seemed like the ‘right way’ to do things. Runtime validation has obvious value but in my experience there are three big negatives to it: PropTypes are tedious to write PropTypes […]

The Magic of Service Workers

They’re a thing. Google describes them as a “technical foundation”. What I’ve learnt is that a service worker is a JavaScript file. It runs in it’s own little world behind a website. That means it can’t access the DOM. What it can do is proxy network requests and access a storage cache. I’m sure they can do […]