The Woodpiles of Hanoi

One thing we inherited when we moved to this house was a wood-burning stove. We also inherited a couple of wood stores, which we keep stocked up with a mix of occasional deliveries of big logs, and with wood that falls off nearby trees, collected on dog walks and lugged home to be sawn up.

I don’t have a chainsaw, by the way. I’ve sometimes been tempted, but, as my friend Richard pointed out, “Accidents involving chainsaws are seldom minor.” Instead, I have what I call a ‘chainsaw for scaredy-cats’: an alligator saw. This is a splendid device, which does quite a lot of the work of a chainsaw but avoids a lot of the potential pitfalls. Definitely recommended if you’re in a similar situation.

The gripping jaws also mean you can use it for chopping much smaller sticks than would be practical with a real chainsaw, as well as the big stuff.

Anyway, my otherwise-fine woodpiles have a problem. You want the wood to dry for as long as possible before burning it.

The nature of these stores, though, if you top them up continuously like we do, is that the only accessible wood is on the top layers, which is probably the most recently-added, and hence probably the greenest or dampest (or whatever). I was contemplating this challenge the other day, and I realised that if I had a third wood store, I could stack things perfectly. How? Towers of Hanoi!

The Towers of Hanoi is that puzzle where you have a set of discs, typically threaded on one of three poles. The aim is to move them one at a time onto another pole, but you’re not allowed to put a larger disc on top of a smaller one.

It’s not actually very difficult, and once you’ve worked out the basic mechanism you can extend it to arbitrary numbers of discs while still only needing three piles. Here’s a nice animation by André Karwath:

The puzzle is a fun source of entertainment (for a short while, at least), but I’ve never thought it had any actual use (other than as an exercise in recursive programming in computing courses).

But, I suddenly realised, suppose the larger discs represented younger wood, and the smaller ones older, then it’s clear that if I had three wood stores, I’d never need to leave younger wood on top of older wood. It could always be rearranged. Cunning, eh?

The problem, of course, it that it does still take rather a lot of shuffling wood around, which seems like hard work, even for a hardened lumberjack like myself.

So I’m now thinking that perhaps I really just need a wood store designed more like a waterwheel, with the wood stacked in the middle. I’d fill it up as normal, but when I wanted wood for the fire, I’d just rotate the whole thing until the dry logs were at the top, remove some, and then turn it back… Brilliant, eh?

I would go and demonstrate how to make it for you, but just at the moment it’s too cozy here in front of the fire.

Enjoyed this post? Why not sign up to receive Status-Q in your inbox?


Three wood piles, yes – one you fill to leave, one you fill to burn next, and the one you’re burn now.

Well, our original idea when we moved in was that we’d just get deliveries of logs, and the two stores would be ‘next year’ and ‘this year’.

Unfortunately, the local supplier delivers a standard cubic metre, which is about 1.4 of our stores, so that doesn’t work! And then we started collecting our own wood and sometimes we wanted smaller bits and sometimes larger, which is why the fine granularity that Hanoi would afford is tempting… 🙂

Towers of Hanoi is also useful (in theory) for scheduling backup “levels” where 0 is full, #1 is “changes since last #0” and #2 is “changes since last #1”, etc. During a restore it guarantees that you always have to use the minimum number of tapes.

In practice, it’s a Pain because you need a program to tell you which level to run lest too much human error creep in.

It’s a shame that your deliveries are 1.4x of a store. If you could get it all in one store then you could have a store for burning, taking from the top, and a store for filling, depositing on the top. When the store for burning was empty you could take the contents of the “filling” store, all at once, last-in-first-out, and put it in the “burning” store. Then you could start filling the “filling” store again.

That way the oldest wood is always at the top of the “burning” store.

Forget about the Hanoi. I’ve just ordered the Alligator! Thanks for the tip Q.

Got Something To Say:

Your email address will not be published. Required fields are marked *

To create code blocks or other preformatted text, indent by four spaces:

    This will be displayed in a monospaced font. The first four 
    spaces will be stripped off, but all other whitespace
    will be preserved.
    Markdown is turned off in code blocks:
     [This is not a link](

To create not a block, but an inline code span, use backticks:

Here is some inline `code`.

For more help see


© Copyright Quentin Stafford-Fraser