I was actually just thinking about a Tamagotchi-like program that required regular productive activities in order to keep a virtual pet alive, healthy and happy. A computer program would not need to deal with all that messy real world hardware; it would all be virtual.
You could also add a function that makes your virtual pet unhappy if you spent too much time reading Hacker News. Instant productivity boost.