The random musings of David Beazley, an independent Chicago-area software developer, teacher, and author.

Fun With Block Towers

November 27, 2009

Lately, I’ve been having a lot of fun playing with wooden blocks—a great toy for toddlers and grown-ups alike.

blockbaby.JPG

There’s a certain primal simplicity to blocks. Sure, you can stack them up in simple towers or piles. However, my inner geek makes me want to build more tricky structures. For example, this diamond structure:

diamond.JPG

Or maybe a diamond with huge spire

diamond2.JPG

Or flip the whole thing upside down if you’re inclined:

inverted.JPG

A more interesting challenge is to build an arch.

arch.JPG

And if you can keep that stable, to find out how much you can stack on top of it

archspire.JPG

Lately, I’ve been experimenting with expanding the number of dimensions. For example, this interesting structure:

3dsimple.JPG

Or this more complex extension of the idea

3dcomplex.JPG

Somewhere in all of this, there’s probably some kind of software development analogy. Maybe it’s the fact that even with simple components, you can make some pretty cool things. Or maybe it’s somehow related to the same inner urge that drives a programmer to build their entire application out of closures, generators, coroutines, actors, tasklets, or something similarly "simple."

Then again, maybe it’s more of a warning. After all, there are those pesky end-users who are going to put their dirty hands on everything when you’re done (observe their look of terror).

enduser2.JPG
  1. and well, we all know what happens next.

Anyways, that is all for now. Hope everyone is enjoying the holiday!