Shared Email Addresses

Email Antipatterns

There are two particular varieties of email address that I don’t often see, but I’ve been known to ridicule when I have:

  1. Geographically-based personal email addresses, e.g. OurHouseName@example.com. These always seemed to me to undermine one of the single-best things about an email address compared to postal mail – that they don’t change when you move house!1
  2. Shared/couple email addresses, e.g. MrAndMrsSmith@example.net. These make me want to scream “You know email addresses are basically free, right? You don’t have to share one!” Even back when most people got their email address directly from their dial-up provider, most ISPs offered some number of addresses (e.g. five).

If you’ve come across either of the above before, there’s… perhaps a reasonable chance that it was in the possession of somebody born before 1960 (and the older, the more-likely)2.

In Community Season 4, Episode 8 (Herstory of Dance), Pierce Hawthorne (Chevy Chase), wearing an Inspector Spacetime t-shirt, sits in a computer lab, saying "Seriously, I need to get to my email: the Post Office is about to close!"
In Pierce’s defence, “my email is on that computer” did genuinely used to be a thing, before the widespread adoption of IMAP and webmail.

You’ll never catch me doing that!

I found myself thinking about this as I clicked the “No” button on a poll by Terence Eden that asked whether I used a “shared” email address when in a stable long-term relationship.

Terence Eden (@Edent@mastodon.social) on Mastodon asks: "If you're currently in a stable, long term relationship with someone - do you have a joint email address with them?"
Of course I don’t! Why would I? Oh… wait…

It wasn’t until after I clicked “No” that I realised that, in actual fact, I have had multiple email addresses that I’ve share with significant other(s). And more than that, sometimes they’ve been geographically-based! What’s going on?

I’ve routinely had domains or subdomains that I’ve used to represent a place that I live. They’re convenient for when you want to give somebody a short web address which’ll take them to a page with directions to you and links to your location in a variety of different services and formats.

And by that point, you might as well have an email alias, e.g. all@myhouse.example.org, that forwards on email to, well, all the adults at the house. What I’ve described there is, after a fashion, a shared email address tied to a geographical location. But we don’t ever send anything from it. Nor do we use it for any kind of personal communication with anybody outside the house.

Email receipt from Sainsburys, advising that they're unable to deliver "Fruit Bowl Raspberry Peelers 5x16g".
Sainsbury’s aren’t going to bring us any Raspberry Peelers. I’m not sure who ordered them, but I’m confident that it’s the kids who’re gonna complain about it.

We don’t give out these all@ addresses (or their aliases: every company gets their own) to people willy-nilly. But they’re useful for shared services that send automated emails to us all. For example:

  • Giving a forwarding alias to the supermarket means that receipts (listing any unavailable products) g0 to all of us, and whoever’s meal plan’s been scuppered by an awkward substitution will know what’s up.
  • Using a forwarding alias with the household Netflix account means anybody can use the “send me a sign-in link” feature to connect a new device.
  • When confirming that you’ve sent money to a service provider, CC’ing one of these nice, short aliases provides a quick way to let the others know that a bill’s been paid (this one’s especially useful where, like me, you live in a 3+ adult household and otherwise you’d be having to add multiple people to the CC field).

Sure, the need for most of these solutions would evaporate instantly if more services supported multi-user or delegated access3. But outside of that fantasy world, shared aliases seem to be pretty useful!

Footnotes

1 The most ill-conceived example of geographically-based email addresses I’ve ever seen came from a a 2003 proposal by then-MP Derek Wyatt, who proposed that the domain name part of every single email address should contain not only the country of the owner (e.g. .uk) but also their complete postcode. He was under the delusion that this would somehow prevent spam. Even ignoring the immense technical challenges of his proposal and the impossibility of policing it across the borders of every country that uses email… it probably wouldn’t even be effective at his stated goal. I’ll let The Register take it from here.

2 No ageism intended: I suspect that the phenomenon actually stems from the fact that as email took off in the noughties this demographic who were significantly more-likely than younger folks to have (a) a very long-term home that they didn’t anticipate moving out of any time soon, and (b) an existing anticipation that people and companies wrote to them as a couple, not individually.

3 I’d love it if the grocery delivery sites would let multiple “accounts”, by mutual consent, share a delivery slot, destination, and payment method. It’d be cool to know that we could e.g. have a houseguest and give them temporary access to a specific order that was scheduled for during their stay. But that’s probably a lot of work for very little payoff if you’re busy running a supermarket.

× × ×

Framing Device

Doors

As our house rennovations/attic conversions come to a close, I found myself up in what will soon become my en suite, fitting a mirror, towel rail, and other accessories.

Wanting to minimise how much my power tool usage disturbed the rest of the house, I went to close the door separating my new bedroom from my rest of my house, only to find that it didn’t properly fit its frame and instead jammed part-way-closed.

“Oh,” I said, as the door clearly failed to shut, “Damn.”

Somehow we’d never tested that this door closed properly before we paid the final instalment to the fitters. And while I’m sure they’d have come back to repair the problem if I asked, I figured that it’d be faster and more-satisfying to fix it for myself.

Homes

As a result of an extension – constructed long before we moved in – the house in Preston in which spent much of my childhood had not just a front and a back door but what we called the “side door”, which connected the kitchen to the driveway.

Unfortunately the door that was installed as the “side door” was really designed for interior use and it suffered for every winter it faced the biting wet North wind.

A partially-pebbledashed house.
The side door isn’t visible in this picture: it’s concealed behind the corner of the house, to the left of the car.

My father’s DIY skills could be rated as somewhere between mediocre and catastrophic, but his desire to not spend money “frivolously” was strong, and so he never repaired nor replaced the troublesome door. Over the course of each year the wood would invariably absorb more and more water and swell until it became stiff and hard to open and close.

The solution: every time my grandfather would visit us, each Christmas, my dad would have his dad take down the door, plane an eighth of an inch or so off the bottom, and re-hang it.

Sometimes, as a child, I’d help him do so.

A grey-haired white man wearing spectacles and a boiler suit leans comfortably on a railing alongside industrial machinery.
My paternal grandfather was a practical and hand-on engineer and a reasonable carpenter.

Planes

The first thing to do when repairing a badly-fitting door is work out exactly where it’s sticking. I borrowed a wax crayon from the kids’ art supplies, coloured the edge of the door, and opened and closed it a few times (as far as possible) to spot where the marks had smudged.

Fortunately my new bedroom door was only sticking along the top edge, so I could get by without unmounting it so long as I could brace it in place. I lugged a heavy fence post rammer from the garage and used it to brace the door in place, then climbed a stepladder to comfortably reach the top.

A small box plane perched atop a sloping door.
I figured I’d only need to remove a few millimetres, so I didn’t mind doing it from atop a stepladder. Hey: here’s a fun thing – when I think about planing a door with my grandfather, I think in inches; when I think about doing it myself, I think in metric!

Loss

After my paternal grandfather died, there was nobody left who would attend to the side door of our house. Each year, it became a little stiffer, until one day it wouldn’t open at all.

Surely this would be the point at which he’d pry open his wallet and pay for it to be replaced?

A middle-aged man carrying walking poles on an urban riverbank drags a car tyre that's chained to his waist.
I’m not sure there’s a more apt metaphor for my dad’s ability to be stubborn than this photo of him dragging a tyre around Gateshead as a training activity for an Arctic expedition.

Nope. Instead, he inexpertly screwed a skirting board to it and declared that it was now no-longer a door, but a wall.

I suppose from a functionalist perspective he was correct, but it still takes a special level of boldness to simply say “That door? It’s a wall now.”

Sand

Of all the important tasks a carpenter (or in this case, DIY-er) must undertake, hand sanding must surely be the least-satisfying.

Dan rubs sandpaper atop a wooden door.
You wear your fingers out rubbing a piece of wood smooth, and your only reward is getting to do it again with a slightly finer grade of paper.

But reaching the end of the process, the feel of a freshly-planed, carefully-sanded piece of wood is fantastic. This surface represented chaos, and now it represents order. Order that you yourself have brought about.

Often, you’ll be the only one to know. When my grandfather would plane and sand the bottom edge of our house’s side door, he’d give it a treatment of oil (in a doomed-to-fail attempt to keep the moisture out) and then hang it again. Nobody can see its underside once it’s hung, and so his handiwork was invisible to anybody who hadn’t spent the last couple of months swearing at the stiffness of the door.

A paintbrush applies white paint to the top of a door.
Swish, swish. Now I’m glad I sanded.

Even though the top of my door is visible – particularly visible, given its sloping face – nobody sees the result of the sanding because it’s hidden beneath a layer of paint.

A few brush strokes provide the final touch to a spot of DIY… that in provided a framing device for me to share a moment of nostalgia with you.

Sweep away the wood shavings. Keep the memories.

× × × × × ×

Zap

This week, I received a ~240V AC electric shock. I can’t recommend it.

A 10-year-old girl hangs from a scaffolding pole outside a white house.
As you may have guessed based on photos in previous posts, our house is currently wrapped in a convenient climbing frame scaffolding.

We’re currently having our attic converted, so we’ve had some electricians in doing the necessary electrical wiring. Shortly after they first arrived they discovered that our existing electrics were pretty catastrophic, and needed to make a few changes including a new fusebox and disconnecting the hilariously-unsafe distribution board in the garage.

Lifted floor showing central heating pipes and a tangle of electrical cables.
The owner before last of our house worked for SSEN and did all of his own wiring, and left us a rats’ nest of spaghetti wiring that our electricians described as being unlike anything they’d ever seen before. Also a literal rats’ nest under the decking, but we got rid of that already.

After connecting everything new up they began switching everything back on and testing the circuits… and we were surprised to hear arcing sounds and see all the lights flickering.

The electricians switched everything off and started switching breakers back on one at a time to try to identify the source of the fault, reasonably assuming that something was shorting somewhere, but no matter what combination of switches were enabled there always seemed to be some kind of problem.

Electricity shining a torch into a cupboard containing an fusebox with an open cover; the switches are in a mixture of on and off positions.
You know those escape room puzzles where you have to get the right permutation of switch combinations? This was a lot less fun than that.

Noticing that the oven’s clock wasn’t just blinking 00:00 (as it would after a power cut) but repeatedly resetting itself to 00:00, I pointed this out to the electricians as an indicator that the problem was occurring on their current permutation of switches, which was strange because it was completely different to the permutation that had originally exhibited flickering lights.

I reached over to point at the oven, and the tip of my finger touched the metal of its case…

Blam! I felt a jolt through my hand and up my arm and uncontrollably leapt backwards across the room, convulsing as I fell to the floor. I gestured to the cooker and shouted something about it being live, and the electricians switched off its circuit and came running with those clever EM-field sensor pens they use.

Somehow the case of the cooker was energised despite being isolated at the fusebox? How could that be?

Dan, bare-chested, lies in a hospital bed with an ECG hooked-up to him.
Buy one ECG appointment. Get a free partial chest-shaving free!

I missed the next bits of the diagnosis of our electrical system because I was busy getting my own diagnosis: it turns out that if you get a mains electric shock – even if you’re conscious and mobile – the NHS really want you to go to A&E.

At my suggestion, Ruth delivered me to the Minor Injuries unit at our nearest hospital (I figured that what I had wasn’t that serious, and the local hospital generally has shorter wait times!)… who took one look at me and told me that I ought to be at the emergency department of the bigger hospital over the way.

ECG printout showing a report of "Abnormal ECG: sinus arrhythmia".
The first hospital were kind enough to hook me up to an ECG before sending me on to the A&E department. It indicated possible cardiac arrhythmia in the sinus node – basically: my heart’s natural pacemaker was firing somewhat irregularly – which is kinda what you’d expect from an AC zap.

Off at the “right” hospital I got another round of ECG tests, some blood tests (which can apparently be used to diagnose muscular damage: who knew?), and all the regular observations of pulse and blood pressure and whatnot that you might expect.

And then, because let’s face it I was probably in better condition than most folks being dropped off at A&E, I was left to chill in a short stay ward while the doctors waited for test results to come through.

Two electricians, one in a hard hat, look in an outdoor metering cupboard by torchlight.
Apparently our electricity meter blew itself up somewhere along the way, leaving us with even less of a chance to turn the power back on again.

Meanwhile, back at home our electricians had called-in SSEN, who look after the grid in our area. It turns out that the problem wasn’t directly related to our electrical work at all but had occurred one or two pylons “upstream” from our house. A fault on the network had, from the sounds of things, resulted in “live” being sent down not only the live wire but up the earth wire too.

That’s why appliances in the house were energised even with their circuit breakers switched-off: they were connected to an earth that was doing pretty-much the opposite of what an earth should: discharging into the house!

Linesmen examining an electricity pylon by torchlight.
For the next day or so, a parade of linesmen climbed up and down all the pylons in the field behind our house, hunting for the source of the problem.

It seems an inconceivable coincidence to me that a network fault might happen to occur during the downtime during which we happened to have electricians working, so I find myself wondering if perhaps the network fault had occurred some time ago but only become apparent/dangerous as a result of changes to our household configuration.

I’m no expert, but I sketched a diagram showing how such a thing might happen (click to embiggen). I’ll stress that I don’t know for certain what went wrong: I’m just basing this on what I’ve been told my SSEN plus a little speculation:

MS Paint grade illustration showing how a faulty transformer on a power pole, crossing live with earth, might go unnoticed as a result of the earth spike behind our garage until the garage's (unsafe) circuit is disconnected.

By the time I was home from the hospital the following day, our driveway was overflowing with the vehicles of grid engineers to the point of partially blocking the main street outside (which at least helped ensure that people obeyed our new 20mph limit for a change).

A driveway full of vehicles spills out onto the nearby road.
We weren’t even able to get our own car onto our driveway when we got back from the hospital.

Two and a half days later, I’m back at work and mostly recovered. I’ve still got some discomfort in my left hand, especially if I try to grip anything tightly, but I’m definitely moving in the right direction.

It’s actually more-annoying how much my chest itches from having various patches of hair shaved-off to make it possible to hook up ECG electrodes!

A linesman hangs from his climbing belt at the top of a pole, while two others look on from the ground.
The actual conversation at this point seemed to consist of the guy at the top of the pole confirming that yes, he really had disconnected the live wire from our house, and one at the bottom saying he can’t have because he’s still seeing electricity flowing. Makes sense now, doesn’t it?

Anyway, the short of it is that I recommend against getting zapped by the grid. If it had given me superpowers it might have been a different story, but I guess it just gave me sore muscles and a house with a dozen non-working sockets.

× × × × × × × × × ×

Cable Gore

If you enjoy a bit of “cable gore”, let me introduce you to the fusebox cupboard at my house, with its plethora of junctions, fuses, breakers, switches, timers, and cabling everywhere! Banana for scale.

A cupboard the height of a fully-grown adult containing several fuseboxes (two large, one medium, and a handful of single-fuse ones, with a mixture of traditional fuses and RCD breakers), a large switch toggling between mains and a generator, a mains timer, and copious wiring. There's a banana in there too.

×

Installation of Windows has Stalled

I was told Windows installation should take less than 20 minutes, but these ones have been sitting outside my house all day while the builders sit on the roof and listen to the radio. Do I need a faster processor? #TechSupport

A pile of window frames, factory-fresh and covered with tape. propped against the side of a white house, on a gravel driveway.

×

[Bloganuary] Toilet Paper

This post is part of my attempt at Bloganuary 2024. Today’s prompt is:

What do you complain about the most?

I’m British. So I complain about very little. Instead, I tut loudly to myself.

But the thing that makes me tut the loudest, perhaps, is when I discover that somebody has put a roll of toilet paper on its holder the wrong way.

Annotated composite photograph showing two toilet rolls on their holster. One hangs in front of the roll, as is correct and proper, and it labelled "right". The other hangs behind the roll, in the terrible forbidden way acceptable only to imbeciles, and is labelled "wrong".
Of all the hills a person could choose to die on, I seem to have chosen the most absorbent.

I’m aware that there are some people who do not hold a strong opinion on the correct orientation of a horizontally-mounted roll of toilet paper. That’s fine; not everybody has to care about these things. Maybe you’ll be persuaded that there’s a “right” way by this post (and there is), but if not, no problem.

But for the anybody who deliberately and consciously hangs toilet paper the wrong way… here’s why you’re mistaken:

  • Hanging it the right way puts the loose end closer to the user, which means they’ve got less-far to reach.
  • Hanging it the right way means the loose end is easier to find, which is especially useful if you didn’t turn the light on yet because you’re not ready to fully wake up.
  • Hanging it the wrong way increases the amount of time the paper spends cleaning the wall, which isn’t something I want or need it to be used to clean.
  • Hanging it the wrong way increases the risk that the loose end is in a place where it is inaccessible, sandwiched directly behind the roll and against the wall, requiring the user to manually turn the roll to expose it. When the same thing happens on a roll hung the right way (which is rarer on account of gravity) a pinched end self-corrects as soon as you pull the roll slightly away from the wall.
  • It’s been argued that your way is “tidier” because unused toilet paper sits closer to the wall which which it’s approximately parallel. Sure (although I disagree that it’s tidier, but that’s clearly subjective): but I counter that I don’t need it to be tidy, I need it to function.
A hanging toilet roll being shredded by a black cat.
I’m willing to concede that for some pet owners and parents, hanging the “wrong” way might discourage curious animals and toddlers from playing with the exposed end. But even that’s not a guarantee, as wrong-way-hanger Dan4th Nicholas discovered. Photo used under a CC-BY license.

I share a home with a wrong-way hanger, but about 13 years ago we came to a household agreement: I’d quietly “correct” any incorrectly-installed toilet rolls in shared bathrooms1, and nobody would deliberately switch them back2, and in exchange I’d refrain from trying to educate people about why they were wrong.3

Composite screengrab from Taskmaster Season 11 Episode 4 (Premature Conker) showing Mike Wozniak talking about an empty toilet roll tube perched on top of a closed pedal bin (rather than having been put inside it).
Like Mike Wozniak, I also have a pet hate for people leaving the cardboard tube from toilet paper rolls in suboptimal places, like on top of a closed pedal bin. But I don’t see so much of that.

(While researching this article, I was pleased to discover that no major emoji font depicts a toilet roll in the wrong orientation. 🧻🎉)

Footnotes

1 A man can do whatever the hell he likes in the comfort of his own en suite.

2 This clause was added after it became apparent that our then-housemate Paul decided it’d be a fun prank to go around the house reversing my corrections (not because he preferred the wrong way, but just to troll me!). Which I can admit was a fun prank… until I challenged him on it and he denied it, at which point it became gaslighting.

3 This doesn’t count as forcing an education on my household. My blog isn’t in your face: you can skip it any time you want. You can even lie and say you read it when you don’t; I won’t know, especially this month when I’ve been writing so prolifically – now on my longest-ever daily streak! – that I probably won’t even remember what I wrote about.

× × ×

Household Finances Revisited

Almost a decade ago I shared a process that my domestic polyfamily and I had been using (by then, for around four years) to manage our household finances. That post isn’t really accurate any more, so it’s time for an update (there’s a link if you just want the updated spreadsheet):

Dan, wearing a WordPress Pride "rainbow flag on black" t-shirt, sits on a park bench alongside a French Bulldog (with her tongue sticking out) and a young boy (throwing a peace sign, wearing a pink cycle helmet and a blue school uniform).
Our household costs have increased considerably over the last decade, not least because children and pets are expensive (who knew?).

Sample data

For my examples below, assume a three-person family. I’m using unrealistic numbers for easy arithmetic.

  • Alice earns £2,000, Bob earns £1,000, and Chris earns £500, for a total household income of £3,500.
  • Alice spends £1,450, Bob £800, and Chris £250, for a total household expenditure of £2,500.

Model #1: Straight Split

We’ve never done things this way, but for completeness sake I’ll mention it: the simplest way that households can split their costs is by dividing them between the participants equally: if the family make a £60 shopping trip, £20 should be paid by each of Alice, Bob, and Chris.

My example above shows exactly why this might not be a smart choice: this model would have each participant contribute £833.33 over the course of the month, which is more than Chris earned. If this month is representative, then Chris will gradually burn through their savings and go broke, while Alice will put over a grand into her savings account every month!

Photograph of the Statue of Lenin in Independence Square, Minsk: Government House #1 stands behind a large metal statue of Vladimir Lenin, looking to his right.
“Land, Bread, Peace… and Spreadsheets!”

Model #2: Income-Assessed

We’re a bunch of leftie socialist types, and wanted to reflect our political outlook in our household finances, too. So rather than just splitting our costs equally between us, we initially implemented a means-assessment system based on the relative differences between our incomes. The thinking was that somebody that earns twice as much should contribute twice as much towards the costs of running the household.

Using our example family above, here’s how that might look:

  • Alice earned 57% of the household income, so she should have contributed 57% of the household costs: £1,425. She overpaid by £25.
  • Bob earned 29% of the household income, so he should have contributed 29% of the household costs: £725. He overpaid by £75.
  • Chris earned 14% of the household income, so they should have contributed 14% of the household costs: £350. They underpaid by £100.
  • Therefore, at the end of the month Chris should settle up by giving £25 to Alice and £75 to Bob.

By analogy: The “Income-Assessed” model is functionally equivalent to splitting each and every expense according to the participants income – e.g. if a £100 bill landed on their doormat, Alice would pay £57, Bob £29, and Chris £14 of it – but has the convenience that everybody just pays for things “as they go along” and then square everything up when their paycheques come in.

Photograph showing a detached white house clad in scaffolding, under a clear blue sky.
You know what else is surprisingly expensive? Having the roof of your house taken off.

Over time, our expenditures grew and changed and our incomes grew, but they didn’t do so in an entirely simple fashion, and we needed to make some tweaks to our income-assessed model of household finance contributions. For example:

  • Gross vs Net Income: For a while, some of our incomes were split into a mixture of employed income (on which income tax was paid as-we-earned) and self-employed income (for which income tax would be calculated later), making things challenging. We agreed that net income (i.e. take-home pay) was the correct measure for us to use for the income-based part of the calculation, which also helped keep things fair as some of us began to cross into and out of the higher earner tax bracket.
  • Personal Threshold: At times, a subset of us earned a disproportionate portion of the household income (there were short periods where one of us earned over 50% of the household income; at several other times two family members each earned thrice that of the third). Our costs increased too, but this imposed an regressive burden on the lower-earner(s), for whom those costs represented a greater proportion of their total income. To attempt to mitigate this, we introduced a personal threshold somewhat analogous to the income tax “personal allowance” (the policy that means that you don’t pay tax on your first £12,570 of income).

Eventually, we came to see that what we were doing was trying to patch a partially-broken system, and tried something new!

Model #3: Same-Residual

In 2022, we transitioned to a same-residual system that attempts to share out out money in an even-more egalitarian way. Instead of each person contributing in accordance with their income, the model attempts to leave each person with the same average amount of disposable personal income at the end. The difference is most-profound where the relative incomes are most-diverse.

With the example family above, that would mean:

  • The household earned £3,500 and spent £2,500, leaving £1,000. Dividing by 3 tells us that each person should have £333.33 after settling up.
  • Alice earned earned £2,000 and spent £1,450, so she has £550 left. That’s £216.67 too much.
  • Bob earned earned £1,000 and spent £800, so she has £200 left. That’s £133.33 too little.
  • Chris earned earned £500 and spent £250, so she has £250 left. That’s £83.33 too little.
  • Therefore, at the end of the month Alice should settle up by giving £133.33 to Bob and £83.33 to Chris (note there’s a 1p rounding error).

That’s a very different result than the Income-Assessed calculation came up with for the same family! Instead of Chris giving money to Alice and Bob, because those two contributed to household costs disproportionately highly for their relative incomes, Alice gives money to Bob and Chris, because their incomes (and expenditures) were much lower. Ignoring any non-household costs, all three would expect to have the same bank balance at the start of the month as at the end, after settlement.

By analogy: The “Same-Residual” model is functionally equivalent to having everybody’s salary paid into a shared bank account, out of which all household expenditures are paid, and at the end of the month everything that’s left in the bank account gets split equally between the participants.

Screenshot showing a sample filled verison of the spreadsheet.
Our version of the spreadsheet has inherited a lot of hacky edges, many for now-unused functionality.

We’ve made tweaks to this model, too, of course. For example: we’ve set a “target” residual and, where we spend little enough in a month that we would each be eligible for more than that, we instead sweep the excess into our family savings account. It’s a nice approach to help build up a savings reserve without feeling a pinch.

I’m sure our model will continue to evolve, as it has for the last decade and a half, but for now it seems stable, fair, and reasonable. Maybe it’ll work for your household too (whether or not you’re also a polyamorous family!): take a look at the spreadsheet in Google Drive and give it a go.

× × × ×

Milk and Mail Notifications with Flic 2 Buttons

I’ve been playing with a Flic Hub LR and some Flic 2 buttons. They’re “smart home” buttons, but for me they’ve got a killer selling point: rather than locking you in to any particular cloud provider (although you can do this if you want), you can directly program the hub. This means you can produce smart integrations that run completely within the walls of your house.

Here’s some things I’ve been building:

Prerequisite: Flic Hub to Huginn connection

Screenshot showing the location of the enabled "Hub SDK web access open" setting in the Flic Hub settings page of the Flic app.
Step 1. Enable SDK access. Check!

I run a Huginn instance on our household NAS. If you’ve not come across it before, Huginn is a bit like an open-source IFTTT: it’s got a steep learning curve, but it’s incredibly powerful for automation tasks. The first step, then, was to set up my Flic Hub LR to talk to Huginn.

Screenshot showing the Flic Hub SDK open in Firefox. Three modules are loaded: "IR Recorder", "UDP to IR Blaster", and "The Green", the latter of which is open. "The Green" shows JavaScript code to listen for 'buttonSingleOrDoubleClickOrHold' events then transmits them as HTTP POST requests to a 'webHook' URL.
Checking ‘Restart after crash’ seems to help ensure that the script re-launches after e.g. a power cut. Need the script?

This was pretty simple: all I had to do was switch on “Hub SDK web access open” for the hub using the Flic app, then use the the web SDK to add this script to the hub. Now whenever a button was clicked, double-clicked, or held down, my Huginn installation would receive a webhook ping.

Flow chart showing a Flic 2 button sending a Bluetooth 5 LE message to a Flic Hub LR, which sends a Webook notification to Huginn (depicted as a raven wearing a headset), which sends a message to an unidentified Internet Of Things device, "probably" over HTTPS.
Depending on what you have Huginn do “next”, this kind of set-up works completely independently of “the cloud”. (Your raven can fly into the clouds if you really want.)

For convenience, I have all button-presses sent to the same Webhook, and use Trigger Agents to differentiate between buttons and press-types. This means I can re-use functionality within Huginn, e.g. having both a button press and some other input trigger a particular action.

You’ve Got Mail!

By our front door, we have “in trays” for each of Ruth, JTA and I, as well as one for the bits of Three Rings‘ post that come to our house. Sometimes post sits in the in-trays for a long time because people don’t think to check them, or don’t know that something new’s been added.

I configured Huginn with a Trigger Agent to receive events from my webhook and filter down to just single clicks on specific buttons. The events emitted by these triggers are used to notify in-tray owners.

Annotated screenshot showing a Huginn Trigger Agent called "Flic Button C (Double) Details". Annotations show that: (1) "C" is the button name and that I label my buttons with letters. (2) "Double" is the kind of click I'm filtering for. (3) The event source for the trigger is a webhook called "Flic Buttons" whose URL I gave to my Flic Hub. (4) The event receiver for my Trigger Agent is called "Dan's In-Tray (Double) to Slack", which is a Slack Agent, but could easily be something more-sophisticated. (5) The first filter rule uses path: bdaddr, type: field==value, and a value equal to the MAC address of the button; this filters to events from only the specified button. (6) The second filter rule uses path: isDoubleClick, type: field==value, and value: true; this filters to events of type isDoubleClick only and not of types isSingleClick or isHold.
Once you’ve made three events for your first button, you can copy-paste from then on.

In my case, I’ve got pings being sent to mail recipients via Slack, but I could equally well be integrating to other (or additional) endpoints or even performing some conditional logic: e.g. if it’s during normal waking hours, send a Pushbullet notification to the recipient’s phone, otherwise send a message to an Arduino to turn on an LED strip along the top of the recipient’s in-tray.

I’m keeping it simple for now. I track three kinds of events (click = “post in your in-tray”, double-click = “I’ve cleared my in-tray”, hold = “parcel wouldn’t fit in your in-tray: look elsewhere for it”) and don’t do anything smarter than send notifications. But I think it’d be interesting to e.g. have a counter running so I could get a daily reminder (“There are 4 items in your in-tray.”) if I don’t touch them for a while, or something?

Remember the Milk!

Following the same principle, and with the hope that the Flic buttons are weatherproof enough to work in a covered outdoor area, I’ve fitted one… to the top of the box our milkman delivers our milk into!

Top of a reinforced polystyrene doorstep milk storage box, showing the round-topped handle. A metal file sits atop the box, about to be used to file down the handle.
The handle on the box was almost exactly the right size to stick a Flic button to! But it wasn’t flat enough until I took a file to it.

Most mornings, our milkman arrives by 7am, three times a week. But some mornings he’s later – sometimes as late as 10:30am, in extreme cases. If he comes during the school run the milk often gets forgotten until much later in the day, and with the current weather that puts it at risk of spoiling. Ironically, the box we use to help keep the milk cooler for longer on the doorstep works against us because it makes the freshly-delivered bottles less-visible.

Milk container, with a Flic 2 button attached to the handle of the lid and a laminated notice attached, reading: "Left milk? Press the button on the Milk Minder. It'll remind us to bring in the milk!"
Now that I had the technical infrastructure already in place, honestly the hardest part of this project was matching the font used in Milk & More‘s logo.

I’m yet to see if the milkman will play along and press the button when he drops off the milk, but if he does: we’re set! A second possible bonus is that the kids love doing anything that allows them to press a button at the end of it, so I’m optimistic they’ll be more-willing to add “bring in the milk” to their chore lists if they get to double-click the button to say it’s been done!

Future Plans

I’m still playing with ideas for the next round of buttons. Could I set something up to streamline my work status, so my colleagues know when I’m not to be disturbed, away from my desk, or similar? Is there anything I can do to simplify online tabletop roleplaying games, e.g. by giving myself a desktop “next combat turn” button?

Flic Infared Transceiver on the side of a bookcase, alongside an (only slighter smaller than it) 20p piece, for scale.
My Flic Hub is mounted behind a bookshelf in the living room, with only its infrared transceiver exposed. 20p for scale: we don’t keep a 20p piece stuck to the side of the bookcase all the time.

I’m quite excited by the fact that the Flic Hub can interact with an infrared transceiver, allowing it to control televisions and similar devices: I’d love to be able to use the volume controls on our media centre PC’s keyboard to control our TV’s soundbar: and because the Flic Hub can listen for UDP packets, I’m hopeful that something as simple as AutoHotkey can make this possible.

Or perhaps I could make a “universal remote” for our house, accessible as a mobile web app on our internal Intranet, for those occasions when you can’t even be bothered to stand up to pick up the remote from the other sofa. Or something that switched the TV back to the media centre’s AV input when consoles were powered-down, detected by their network activity? (Right now the TV automatically switches to the consoles when they’re powered-on, but not back again afterwards, and it bugs me!)

It feels like the only limit with these buttons is my imagination, and that’s awesome.

× × × × × × ×

Heatmapping my Movements

As I mentioned last year, for several years I’ve collected pretty complete historic location data from GPSr devices I carry with me everywhere, which I collate in a personal μlogger server.

Going back further, I’ve got somewhat-spotty data going back a decade, thanks mostly to the fact that I didn’t get around to opting-out of Google’s location tracking until only a few years ago (this data is now also housed in μlogger). More-recently, I now also get tracklogs from my smartwatch, so I’m managing to collate more personal location data than ever before.

Inspired perhaps at least a little by Aaron Parecki, I thought I’d try to do something cool with it.

Heatmapping my movements

The last year

Heatmap showing Dan's movements around Oxford since moving house in 2020. There's a strong cluster around Stanton Harcourt with heavy tendrils around Witney and Eynsham and along the A40 to Summertown, and lighter tendrils around North and Central Oxford.
My movements over the last year have been relatively local, but there are some interesting hotspots and common routes.

What you’re looking at is a heatmap showing my location over the last year or so since I moved to The Green. Between the pandemic and switching a few months prior to a job that I do almost-entirely at home there’s not a lot of travel showing, but there’s some. Points of interest include:

  • The blob around my house, plus some of the most common routes I take to e.g. walk or cycle the children to school.
  • A handful of my favourite local walking and cycling routes, some of which stand out very well: e.g. the “loop” just below the big blob represents a walk around the lake at Dix Pit; the blob on its right is the Devils Quoits, a stone circle and henge that I thought were sufficiently interesting that I made a virtual geocache out of them.
  • The most common highways I spend time on: two roads into Witney, the road into and around Eynsham, and routes to places in Woodstock and North Oxford where the kids have often had classes/activities.
  • I’ve unsurprisingly spent very little time in Oxford City Centre, but when I have it’s most often been at the Westgate Shopping Centre, on the roof of which is one of the kids’ favourite restaurants (and which we’ve been able to go to again as Covid restrictions have lifted, not least thanks to their outdoor seating!).

One to eight years ago

Let’s go back to the 7 years prior, when I lived in Kidlington. This paints a different picture:

Heatmap showing Dan's movements around Kidlington, including a lot of time in the village and in Oxford City Centre, as well as hotspots at the hospital, parks, swimming pools, and places that Dan used to volunteer. Individual expeditions can also be identified.
For the seven years I lived in Kidlington I moved around a lot more than I have since: each hotspot tells a story, and some tell a few.

This heatmap highlights some of the ways in which my life was quite different. For example:

  • Most of my time was spent in my village, but it was a lot larger than the hamlet I live in now and this shows in the size of my local “blob”. It’s also possible to pick out common destinations like the kids’ nursery and (later) school, the parks, and the routes to e.g. ballet classes, music classes, and other kid-focussed hotspots.
  • I worked at the Bodleian from early 2011 until late in 2019, and so I spent a lot of time in Oxford City Centre and cycling up and down the roads connecting my home to my workplace: Banbury Road glows the brightest, but I spent some time on Woodstock Road too.
  • For some of this period I still volunteered with Samaritans in Oxford, and their branch – among other volunteering hotspots – show up among my movements. Even without zooming in it’s also possible to make out individual venues I visited: pubs, a cinema, woodland and riverside walks, swimming pools etc.
  • Less-happily, it’s also obvious from the map that I spent a significant amount of time at the John Radcliffe Hospital, an unpleasant reminder of some challenging times from that chapter of our lives.
  • The data’s visibly “spottier” here, mostly because I built the heatmap only out of the spatial data over the time period, and not over the full tracklogs (i.e. the map it doesn’t concern itself with the movement between two sampled points, even where that movement is very-guessable), and some of the data comes from less-frequently-sampled sources like Google.

Eight to ten years ago

Let’s go back further:

Heatmap showing Dan's movements around Oxford during the period he lived in Kennington. Again, it's dominated by time at home, in the city centre, and commuting between the two.
Back when I lived in Kennington I moved around a lot less than I would come to later on (although again, the spottiness of the data makes that look more-significant than it is).

Before 2011, and before we bought our first house, I spent a couple of years living in Kennington, to the South of Oxford. Looking at this heatmap, you’ll see:

  • I travelled a lot less. At the time, I didn’t have easy access to a car and – not having started my counselling qualification yet – I didn’t even rent one to drive around very often. You can see my commute up the cyclepath through Hinksey into the City Centre, and you can even make out the outline of Oxford’s Covered Market (where I’d often take my lunch) and a building in Osney Mead where I’d often deliver training courses.
  • Sometimes I’d commute along Abingdon Road, for a change; it’s a thinner line.
  • My volunteering at Samaritans stands out more-clearly, as do specific venues inside Oxford: bars, theatres, and cinemas – it’s the kind of heatmap that screams “this person doesn’t have kids; they can do whatever they like!”

Every map tells a story

I really love maps, and I love the fact that these heatmaps are capable of painting a picture of me and what my life was like in each of these three distinct chapters of my life over the last decade. I also really love that I’m able to collect and use all of the personal data that makes this possible, because it’s also proven useful in answering questions like “How many times did I visit Preston in 2012?”, “Where was this photo taken?”, or “What was the name of that place we had lunch when we got lost during our holiday in Devon?”.

There’s so much value in personal geodata (that’s why unscrupulous companies will try so hard to steal it from you!), but sometimes all you want to do is use it to draw pretty heatmaps. And that’s cool, too.

Heatmap showing Dan's movements around Great Britain for the last 10 years: with a focus on Oxford, tendrils stretch to hotspots in South Wales, London, Cambridge, York, Birmingham, Preston, Glasgow, Edinburgh, and beyond.

How these maps were generated

I have a μlogger instance with the relevant positional data in. I’ve automated my process, but the essence of it if you’d like to try it yourself is as follows:

First, write some SQL to extract all of the position data you need. I round off the latitude and longitude to 5 decimal places to help “cluster” dots for frequency-summing, and I raise the frequency to the power of 3 to help make a clear gradient in my heatmap by making hotspots exponentially-brighter the more popular they are:

SELECT ROUND(latitude, 5) lat, ROUND(longitude, 5) lng, POWER(COUNT(*), 3) `count`
FROM positions
WHERE `time` BETWEEN '2020-06-22' AND '2021-08-22'
GROUP BY ROUND(latitude, 5), ROUND(longitude, 5)

This data needs converting to JSON. I was using Ruby’s mysql2 gem to fetch the data, so I only needed a .to_json call to do the conversion – like this:

db = Mysql2::Client.new(host: ENV['DB_HOST'], username: ENV['DB_USERNAME'], password: ENV['DB_PASSWORD'], database: ENV['DB_DATABASE'])
db.query(sql).to_a.to_json

Approximately following this guide and leveraging my Mapbox subscription for the base map, I then just needed to include leaflet.js, heatmap.js, and leaflet-heatmap.js before writing some JavaScript code like this:

body.innerHTML = '<div id="map"></div>';
let map = L.map('map').setView([51.76, -1.40], 10);
// add the base layer to the map
L.tileLayer('https://api.mapbox.com/styles/v1/{id}/tiles/{z}/{x}/{y}?access_token={accessToken}', {
  maxZoom: 18,
  id: 'itsdanq/ckslkmiid8q7j17ocziio7t46', // this is the style I defined for my map, using Mapbox
  tileSize: 512,
  zoomOffset: -1,
  accessToken: '...' // put your access token here if you need one!
}).addTo(map);
// fetch the heatmap JSON and render the heatmap
fetch('heat.json').then(r=>r.json()).then(json=>{
  let heatmapLayer = new HeatmapOverlay({
    "radius": parseFloat(document.querySelector('#radius').value),
    "scaleRadius": true,
    "useLocalExtrema": true,
  });
  heatmapLayer.setData({ data: json });
  heatmapLayer.addTo(map);
});

That’s basically all there is to it!

× × × ×

Building a Playframe (Timelapse Video)

This week, with help from Robin and JTA, I built a TropicTemple Tall XXL climbing frame in the garden of our new house. Manufacturer Fatmoose provided us with a pallet-load of lumber and a sack of accessories, delivered to our driveway, based on a design Ruth and I customised using their website, and we assembled it on-site over the course of around three days. The video above is a timelapse taken from our kitchen window using a tablet I set up for that purpose, interspersed with close-up snippets of us assembling it and of the children testing it out.

Playframe in VR
You can explore the play equipment in VR, if you like.

I’ve also built a Virtual Tour so you can explore the playframe using your computer, phone, or VR headset. Take a look!

The video is also available via:

Buying Another House

Seven years ago, I wrote a six-part blog series (1, 2, 3, 4, 5, 6) about our Ruth, JTA and I’s experience of buying our first house. Now, though, we’re moving again, and it’s brought up all the same kinds of challenges and stresses as last time, plus a whole lot of bonus ones to boot.

Our house in Kidlington
Our old house – seen here in 2013 – has served its purpose. It’s time for us to move on.

In particular, new challenges this time around have included:

  • As owners, rather than renters, we’ve had both directions on the ladder to deal with. Not only did we have to find somewhere to move to that we can afford but we needed to find somebody who’d buy our current house (for enough money that we can afford the new place).
  • The first letting agents we appointed were pretty useless, somehow managing to get us no viewings whatsoever. Incidentally their local branch got closed soon after we ditched them and the last time I checked, the building was still up for sale: it doesn’t bode well for them that they can’t even sell their own building, does it?
  • The replacement letting agents (who sold us this house in the first place) were much better, but it still took a long time before we started getting offers we could act on.
  • We finally selected some buyers, accepting a lower offer because they were cash buyers and it would allow us to act quickly on the property we wanted to buy, only for the coronavirus lockdown to completely scupper our plans of a speedy move. And make any move a logistical nightmare.
  • Plus: we’re now doing this with lots more stuff (this won’t be a “rally some friends and rent a van” job like last time!), with two kids (who’re under our feet a lot on account of the lockdown), and so on.
Dan with his solar panels.
We added significant value to our old house during the time we owned it, for example by installing solar panels which continue to generate income as well as “free” energy. As well as being now conveniently close to a train line to London which I suppose would be good for commuters even though we’ve mostly used it for fun.

But it’s finally all coming together. We’ve got a house full of boxes, mind, and we can’t find anything, and somehow it still doesn’t feel like we’re prepared for when the removals lorry comes later this week. But we’re getting there. After a half-hour period between handing over the keys to the old place and picking up the keys to the new place (during which I guess we’ll technically be very-briefly homeless) we’ll this weekend be resident in our new home.

The Green, our new home
Our new home’s pretty delightful. I’ll vlog you a tour or something once we’re moved in, under the assumption that a housewarming party is still likely to be rendered impossible by coronavirus.

Our new house will:

  • Be out in the fabulous West Oxfordshire countryside.
  • Have sufficient rooms to retain an office and a “spare” bedroom while still giving the kids each their own bedroom.
  • Boast a fabulously-sized garden (we might have already promised the kids a climbing frame).
  • Have an incredible amount of storage space plus the potential for further expansion/conversion should the need ever arise. (On our second-to-last visit to the place with discovered an entire room, albeit an unfinished one, that we hadn’t known about before!)
  • Get ludicrously fast Internet access.

We lose some convenient public transport links, but you can’t have everything. And with me working from home all the time, Ruth – like many software geeks – likely working from home for the foreseeable future (except when she cycles into work), and JTA working from home for now but probably returning to what was always a driving commute “down the line”, those links aren’t as essential to us as they once were.

Sure: we’re going to be paying for it for the rest of our lives. But right now, at least, it feels like what we’re buying is a house we could well live in for the rest of our lives, too.

I certainly hope so. Moving house is hard.

× × ×

Solar Power, part 1

One of the great joys of owning a house is that you can do pretty much whatever you please with it. I celebrated Ruth, JTA and I’s purchase of Greendale last year by wall-mounting not one but two televisions and putting shelves up everywhere. But honestly, a little bit of DIY isn’t that unusual nor special. We’ve got plans for a few other changes to the house, but right now we’re pushing our eco-credentials: we had cavity wall insulation added to the older parts of the building the other week and an electric car charging port added not long before that. And then… came this week’s big change.

South-facing roof.
Look at all that South-facing roof, sitting there serving no purpose except to keep the rain off our heads.

Solar photovoltaics! They’re cool, they’re (becoming) economical, and we’ve got this big roof that faces almost due-South that would otherwise be just sitting there catching rain. Why not show off our green credentials and save ourselves some money by covering it with solar cells, we thought.

Annabel watches the solar panelling team arrive.
Annabel sits at the window and supervises the parking of the structural engineer, the electrician, and the solar panel specialist.

Because it’s me, I ended up speaking to five different companies and, after removing one from the running for employing a snake for a salesman, collecting seven quotes from the remaining four, I began to do my own research. The sheer variety of panels, inverters, layouts and configurations (all of which are described in their technical sheets using terms that in turn required a little research into electrical efficiency and dusting off formulas I’d barely used since my physics GCSE exam) are mind-boggling. Monolithic, string, or micro-inverters? 250w or 327w panels? Where to run the cables that connect the inverter (in the attic) to the generation meter and fusebox (in the ground floor toilet)? Needless to say, every company had a different idea about the “best way” to do it – sometimes subtly different, sometimes dramatically – and had a clear agenda to push. So – as somebody not suckered in to a quick deal – I went and did the background reading first.

Scaffolding!
The shape of our conservatory made erecting the scaffolding (which “staddles” it) a somewhat complicated operation.

In case you’re not yet aware, let me tell you the three reasons that solar panels are a great idea, economically-speaking. Firstly, of course, they make electricity out of sunlight which you can then use: that’s pretty cool. With good discipline and a monitoring tool either in hardware or software, you can discover the times that you’re making more power than you’re using, and use that moment to run the dishwasher or washing machine or car charger or whatever. Or the tumble drier, I suppose, although if you’re using the tumble drier because it’s sunny then you lose a couple of your ‘green points’ right there. So yeah: free energy is a nice selling point.

The second point is that the grid will buy the energy you make but don’t use. That’s pretty cool, too – if it’s a sunny day but there’s nobody in the house, then our electricity meter will run backwards: we’re selling power back to the grid for consumption by our neighbours. Your energy provider pays you for that, although they only pay you about a third of what you pay them to get the energy back again if you need it later, so it’s always more-efficient to use the power (if you’ve genuinely got something to use it for, like ad-hoc bitcoin mining or something) than to sell it. That said, it’s still “free money”, so you needn’t complain too much.

The third way that solar panels make economic sense is still one of the most-exciting, though. In order to enhance uptake of solar power and thus improve the chance that we hit the carbon emission reduction targets that Britain committed to at the Kyoto Protocol (and thus avoid a multi-billion-pound fine), the government subsidises renewable microgeneration plants. If you install solar panels on your house before the end of this year (when the subsidy is set to decrease) the government will pay you 14.38p per unit of electricity you produce… whether you use it or whether you sell it. That rate is retail price index linked and guaranteed for 20 years, and as a result residential solar installations invariably “pay for themselves” within that period, making them a logical investment for anybody who’s got a suitable roof and who otherwise has the money just sitting around. (If you don’t have the cash to hand, it might be worth taking out a loan to pay for solar panels, but then the maths gets a lot more complicated.)

Dan with his solar panels.
Look ma, no carbon emissions.

The scaffolding went up on the afternoon of day one, and I took the opportunity to climb up myself and give the gutters a good cleaning-out, because it’s a lot easier to do that from a fixed platform than it is from our wobbly “community ladder”. On day two, a team of electricians and a solar expert appeared at breakfast time and by 3pm they were gone, leaving behind a fully-functional solar array. On day three, we were promised that the scaffolding company would reappear and remove the climbing frame from our garden, but it’s now dark and they’ve not been seen yet, which isn’t ideal but isn’t the end of the world either: not least because Ruth’s been unwell and thus hasn’t had the chance to get up and see the view from the top of it, yet.

Greendale energy usage for the last four months.
Because that’s the kind of nerd I am, I have a process in place already to monitor our energy use fluctuations: note the jump in gas usage as we turned on the central heating for the winter!

We made about 4 units of electricity on our first day, which didn’t seem bad for an overcast afternoon about a fortnight away from the shortest day of the year. That’s about enough to power every light bulb in the house for the duration that the sun was in the sky, plus a little extra (we didn’t opt to commemorate the occasion by leaving the fridge door open in order to ensure that we used every scrap of the power we generated).

Because I’m a bit of a data nerd these years, I’ve been monitoring our energy usage lately anyway and as a result I’ve got an interesting baseline against which to compare the effectiveness of this new addition. And because there’s no point in being a data nerd if you don’t get to share the data love, I will of course be telling you all about it as soon as I know more.

× × × × ×

Means-Assessed Household Finances (Socialism Begins At Home!)

In 2023 I published an updated version of this blog post. See that post for the latest tips on managing polyfamily finances in a socialist manner.

For the last four years or so, Ruth, JTA and I (and during their times living with us, Paul and Matt) have organised our finances according to a system of means-assessment. I’ve mentioned it to people on a number of ocassions, and every time it seems to attract interest, so I thought I’d explain how we got to it and how it works, so that others might benefit from it. We think it’s particularly good for families consisting of multiple adults sharing a single household (for example, polyamorous networks like ours, or families with grown children) but there are probably others who’d benefit from it, too – it’s perfectly reasonable for just two adults with different salaries to use it, for example. And I’ve made a sample spreadsheet that you’re welcome to copy and adapt, if you’d like to.

How we got here

JTA and Ruth at the supermarket after shoping before Murder... At The Magic College
That’s a long receipt!

After I left Aberystwyth and Ruth, JTA, Paul and I started living at “Earth”, our house in Headington, we realised that for the first time, the four of us were financially-connected to one another. We started by dividing the rent and council tax four ways (with an exemption for Paul while he was still looking for work), splitting the major annual expenses (insurance, TV license) between the largest earners, and taking turns to pay smaller, more-regular expenses (shopping, bills, etc.). This didn’t work out very well, because it only takes two cycles of you being the “unlucky” one who gets lumbered with the more-expensive-than-usual shopping trip – right before a party, for example – before it starts to feel like a bit of a lottery.

Our solution, then, was to replace the system with a fairer one. We started adding up our total expenditures over the course of each month and settling the difference between one another at the end of each month. Because we’re clearly raging socialists, we decided that the fairest (and most “family-like”) way to distribute responsibility was by a system of partial means-assessment: de chacun selon ses facultés.

JTA and Paul pack bags at the checkout, before Christmas 2010.
Another enormous shopping trip.

We started out with what we called “75% means-assessment”: in other words, a quarter of our shared expenditures were split evenly, four ways, and three-quarters were split proportionally in accordance with our gross income. We arrived at that figure after a little dissussion (and a computerised model that we could all play with on a big screen). Working from gross income invariably introduces inequalities into the system (some of which are mirrored in our income tax system) but a bigger unfairness came – as it does in wider society – from the fact that the difference between a very-low income and a low income is significantly more (from a disposable money perspective) than the difference between a low and a high income. This was relevant, because ‘personal’ expenses, such as mobile phone bills, were not included in the scheme and so we may have penalised lower-earners more than we had intended. On the other hand, 75% means-assessment was still significantly more-“communist” than 0%!

When I mentioned this system to people, sometimes they’d express surprise that I (as one of the higher earners) would agree to such an arrangement: the question was usually asked with a tone that implied that they expected the lower earners to mooch off of the higher earners, which (coupled with the clearly false idea that there’s a linear relationship between the amount of work involved in a job and the amount that it pays) would result in a “race to the bottom”, with each participant trying to do the smallest amount of work possible in order to maximise the degree to which they were subsidised by the others. From a game theory perspective, the argument makes sense, I would concede. But on the other hand – what the hell would I be doing agreeing to live with and share finances with (and then continuing to live with and share finances with) people whose ideology was so opposed to my own in the first place? Naturally, I trusted my fellow Earthlings in this arrangement: I already trusted them – that’s why I was living with them!

Louis Blanc
Louis Blanc had the right idea, but his idealism was hampered by the selfishness inherent in any sufficiently-large group. Had he brought socialism to his house, rather than his country, he might have felt more successful.

How it works

We’ve had a few iterations, but we eventually settled on a system at a higher rate of means-assessment: 100%! It’s not perfect, but it’s the fairest way I’ve ever been involved with of sharing the costs of running a house. I’ve put together a spreadsheet based on the one that we use that you can adapt to your own household, if you’d like to try a fairer way of splitting your bills – whether there are just two of you or lots of you in your home, this provides a genuinely equitable way to share your costs.

Means-assessed household finances sample sheet. Click to see the actual sheet.
Click on the sheet to see a Google Drive document that you can save a copy of and adapt to your own household.

The sheet I’ve provided – linked above – is not quite like ours: ours has extra features to handle Ruth and I’s fluctuating income (mine because of freelance work, Ruth’s because she’s gradually returning to work following a period of maternity leave), an archive of each month’s finances, tools to help handle repayments to one another of money borrowed, and convenience macros to highlight who owes what to whom. This is, then, a simplified version from which you can build a model for your own household, or that you can use as a starting point for discussions with your own tribe.

Start on the “People” sheet and tell it how many participants your household has, their names, and their relative incomes. Also add your proposed level of means-assessment: anything from 0% to 100%… or beyond, but that does have some interesting philosophical consequences.

Then, on the “Expenses” sheet, record each thing that your household pays for over the course of each month. At the bottom, it’ll total up how much each person has paid, and how much they would have been expected to pay, based on the level of your means-assessment: at 0%, for example, each person would be expected to pay 1/N of the total; at the other extreme (100%), a person with no income would be expected to make no contribution, and a person with twice the income of another would be expected to pay twice as much as them. It’ll also show the difference between the two values: so those who’ve paid less than their ‘share’ will have negative numbers and will owe money to those who’ve paid more than their share, indicated by positive numbers. Settle the difference… and you’re ready to roll on to the next month.

Now you’re equipped to employ a (wholly or partially) means-assessed model to your household finances. If you adapt this model or have ideas for its future development, I’d love to hear them.

× × ×

Buying A House, Part 6

This blog post is the sixth and final part in a series about buying our first house. In the fifth post, we finally exchanged contracts with the sellers after a long-running disagreement about who was going to repair the front door…

A series of days flew by in a cardboard-box-filled blur, and suddenly it was the last Friday in July – the day upon which our sale was completed. I’d run out of spare days of annual leave, so I was only able to justify taking the afternoon off to pick up a van, scoop up Ruth and Matt, get the keys to the new house, and meet JTA there.

Ruth and Matt at the Europcar office.
The first mission was to collect a van from Europcar, so that we’d be able to spend the entire weekend going up and down the A34.

The estate agents were conveniently just two doors down from a locksmith, so we got some keys cut to what we believed to be the new front door, while we were there. It’s also sandwiched between a funeral home and a florist, which makes it sort of a one-stop street when somebody dies and you want to put their house on the market.

Dan is handed keys and a bottle of sparkling wine by Mark, the estate agent.
The great thing about getting champagne as a housewarming gift, from your estate agent, is that you don’t need to unpack the corkscrew to open it.

We soon discovered that the “fix” that had ultimately been applied to the broken front door was simply to swap it for a different exterior door, from the inner porch. A little cheeky, and a little frustrating after all the fighting we’d done, but not the end of the world: we still had a perfectly good front door and – as we planned to use the annex as part of the main house, anyway, we were happy to take the door down and leave an open doorway, anyway.

JTA opens the door of Greendale.
We gave JTA the honour of being the first to open the door to our new home. After some fiddling with what turned out to be the wrong key, the door turned out to be already unlocked.

A vacant house feels big and empty. Our new – large! – living room felt enormous. Meanwhile, packing up our old house – with its painted walls and wooden floors – was beginning to sound echoey as it became emptier.

Ruth lies in the empty living room of Greendale.
Lounging in the living room. (or is she living in the lounge?)

We spent a long time working out which of the many keys we had fit which of the locks, as there were quite so many: there’s the front door, the inner front door, the other inner front door, the back door, the outer conservatory door, the inner conservatory door, the gate lock, the shed lock, the window locks, and a good handful of keys besides that we still haven’t identified the purpose of. It’s was like the previous owners just bought a pile of additional keys, just as a prank.

Boxes on New Earth
Our old house – New Earth – became emptier and yet more-chaotic as the stacks of boxes were gradually loaded into the van.

We’d rented a van over a long weekend in which to do the majority of the move, and we’d hired some burly men with a bigger van to move some of the heaviest furniture, and to collect a piano that we’d bought (yes, we have a piano now; booyah).

JTA in the back of the van, in which a small mock living room has been assembled.
“Pack the living room into the van,” I said. “Okay,” said JTA, putting the kettle on.

Very helpfully, Alec came and joined us, and helped run an enormous amount of boxes and furniture down and out of the three-stories of our old house, and in and up the three-stories of our new house. Why do we keep torturing ourselves with these tall buildings? At least our new staircases are a better shape for carrying mattresses up.

Removals men carry our sideboard out from the back door of New Earth.
Now that I’ve discovered that I can hire muscular men on-demand, I’m not sure that I’ll ever do anything else.

The weather stayed good, with only occasional showers (and thankfully, never when we were carrying soft furnishings between a van and a building) and one brief but wild thunderstorm (that we managed to avoid only with a quick re-arrangement of the van contents, slamming the doors, and sprinting for cover), and we worked hard, and we ended up a day ahead of schedule before we were finished.

Alec tests the piano at Greendale.
Alec helped out with lots of heavy lifting, but also with ‘testing’ the piano. Which, before it had been tuned, wasn’t the best of experiences for anybody involved.

In order to minimise the amount of the deposit that we might otherwise lose, from our old place, and because we rightly anticipated being too exhausted from the move to do all of the requisite cleaning ourselves, we’d hired some professionals. By this point, we weren’t even able to think in terms of money like normal people – by the time you’re spending five figures on tax and lawyers, you find it pretty easy to shrug off the cost of a team of cleaners!

Matt filling his face with ice cream.
I’m pretty sure that the local ice cream van driver was following us around, because on each day of the move, he’d arrive on the scene right after we’d finished unloading a van and could really do with an ice cream break.

This did mean that Ruth and I had to each work from home, from the old house, for one last day while we let the cleaners, gardener etc. in. We left in the old house an absolute minimum of furniture: a single desk, chair, laptop computer, cup (for water), router, and cables.

Dan works from home on the final day of the occupation of New Earth.
One desk, one chair, one laptop, one router… in a five bedroom house. It’s a lonely life.

As I left the house for the last time, as empty and quiet as it was the day we first moved in, I felt a sense of serenity; a calm that came from a number of simultaneous realisations… that this was probably the last house move I’d have to do in a long while… that I finally lived somewhere that I didn’t (theoretically, at least) have to ask for somebody’s permission before I put a picture hook up or painted a wall… and that at long last I was paying off my own mortgage, rather than somebody else’s. It was the beginning of a new era.

Alec among furniture and boxes.
The first box that we unpacked was the one containing Alec, of course.

Changing tack from the theme by which our houses have been named since 2010, our new home is called Greendale. And yes, there’s a website (albeit a little sparse, for now). There’s always a website.

Matt and Susan on a bean bag as we rest at the end of the first day's moving.
Susan didn’t help much with the packing and moving, but I’m not sure I’ve put a photo of her and Matt online yet. So now I have.

There’ll be a housewarming party on 22nd September: if you’re a friend of one or more of us, you’ve probably received an invitation already. But if you haven’t – and it’s not impossible, because we weren’t sure of everybody’s best email addresses these days – and you expect you should have, let me know. It’s not that we don’t love you: we just don’t love you enough to remember to invite you to stuff, that’s all.

× × × × × × × × × × × ×