Cable Car Marquee

This is a repost promoting content originally published elsewhere. See more things Dan's reposted.

Was playing around with some HTML and made a cable car for my page. Hmh.

Beautiful. It feels like it ought to have been wrapped in a HTML Web Component, maybe called <cable-car>, with progressive enhancement bonus features (maybe it’ll only run during daylight hours? or when the wind isn’t too fast?)?

But really: I can’t fault this. Beautiful.

Build Colors from Colors with CSS Relative Color Syntax

This is a repost promoting content originally published elsewhere. See more things Dan's reposted.

The feature here is that you can take a color you already have and manipulate its components. Which things you can change vary by the color space you choose, so for an RGB color you can change the red, green, blue, and alpha channels, for an HSL color you can change hue, saturation, lightness, and alpha, and for my beloved OKLCH you can change lightness, chroma, hue, and yes, opacity.

The syntax if you wanted to use this and not change anything about the color is:

oklch(from var(--color) l c h / 1)

But of course you can change each component, either swapping them entirely as with this which sets the lightness to 20%:

oklch(from var(--color) 20% c h / 1)

This is really something. I was aware that new colour functions were coming to CSS but kinda dropped the ball and didn’t notice that oklch(...) is, for the most part, usable in any modern browser. That’s a huge deal!

The OKLCH colour model makes more sense than RGB, covers a wider spectrum than HSL, and – on screens that support it – describes a (much) larger spectrum, providing access to a wider array of colours (with sensible fallbacks where they’re not supported). But more than that, the oklch(...) function provides good colour adaptation.

If you’ve ever used e.g. Sass’s darken(...) function and been disappointed when it seems to have a bigger impact on some colours than others… that’s because simple mathematical colour models don’t accurately reflect the complexities of human vision: some colours just look brighter, to us, thanks quirks of biochemistry, psychology, and evolution!

This colour vision curve feels to me a little like how pianos aren’t always tuned to equal-temper – i.e. how the maths of harmonics says that should be – but are instead tuned so that the lowest notes are tuned slightly flat and the highest notes slightly sharp to compensate for inharmonicity resulting from the varying stiffness of the strings. This means that their taut length alone doesn’t dictate what note humans think they hear: my understanding is that at these extremes, the difference in the way the wave propagates within the string results in an inharmonic overtone that makes these notes sound out-of-tune with the rest of the instrument unless compensated for with careful off-tuning! Humans experience something other than what the simple maths predicts, and so we compensate for it! (The quirk isn’t unique to the piano, but it’s most-obvious in plucked or struck strings, rather than in bowed strings, and for instruments with a wide range, of which a piano is of course both!)

OKLCH is like that. And with it as a model (and a quick calc(...) function), you can tell your CSS “make this colour 20% lighter” and get something that, for most humans, will actually look “20% lighter”, regardless of the initial hue. That’s cool.

I spent way too long playing with this colour picker while I understood this concept. And now I want to use it everywhere!

3D Workers Island

This is a repost promoting content originally published elsewhere. See more things Dan's reposted.

Fake screenshot of Internet Explorer 6 showing 3dwiscr.com/what.html, a web page about a freeware screensaver.

If you’ve come across Tony Domenico’s work before it’s probably as a result of web horror video series Petscop.

3D Workers Island… isn’t quite like that (though quick content warning: it does vaugely allude to child domestic abuse). It’s got that kind of alternative history/”found footage webpage” feel to it that I enjoyed so much about the Basilisk collection. It’s beautifully and carefully made in a way that brings its world to life, and while I found the overall story slightly… incomplete?… I enjoyed the application of its medium enough to make up for it.

Best on desktop, but tolerable on a large mobile in landscape mode. Click each “screenshot” to advance.

Bluesky and enshittification

This is a repost promoting content originally published elsewhere. See more things Dan's reposted.

Any system where users can leave without pain is a system whose owners have high switching costs and whose users have none. An owner who makes a bad call – like removing the block function say, or opting every user into AI training – will lose a lot of users. Not just those users who price these downgrades highly enough that they outweigh the costs of leaving the service. If leaving the service is free, then tormenting your users in this way will visit in swift and devastating pain upon you.

There’s a name for this dynamic, from the world of behavioral economics. It’s called a “Ulysses Pact.” It’s named for the ancient hacker Ulysses, who ignored the normal protocol for sailing through the sirens’ sea. While normie sailors resisted the sirens’ song by filling their ears with wax, Ulysses instead had himself lashed to the mast, so that he could hear the sirens’ song, but could not be tempted into leaping into the sea, to be drowned by the sirens.

Whenever you take a measure during a moment of strength that guards against your own future self’s weakness, you enter into a Ulysses Pact – think throwing away the Oreos when you start your diet.

Wise words from Cory about why he isn’t on Bluesky, which somewhat echo my own experience. If you’ve had the experience in recent memory of abandoning an enshittified Twitter (and if you didn’t yet… why the fuck not?), TikTok, or let’s face it Reddit… and you’ve looked instead to services like Bluesky or arguably Threads… then you haven’t learned your lesson at all.

Freedom to exit is fundamental, and I’m a big fan of systems with a built-in Ulysses Pact. In non-social or unidirectionally-social software it’s sufficient for the tools to be open source: this allows me to host a copy myself if a hosted version falls to enshittification. But for bidirectional social networks, it’s also necessary for them to be federated, so that I’m not disadvantaged by choosing to drop any particular provider in favour of another or my own.

Bluesky keeps promising a proper federation model, but it’s not there yet. And I’m steering clear until it is.

I suppose I also enjoyed this post of Cory’s because it helped remind me of where I myself am failing to apply the Ulysses Pact. Right now, Three Rings is highly-centralised, and while I and everybody else involved with it know our exit strategy should the project have to fold (open source it, help charities migrate to their own instances, etc.) right now that plan is less “tie ourselves to the mast” than it is “trust one another to grab us if we go chasing sirens”. We probably ought to fix that.

The Time Travel Movie That Doesn’t Move

This is a repost promoting content originally published elsewhere. See more things Dan's reposted.

When I saw the title of this piece by The Nerdwriter pop up in my RSS reader, the first words that grabbed my attention were “time travel movie”. I’ve a bit of a thing for time travel stories in any medium, and I love a good time travel movie1. Could I be about to be introduced to one I’m not familiar with, I wondered?

Before the thumbnail loaded2, I processed the rest of the title: the movie doesn’t move. At first my brain had assumed that this was a reference to the story spanning time but not space, but now suddenly it clicked:

We’re talking about La Jetée, aren’t we?

Like many people (outside of film students), I imagine, I first came across La Jetée after seeing it mentioned in the credits of Twelve Monkeys, which adapts its storyline in several ways. And like most people who then went on to see it, I imagine, I was moved by that unforgettable experience – there’s nothing quite like it in the history of film (if we’re to call it a film, that is: its creator famously doesn’t).

Anyway: Nerdwriter1’s take on it doesn’t say anything that hasn’t already been said, but it’s a beautiful introduction to interpreting this fantastic short film and it’s highly-accessible whether or not you’ve seen La Jetée3. Give his video essay a watch.

Footnotes

1 Okay, let’s be honest, my feelings go deeper than that. Time travel movies are, for me, like pizza: I love a good time travel movie, but I’ll also happily enjoy a pretty trashy time travel movie too.

2 Right now I’m in a rural farm building surrounded by olive groves in an out-of-the-way bit of Spain, and my Internet access isn’t always the fastest. D’ya remember how sometimes Web pages used to load the text and then you’d wait while the images loaded? They still do that, here.

3 There’s spoilers, but by the time a film is 60 years old, I think that’s fair game, right?

Sex With Monsters

This is a repost promoting content originally published elsewhere. See more things Dan's reposted.

"Hello, humans!" Xb'rax greets us cheerfully against a background of writhing eyes, tentacles, and fang-y mouths. "Do you like sex? I'm Xb/rax with the Abyssal Plane Tourism Board, and I'm here to ask why not try...". Tile written in oozing pink cursive letters: Sex With Monsters?

Simon Shadows (via Oh Joy Sex Toy)

Just in time for Halloween, this comic (published via the ever-excellent Oh Joy Sex Toy) is fundamentally pretty silly… and yet still manages to touch upon important concepts of safer sex, consent, aftercare etc. And apparently, based on Simon’s portfolio, his “thing” might well be that niche but now fun-sounding genre of “queer/monster horror”.

Google turns to nuclear to power AI data centres

This is a repost promoting content originally published elsewhere. See more things Dan's reposted.

“The grid needs new electricity sources to support AI technologies,” said Michael Terrell, senior director for energy and climate at Google.

“This agreement helps accelerate a new technology to meet energy needs cleanly and reliably, and unlock the full potential of AI for everyone.”

The deal with Google “is important to accelerate the commercialisation of advanced nuclear energy by demonstrating the technical and market viability of a solution critical to decarbonising power grids,” said Kairos executive Jeff Olson.

Sigh.

First, something lighthearted-if-it-wasn’t-sad. Google’s AI is, of course, the thing that comes up with gems like this:

Google AI, confidently stating that the difference between a sauce and a dressing is that sauces add flavour and texture to dishes, while dressings are used to protect wounds. It goes on to say that a dressing should be large enough to cover a wound: a standard serving size is two tablespoons.
I’ve actually never seen Google do this shit, because I was fortunate enough to have dropped Google Search as my primary search engine long ago, but it hilari-saddens1 me to see it anyway. Screenshot courtesy @devopscats@toot.cat.
But here’s the thing: the optimist in me wants to believe that when the current fad for LLMs passes, we might – if we’re lucky – come out the other side with some fringe benefits in the form of technological advancements.

Western nations have, in general, been under-investing in new nuclear technologies2, instead continuing to operate ageing second-generation reactors for longer and longer timescales3 while flip-flopping over whether or not to construct a new fleet. It sickens me to say so, but if investment by tech companies is what’s needed to unlock the next-generation power plants, and those plants can keep running after LLMs have had its day and go back to being a primarily academic consideration… then that’s fine by me.

Of course, it’s easy to also find plenty of much more-pessimistic viewpoints too. The other week, I had a dream in which we determined the most-likely identity of the “great filter”: a hypothetical resolution to the Fermi paradox that posits that the reason we don’t see evidence of extraterrestrial life is because there’s some common barrier to the development of spacefaring civilisations that most fail to pass. In the dream, we decided that the most-likely cause was energy hunger: that over time, an advancing civilisation would inevitably develop an increasingly energy-hungry series of egoistic technologies (cryptocurrencies, LLMs, whatever comes next…) and, fuelled by the selfish, individualistic forces that ironically allowed them to compete and evolve to this point, destroy their habitat and/or their sources of power and collapsing. I woke from the dream thinking that there’d be a potential short story to be written there, from the perspective of some future human looking back on the path of the technologies that lead them to whatever technology ultimately lead to our energy-hunger downfall, but never got around to writing it.

I think I’ll try to keep a hold of the optimistic viewpoint, for now: that the snake-that-eats-its-own-tail that is contemporary AI will fizzle out of mainstream relevance, but not before big tech makes big investments in next-generation nuclear, renewable, and energy storage technologies. That’d be nice.

Footnotes

1 Hilari-saddening: when you laugh at something until you realise quite how sad it is.

2 I’m a big fan of nuclear power – as I believe that all informed environmentalists should be – as both a stop-gap to decarbonising energy production and potentially as a relatively-clean long-term solution for balancing grids.

3 Consider for example Hartlepool Nuclear Power Station, which supplies 2%-3% of the UK’s electricity. Construction began in the 1960s and was supposed to run until 2007. Which was extended to 2014 (by which point it was clearly showing signs of ageing). Which was extended to 2019. Which was extended to 2024. It’s still running. The site’s approved for a new reactor but construction will probably be a decade-long project and hasn’t started, sooo…

×

London Transport 25

This is a repost promoting content originally published elsewhere. See more things Dan's reposted.

Girl on the Net is a popular sex blogger, so this is a link to a SFW page on an otherwise NSFW site. If your only concern is seeing or hearing sexy things or somebody looking over your shoulder and thinking that’s what you’re doing, go ahead and read it. But if you’re connected through the monitored corporate firewall of a sex-negative employer, you might want to read on a different device…

25 different forms of London transport in a day

Hello! My name is Sarah and I love London transport. Because I am a very cool and interesting person, for a long time I’ve thought it might be fun to see how many different types of London transport I can take in a 24-hour period: bus, tram, tube, train, ferry, etc. The trip outlined below took me (and the lucky man I invited on this date) on 25 different forms of London transport in one single day. It criss-crossed the city from East through North to West, then South, Central, South East and back to where we started. I’m sharing the itinerary because this turned out to be a phenomenal adventure, and I thought others might like to give it a go.

The rules

The rules for the challenge were:

  1. Transport must be transport, not a ride, i.e. it must take me from A to B. So the London Eye doesn’t count, but the cable car definitely does.
  2. Each form of transport must continue the journey. So no going from A to B then immediately back again. The journey can meander, but it must keep moving forwards.
  3. No form of transport can be taken more than once. Changes on a single line are OK (for instance, if traveling on the DLR from Greenwich to Bank requires a change at Canary Wharf, that’s fine, or if you’re on a bus that gets taken out of service you can get on the next one) but repeated trips on the same form of transport aren’t allowed (you can’t take one double-decker bus in the morning then another in the afternoon). The exceptions to this are: walking; escalators; stairs. We’ll be using these a lot.

This sounds like a ludicrously fun adventure and a great use of a date for anybody who can find an even-remotely similarly-transport-obsessed partner.

The one thing this wonderful post is lacking is a map. Oh, and maybe a GPX file, but that’s a much bigger ask. Really I just want the map, to help me visualise the route. Maybe with the different forms of transport colour-coded or something? Okay, okay, now I’m asking a lot again.

Just go read it, it’s a fun London romp.

Calm after the storm

This is a repost promoting content originally published elsewhere. See more things Dan's reposted.

Regarding the alignment offer at Automattic that resulted in around 1 of every 12/13-or-so Automatticians being paid to leave, my colleague Rosie writes of her experience of the week of the offer and our subsequent week in Mexico:

I never thought about taking the offer, but last week took a toll on all of us. It was a weird and sad week. So the Woo DM worked not only as it usually does, a week to bond with colleagues, have fun and collaborate in person. It was also one hundred times more energizing than it usually is. It had that little taste of “we are here because we believe in this. LFG!!!”. A togetherness that feels special. We could talk, discuss, and share our concerns, opinions, memories and new ideas for the future of Woo and WordPress.

That’s a good summary of the week, I feel. It was weird and sad, especially to begin with, but it grew into something that was energising and hopeful. There was, in particular, a certain solidarity, of us being the ones who stayed. It’s great to be reminded that my experience is shared.

Whether or not somebody chose to stay for the same reason as me, or as Rosie, it felt like a bonding experience to be among those who made that same decision. I’m glad we got to have this meetup (even though I’m feeling a bit run-down by a combination of exhaustion, jetlag, and – principally – some kind of stomach bug I’ve contracted somewhere along the way, ugh).

EXIF geodata, and what if you took a picture on the moon?

This is a repost promoting content originally published elsewhere. See more things Dan's reposted.

A conversation about staying private and stripping EXIF tags on blogs lead to shdwcat asking the question “what would happen if you took a picture on the moon?”

However, I figured we could do better than “a point high above the Earth.” If you could state the coordinate system, you should be able to list an actual point on the moon.

It’s a fun question. Sure, you need to shoot down the naysayers who, like colin, rightly point out that you couldn’t reasonably expect to get a GPS/GNSS signal on the moon, but still.

GPS on Earth

GPS (and most other GNSS technologies) fundamentally work by the principle of trilateration. Here’s the skinny of what happens when your GPS receiver – whether that’s your phone, smartwatch, SatNav, or indeed digital camera – needs to work out where on Earth it is:

  1. It listens for the signal that’s transmitted from the satellites. This is already an amazing feat of engineering given that the signal is relatively quiet and it’s being transmitted from around 20,000km above the surface of the planet1.
  2. The signal fundamentally says, for example “Hi, I’m satellite #18, and the time is [some time].” Assuming your GPS receiver doesn’t contain an atomic clock2, it listens for the earliest time – i.e. the closest satellite (the signals “only” travel at the speed of light) – and assumes that this satellite’s time represents the actual time at your location.
  3. Your GPS receiver keeps listening until it’s found three more satellites, and compares the times that they claim it is. Using this, and knowing the speed of light, it’s able to measure the distance to each of those three satellites. The satellites themselves are on reasonably-stable orbits, so as long as you’ve been installing your firmware updates at least once every 5-10 years, your device knows where those satellites are expected to be.
  4. If you know your distance from one satellite, in 3D space, you know that your location is on the surface of an imaginary sphere with a radius of that distance, centered on the satellite. Once you’ve measured your distance from a second satellite, you know that you must be at a point where those two spheres intersect: i.e. somewhere on a circle. With a third satellite found and the distance measured, you’re able to cut that down to just two points (of which one is likely to be about 40,000km into space, so it’s probably not that one3).
  5. Your device will keep finding more passing satellites, measuring and re-measuring, and refining/averaging your calculated location for maximum accuracy.

So yeah: that tiny computer on top of your camera or within your wristwatch? It’s differentiating to miniscule precision measurements of the speed of light, from spacecraft as far away as half the circumference of the planet, while compensating for not being a timekeeping device accurate enough to do so and working-around the time dilation resulting from the effect of general relativity on the satellites4.

GPS on Luna

Supposing you could pick out GPS signals from Earth orbit, from the surface of the moon (which – again – you probably can’t – especially if you were on the dark side of the moon where you wouldn’t get a view of the Earth). Could it work?

I can’t see why not. You’d want to recalibrate your GPS receiver to assume that the “time” satellite – the one with the earliest-apparent clock – was much further away (and therefore that the real time was later than it appears to be) than an Earth-based GPS receiver would: the difference in the order of 1.3 seconds, which is a long time in terms of GNSS calculation.

Again, once you had distance measurements from three spatial satellites you’d be able to pinpoint your location, to within some sphere of uncertainty, to one of two points. One would be on the moon (where you know that you are5), and one would be on the far side of the Earth by almost the same distance. That’s a good start. And additional satellites could help narrow it down even more.

You might even be able to get a slightline to more satellites than is typically possible on Earth, not being limited by Earth curvature, nor being surrounded by relatively-large Earth features like mountains, buildings, trees, and unusually-tall humans. It’s feasible.

How about… LPS?

If we wanted to go further – and some day, if we aim to place permanent human settlements on the moon, we might – then we might consider a Lunar Positioning System: a network of a dozen or so orbiters whizzing around the moon to facilitate accurate positioning on its surface. They’d want to be in low orbits to avoid the impact of tidal forces from the much-larger nearby Eath, and with no atmosphere to scrape against there’s little harm in that.

By the time you’re doing that, though, you might as well ditch trilateration and use the doppler effect, Transit-style. It works great in low orbits but its accuracy on Eath was always limited by the fact that you can’t make the satellites fly low enough without getting atmospheric drag. There’s no such limitation on the moon. Maybe that’s the way forward.

Maybe far-future mobile phones and cameras will support satellite positioning and navigation networks on both Earth and Luna. And maybe then we’ll start seeing EXIF metadata spanning both the WGS-84 datum and the LRO-ME datum.

Footnotes

1 That’s still only about a twentieth of the way to the moon, by the way. But there are other challenging factors, like our atmosphere and all of the obstructions both geographic and human-made that litter our globe.

2 Protip: it doesn’t.

3 Satnav voice: “After falling for forty thousand kilometres, you will reach your destination.”

4 The relativistic effects on GPS satellites cannot be understated. Without compensation, GPS accuracy would drift by up to 10km for every day that the satellites were in orbit, which I reckon would make them useless for anything more than telling you what hemisphere you were in within 5½ years!

5 If you’re on the moon and don’t know it, you have a whole different problem.

What the heck is going on with WordPress?

This is a repost promoting content originally published elsewhere. See more things Dan's reposted.

Let’s play a little game. 😉

Look at the following list of words and try to find the intruder:

  • wp-activate.php
  • wp-admin
  • wp-blog-header.php
  • wp_commentmeta
  • wp_comments
  • wp-comments-post.php
  • wp-config-sample.php
  • wp-content
  • wp-cron.php
  • wp engine
  • wp-includes
  • wp_jetpack_sync_queue
  • wp_links
  • wp-links-opml.php
  • wp-load.php
  • wp-login.php
  • wp-mail.php
  • wp_options
  • wp_postmeta
  • wp_posts
  • wp-settings.php
  • wp-signup.php
  • wp_term_relationships
  • wp_term_taxonomy
  • wp_termmeta
  • wp_terms
  • wp-trackback.php
  • wp_usermeta
  • wp_users

What are these words?

Well, all the ones that contain an underscore _ are names of the WordPress core database tables. All the ones that contain a dash - are WordPress core file or folder names. The one with a space is a company name…

A smart (if slightly tongue-in-cheek) observation by my colleague Paolo, there. The rest of his article’s cleverer and worth-reading if you’re following the WordPress Drama (but it’s pretty long!).

The Duck Song 4

This is a repost promoting content originally published elsewhere. See more things Dan's reposted.

Cast your mind back to 15½ years ago, when the Internet was delighted by The Duck Song, a stupid adaptation of an already-ancient joke, presented as a song for a child and accompanied by some MS Paint-grade animation. It was catchy, though, and before long everybody had it stuck in their heads.

Over the subsequent year it was followed by The Duck Song 2 and The Duck Song 3, each in a similar vein but with a different accompanying joke. There’s sort-of an ongoing narrative – a story arc – than spans the three, as the foils of the first and second are introduced to one another in the third in a strange duck-related meet-cute.

And then there was nothing for… well, almost 14 years. The creators went on to do other things, and we all assumed that this series was completed (unlike for example the Wave Hello trilogy I mentioned the other day, which is clearly supposed to get one more part, and is overdue!). That’s fine, of course. Things are allowed to finish, contrary to what many American TV execs seem to think.

Then last year, we got a seasonal treat in the form of The Christmas Duck Song. It felt like a non-canonical spinoff, though, not a true “fourth Duck Song”. Like the Star Wars Holiday Special. Except good. It’s appearance wasn’t taken as heralding a return of duck songs.

But perhaps it should’ve, because earlier this year we got The Duck Song 4! Yet again, it retells a stupid joke – in this case, an especially silly and immature one – but man, it feels like an old friend coming home. Welcome back, Duck Song.

I don’t think I’ve done justice to it, though. Perhaps the Hillsdale Collegian manages to in their article, which implores:

Permit yourself to be entranced by the magnificence of the animation, the piquancy of the wordplay, the splendorous yet seductive simplicity of the G-C-D chord progression. Let the duck, like Virgil in Dante’s “Divine Comedy,” be your guide — lean into the quotidian but sempiternal question of whether the man at the lemonade stand has any grapes. Consider the irritation of the man at the stand and ask yourself if the wrath of Achilles is really that much more disastrous. Admire the cunning of the duck’s questioning — was Socrates so very different?

Yeah, that’s about right.

Transparency, Contribution, and the Future of WordPress

This is a repost promoting content originally published elsewhere. See more things Dan's reposted.

The people who make the most money in WordPress are not the people who contribute the most (Matt / Automattic really is one of the exceptions here, as I think we are). And this is a problem. It’s a moral problem. It’s just not equitable.

I agree with Matt about his opinion that a big hosting company such as WPEngine should contribute more. It is the right thing to do. It’s fair. It will make the WordPress community more egalitarian. Otherwise, it will lead to resentment. I’ve experienced that too.

In my opinion, we all should get a say in how we spend those contributions [from companies to WordPress]. I understand that core contributors are very important, but so are the organizers of our (flagship) events, the leadership of hosting companies, etc. We need to find a way to have a group of people who represent the community and the contributing corporations.

Just like in a democracy. Because, after all, isn’t WordPress all about democratizing?

Now I don’t mean to say that Matt should no longer be project leader. I just think that we should more transparently discuss with a “board” of some sorts, about the roadmap and the future of WordPress as many people and companies depend on it. I think this could actually help Matt, as I do understand that it’s very lonely at the top.

With such a group, we could also discuss how to better highlight companies that are contributing and how to encourage others to do so.

Some wise words from Joost de Valk, and it’s worth reading his full post if you’re following the WP Engine drama but would rather be focussing on looking long-term towards a better future for the entire ecosystem.

I don’t know whether Joost’s solution is optimal, but it’s certainly worth considering his ideas if we’re to come up with a new shape for WordPress. It’s good to see that people are thinking about the bigger picture here, than just wherever we find ourselves at the resolution of this disagreement between Matt/Automattic/the WordPress Foundation and WP Engine.

Thinking bigger is admirable. Thinking bigger is optimistic. Thinking bigger is future-facing.

Calculating the Ideal “Sex and the City” Polycule

This is a repost promoting content originally published elsewhere. See more things Dan's reposted.

I’ve never been even remotely into Sex and the City. But I can’t help but love that this developer was so invested in the characters and their relationships that when he asked himself “couldn’t all this drama and heartache have been simplified if these characters were willing to consider polyamorous relationships rather than serial monogamy?”1, he did the maths to optimise his hypothetical fanfic polycule:

Juan Pablo Sarmiento

As if his talk at !!Con 2024 wasn’t cool enough, he open-sourced the whole thing, so you’re free to try the calculator online for yourself or expand upon or adapt it to your heart’s content. Perhaps you disagree with his assessment of the relative relationship characteristics of the characters2: tweak them and see what the result is!

Or maybe Sex and the City isn’t your thing at all? Well adapt it for whatever your fandom is! How I Met Your Mother, Dawson’s CreekMamma Mia and The L-Word were all crying out for polyamory to come and “fix” them3.

Perhaps if you’re feeling especially brave you’ll put yourself and your circles of friends, lovers, metamours, or whatever into the algorithm and see who it matches up. You never know, maybe there’s a love connection you’ve missed! (Just be ready for the possibility that it’ll tell you that you’re doing your love life “wrong”!)

Footnotes

1 This is a question I routinely find myself asking of every TV show that presents a love triangle as a fait accompli resulting from an even moderately-complex who’s-attracted-to-whom.

2 Clearly somebody does, based on his commit “against his will” that increases Carrie and Big’s validatesOthers scores and reduces Big’s prioritizesKindness.

3 I was especially disappointed with the otherwise-excellent The L-Word, which did have a go at an ethical non-monogamy storyline but bungled the “ethical” at every hurdle while simultaneously reinforcing the “insatiable bisexual” stereotype. Boo! Anyway: maybe on my next re-watch I’ll feed some numbers into Juan’s algorithm and see what comes out…