Coding Horror

programming and human factors

Choosing Your Own Adventure

The Choose Your Own Adventure book series was one of my favorites as a young reader.

8 Choose Your Own Adventure book covers

The Choose Your Own adventure books are still around; modern versions can be found at your local bookstore. I bought one today at a local Barnes & Noble to refresh my memory, and although the overall experience is intact, I'm not terribly impressed with the updated art. The original illustrator, Don Hedin (using the pseudonym Paul Granger) had quite an eye for the often fantastic and surreal topics depicted in these books. Here are two illustrations from the first book in the series, The Cave of Time.

Cave of Time art example #1

Cave of Time art example #2

The cover art is just as brilliant, and in full color. Joey DeVilla put together a great montage of the original 66 Choose Your Own Adventure book covers. You can pick up the original Cave of Time – with funky, freaky late 1970s art intact – for a mere penny.

The Choose Your Own Adventure series are early programmer books, I'd say. Whether reading the modern updates, or through inheriting a worn hand-me-down copy, it's encouraging to think that future generations can have the same fun pseudo-programming experience I had reading and re-reading these classic books. Every few pages you make a decision, which leads to a different page in the book. If that sounds like branching and if-then logic – maybe even recursion and stacks – well, it is. Here's a diagram of all possible outcomes in the original Cave of Time book:

Cave of Time narrative map, small

Although it's fun to explore and test all the permutations, the book is also a little bit grim.

  11 return home
  15 new life
  13 deaths

Of the 39 possible outcomes in the book, only 11 are positive. More than two-thirds of the outcomes either result in the player's death, or being trapped somewhere in time, leading out an alternate life.

I suppose this is on my mind today because 28 years later, I feel like I'm still playing Choose Your Own Adventure:

You have landed your dream job as a technical evangelist for Vertigo Software. It is by far the best job you've ever had. Every day is fun. You've become close friends with your coworkers, who are all as passionate about software development as you are. However, over the last three years, the growing online popularity of your blog has eclipsed everything else you do, and opened up many new – but risky – opportunities.
If you choose to continue working and having fun with your friends at Vertigo, turn to page 8.

If you choose to quit your job and wholeheartedly pursue blog-related opportunities, turn to page 10.

I've spent the last six months staring at this page trying to figure out what to do. With some trepidation, I'm now turning to page 10. Thursday will be my last day at Vertigo. I will sorely miss the camaraderie and the many close personal friends I've made at Vertigo. Vertigo remains a fantastic place to work, and if you're a Microsoft ecosystem developer, I can't recommend it highly enough. I'm proud to be a distinguished Vertigo alumnus.

Sometimes choosing your own adventure means closing one door to open another. And I have to close the door on Vertigo, however reluctantly, to fully and wholeheartedly explore the alternatives. It would be unfair to Vertigo and to myself to do anything less. I'm not sure what exactly lies on page 10. I won't lie to you. It's scary to trade the security of a safe, salaried job for the unknowns of your own small business. But the way I look at it, if it's not a little scary, then it's not the right choice. Failure is always an option.

Savage Chickens: Choose your own adventure!

I can tell you that Coding Horror will continue, with a slightly increased emphasis on advertising – but always tastefully. I don't like ads any more than you do, even if I am now relying on them for a substantial part of my income.

But I refuse to become a full-time blogger. I think that's a cop-out. If I look at the people I respect most in the industry, the people I view as role models – Paul Graham, Joel Spolsky, Steve Yegge, Eric Sink, Rich Skrenta, Marc Andreesen, Wil Shipley, Douglas Crockford, Scott Guthrie – they all have one thing in common. They're not just excellent writers and communicators. They build stuff, too. The world has enough vapid commentary blogs. I want to build stuffand talk about it. I have a little micro-ISV startup opportunity I'll be working on, a web property I'm building out with one of the above people. I'm not ready to announce the details yet, but when I do, you'll read about it here.

I can't guarantee I'm making the right choices, but nonetheless, I am choosing my own adventure. I invite you all to read along with me.

Written by Jeff Atwood

Indoor enthusiast. Co-founder of Stack Exchange and Discourse. Disclaimer: I have no idea what I'm talking about. Find me here: http://twitter.com/codinghorror