Like many of us, I'm on Facebook. I try to stay away from the social games, since most of them are poorly veiled attempts to hook your brain on electronic crack until you're willing to pay for it (I'm looking at you, Farmville), and some of them are out-and-out information pirates. But one that I succumbed to completely was Bejeweled Blitz, created by PopCap. PopCap is truly the master of simple little games that will suck your life away, and I have had my brain claimed by Bejeweled variants from PopCap and other developers before. In fact, I share this weakness with one of my online poker friends, Missy; I convinced her to sign up for Facebook by telling her about Bejeweled Blitz. Full disclosure, she was thinking about it anyway, but I think hearing there was a cool new (to her) Bejeweled variant free on Facebook was the final straw.
As we both practiced for literally hours per day, we got to be pretty good at it. In the spirit of competition, Missy would occasionally accuse me of cheating when I set a particularly high score for a week. In one conversation, she commented that Todd had semi-jokingly suggested that I had written a program to play Bejeweled for me. I was flattered that he gave me so much credit - I thought that writing such a program would be so tough as to not be worth the effort. But it got me thinking: could it be done?
Playing Bejeweled for hours a day, 60 seconds at a time, is a great way to waste your life. But I found that my mind would wander while I played, letting me muse on the activities of the day and look at them from many different perspectives than I usually would. When I started playing I was coping with a very unpleasant work situation that I hadn't decided how best to change. As things came to a head about a year ago, I think my time playing Bejeweled after work was therapeutic and productive, letting me find creative ways to deal with some of the less technology-related problems (i.e. politics) that I would not have considered if my mind weren't idle anyway.
Fast forward 8 months or so, and I had no major problems to work out while I played Bejeweled. My work-related stresses were greatly diminished, and I once more felt like I was contributing my best to a company that appreciated my strengths and gracefully accepted my weaknesses. That left me with a problem-solving technique in search of a problem. When Todd commented about writing a program to play Bejeweled automatically, I found my problem.
Stay tuned for Part 2: Defining the Game