Derek Sivers posted this on his blog - I'm interested how other programmers in stackoverflow would approach this.