Every good work of software starts by scratching a developer's personal itch