Jul 3, 2012

Textbooks are Broken


Last week I took home a computer science textbook to learn more about computer science. I was in a unique position where I had both the resources and motivation to learn something new. A chapter into the textbook though, I realized that textbooks are horribly broken for several reasons:

They become out of date extremely fast

My first thought was that my computer science textbook was obsolete because its subject was of a fast moving industry. But then I realized that there was more to it. Textbooks become obsolete because of the little things; e.g. when they reference an outdated current event, or a debunked theory, or someone’s age, or pop culture. Interestingly enough, the core material of the book remains fairly relevant. And even if the core material isn’t relevant, it is still useful. For example, in the CS book, I read about the history of computing. It was missing the last 10 years of development, and you could argue that I don’t really need to know how vacuum tubes work to be a programmer in 2012, but that’s not why the material felt obsolete. That was because they referred to a 30GB hard drive as “fairly impressive.” I felt like a farmer.

This might sound amusing, but I think it’s actually a serious problem. When students cannot take a learning resource seriously, whether it is a teacher or a textbook, it becomes really easy to brush off learning altogether.

They are not real time

One way to make textbooks “real time” would be to make them digital and stream twitter timelines and news and RSS feeds. This is NOT what I mean by real time. I mean real time feedback. The most important facets of learning (in my experience at least) are iteration and feedback. Iteration happens after feedback. The more frequent the feedback, the higher the number of iterations. Textbooks offer neither feedback, nor make it easy to iterate. Textbooks have always been a one-way tool. That means no feedback, and no iteration. The problem runs deeper than just textbooks, of course, but making the things exams are based on more conducive to iteration is a good start.

An upgrade in textbook technology is past due

There’s a whole new post waiting to be written about this, but let’s skip the argument and conclude that college is still a valuable ritual for 18 year olds. Nevertheless, how students learn can still change.

I want to experiment with textbooks

In light of all of the above, I want to do a little experiment. I’d like to teach a small group of people programming with the help of a modern textbook. The textbook will focus on two things: staying relevant and quick feedback. I can guarantee that I am not qualified to teach programming, and I’m anticipating that some of the people trying this experiment with me will be better programmers than I am. But that’s not my concern. My goal is to make a better textbook. Here are some specific details about the course I’m offering:


You will both be taking the course and be a part of an ongoing dialogue on how to make my textbook better.

  • Cost: Free
  • Material: Ruby on Rails (sort of)
  • Start Date: In the next 2-3 weeks
  • Duration: Indefinite, with weekly lessons
  • Benefits: You will learn a little bit of programming my modern textbook works. If the textbook doesn’t work, you will maybe learning a little bit about programming
  • Commitment: The only thing I ask you to commit to is that if you decide not to continue with the course at any point, you will tell me why it didn’t work for you. Other than that there is no commitment. Location: Doesn’t matter. Everything will be online. You will interact with me (or any other instructor) only through the textbook.
  • What you need: Minimum requirements are to have a working computer and an internet connection.
  • Warning: This is merely an experiment. I guarantee nothing. I think it will be fun. Do not quit your job to do this. I’m definitely not quitting mine.

Send me an email if you’d like to help me with this experiment. I think you’ll have more fun with this if you’re actually interested in learning programming and if you’re naturally curious.

This will also be a private thing, so once the lessons start, I won’t be adding more people.

If you like this post, please share it on Twitter. You can also email me email me or subscribe to my RSS feed.