Branch based sessions in Vim

Vim sessions are a great way to save the state of vim so you don’t have to reopen all your files after closing it. I use tpope’s Obsession plugin which ensures a session file is always up to date. But by default this will only setup one session file per project.

tags: vim, command line, git

My email workflow in Fastmail

When I switched to Fastmail from Hey, there were elements of Hey's approach that worked well for me and I wanted to replicate. I found several articles about setting up a Hey workflow with Fastmail, but the suggested setup relied on creating custom rules for each contact and I found this to be cumbersome. I figured out a slightly different approach and wanted to document what I ended up with.

tags: productivity

End-to-end testing (WIP)

Delivering a working software product to end users is not a trivial task and there are a lot of things that can go wrong along the way. The end user experience of your product is not just made up of the code that your team writes. It’s also 3rd party software, deployment processes, configuration, servers, operating systems, databases, networks, caching systems, and much more. Each of these components can and have gone wrong.

tags: dev, testing


The goals of agility

tags: leadership

Field recording

Sound has a way of transporting me to a moment or a space in a way that an image can't.

tags: tinkering

My box of mistakes

I got myself a 3d printer and I am hooked. I'm hoping to post about some of my projects and learnings soon.

tags: 3d printing, tinkering

Some of my projects

Here are a few of the projects I've built. Some are alright. 😛

tags: dev

Customised PiBow case for Raspberry Pi + PiJuice + PiTFT

I recently setup a PiHole for my home network. I’m using a Raspberry Pi 3B+ with a PiJuice and a 3.5 inch PiTFT screen. Finding a case to fit all these was a little tricky. I don’t have a 3D printer (yet) and the tall cases I could find were a bit ugly.

tags: tinkering

Rethinking my piece of the internet

I am a strong proponent of people owning their own personal space on the internet. A space where they can express their interests and who they are as they see fit. (And preferably not owned by a social media giant.) But as a person who builds things on the internet for their profession, it’s easy to feel that my website should be a professional brand website for Piet the developer.

tags: meta

Focus on the problem

Way too often I find myself thinking, 'Oh I should setup this super complicated solution to a problem that maybe one day, in an apocalypse, I might encounter.'

tags: tinkering, productivity

Things I wish I knew before my daughter was born

I'm going to be a first-time father very soon. For the parents out there, what's something you wish somebody had told you about raising little ones?

— Brian Wang (@brianmwang) November 27, 2019
tags: family

Martín's Triathlon

On a surprisingly warm September Sunday morning I went to support my friend Martín doing a triathlon. I’m only just getting to the point where I can run a 5k, let alone a 750m swim, a 20km cycle plus a 5k. Martín and I went running together once. At the end of the 30 minute run he hadn't broken a sweat. Whereas I came home drenched. Suffice it to say, Martín is an athlete and I (currently) am not.

tags: recordings

Summer Storm

The summer we moved to the Netherlands the was lovely. As we were settling into our new lives we got to enjoy some beautiful sunny days. The evenings, however, were different. With all the heat and humidity came these amazing lightening storms.

tags: recordings


I recently took a flight from Amsterdam to London. The flight time is only 40 minutes, but before that there's a 20 minute taxi from the terminal to the runway. You cross a motorway and a canal to get this runway. It's in the middle of a field far from any buildings besides a small control tower. This runway is the Polderbaan.

tags: recordings

Ten years

On this day in 2009 Keven and I met a small group of friends and family at the McMenameins Edgefield Hotel in Oregon. We gathered together in a shady part of the gardens and said a few words.

tags: recordings, family

Less Ordinary

I recently rediscovered this old recording I made in February 2006.

tags: recordings


Dinner time Teddie noises.

tags: recordings, family

7 reasons not to skip the tests

We've all been tempted to skip writing the tests. Whether it's time pressure, business pressure, the complexity of testing, or we just want to get on with something else. We might be tempted to say "YOLO!" and move on. So here's a list of reasons why you might want to think twice before doing that.

tags: testing, dev

Minsk Tunnel

I was in Minsk for work. On my walk back to the hotel I could hear singing coming from one of the pedestrian tunnels going under the main road. I took a diversion and recorded as I walked through the tunnel.

tags: travel, recordings

How I organize my cloned git projects

For a while I've been looking for a better way to organize the git repos I work with. I've tried just dumping them into a single directory, and I've tried adding sub folders such as personal, work, and tools. But both of these solutions had the same problems:

tags: git, dev


A happy heartbeat.

tags: recordings, family

My top 3 lessons from JSConfEU 2017

Our front end team at Usabilla had the amazing opportunity to attend JSConf EU in Berlin this year. It was a fantastic experience for us all and we came home having learned a ton. This is just a summary of my key take-aways from the conference.

tags: dev, conferences

Paris Metro

French accordion player on the Paris metro.

tags: travel, recordings

Paris Market

Strolling through a Parisian market with my wife and mother-in-law. French, and ambulances, and squid, oh my!

tags: travel, recordings

Windmolens Harp

On national windmill day we came across an art performance in a field by a windmill. It was a mix of ambient audio coming from speakers attached to the sails of the windmill accompanied by a harp and poetry recitals.

tags: recordings

Automated middleman deploy to Github pages

I recently switched from Jekyll to Middleman for my personal website. After using Middleman for a couple projects I felt that Middleman was much easier to setup and manage than Jekyll, also I really don’t like liquid templating. The one thing I missed from Jekyll was automated deploys to Github pages. It wasn’t very difficult but you have to jump through a few hoops. Since I’m running my own build I decided to add some tests for my static site too. So here’s the how-to.

tags: dev

Moving On: What I learned at Cozy

Today is my last day at Cozy. 😢  My wife and I are flying to the Netherlands to start a new adventure close to my Dutch family. I started at Cozy in January 2014 as a front-end engineer. I have an agency background, and after spending several years working on client websites, I was excited to have a chance to do something different — to work on one product with a cool team.

tags: career, dev

Why I love test-first TDD

Twelve months ago I had hardly written a single test. After some encouragement and guidance on how to write tests my world changed. Yes, there's lots of evidence that says writing tests reduces bug density (which is awesome), but that alone isn't necessarily going to persuade you to take the time to do them. What made me adopt a workflow where I write tests first? The fact that I enjoyed it!

tags: tdd, dev

Lodash, Knockout, and functional programming

Lodash and functional programming offers some wonderful ways to make code cleaner and more readable. But they don't always play nice if you happen to use Knockout observables. I'm going to introduce a way to make handling observables in functional style easier.

tags: dev

Professional Resolutions

I've never been big on New Years resolutions. I've always leaned towards a ’let my yes be yes, and let my no be no’ mindset, and I've never been confident in my ability to keep a resolution so making them just seemed disingenuous for me. But this year I feel different about it. Perhaps it's due to hitting the big 3-0. So here's what I'd like to focus on this year:

tags: dev

Using local environment (ENV) variables.

Often enough you'll need to reference sensitive credentials in your project, or give an easy way for people using your project to change environment relative information in your project. Normally it's not ideal to commit sensitive information to a public repository. Neither is it ideal to commit code which only works for your setup. Enter 'Environment Variables'.

tags: dev, command line

Code for Everyone

I've been excited to hear more about initiatives like Code Club and, which aim to make code a normal part of a child's education.

tags: dev

Moving from shared hosting to Github pages

When my shared hosting plan was coming up for renewal I struggled to find a hosting service that I liked. I was hoping for good uptime, something that didn't break the bank, and preferably something with a decent UI. (Maybe I was asking to much.) Webfaction was a great option for a while but $9.50 a month for a few small sites was more than I wanted to spend. That said, the UI and features make Webfactions my favourite shared hosting option.

tags: dev

Getting Involved: Giving something back to the web dev neighborhood

A year ago my wife and I bought our first house. Like any other unprepared first-time homeowners we asked neighbors for advice, tools and a helping hand with projects. A year later we're a little more confident, own a few more tools and now we get be the neighbor who can lend a hand. I think I've reached a similar point with web development.

tags: dev

Front-end Legos: Keeping your CSS maintainable!

It doesn't take long for a project to get unwieldy if you don't have a good system for creating your styles. I recently attended Webvisions where Shay Howe ran a workshop titled "Front-end Legos" that gave some pretty good advice on keeping CSS clean and maintainable. Here's the run down of the best tips I took away from the workshop:

tags: dev

Explore tags