Source: http://attiliocarotenuto.com/project/having-fun-and-keeping-the-lights-on-how-to-design-great-games-while-keeping-your-business-afloat