Patrick Joyce

January 1, 2023

What I Read in 2022

January Enemy of All Mankind - Interesting and relatively light read of piracy and the... Continue Reading »

August 11, 2022

A Brief Morality Play About A Cool, User Friendly Feature

I saw a feature request from my friend and former colleague Ellen Beldner last night... Continue Reading »

March 5, 2022

What I Read in 2021

January Pachinko - Epic multi-generational story of Koreans in Japan. Station Eleven - Excellent. I’m... Continue Reading »

February 14, 2021

What I Read in 2020

I read far fewer books in 2020 than in past years. Pandemic stress and the... Continue Reading »

June 16, 2020

OKRs: Delivery Results, Adoption Results, and Impact Results

Years ago I wrote about identifying and focusing on the key metrics that make your... Continue Reading »

March 17, 2020

What I Read in 2019

A little later than usual getting this up, but particularly given that everyone is staying... Continue Reading »

April 21, 2019

How to Make Crabcakes

One of the key pieces of fatherly wisdom I’ve imparted on my children is “Never... Continue Reading »

January 21, 2019

An Overly Serious Analysis of Hi-Ho! Cherry-O

We bought my 4 year-old Hi-ho! Cherry-O for Christmas. It is apparently a classic game... Continue Reading »

January 9, 2019

What I Read in 2018

Here are the books that I finished this year (with my favorites in bold): January... Continue Reading »

April 8, 2018

Interview With Me at Managers Club

I did a brief interview with Managers Club. Here’s one bit about advice I give... Continue Reading »

December 31, 2017

What I Read in 2017

Here are the books that I finished this year (with my favorites in bold): February... Continue Reading »

May 6, 2017

Managing Unmanageable Complexity

I recently spoke at RailsConf about one of the worst bugs I’ve ever been involved... Continue Reading »

February 20, 2017

Flying With Kids

Aidan's First Flight at 9 Weeks Old I write this on the plane as we’re... Continue Reading »

February 18, 2017

Setting Up Microsoft Surface Ergonomic Keyboard on Mac (Sierra)

Update: This problem is fixed in MacOS Catalina. MacOS now recoginizes the Surface Ergonomic Keyboard... Continue Reading »

January 9, 2017

What I Read in 2016

I finished 18 books this year. I did a few things to read more. First,... Continue Reading »

December 30, 2016

Setting Up Microsoft Surface Ergonomic Keyboard on Mac (El Capitan)

Problem OSX (at least El Capitan) doesn’t recognize the Microsoft Surface Ergonomic Keyboard as a... Continue Reading »

January 1, 2016

Looking Back at 2015

It was quite the year. 2015 wasn’t quite as eventful as 2014—hard to top the... Continue Reading »

April 19, 2015

What did I do with all that time?

Inspiration is for amateurs; the rest of us just show up and get to work.... Continue Reading »

December 11, 2014

Email Design from OpenTable

I very much like the new1 confirmation email design from Open Table. This design is... Continue Reading »

November 12, 2014

Build vs. Buy

When faced with a new project the first choice a technology leader has to make... Continue Reading »

July 3, 2014

What is a "valid" character?

If you’re going to limit the characters that can be used in a password, don’t... Continue Reading »

May 13, 2014


Over the last few weeks I’ve spent a little time at night redesigning this site.... Continue Reading »

March 3, 2014

Agile with a lowercase 'a'

A few weeks ago I was listening to Episode 26 of the excellent podcast Debug... Continue Reading »

January 29, 2014

Executable Comments: `say_with_time`

I have a rather well-documented distaste for comments. There are times where you want explanatory... Continue Reading »

August 5, 2013

Great New Software: Calca

Calca is a hybrid Markdown editor and calculator. It’s awesome. Markdown First I should explain... Continue Reading »

July 19, 2013

Build It Twice

Good programmers hate duplication. They’re intelligently lazy. So as a general rule they try to... Continue Reading »

July 17, 2013

The Senior Software Engineer

Yesterday, my former colleague Dave Copeland published his second book: “The Senior Software Engineer”. Dave... Continue Reading »

June 20, 2013

How do you end up with a great product a year from now?

Nail the next two weeks. 26 times in a row.

At the beginning of a startup there generally isn’t a lot of ceremony regarding planning.... Continue Reading »

June 14, 2013

The Genius of Uber

Photo from Rob Nguyen on Flickr The on-demand car-service company Uber has inspired much deserved... Continue Reading »

March 2, 2013

The Slow Android Upgrade Curve is a Real Problem

Tim Bray wrote a post on Tuesday agruing that Google Play Services means that the... Continue Reading »

February 15, 2013

Calculating Sample Sizes for AB Tests with Vanity (and R)

You want to run an AB test. How many participants do you need in your... Continue Reading »

January 18, 2013

Link: Any sufficiently technical expert is indistinguishable from a witch

As Arthur C Clarke puts it, "Any sufficiently advanced technology is indistinguishable from magic". Here... Continue Reading »

January 17, 2013

reject bang considered harmful

reject! has some (at least to me) unexpected behavior that can easily lead to bugs.... Continue Reading »

January 4, 2013

Two Small OSX Settings Changes that Make Me Much Happier

RAM-only hibernate mode ~> pmset -g | grep hibernatemode hibernatemode 3 ~> sudo pmset -a... Continue Reading »

January 3, 2013

Non-Even AB Testing Splits with Vanity

A question recently resurfaced on the vanity-talk mailing list about setting up tests with non-even... Continue Reading »

June 5, 2012

Rails 2.3 fix for CVE-2012-2660: Unsafe Query Generation

Last Thursday the Rails security team announced CVE-2012-2660. This bug takes advantage of an issue... Continue Reading »

March 24, 2012

The Elements of Ruby Style: Predicate Methods

A method that returns true or false is called a “predicate method”. In Ruby, there... Continue Reading »

March 10, 2012

The War on Comments Isn't Over

Back in January, my very talented colleague Dave Copeland and me spent a bit of... Continue Reading »

February 20, 2009

Boxee, Hulu, and the Future of Video Advertising

Boxee is a fork of the excellent XBMC media player that runs on Macs, AppleTVs... Continue Reading »

December 18, 2008

Teachers and Quarterbacks

- Quarterbacks by Ableman / Teacher by Editor B Most Likely to Succeed, the most... Continue Reading »

December 2, 2008

Alexa Web Crawler - TamperedWithCookie Error

I’ve recently started receiving a ton of CGI::Session::CookieStore::TamperedWithCookie errors on an application I manage. All... Continue Reading »

November 21, 2008

Interesting Things to Read

I’ve recently read some excellent long form magazine articles. Michael Lewis The End Michael Lewis... Continue Reading »

November 7, 2008

Error - rake ultrasphinx:configure

A new Web Designer I work with was running into an error when attempting to... Continue Reading »

November 5, 2008

Election 2008

- flickr user sanjaysuchak Anyone who knows me knows that I am very happy with... Continue Reading »

October 15, 2008

The Me Meme

Taking a break from work to participate in a silly blog meme. Take a picture... Continue Reading »

September 22, 2008

Freezing to Rails 2.0.4

One of our applications is still running Rails 2.0. I’m planning to upgrade to 2.1... Continue Reading »

July 26, 2008

Explanatory Text is a UI Design Smell

I’ve had to switch the phone on my Verizon account a few times in the... Continue Reading »

July 1, 2008


I think that the release last year of the iPhone represented the biggest jump in... Continue Reading »

May 2, 2008

Cool Shopping Cart Interface

Baggu sells reusable shopping bags. Their shop has a simple interface that makes it really... Continue Reading »

April 24, 2008

Web Content Mavens Meeting: Tuning Up Your Web Analytics

I attended the Web Content Mavens Meeting tonight. Phil Kemelor gave a presentation on “Tuning... Continue Reading »

March 19, 2008

SandwichBoard Launch

In September I left Lockheed Martin to start a company with my very talented colleague... Continue Reading »

March 4, 2008

Why the Obama "Brand" Is Working

Interesting interview with graphic designer Michael Bierut about the overall excellence and startling consistency of... Continue Reading »

February 7, 2008


Ian and I are currently working on adding support for Authorize.Net CIM to ActiveMerchant. Things... Continue Reading »

January 24, 2008

Azureus Error: Malformed RSS XML: The reference to entity "xxx" must end with the ';' delimiter.

I have Azureus set up with the RSSFeed Scanner plugin to check a few Mininova... Continue Reading »

January 23, 2008

User Experience at the Doctor's Office

Last week, I went to the doctor for a checkup for the first time since... Continue Reading »

January 22, 2008

alias versus alias_method

Last week Ian and I were running into a problem with alias_method. It turned out... Continue Reading »

January 13, 2008

Airline Security

I was catching up on some reading today and came across two sad commentaries on... Continue Reading »

December 22, 2007

Interview With Ian

AjaxBestiary, a site about rich internet application development, recently interviewed my business partner Ian Lotinsky.... Continue Reading »

November 21, 2007

I'm a Rails Contributor!

My first patch was committed to the Rails trunk yesterday. I’m pretty excited. The community... Continue Reading »

November 10, 2007

NovaRUG Presentation - November 28

I will be presenting at the Northern Virginia Ruby Users Group meeting on Wednesday, November... Continue Reading »

November 9, 2007

Getting Google Notifier for Mac To Work With Multiple Accounts

I am a big fan of the Google Notifier. Unfortunately it is limited to one... Continue Reading »

October 18, 2007

Speaking at the November NovaRUG Meeting

I will be speaking about the Liquid templating language at the November meeting of the... Continue Reading »

October 18, 2007

NovaRUG Recap

I went to the NovaRUG meeting tonight. Here is a recap. Microformats Ray Daly gave... Continue Reading »

October 18, 2007

EasilyInvited Will Breath Again

I took EasilyInvited down at the beginning of September because I didn’t want to pay... Continue Reading »

October 17, 2007

Underscores are Invalid in Host Names

The application I’m on uses cookies tied to a particular subdomain. The hostnames we were... Continue Reading »

October 16, 2007

Mexican HS Team Plays Texas Team in American Football

[Why We Compete]( Really interesting article with a lot of nuance. Some of the comments... Continue Reading »

October 2, 2007

One Month of Work

Finished in 4.252455 seconds. 119 tests, 263 assertions, 0 failures, 0 errors Finished in 6.626427... Continue Reading »

September 29, 2007


Me and Ian attended RubyEast today. It was a good conference, obviously much smaller than... Continue Reading »

September 19, 2007

Italian Comment Spam?

I’m not surprised that the few posts here that google ranks relatively high (mostly my... Continue Reading »

September 19, 2007

Confusing Rails Error Message

<code> ArgumentError: Admin is not missing constant UsersController! method load_missing_constant in dependencies.rb at line 240... Continue Reading »

September 3, 2007

Time To Build That Airplane

I can’t remember where I read it, but I remember someone once saying that doing... Continue Reading »

September 3, 2007

MLS Highlights Script for XBMC

At my house we have an XBox set up to run XBox Media Center hooked... Continue Reading »

August 9, 2007

What I'm Reading

A lot of times I read something that I think is cool and I want... Continue Reading »

July 23, 2007

Rails Environments Gotcha

I’ve been working on an application that sends emails. (You’ll hear more about the application... Continue Reading »

July 23, 2007

Introducing EasilyInvited

I’ve been working on an application for a while. There are a bunch more things... Continue Reading »

July 21, 2007

Johan Cruyff on Simplicity

**Simple play is also the most beautiful**. How often do you see a pass of... Continue Reading »

July 19, 2007

July NOVA RUG Recap

I went to the NOVA RUG meeting tonight. It was my first NOVA RUG meeting... Continue Reading »

July 16, 2007

Strange Ticketmaster Validation

The most important thing that you can do for the security of your web application... Continue Reading »

July 11, 2007

Broken URL Encoding in .Net and the AntiXssLibrary

Properly encoding user input is one of the most important security precautions that you can... Continue Reading »

July 2, 2007

Kiva Loan Repaid

Back in December I made a small loan to a woman in Mexico via Kiva,... Continue Reading »

June 20, 2007

Mephisto: Can't Respond to Comments on Your Own Blog

Up until today I had been unable to comment on my blog. For a while... Continue Reading »

June 20, 2007

Helvetica and Grid Based Design

(photo by aeioux) I’ve been trying to get more into the graphic design aspect of... Continue Reading »

June 5, 2007

Techniques for a Modern Web UI Presentation

Two weeks ago I gave a presentation to my department at work about Modern Web... Continue Reading »

May 20, 2007

The Rails Way: Jamis Buck and Michael Kosiarski

The Rails Way Goal is to describe the code style of rails through some examples.... Continue Reading »

May 20, 2007

Scaling Twitter

Britt Selvitelle Alex Payne Preconceived notions about twitter, because a month ago, the “5 questions”... Continue Reading »

May 20, 2007

Rubber Meet Road: Working with Designers

Amy Hoy Designers working with developers. We’re all nerds, but different types of nerds. We... Continue Reading »

May 20, 2007

RailsConf Day 3 Overview

I wanted to go to RejectConf or the Pivotal party at Rock Bottom, but I’m... Continue Reading »

May 20, 2007

Impromptu Open Mic (Rails Security: Theory and Practice Cancelled)

Dan Moniz The speaker is a no show. Aint that about a bitch. Impromptu Open... Continue Reading »

May 20, 2007

Dave Thomas Closing Keynote

Starts out by thanking Matz. Would like to see Rails set the standard for integration... Continue Reading »

May 19, 2007

Ze Frank Keynote

Chad Fowler intro: talking to Ze about the conference he was expecting goofy, but talking... Continue Reading »

May 19, 2007

Xen and the Art of Rails Deployment

Xen and the Art of Rails Deployment Ezra Zygmuntowicz - Founder of Engine Yard.... Continue Reading »

May 19, 2007

Tim Bray Keynote:

Question to start: who are all you people? A lot of the crowd works for... Continue Reading »

May 19, 2007

Steven Smith Keynote: "Enterprise" is not a four letter word

Steven Smith of FiveRuns Is Rails ready for the Enterprise? Is the Enterprise ready for... Continue Reading »

May 19, 2007 Inside Out

Nick Merwin The talk is about getting an understanding of what is going on under... Continue Reading »

May 19, 2007

Ruby Tooling: State of the Art

Brian Leanord How’s Neteans Like Rails Free Open Source Plug-in Architecture Large community Download latest... Continue Reading »

May 19, 2007

RailsConf Day 2 Overview

What a day. I’m glad I am taking notes, because this morning’s sessions fell like... Continue Reading »

May 19, 2007

Practical Design for Developers

David Verba, Adaptive Path - Came there to work on measuremap the rails app that... Continue Reading »

May 19, 2007

Open Mic Demo Session

MasterView Template Plugin/Gem We need to work better with designers. Can work with html files... Continue Reading »

May 19, 2007

Mapping Rails to Legacy Systems

Devon Jones, Architect of Web Systems, Vonage Stephen Becker, Developer, Vonage They’re going to talk... Continue Reading »

May 19, 2007

Avi Bryant Keynote

I need to learn Smalltalk. Avi seems to be one of the smarter people I’ve... Continue Reading »

May 18, 2007

RailsConf Day 1 Overview

Well, the first day of the week I’ve been waiting for all year is over.... Continue Reading »

May 18, 2007

Lessons from the "Real World"

Dirk Elmendorf, Cofounder of Rackspace This presentation was a bit basic but I think that... Continue Reading »

May 18, 2007

How to do REST right

Scott Raymond, works on BlinkSale Had to stand for the first half of the talk... Continue Reading »

May 18, 2007

Full-stack webapp testing with Selenium and Rails

Alex Chafee and Brian Takita, Pivotal Labs slides They’ve done 15 ruby on rails app... Continue Reading »

May 18, 2007

DTrace on Rails BoF

Just got back from the a birds of a feather session about “DTrace” and the... Continue Reading »

May 18, 2007

DHH Keynote - A Peek at Rails 2.0

Starting with a story about textmate. He liked the mac, but hated all the editors,... Continue Reading »

May 18, 2007

Chad Fowler Introduction

Chad Fowler’s intro: wants to set the focus of the community. Specifically he wants to... Continue Reading »

May 17, 2007

Your First Day on JRuby on Rails: Notes Part 1

Streaming notes: Why they are doing it? expand java, expand ruby's reach. no better way... Continue Reading »

May 17, 2007

Your First Day on JRuby on Rails: Notes Part 2

They're working on a stripped down version of GlassFish that gives the benefits of an... Continue Reading »

May 17, 2007

Harnessing Capistrano: Notes Part 1

First off, I can not overstate how overwhelmingly popular the mac is. There are probably... Continue Reading »

May 17, 2007

Harnessing Capistrano: Notes Part 2

Jamis just made a joke about the sea of macs. I guess I’m not the... Continue Reading »

May 17, 2007

Eric Sink on The Business Of Software

During my flight from BWI to Portland (via Vegas and San Jose) I read Eric... Continue Reading »

May 16, 2007

Off to Rails Conf

I hate packing, so instead I'm procrastinating by writing this post. Tomorrow I will spend... Continue Reading »

April 28, 2007

Subway Maps and Scope Creep

- Mid Manhattan (Current Map on the left, KickMap on the right) I came across... Continue Reading »

April 17, 2007

Bad Error Messages

Last week I was trying to log into an application and I noticed a few... Continue Reading »

March 18, 2007

Outages are an Opportunity to Show Character

Service outages happen. I understand that. But as the saying goes you should judge talent... Continue Reading »

March 12, 2007

I'm on Linked In

I finally finished setting up my LinkedIn profile this morning. I haven't seen that many... Continue Reading »

March 7, 2007

Calling Attention to Features

- Double click any word to get a definition Josh Evnin just wrote a nice... Continue Reading »

February 28, 2007

I'm going to RailsConf!

May 17-20 I'll be in Portland, Oregon for RailsConf 2007. And I could not be... Continue Reading »

February 28, 2007

Commander's Intent

No plan survives contact with the enemy. Military saying Last night I started reading Made... Continue Reading »

January 24, 2007

Beyond Fear

I recently read Beyond Fear by Bruce Schneier and I absolutely cannot recommend it more... Continue Reading »

January 16, 2007

Small World

I know it is getting clichéd to talk about how the world is getting smaller,... Continue Reading »

January 15, 2007


As I've written before I am a huge fan of collaborative filtering, and think that... Continue Reading »

January 5, 2007

VPN and Firewall Issues

Earlier this week my VPN software began giving me "Connection Failed: Remote Host Not Responding"... Continue Reading »

January 5, 2007

Helpful Dialog

Found in the Nortel Networks Contivity VPN Client Continue Reading »

January 4, 2007

During my beautiful 1 1/2 weeks off from work I finally got around to playing... Continue Reading »

January 4, 2007

Cool Stuff From kottke's Year End List

kottke published his best links of 2006 today I must confess that I'm not a... Continue Reading »

January 3, 2007

Selfish Bittorrent

Seems that a team at the University of Washington have implemented a selfish bittorrent client,... Continue Reading »

January 1, 2007

Happy New Year!

Happy New Year to all! I'm not big on New Year's Resolutions (although they may... Continue Reading »

December 31, 2006

P2P Microfinance

Microfinance is the practice of lending small amounts, generally on the order of several hundred... Continue Reading »

December 21, 2006

It is almost 2007? Right?

"The Muslim Representative from Minnesota was elected by the voters of that district and if... Continue Reading »

December 21, 2006

Airport Security

Great article in the New York Times on the absurdity of airport security yesterday. I've... Continue Reading »

December 11, 2006

Secure Deallocation

While unpacking from my recent office move I came across an old copy of an... Continue Reading »

November 22, 2006

Exception Swallowing and Other Ways to Abuse Exceptions

I recently read Rebecca J. Wirfs-Brock's excellent article, “Toward Exception Handling Best Practices and Patterns”... Continue Reading »

November 20, 2006

Obligatory Hello World

This is the obligatory hello world post. I've found that the process of writing often... Continue Reading »