It’s terrifying how small a thing can trigger a software engineer to begin their descent into full-on nerd-sniped obsession. In my case, it was just my bedroom being a bit dark. It’s a lovely old-fashioned sort of a bedroom, but dimly-lit, full of shadows for my children’s toys to hide in. The only source of light was a little lamp in one corner. I really should have just bought a bigger lamp.
Instead, I designed and constructed a full-length portrait mirror with concealed LED lighting and a laser range finder. As my children wave their hands up and down in front of the mirror, the range finder detects how far away they are… and makes the lights sparkle next to their fingers.
I got the idea to make the mirror back in January, but it took nine months to complete, mainly because I’d never built anything from wood before - and it was a long time since I’d done my GCSE Electronics at school. I practised on some smaller projects first - like making an Octoalert (the alarm sounded by the Octonauts when a marine creature is in trouble) for my kids. I learned that it was possible to cut nice big round holes in wood with a drill and a ‘hole saw’, and that the pretty diagonal joins on picture frames were called ‘mitre’ joins, and that the most crucial thing about making picture frames is - I know this sounds obvious - that opposite sides must be exactly the same length.
Rulers are actually USELESS for making sure things are the same length
It’s less obvious that using a ruler and a pencil is actually a terrible way of ensuring that you cut two pieces the same length - the best way is to physically constrain your cutting arrangement so that you can only cut at one length:

You can see a fairly scary-looking machine in the photograph above - it’s called a ‘mitre saw’, and is really awesome at cutting exact angles in wood. It also represents my first really egregious purchase of a power tool - it wasn’t just a mitre saw, it flips over to become a table saw too. I didn’t realise it at the time, but the table saw functionality that ended up being most immediately useful to me - it let me shape simple pieces of timber into the complicated profile I needed for my mirror frame:

Cutting wood with tools like mitre and table saws is immensely satisfying, but not effortless. The tools can cut through any wood with ease, but first you have to figure out how to hold your wood - your ‘workpiece’ - firmly in place, clamped so that it is cut only exactly how you want it to be, with your fingers nowhere near the blade. If you don’t do this, the cut will go wonky, you’ll find out how forcefully chunks of wood can shoot from a spinning blade - it’s genuinely terrifying - or you’ll lose a part of your body. Getting the cut set up right takes preparation, mental visualisation, innumerable clamps, and any fortuitous carpentry-fu you can learn from YouTube - the cut takes seconds, but you can spend hours planning it. Frequently you have to improvise temporary guiding structures from wood - called ‘jigs’ - to ensure that the workpiece is held just right. My proudest jig is this one:

The jig made thin trapezoid pieces of dowel: 2 metres long but only 4mm thick. I used them as protective trim for the LEDs on the back of the mirror - the necessity of this was something I’d only realised as the project was ‘nearing’ conclusion, when I accidentally caught the LED strip and ripped it from the frame, breaking several delicate solder joints. This little piece of dowel gave great protection to the side of the LED strip - but another week had elapsed while I worked out how to make it…
My lungs!
I became increasingly scared of wood dust as the project went on. I started out wearing a little disposable dust mask, but within a week I’d progressed on to a more serious half-face rubber mask with slot-in filter pads. This formed one of the holy trinity of safety equipment I’d wear while using the power saws - mask, goggles, ear defenders. It was quite an ensemble to put on every time I went to cut a piece of wood, but all three are essential to your safety. In the closing months of the project I had to use a router on some MDF for a different project - the dust from MDF is very very fine, and can contain formaldehyde… this got me sufficiently worried that I upgraded my protection once again, to a full-face powered respirator, which combines the goggles and mask protection into a single object, easier to put-on and take-off, and doesn’t mist up. The fans are blowing cool air over your face and making a zone of positive pressure inside the visor, so it doesn’t need to have an air-tight seal - much quicker to deal with!
Protecting yourself while you’re working is only part of the job though - the people around you may not be at such high risk, but need protecting too. That’s why it’s a good idea to get a little ‘shop vac’ (a vacuum cleaner that’s designed for hoovering up sawdust) linked up to your power tool, immediately sucking away the dust as it’s created - this makes it much easier to see what you’re doing too.
Another lung factor was the fumes from soldering. A lot of modern solders use Rosin to make the solder flow better. After reading about the effects of Rosin fumes I very quickly bought a little solder fume extractor fan, because Rosin fumes are nasty.
Moare Power…

One of the things I do remember from GCSE Electronics is P=VI, the calculation for working out P (power in Watts, a.k.a ‘how much energy am I using per second?’) from V (volts) times I (current, a.k.a intensité de courant, or ‘how many electrons are whizzing through this bit of wire per second?’). This equation tells you that if you want a certain amount of power, then the higher the voltage you use, the lower the current you need. Any given wire is only thick enough to safely carry a certain amount of current before it gets dangerously hot - so you can carry way more energy on a given wire by using a high voltage. If you use a low voltage, you better get a thicker wire…
Most LED strip lighting sold is 12V or 24V. For my mirror though, I was using strips with individually controllable LEDs - each LED containing a teeny tiny computer, running at the common standard of 5V. There were 204 LEDs on the mirror, 102 each side, and at full brightness, each LED consumed 60mA, so if all 204 were on, that would draw about 12A of current (a power consumption of 60W = 12A * 5V - the same as an old-fashioned incandescent light bulb, though providing much more light!). At that level of current I had to be careful about what wires and connectors I was using- and find a 5V power supply that was equivalent to a dozen or so mobile phone chargers.
It was important that the power supply didn’t overheat, so I included two grills for ventilation in the design - one of them in a short chimney that sat directly above the power supply, to allow heat to rise up and out. Although tall chimneys can take advantage of the ‘stack effect’ this chimney was a more of a marker, to ensure that I didn’t absentmindedly leave some thing on the shelf that ended up blocking the grill. In the end, the power supply never got warmer than 40C - only slightly warm to the touch.

Shelf Removals
The ‘shelf’ at the top of the mirror actually held all the interesting electronics - a Raspberry Pi computer, the AC-DC power supply, the ‘kettle-cord’ socket where the mains electricity entered, the laser range finder, a speaker. It was a complicated piece of work - so I made it removable, allowing me to easily work on it without having to take the whole mirror off the wall:
Software?

The Raspberry Pi is running a simple bit of Python, listening for signals from the laser range finder, and lighting up the lights accordingly. It also listens for ‘keypresses’ that are coming from a small physical press-switch that’s pretending to be a bluetooth keyboard (in reality it’s a Bluefruit EZ-Key by Adafruit). You can see the small amount of code involved at https://github.com/rtyley/mirror. It was weird for me to be working on a project that involved so little code - but it was cool too, it was nice to have something physical I could hold in my hands and simply share with my family without having to explain the Git object model!
Life with a maniac
The project took the best part of a year. Our little house filled up with tools. There are a lot of different tools a woodworker can buy, and I didn’t really have a proper workshop, just a dining room and a tiny garden. I covered a lot of things with dust. At one point I accidentally nail-gunned the wooden frame of the mirror to our dining room table. Truthfully, I don’t know how much of this a sane person would tolerate.
I’m married to someone who can see how I’m obsessing about something, and we can both agree I’m obsessing, but she can appreciate the craziness, the thing I’m trying to create, and she supports me, more than any merely sane person would. I feel insanely lucky to be married to be someone who can do that. I owe her a lot, and I try to repay my debts.
Finally ‘finished’
When the mirror is finished we hold a grand unveiling, ushering the guests into a room now entirely shrouded in darkness. As the theme from 2001: A Space Odyssey plays over the mirror’s speaker, I realise the covered mirror looks rather like the monolith, if the monolith was covered in a silk sheet with tasteful floral embroidery. I caper in front of it like an ape, wearing a top hat and delivering my spiel: “Ladies and Gentlemen, for millennia people have tried to conquer the darkness of the night- and FAILED - until now. Finally, the problem of illuminating objects has been solved - by ME…” The music reaches the second crescendo, and the mirror lights up the silk sheet from within - small children gasp. Finally I pull the sheet away, revealing the mirror blazing light into the room, and fall kneeling to the floor while the audience breaks into enthusiastic applause. I regret not having bought a femur to chuck into the air, but I think I’ve made my point.

Taking nine months to fix the simple problem of illuminating a room was, OK, ridiculously indulgent and silly. But everyone needs those things sometimes. I discovered woodwork, and became obsessed by it, because it is amazing.