Andrew Stellman: Pushing the interactivity envelope

By Caitrin McCullough
January 29, 2008 | Comments: 0

Here's the latest from Andrew Stellman, coauthor of Head First PMP and Head First C#.

andrew.png Before I start today's post, I want to put in a little plug for Building Better Software—that's a blog where Jenny and I write about building software. If you like what you're reading here, you can keep up with us there! And if you want to get in touch with us, that's the best way to do it. Okay, onto the post!

One thing that makes a Head First book unique is that it really focuses on interaction. If you flip to the introduction of any Head First book, you'll see this:

We included challenges, with exercises, and by asking questions that don't always have a straight answer, because your brain is tuned to learn and remember when it has to work at something. Think about it: you can't get your body in shape just by watching people at the gym. But we did our best to make sure that when you're working hard, it's on the right things. That you're not spending one extra dendrite processing a hard-to-understand example, or parsing difficult, jargon-laden, or overly terse text.

When we were writing Head First PMP, we had to put a lot of thought into how to do this for the PMP exam material. The Head First exercises and puzzles have typically been oriented at solving programming problems. Jenny and I had a real challenge: how do we take those great elements and reorient them so they work for a book on project management? It took a lot of effort, but we figured out all sorts of ways to adopt the Head First elements to the PMP material. One of my favorites is how we used the Fridge Magnets to teach how a work breakdown structure works. And we had a chance to come up with some new elements, like the Question Clinic—we used that to teach readers about the different kinds of questions they'd see on the PMP exam.

But we really wanted to push the interactivity envelope when we started Head First C#. One thing Jenny and I noticed about the current state of the art in C# books—and programming books in general—is that they don't actually ask you to write a lot of code. Personally, if I need to learn a new language, the first thing I do is come up with a project to build. So we made sure to give the reader a whole lot of projects. Also, for some reason every C# book starts out having you write console applications. And you keep writing console applications over and over again, even though almost nobody actually writes console applications in real life. As I pointed out in my last post here, it's a lot more satisfying to put together GUI applications, and the Visual Studio IDE makes it really easy to do it... and it's a great learning and teaching tool.
take_a_drink.png Don't get me wrong—we had some pretty big shoulders to stand on. Head First Java, Head First Design Patterns and the other Head First books gave us a wealth of great elements: Fridge Magnets, Who Am I?, Sharpen Your Pencil, Pool Puzzle, Behind the Scenes, Fireside Chats... we really got a huge amount of mileage out of them. But one thing I'm enormously proud of is the fact that we were able to add our own unique elements. The first thing we did was repurpose the exercises—which were previously written exercises—so that each exercise laid out a specific programming problem that had to be solved. (I'll talk more about exercises in tomorrow's post.) But that presented a new problem: sometimes we just wanted to present a set of steps to follow, rather than give a programming problem that had to be solved. We fixed this by adding a new element called "Do This" to let readers know that they'll be able to follow the steps, and won't have to try to fill in any missing pieces. But best of all, we added one more new element: the three labs that give the reader a chance to really test themselves.

Another thing we wanted to do was make the book fun. Since we have so many projects, I put a lot of effort into making them as entertaining and fun as possible. There was one project where I started writing an accounting application where workers were paid wages for various jobs that they did. It was really, really boring. So I talked to Lisa—my girlfriend, and an amazing tech reviewer for Head First C#, Head First Software Development, Head First PMP and Applied Software Project Management—about how to make it more entertaining. She suggested turning workers and a boss into worker bees and a queen bee, and using honey instead of money. Somehow, that made the exercise more entertaining. Not only that, but we came back to the bees a couple more times, and eventually have the reader write a fully functional beehive simulator, with cute little flying bees buzzing around the screen.

Now that Head First C# has been out on the market for almost two months, we've gotten some great feedback. Some people have asked some very good questions on the forum, and it shows that a lot of readers have been taking the exercises seriously and really working through them. I can't tell you how gratifying it is to see that. Jenny and I love our readers—keep it up, guys!


Leave a comment



RSS Feed

Twitter

Facebook


Looking for source files, code, exercise answers, and other materials to go along with your Head First book? Go to this page, find your book on the list, and click on the title.

Get The Latest Head First Tweets!

Get the latest Head First books here!

Head First Algebra Cover Head First PHP & MySQL Cover
Head First Rails Cover Head First Web Design Cover

Head First Algebra, Head First PHP & MySQL, Head First Rails, and Head First Web Design are now available.

Buy 2 Books, Get the 3rd FREE! Use the discount code OPC10 when you buy direct from O'Reilly.