Tolerance

Posted on in Web

My Grandpa adored the proverb: “Measure twice, cut once”, and it has rung clear in my ears when decorating our first home.

Like cutting, drilling is final. Short of a copious quantity of polyfiller, and a good repaint, when you make a drill incision into a wall, it’s there for good. Having come from a non-DIY family, I’ve had to build up some personal confidence, particularly when it comes to drilling. But through this process, I’ve noticed how some items of furniture are far less stressful to mount than others. It comes down to one thing: tolerance.

Take these two items:

A fixed, four holed mount, and a horizontally flexible wall mount.

On the left is a vacuum cleaner accessory holder with four fixed mounting holes. On the right is a vacuum cleaner wall mount with a flexible screw hole, allowing subtle movement in a horizontal direction. Which do you think is a genuine Dyson item, and which is a cheap knock-off? You’d be forgiven for thinking the left, sturdy, precise mount is the Dyson, but you’d be wrong.

The left item is unforgiving, you have to line those four drill points up perfectly when you drill, or you’ll be unable to screw in and attach the holder to the wall.

The right has tolerance, if your drill slips slightly to the left or the right, the mount is built in a way that allows you to alter the position ever so slightly. It’s also useful when you want to ‘level’ the item to ensure it’s perfectly straight.

When to build in tolerance?

A shelf screwed to the wall, and an adjustable hinge.

Not everything needs tolerance. A floating shelf must be fixed tight to the wall to be sturdy; it gains structural integrity from that, and building in room for adjustment would compromise its effectiveness.

A cupboard door hinge, however, is holding far less weight; building in tolerance will not deter from the primary purpose of this, if anything, it enhances it. This hinge, for example, allows adjustment on all three axes for a better fit.

Who builds in tolerance?

Designing in tolerance is mature. You begin to start spotting patterns—when you’ve painted yourself into a corner enough times, you know when and where to build it in.

It comes from a deep understanding of the materials you use, knowing where they tend to flex over time, and how you can accommodate that.

There’s humility in tolerance. The most expensive item of furniture we own has adjustable magnets on the doors.

A fixed hinge and an adjustable magnet.

This isn’t a mistake, nor does it cheapen the product or suggest the craftspeople were any less skillful. On the contrary. The designers were humble enough to know that as the product is shipped and fitted, and the material flexes and sits, their original calculations wouldn’t be perfect. The seasoned designer knows that perfection doesn’t exist, but tolerance can get you close, and puts the opportunity into the hands of the end-user to get even closer.

Put it into practice

The flexibility of the mounting experience precedes drilling itself. As the proverb states, we must measure before we cut. A few items came with a paper-based drilling template, which proved very straightforward to work with, but that was rare.

Most products suggested marking the wall through the hole with a pencil, even though the holes were far too small to let a pencil pass through them! Despite ‘documentation’, these steps had clearly not been put into practice by those writing the instructions.

How it applies to the web

I’m reminded of Postel’s law, The Robustness Principle: “Be conservative in what you do, be liberal in what you accept from others”.

As we build our pages, components, and business logic, establish where tolerance should be granted. Consider how flexible each entity should be, and on what axis. Determine which items need to be fixed and less tolerant. There will be areas where the data or presentation being accurate is more important than being flexible - document these decisions.

And put your code into practice. Check the pencil fits before asking for pencil marks. Test how your components gel together, how your generic methods work in practice, how cohesive your pages are in the full.

Build in tolerance.


Posted on in Web