Some people design dungeons in a very linear fashion, or linear with branches. Here's a really simplified example of rooms A, B and C arranged in a linear fashion, with one connection between each room:
A - B - C
And here's a simple branch:
A - B - C | D
Room D becomes a detour; it may be useful to take the detour, or it may be hazardous. The point of a branch is that it adds another decision point to the adventurers' journey. Conventional wisdom is that you make a better adventure by adding more branches. Plotted adventures (as opposed to dungeons) use the same structural approach.
In contrast, you can insert a loop into a dungeon:
A - B - C - D - E | | F - G - H
This isn't just an extra decision point or two: it allows maneuvering, backtracking, evading, and surrounding, for either the adventurers. You can, of course, design a plotted adventure with a parallel track, which functions somewhat like a loop, but in a dungeon, loops help to cement a feeling of space, instead of just time. And it's even better if the loops aren't just restricted to one horizontal plane, but include things like a network of ledges and bridges close to the ceiling, or a door at the bottom of a pit into a subnetwork of tunnels.
Like I said, none of this is new. However, I think the empty room discussion takes on a certain relevance if you consider whether your empty rooms are in a linear/branching layout or a looping layout. Even a truly empty room isn't boring in a looping structure, because the sturcture of the dungeon itself becomes something interesting, a challenge to face and a resource to use effectively. If you have a long corridor with twenty doors on either wall, each of which leads to a room with no exits, and most of those rooms are completely empty, then yeah, your dungeon is pretty boring. Lots of loops and alternate routes? Much more entertaining to deal with... and the one empty room that has only one access point can become either a safe haven, or a death trap.