F4T in the educational system

Somewhere on planet earth, a dude named Shimon Schocken teaches a pretty revolutionary university class called From Nand to Tetris in 12 Steps. The course starts off with little else but the idea that “God gave us NAND” (a particular kind of logic gate). From this humble beginning, students build a small computer from the hardware up and end up with a very simple game machine.

I repeat: the students build a computer. In one course. And then, fittingly, they play Tetris. (I wish I could have taken this instead of high school statistics. All I did was play Tetris in that class anyway.)

Schocken says of his incredibly unlikely course:

And this, in a nutshell, is one of the biggest differences between academic programs and real life: In real life, most of the interesting problems and opportunities that we see present themselves as multi-disciplinary things… Everything is kind of gelled together.

And yet academic programs are structured around topics—they have to be structured around topics. Each topic is covered by a standalone course, taught by typically a different professor, and accompanied by a 1000 page textbook.

And as a result of that, students are becoming increasingly more and more specialized in niche pockets [in] computer science and increasingly they miss the forest for the trees.

— Shimon Shocken, computer science professor, “From Nand to Tetris in 12 Steps” (Google Tech Talk lecture video)
Emphasis all mine! AAAALLL MINE I tell you!

More excerpts:

“It’s a lot of fun taking this course, and building the computer. Students do it with a great deal of motivation.”


“We don’t talk much, we build a lot of stuff.”


“The course is self-contained. The only thing you need to know to take it is programming, which is surprising. You don’t have to know anything about architecture, VM or whatnot. All the knowledge that you need to know to take the course is self-contained in the textbook and the course.”

This is not only interesting because of the content of the video (and course), but for the teaching approach. It sounds like a guided Montessori on steroids.

It’s been my experience that traditional education (of all grade levels) is fundamentally broken; as the joke goes, you end up knowing more and more about less and less. And while specialization is keen, one is improved as a human being by understanding the context.

But I have no doubt that you come out of a course like this exhausted and excited. Learning’s really fun when you understand what it’s good for—better yet if you have a craving to do something and learning is the only way to scratch that itch. And if you’re getting to experience the thrill of taking something from nothing and turning it into a game of Tetris, you can’t help but get it.

Go watch it. Then you can check out the course online.

(PS: You might be wondering what F4T in the title means. Well. F4T not only looks like “fat” in l33tsp3k3, it’s a functioning acronym for Forest 4 the Trees—a problem that, I believe, plagues a few billion people on this globe. I am a bad person for trying to coin a new acronym, I know. But sometimes you gotta do what you gotta do.)

No Comments

  1. Jim Weiridh says:

    Bravo! One of the best courses I had in college was a digital design class where we built a functional PDP-6. I loved that class.

  2. Bruce says:

    The big take away that I got from my analog and digital electronics course (required for all physics majors) was that it is a miracle that anything electronic works at all. :-)

    This kind of real world experience with a holistic problem is really cool. Not so much because you NEED to know how to build a tetris machine from the ground up starting with NAND, but because once you know you CAN all kinds of possibilities open up in your mind.

Leave a Reply

Hey, why not get a shiny
Freckle Time Tracking