I make tools to help people write great software. I am a software engineer at Apple helping businesses succeed.

Previously, I led the platform team for Yahoo Mail’s web application which is relied upon by millions of people every day around the world.

  • Working in the Shed

    Fellow procrastinator Matt Gemmell is facing something very relatable: the constant availability of time-sucking distractions and what we can do about it. We have limited time. Our workdays are only so long. Our evenings. Our lives. We spend too much of our time on trivia. Some distraction is healthy and necessary, but we all know More →

  • Serve Del Mar

    For my friends in the Bay Area: Tomorrow, August 3rd, there’s a great volunteering opportunity to help Del Mar High School in San Jose get ready for their school year. We plan to help clean up their campus, renovate the teacher’s lounge, host free health check-ups for students, and more. Here’s what our last event More →

  • Why mobile web apps are slow

    Drew Crawford wrote a very long and well-cited article about why mobile web apps are slow. Now I am going to warn you–this is a very freaking long article, weighing in at very nearly 10k words. That is by design. I have recently come out in favor of articles that are good over articles that More →

  • NeDB: SQLite for Node

    I’ve been using the Node Embedded Database in a project and its MongoDB-compatible API has been a joy to use. DailyJS has a short and sweet writeup of NeDB and how it works. While my current project has outgrown it, I’m considering using NeDB for Yeti since it’s pure Node and can even be used More →

  • Stream Concat Anti-Pattern

    NodeConf 2013 was great. You should go. I learned a lot of new stuff. Yesterday, I applied things I learned there for the first time. I often write code that looks like something like this: var stdout = “”, child = cp.spawn(process.execPath, args); child.stdout.setEncoding(“utf8”); child.stdout.on(“data”, function (chunk) { stdout += chunk; }); child.on(“close”, function () More →

Follow

Featured Blog Post

  • Starting at Apple

    I will help small businesses succeed by building Apple Business Essentials — a product which brings together device management, 24/7 Apple support, and iCloud storage into flexible subscription plans. More →