Writing

I write about software engineering and good work habits, along with some of my own personal opinions to spice things up a bit.

Articles

My first failed product

A year after launch, I’m declaring my first product a failure. Here’s why it didn’t work out, and what I plan to do differently next time.

Testing and tradeoffs

More tests aren't always better. In this post, we explore testing tradeoffs and the importance of using a mix of tools to control software quality.

How much does a web application cost?

It’s simple to ask, but difficult to answer. In this post, we explore factors affecting software cost so you can get more value from your development projects.

For a better web, let developers learn

Systemic demands on developers prevent them from building deep expertise, and it's holding back the web on an industry-wide scale. Here's why.

Choosing a good development partner

When developing new software, timelines, cost, and quality can be hard to control. Here's how to choose the right development partner to keep things on track.

The economics of JavaScript web apps

Your single page JavaScript web app probably doesn't make you as much money as its old-school alternative. Sorry.

Fix the right problems in your code

We spend too much time making vanity improvements to our code, while failing to make refactors that affect the long-term quality of our software. We need to do better.

Twitter makes me feel bad

Twitter has some great web development chatter. However, it also makes me feel like a fake and a failure. Here's why, and what I intend to do about it.

Things I wish I understood before starting an agency

In 2015 I started a digital agency. As an employee who made the switch to running a business, here are some things I wish I'd understood before starting.

Putting Amazon Textract to the test

Amazon Textract extracts text and structured data from scanned or photographed documents, but how reliably can it be used for business process automation? We put it to the test.

How to thrive in an automated business world

How can your business thrive when you're constantly being disrupted by leaner, faster, more automated competition on a global scale?

Automate where it matters with process maps

We've experienced how competing stakeholders, unclear ROIs, and uncertainty can make committing to business automation difficult. Process maps provide a powerful way to clear the fog.

Goals matter

Without a clear definition of success, it's hard to know which direction to take, or whether you're making any progress. Goals provide direction and clarity for your teams.

The power of small development phases

Imagine this scenario — someone in your company proposes a new software feature with the potential to save the business …

A home office for productivity

At Leaf, we embrace remote work to get a productive edge. However, it’s easy for a remote environment to work against you.

Behavioural traps in software teams

In my experience of software teams, there are a few behavioural traps that leaders (senior stakeholders …

Working too much? Please stop

These days, people in most organisations are encouraged to work in their personal time …

5 tips for actually shipping a side project

We took Howdy, our own little app, from an idea to a fully published SaaS application entirely in our spare time. During its development…

There are no excuses for poor engineering in 2017

Writing great code is easier than ever, and yet we act like it doesn’t matter.

5 tips for a smoother code review process

Some tips for a better code review process based on my experiences working at Holiday Extras.

Taming your Technical Debt

What I learned about getting technical debt within a large team under control while working at Holiday Extras.

5 tips for great performance from your Cordova app

Back from the days before React Native, some tips for getting the best performance possible from a Cordova based mobile app.

Personal updates