Toward less injection

Here’s a habit that may help to reduce the complexity of your dependency injection tree...

Alikewise (dating by the book)

Thank you As of December 2016 we have shut down Alikewise.com. We are thrilled with the response to the site and we hope you found romance, or at least a good read...

KPIs are software

It’s easy to think of key performance indicators as a task to be tacked on to the end of a project...

Time well spent

Critical to developer and company success is the idea of time well spent...

Decker, for a prettier Twitter

I made a Chrome extension which makes Twitter.com’s UX more tolerable, called decker...

Lore

Code has a user experience. Our methods have a UX. Our data models have a UX...

Principles of null-free programming

Nulls are a notorious source of bugs in many programming languages. Here, I sketch out a way to avoid them, using C# for illustration...

Imagining version control for APIs

Versioning is, right now, merely a human label. We have helpful conventions like semver, but one still relies on human judgment as to the definition of a “notable” change...

Three ways the new iOS ad blocking hurts Google

Apple’s ad blocking API is good for users and bad for Google, in 3 ways:..

Three outcomes of the adpocalypse

It appears that Internet advertising is going through a bit of a shakeout...