Skip to main content

How I vote

2 min read

A set of

I like mail-in ballots because I can do my research as I go, on my own time, in my own environment. To me, it feels a lot closer to giving the process the time and attention it deserves.

I filled in my Pennsylvania primary ballot this morning. I’d never been a British voter (I’m not a British citizen), so moving to the US represented the first time I could actually vote for my representatives in the country I lived in.

Primaries are sort of a funny idea: you pledge yourself to a party ahead of time, and that party affiliation is public. It seems to me to be a little counter to the idea of a private ballot, which is the cornerstone of free and fair elections, but that’s the system we have. If you’re a registered voter for a party, you can vote in its primary, which helps to select which candidates will actually make it to the general election.

I already knew how I’d cast my vote for the big-ticket item — the President of the United States — but I had very little idea about down-ballot candidates like the Attorney General or the Treasurer. So I sat down with my laptop and, person by person, checked them out on:

Rather than look to a central party recommendation or trust one set of endorsements, I prefer to form my own opinions, triangulating between sources that care about the same things I do. I explicitly seek out criticism, including from the opposition party and opposing points of view, because even if I don’t agree with someone’s political position, they may bring up flaws that a candidate’s own party would not highlight.

And then I seal it up in an envelope and send it off. It feels good to vote. It feels important to vote (particular in this era). I’ll be crossing my fingers for the most compassionate, inclusive, peaceful outcome from our set of possible outcomes in November.

· Asides · Share this post


The social web doesn't exist without social justice

1 min read

So much of what we build on the web is about connecting people.

It is impossible to connect people effectively without paying attention to social justice and equity.

Otherwise we’re just connecting the privileged with the privileged, creating ever smaller networks of influence, and learning nothing new.

· Asides · Share this post


No tech for apartheid is within its rights to protest

Solidarity with the 28 workers who stood up for human rights.

2 min read

A warning sign looking out over the Gaza strip

Solidarity with the 28 Google workers who were fired for protesting Project Nimbus this week. Anonymous Google and Amazon workers described the project as follows a couple of years ago:

Project Nimbus is a $1.2bn contract to provide cloud services for the Israeli military and government. This technology allows for further surveillance of and unlawful data collection on Palestinians, and facilitates expansion of Israel’s illegal settlements on Palestinian land.

I have never worked for Google or Amazon, but I would like to think that I would have protested too.

There is nothing honorable about supporting your employer as it commits or facilitates human rights violations. Protesting is the ethical thing to do, particularly when you hold deeply-held beliefs like these:

We cannot look the other way, as the products we build are used to deny Palestinians their basic rights, force Palestinians out of their homes and attack Palestinians in the Gaza Strip – actions that have prompted war crime investigations by the international criminal court.

Human rights should always trump business.

Further to that, apparently some of these 28 workers hadn’t even protested — they’d just associated with the people who had:

Yeah, this was retaliation, like completely indiscriminate—people who had just walked by just to say hello and maybe talk to us for a little bit. They were fired. People who aren't affiliated with No Tech For Apartheid at all, who just showed up and were interested in what was going on. And then security asked to see their badge and they were among the 28 fired.

Not a good look, to say the least. The same goes for the scores of tech workers who — on a cursory glance of social media — seem to have been derisive of the protests. Shame on you.

· Asides · Share this post


Backdoors are an everyone problem

XZ Utils isn't just a lesson for open source.

2 min read

From the OpenJS Foundation:

The recent attempted XZ Utils backdoor (CVE-2024-3094) may not be an isolated incident as evidenced by a similar credible takeover attempt intercepted by the OpenJS Foundation, home to JavaScript projects used by billions of websites worldwide. The Open Source Security (OpenSSF) and OpenJS Foundations are calling all open source maintainers to be alert for social engineering takeover attempts, to recognize the early threat patterns emerging, and to take steps to protect their open source projects.

Vigilance is good, and it’s worth heeding the advice and paying attention to the evidence presented here. The XZ Utils backdoor was a smart attack that very nearly caused havoc.

I think it’s also worth pointing out that we know about the exploit because it was in an open source project. Andres Freund was debugging a server resource issue when he uncovered the issue. Because the project — and its downstream client — were open source, he could investigate and find the intrusion.

It’s not clear how this would have panned out if this had been proprietary software: particularly on a team that was resource strapped or moving at speed. The same social engineering exploits that allowed Jia Tan to become a maintainer of the XZ Utils project would also see someone hired as a contractor by a tech team. If I was a nefarious actor who wanted to place an exploit in an important software library, that’s exactly what I’d do: go send someone to join the team as a contractor. While there are mandatory identity verification procedures for full-time employees (which we can certainly argue the pros and cons of), contractors have no such requirements.

I bring this up because all the advice I’ve seen to date has been directed at open source maintainers. Again, this is smart and good and should absolutely be heeded — but there’s a world of other software out there that is also critical infrastructure and which doesn’t enjoy the sunlight of open source projects. This isn’t an open source software problem; it’s a software problem. Everyone should be vigilant, regardless if there are eyes on their source code or not. And perhaps we should be even warier of projects whose code we can’t audit ourselves.

· Asides · Share this post


Writing a web-first resumé

Describing myself by telling my story

3 min read

I hate writing resumés. There’s always been something about the format that never really sat right with me; each entry presents work I’ve done, sometimes representing many multiple years of my life, without explaining the “why” or the through-line of how I got there. It’s always felt to me like they’re missing the fundamentals of the human being behind them — the values and mindsets of the living, breathing person you’d actually be hiring.

On top of that, mine was stuck in a document, when all of my work is on the web.

So I set out to rewrite mine, make it web-first, and turn it into something that I feel like actually represents me and my career. You can check it out here: I gave it its own subdomain at

The default version now displays my career in chronological order, each life event building on the next, and includes things that, while not technically being work, informed the work I’ve subsequently done. You’ll find stuff like the electronic hypertext magazine I built as a teenager and the popular meme site I built at university, which wouldn’t normally find their way into a standard resumé, but do help define my expertise and how I approach projects.

From that page, you can flip to a more traditional reverse-chronological resumé that omits the non-employment content and removes unnecessary description. Because it’s an edited-down version of my story, rather than a collection of bullet points, it’s probably better than any resumé I’ve had in the past. It’s web-first but there are a few print-only CSS rules in there to make sure it prints or turns into a PDF really nicely. It’s also nicely responsive, so it displays well on both a laptop / desktop and a phone.

Behind the scenes, here’s how it works:

  • Each element of my experience is a standalone HTML snippet file of the form startyear-endyear.html. Some are annotated to be “narrative-only”, which means that they won’t show up in the traditional view. The engine I wrote for this will also omit any entries marked “traditional-only” from the narrative view, but in practice I didn’t use that.
  • In narrative view, the engine reads the files in alphabetical order. In traditional view, the engine reads them in reverse-alphabetical order. The effect is to order the entries chronologically or reverse-chronologically as described.
  • Educational entries are marked as such. In narrative view they’re placed into the main flow; in traditional view they’re displayed at the end of the document.
  • In narrative view, any HTML element with a class traditional is marked as display:none in order to hide it; in traditional view, any HTML element with a class narrative is hidden. This allows me to mix narrative content in with more traditional resumé content and only display them in one view.
  • Everything is marked up with the h-resume microformat.

The most important thing for me was being able to write my story as a story, and then edit down accordingly. I’m pretty happy with it! Let me know what you think.


Syndicated to IndieNews

· Asides · Share this post


I tried Tesla FSD

Some screaming was involved

5 min read


So, let’s get this out of the way first: I drive a Tesla Model 3. Yes, I know. And yes, even though I bought it a few years ago, there was plenty of evidence of the CEO’s bad behavior and of poor conditions in the factories. And I let my desire to drive an electric car override all that, and it was a poor decision, and now I’m stuck with it because it was also a very bad financial decision and it’s depreciated at such a rate that the diff of the value of the car and the remaining value of my car loan are not in a good place. It was silly. Can we just accept that? Okay, thank you. Moving on.

This month Tesla switched Full Self Driving (FSD) on .. as far as I can tell, every single car. It’s normally a five figure software-only upgrade, which you can pay for up-front or at the ongoing subscription price of $199 a month. But usage of the feature has been low, perhaps in part because if you’ve spent $40-90,000 on a car, spending another five figure sum is annoying, and perhaps in part because people generally value their own lives and the lives of the people they love. So now, for this month only, it’s free, and Tesla can juice their numbers.

And, yes, I tried it.

And let me be clear: nope. Nope nope nope nope nope nope nope.

I’ve rarely been so frightened behind the wheel of my own car. As an experience it ranks right up there with driving that one stretch of the 880 where you’re supposed to go at 45mph and everybody drives twice that, the time I was riding in a Lyft and was jackknifed by a tow truck, or that one time I was driving on the 101 North and a tech bro Lamborghini shot out of the Highway 12 offramp and came within two inches of hitting me, spun around in the road, and careened off into the distance.

To be added to those heart-stopping experiences soon, I have to surmise, is being hit by a Tesla in Full Self Driving Mode.

Unlike my Lambo encounter, I was driving at 25mph down my local road to the store. On this 10 minute drive (5 minutes there and back), my car clung surprisingly close to cars parked on the side of the road — but more importantly, I had to intervene once because, on a stretch of road that had been coned off and narrowed into one lane for both directions, it felt like the car was driving directly into an oncoming vehicle. It’s possible (and, in fact, quite likely) that the car wouldn’t have smashed into the oncoming Subaru. But it felt like it was about to, and I had no desire to make it a scientific test. FSD requires you to keep your hands on the wheel — a lean-back experience this is not — so safely intervening was very natural. The car then asks you to leave a recorded message explaining why you intervened, and the struggle is to use words instead of screaming over and over.

What’s particularly surprising to me is that FSD wasn’t just downloaded to my vehicle — it was switched on by default. At no point did I need to agree to the terms and conditions. All I needed to do was enter a destination into the navigation and pull the gear stalk down once (as if I was simply changing into another gear), and off it went. Autopilot, which is what Tesla calls its cruise control feature, is engaged in a very similar way, so I can see a world where a driver might even switch it on unintentionally.

So would I pay the money for it? Fear on this level seems like a pretty poor use of $12,000 or $199 a month. You can rent a horror movie for $2.99, and paying attention to America is free. But clearly I was curious. Genuinely, if the technology improved to the point where I didn’t feel like I was probably going to die, I would happily sit inside a self-driving vehicle. Less so, perhaps, for going to the store, but definitely for road trips. (Can you imagine an autonomous RV? It would cost an arm and a leg, but if I had the money, I would 100% use one to get across country.) Right now, though, I would rather pour vinegar onto my eyeballs. For those readers who don’t need to think hard about dropping $12,000 — I am not one of them — I would encourage you to spend the money on more caviar or whatever. This ain’t it.

· Asides · Share this post


Updates for ShareOpenly

1 min read

I made some updates to ShareOpenly this weekend:

I also added “share this post” links to the byline of every post on my site, including on the homepage and from indices.

Support for more social networks, as well as a universal share icon, are in the works.

· Asides · Share this post


My Edinburgh

7 min read

The author on Cramond Island

A friend asked me to recommend some places to visit in Edinburgh — not the big stuff (Arthur’s Seat, for example), but the small haunts and little delights that I used to love. I lived there for a long time, and think back on the city with a lot of fondness. But I’ve been in the US for 13 years now, and a lot will have diverged from the version of the city I have in my head.

I thought I’d publish my list here. I’ve done my best to research whether these places still exist, but I make no guarantees. And, of course, there are new places that are probably even better than the ones I’ve listed here but aren’t even on my radar.


You’ve got to start with pubs. They’re not so much bars as community spaces: open living rooms that serve as gathering points. Although, of course, Edinburgh has a drinking culture, and I would never recommend a place that didn’t have a real ale or two.

The Regent was always my favorite pub in Edinburgh: cozy, welcoming, lively. The walk there, either from the Bridges or the Parliament, is atmospheric in its own right, although I always found myself getting a bus or a taxi home at the end of the night.

The Bow Bar takes you down Victoria Street, which is a nice walk in its own right. It’s got a great whisky list, and the whole place feels like a Real Pub, albeit a bit on the fussy side.

The Sheep Heid Inn is a 14th century pub in Duddingston Village. Definitely worth discovering, particularly if you’re wandering around Arthur’s Seat anyway.

I’ll include Doctors not because I particularly like it, but because it’s so convenient that I always bloody ended up there. It’s fine. It’s totally fine. And it’s right by the Meadows and the Museum of Scotland, which are both places you need to obviously visit if you’re in town. So it’s convenient. But I’ve never been excited. And I don’t have a good reason to explain why not.

RIP The Auld Hoose, which was as close to a local as I had. (Update: it’s all a lie! It still exists! Fake news! Weird!)

And an anti-recommendation: pubs on the Royal Mile and Rose St are often recommended but are not my favorite.


A lot of the places I used to go to are gone. I’ve omitted some frequent haunts — there are chippies I love that are objectively terrible, for example. But also, I didn’t eat out all that much when I lived in Edinburgh. The best general advice I can give you is to try haggis if you haven’t, and avoid what the city calls Mexican food if you’ve ever had the actual cuisine.

There was a point where all the staff knew me at Loudons (which now seems to have two locations; mine was in Fountainbridge). It’s a good breakfast spot that, when it opened, was set up for laptop workers, including printing facilities and so on. That initial intention is long gone, but it’s still a lovely place to meet. Or it was, the last time I was there.

David Bann is an upscale vegetarian restaurant that still seems to be going strong. It was the kind of place I’d go to for special occasions.

The Mosque Kitchen is tasty and affordable; a good place to grab a quick lunch. There seem to be two now — one by the mosque and one on Nicholson St — but the former (the one in the mosque) is the original and the one to try.

Khushi’s was the first restaurant I visited in Edinburgh — and, as it turns out, the first Indian restaurant in the city. It’s relaxed and delicious.

I’m convinced that Cappadocia is the best kebab shop in Edinburgh. Still best enjoyed late at night, after you’ve left the pub.

RIP Forest Café, which was the kind of independent arts space you hope exists in every city. Anarchic, inclusive, and beautiful. It, more than anywhere else, represented exactly what I loved about Edinburgh when I loved it, and I’m really sad it’s gone.

RIP also to that one café by the Meadows with the terrible nachos, which was really important to me, and goddamnit, why can’t I remember its name? (Update: it was Favorit. Don’t believe the people talking about the nachos in the linked thread, though.)

Attractions / Etc

This is a grab bag. I used to walk around the city a lot, and I think these choices reflect that.

The National Museum of Scotland — the Museum of Scotland and the Royal Museum, now combined into one mega-museum — is a big thing, so it’s probably on your list already, but it’s free, as all museums everywhere should be, and it has an epic roof terrace view that you should probably check out.

The Scottish Storytelling Centre is one of those places I’m glad exists in the world. The events are worth catching, and the whole place has been put together with real thoughtfulness. But don’t sleep on the café: one of my favorite things to do was grab a cup of tea and a slice of cake here.

Cramond Island (listed at the link as “Cramond Ghost Island” — really?) has great views across the Forth of Firth and is a fun adventure if it’s not freezing cold. There’s a fairly convenient bus.

Dean Village is completely lovely to walk through. I guess the Dean Gallery has been renamed Modern Two, but it was always worth checking out.

The Water of Leith Walkway takes in Dean Village and various works of art, including Anthony Gormley’s series of statues.

The Cameo Cinema is a century old and going strong. I used to buy film festival tickets by the foot here. Even if you don’t want to take in a movie (and if you want to see a movie, it’s the place to do it), it’s got a nice bar. It shows up in The Illusionist, Sylvain Chomet’s homage to both Edinburgh and Jacques Tati, which is in itself worth checking out before you visit.

Edinburgh Inspace is a creative digital hub that showcases events and exhibitions. The space itself is experimental and is wired up for different kinds of multimedia interactivity. It’s worth checking for upcoming exhibitions.

Not mentioned: anything to do with Harry Potter, even that one pachyderm-themed touristy café that’s still pretty lovely (update: no, never mind, it burned down), because, sincerely, fuck JK Rowling.

· Asides · Share this post



2 min read

I’d love to read about the early days of the Star Trek replicator. It’s a sometimes-useful macguffin in the context of Star Trek: The Next Generation and later shows: a device that can recreate virtually any object on command, from food to electronics.

By the time ST:TNG was set, it had become a major engine that transformed Star Trek into a post-scarcity, post-money society. But there had to have been an earlier, more transitional state, which is more interesting to me: a time when replicators could recreate virtually anything but society hadn’t quite transitioned to post-money rules.

An artist, musician, or artisan during those times might have found that their work could suddenly be replicated infinitely, but they still needed money to survive. How did Federation culture adapt? Were these people taken care of? Or were they seen as necessary collateral? Did they themselves support the idea of a post-scarcity, post-money society (which I agree would be a good thing!) or did they protest?

And if they did protest, how would we feel about that, knowing their immediate context and where the technology led to?

Were there riots? Should there have been?

Captain Janeway uses a replicator

· Asides · Share this post


An intrusive thought about Trump 2024

What if the worst happens?

7 min read

A fragment of American flag

I come from families of forced migrants. On one side, my father’s earliest memories are of the unspeakable horrors he endured in a concentration camp in Indonesia. On the other, my great grandfather’s Ukrainian village was burned down by the White Army as part of a vicious pogrom.

The trauma of these events echoes through generations.

Although I intellectually know it to be true, it’s hard to imagine that these things happened to my family. I’m sitting on a sofa as I type this on my MacBook Pro; music is gently emanating from my Sonos. In about an hour, I’ll pick our son up from daycare and walk him home. He’ll probably ask for a banana as a snack. I’m thinking tonight might be a good night to order delivery food for dinner.

I’m lucky, of course: I’ve been fortunate in my life, so I have a house where I live comfortably with my family, and I’m also fortunate to not have been born in a place where I might be subjected to violence. I don’t live under authoritarian rule.

There’s nothing separating me from my dad’s experience but time; there’s nothing separating me from the experiences of people who do live under threat of authoritarian violence but chance. The walls of my comfortable safety are paper thin.


I’ve got this thought about Donald Trump that I can’t get out of my head.

It goes like this:

Let’s say he wins in November. That in itself is not something I’m hoping for, but I’ve lived through four years of his Presidency before. His values are very far from my own, and I think he will cause great harm, but eventually those four years will be over and a cleanup can begin.

But let’s imagine, for a moment, that he follows through on the promises of Project 2025, an action plan produced by over 100 collaborators including the Heritage Foundation, Turning Point USA, and the Conservative Partnership Institute. Those include:

Project 2025 includes immediately invoking the Insurrection Act of 1807 to deploy the military for domestic law enforcement and directing the DOJ to pursue Trump adversaries. Project Director Paul Dans, a former Trump administration official, said in September 2023 that Project 2025 is "systematically preparing to march into office and bring a new army, aligned, trained, and essentially weaponized conservatives ready to do battle against the deep state."


Reactions to the plan included variously describing it as authoritarian, an attempt by Trump to become a dictator, and a path leading the United States towards autocracy, with several experts in law criticizing it for violating current constitutional laws that would undermine the rule of law and the separation of powers.


[…] forces would "go around the country arresting illegal immigrants in large-scale raids" who would then be taken to "large-scale staging grounds near the border, most likely in Texas" to be held in internment camps prior to deportation. Trump has also spoken of rounding up homeless people in blue cities and detaining them in camps.

These ideas seem surreal; far-fetched; absurd. That can’t happen here, it’s easy to think to myself, from the sanctity of my Starbucks-and-Amazon bubble.

Just like it couldn’t have happened in Western Europe a hundred years ago. Just like there’s no way Madison Square Garden could ever have been filled to capacity with Nazis. (Incidentally, did you know Americans used to salute the flag with right arms stretched, palms out, Hitler-style, until the Second World War? I didn’t. And did you know that Hitler took his inspiration for the treatment of the Jews from Jim Crow America? Or that Oregon joined the Union as a literal white supremacist state?)

Look, I’m not saying this will happen. But it’s worth considering: what if it did? Concentration camps for undesirables; military enforcing authoritarian rule on the streets; political opponents imprisoned? It’s all right there in the plan, endorsed by some of the biggest names in conservative politics.

Some people welcome these plans, or don’t see them as a big deal. If that’s you, know that we can’t be friends, and I have no intention of letting you close to my child.

Some people will simply turn away and ignore it, because it doesn’t apply directly to them. Getting involved is too political. As the writer Naomi Shulman famously noted:

Nice people made the best Nazis.

Or so I have been told. My mother was born in Munich in 1934, and spent her childhood in Nazi Germany surrounded by nice people who refused to make waves. When things got ugly, the people my mother lived alongside chose not to focus on “politics,” instead busying themselves with happier things. They were lovely, kind people who turned their heads as their neighbors were dragged away.

There are a lot of so-called “nice people” in waiting: people who want to keep their heads down, people who don’t want to become activists, people who want to support their country no matter what it does.

Everyone knows the famous Pastor Niemöller quote, but it bears repeating:

First they came for the socialists, and I did not speak out—because I was not a socialist.

Then they came for the trade unionists, and I did not speak out—because I was not a trade unionist.

Then they came for the Jews, and I did not speak out—because I was not a Jew.

Then they came for me—and there was no one left to speak for me.

Of course, not everyone will be a collaborator, either through willful support or passive acquiescence.

There are the people who resist: the brave ones who stand up for something in the face of enormous opposition. My grandfather led the resistance against the Japanese in Indonesia; other members of my family were members of the resistance against the Nazis in Europe. I can’t imagine the bravery that this entailed; the sacrifices that needed to be made. Hollywood tales of the resistance are often sanitized to be palatable as entertainment: the actual reality of the history is far more horrific.

Or there are the people who simply leave. Not everyone can; infamously, America turned away scores of Jews who were hoping to seek refuge from the Nazis, and success is dependent on visas, a certain amount of wealth, and luck. But if you’re able to leave, it might well be the right thing to do. No amount of loyalty to a country or desire to stick the boot into an authoritarian regime is worth risking the lives and well-being of your children. There is no shame, in the face of this kind of dark turn, in getting the fuck out.

So, that’s my thought.

My thought is that the worst is perfectly possible.

And if the worst happens, I do not want to acquiesce, and I do not want to be associated with people who do.

· Asides · Share this post


Advertising share intents with microformats

1 min read

Yesterday I published a fediverse-aware / indieweb-aware version of a "share to..." / AddThis-like tool. It allows you to easily add a “share to ..” button to your website that works with as many social platforms as possible, and attempts to use whatever share intent a platform might have available.

One of the things it does is look for HTML header metadata like <link rel="share-url" href="{text}"> in order to figure out how to share to a given platform.

It was a first draft, and I'd like to socialize that idea — what should it look like to advertise a share intent on a platform using microformats?

There was an attempt over a decade ago called OExchange, which used data stored in .well-known. I'm okay with supporting it, but it never took off, and I feel like something simpler would be more effective.

· Asides · Share this post


How I use screens

3 min read

Hey, it's an iMac

Nathan Schneider writes about how he uses screens:

The underlying idea for me is that I like to keep a clear desk. In my office, for instance, I keep the desk where I meet with students empty, except for a few intentional symbolic objects on the side. I do this to express to students that they have my complete attention—and to help me give that attention. During the meeting, we might put things on the desk as we discuss them. But at the end, I make sure those things are gone so the desk is clear for the next student.

I aspire to this but fall short.

There are some things here that I do practice:

  • I close my tabs: not just at the end of the day, but several times during it. I don’t like having a bunch of open tabs that begin to feel like an inbox.
  • I try to get to inbox zero (in my work email) every day.
  • Nathan doesn’t mention this, but I regularly clear my feed reader, so that I’m starting from fresh and don’t feel like I have an endless backlog of posts to read.
  • I use virtual desktops with a single task per desktop, usually in full-screen mode.
  • Notifications for almost everything are off 24/7.
  • I like to shut down my computer for the night.

While I have an external monitor on my desk, I’ve realized that it’s far too big for my needs. It’s great for video calls — which is, for better or worse, how I spend a lot of my workday — but lousy for actually getting work done. There’s something about the overwhelm of it, as if I’m trying to write on an IMAX. I’ve long favored 13” laptops (although my main personal computer is a Mac Mini these days), and there’s something about the small screen that I find helps me to focus. Maybe it’s just habit.

I do take my phone to bed (it charges with my watch on a wireless pad on my nightstand) and I should find a better place for it. I theoretically need an alarm clock to replace it, but the truth is that these days I have a human alarm clock who wakes me up far earlier than my phone ever does. And he always reaches for my phone, which I don’t think is particularly healthy. So perhaps I should just bite the bullet and charge my devices in my office overnight. The only thing that really gives me pause about changing — and this is silly — is that I’ve been loving playing Connections, Wordle, and the Daily Mini in bed before I go to sleep. But, come on, better sleep hygiene is worth it.

I appreciated Nathan’s list; lots to think about. What’s your routine?

· Asides · Share this post


What if everyone knew how much we all made?

1 min read

A clothing factory in China

Proposal: every product vendor must disclose the wages of the people who made it.

If you buy a box of chocolate, you get to know how much the people who picked the raw ingredients made, as well as the chocolatiers downstream from them, and so on.

If you buy an iPhone, you get to know how much the people who assembled it make, as well as the people who mined the lithium in the batteries, and the designers and engineers.

If you stream a song on Spotify, you get to know how much goes to the rights-holders. At the rights-holder end, you get to know how much goes to the performing artist, the songwriter, the engineers, the musicians, and so on.

If you buy a newspaper, you get to know how much the journalists, the printers, and the administrative staff make.

And so on and so on.

What if all wages were transparent?


Photo by Michael Chu, released under a CC license.

· Asides · Share this post


Gawking at Thom Yorke

1 min read

Thom Yorke in 2012

Walking around Oxford, my hometown, I used to see Radiohead frontman Thom Yorke from time to time. He always looked miserable.

At Boots the Chemist? Miserable.

At the Ashmolean Museum? Miserable.

Having a picnic with his family? Miserable.

Walking down North Parade? Miserable.

It was only years later that I realized he was miserable because I was looking at him, and there must have been hundreds of other people who were doing the same.

Thom Yorke wasn’t the problem. I was the problem.

Sorry, Thom Yorke.


Photo by Jen S, released under a CC license.

· Asides · Share this post


Blog aspirationally, not opportunistically

1 min read

When you find yourself writing a 3000 word essay about engineering management on your personal website, you might want to take a step back and take another look at your goals.

And if you find that this isn’t quite what you want to be talking or writing about, it maybe might be time take some more risks.

I mean, I stand by everything in the post. And on one level it’s important.

But also: let’s go make things and have fun and be creative and let go of our inhibitions a bit.

Perhaps write about hopes and dreams rather than work and administration.

Less business. More human.

Let’s go.

· Asides · Share this post


Building vs using the web

2 min read

One thing that becomes clear when you move outside of open web groups and a certain kind of tech company is the difference between trying to build the web as a platform and trying to use the web as a platform.

In the former mental model, you’re experimenting to try and figure out how to push the envelope on a common platform. What doesn’t exist yet on the web that would be cool or useful? How can we preserve its openness and decentralization? How can the commons be richer for everyone? It’s ultimately an ideological endeavor: the web is great and we should keep building it in everyone’s interest, whether through protocols and extensions or through amazing public interest sites.

In the latter, you’re taking what exists and figuring out how to get the most use out of it. How can we harness this? Which web capabilities allow us to meet our goals more easily? Where are the opportunities? It’s not in any way an ideological endeavor: instead, it’s a pragmatic one. It’s business. You’re taking a resource and getting the most use out of it that you can.

Of course, it happens to be the case that the public resource continues to exist and is vibrant because of the first group of people I described. But it’s also okay to just use the web. The web is for everyone.

· Asides · Share this post


The edges are more interesting

1 min read

If AI makes it easier to create generic, middle-of-the-road content, the way forward for human beings is to create content that is out there on the edges, blazing ground that probabilistic algorithms could never possibly reach. 

Which, honestly, I wish more people would do anyway. The middle of the road has nothing new to say.

· Asides · Share this post


Right-wing comments on Microsoft Start

1 min read

My posts are syndicated to Microsoft Start as part of the Creator Program. It’s been interesting to see which ones find an audience there and which ones don’t: politics seems to be more interesting to the community there than tech commentary, which stands to reason, as it’s a more universal topic.

What’s noticeable, though, is that the only comments I see over there are wildly right-wing. The Microsoft Start readers who seem driven to weigh in tell me that climate change isn’t real, that the police are right to infiltrate protest movements, and that DEI initiatives are wrong.

This skew doesn’t match the population overall, so I wonder what’s happening there. Are there people looking for content on these topics to comment on in order to squash those topics? Does Microsoft Start itself somehow skew right-wing? Or is something else going on?

· Asides · Share this post


Seeking share URLs for every platform

1 min read

I wish there was a conclusive list of “share-to” URLs. For example, here’s the URL you can use to build a “share to Threads” button:

Here’s the equivalent URL for Reddit:

Every Known site has a URL like:


Every Mastodon instance has a URL like:


Does have a share URL? How about WordPress installations? Ghost? Bluesky? And platforms like Lemmy, etc?

I’m on a mission to collect them all.

· Asides · Share this post


Coming back to Obsidian

It is useful, after all.

1 min read

After some to-ing and fro-ing, I finally cracked how using Obsidian is useful.

I’d previously been trying to work in the open and update my thoughts for a public website there — but, of course, that’s what my personal site is for! So it didn’t click, because I was already saving notes to a space that people could read.

I’ve started keeping daily notes in a private vault, linking to people, products, and concepts as it makes sense, but not bothering to actually create resources at the other end of those links until there’s something that needs to live there. Backlinks are on so I can always see what’s referencing a particular resource.

And it’s clicked. I’m finding it particularly useful to keep track of features and products that aren’t part of my daily workstream but still are something I need to remember the status of (and when I last interacted with them). Suddenly what felt obtuse and overcomplicated seems easy and incredibly useful. I get it!

· Asides · Share this post


Seeking a first-class Fediverse platform

A place to read, to discuss, to share.

2 min read

Subsequent conversations have convinced me that I’m right about the assertions I made about the Fediverse for media organizations. There’s a huge need, a huge opportunity, and the underlying technology is there.

The thing that’s a bit missing is a first-class Fediverse platform. Mastodon itself has become a bottleneck. Its design decisions are all reasonable in its own right, but there’s a need for something that goes beyond copying existing siloed services like Twitter. (Pixelfed, similarly, apes Instagram; Lemmy apes Reddit.) What does a Fediverse service look like that’s been designed from the ground up to meet a user need rather than copy something that already exists? And what if that user need is a first-class reader experience with the ability to comment and share interesting stuff with your friends?

I’m not bullish on squeezing long-form content into a microblogging platform, whether on Mastodon or X. Long-form content isn’t best consumed as part of a fast-moving stream of short updates. But the fact that both have those features — and that people are syndicating full-length articles straight to the Fediverse despite the poor UX — points to an interesting deer path to pave.

What if we had a great experience that ties together both short-form discussion and re-sharing and long-form reading, in a way that better showcases both kinds of content and realizes that the way we consume both is different? What if it had a beautiful, commercial-level design? And what if it remained tied to the open social web at its core, and pushed the capabilities of the protocols forward as it released new features and discovered new user needs?

If I had a year and funding, this is what I’d be working on.

· Asides · Share this post


How do we make progress in America?

Every American deserves to live well.

2 min read

Someone I follow posted this weekend about how the progressive wing of the Democratic Party was stupid because it consistently pushed for projects that would require higher taxes. I don’t like the framing, and as a self-identified progressive I’m not particularly excited about being called stupid. But there is an underlying political reality about America’s inability to raise taxes which I can grudgingly accept.

I think, though, that a lot of this is about what you get for those taxes. When I moved to the US from the UK, the percentage I paid out of my paycheck in taxes went down (although not by as much as you’d think, given the rhetoric). The amount I had to pay out of pocket for living expenses skyrocketed. It’s far more expensive to live in America than in Europe. Consumer prices are lower, sometimes by a lot; healthcare is free at the point of use; in most places you don’t need to own or run a car.

American taxes don’t seem to be used on infrastructure that most people can actually use. Part of that is the bananas military spending, for sure: a wartime economy instead of one that builds domestically. Part of that is solid opposition from the Republicans, whose modern incarnation appears to hold an Ayn Randian opposition to any kind of policy that could actually help regular people. Part of that is a solid neoliberal streak from the Democrats themselves. All of which is informed, in part, by American public sentiment.

How do we get to the good stuff? Universal healthcare, high-speed rail, integrated public transit, a welfare system that catches people who fall through the cracks, well-funded public education, renewable energy a renewed investment in the arts, public science infrastructure, parks, bike lanes, shared spaces, real programs for the homeless … and so on? Let alone gun control, anti-trust reform, and all those more contentious tasks that seem insurmountable. These all seem important prerequisites for everyone being able to live well, which surely should be the goal. And yet they seem completely, hopelessly unreachable.

Is there hope for the American experiment? And if so: where?

· Asides · Share this post


The internet, addiction, and me

Sometimes it's not okay to look down from the world.

9 min read

I used to have a night-time routine. I would help my mother up the six stairs from the living room to her bedroom, give her a hug, and set her up in bed. Sometimes, if she was feeling particularly weak, I would bring her toothbrush to her with a mug of water, so that she could brush her teeth in bed.

I could hear the rolling stand that held her food pump against the hardwood floor as she moved around at night, to go to the bathroom. My dad had all the carpeting removed when they bought the house — carpets harbor dust and fungus that could inflame her lungs.

Years out from a double lung transplant, it was no longer the pulmonary fibrosis that was causing her pain: it was the anti-rejection drugs. The operation had saved her life, but it was far from a magic bullet. For eight years, she seemed to go from near-death experience to near-death experience: operations to remove scarring on her lungs, fungal infections, feeding tubes, inability to eat, nausea, pain. In 2019, we spent eleven straight weeks by her bedside. In 2020, the silver lining of the pandemic was that I no longer had to go into an office, and could spend most of my time helping to care for her. In 2021, on an awful Sunday evening in June, we lost her.

She fought for over a decade. Even at the end, she said she wasn’t ready to say goodbye. She still had life left. She didn’t want to leave us.

There are so many things I want to tell her; so many things I want to talk through with her. There’s so much I want to apologize for, too: she had told us, over and over again, that she didn’t want to die in a hospital. In some of her last lucid moments, she tried to remove the tubes on her arms. “This is not okay,” she said. Palliative care, which is supposed to be about making her as comfortable as possible, seemed in the end to be about making us as comfortable as possible. They starved her. I watched as my sedated, unconscious mother starved to death in a hospital bed.

This is not okay.

I feel compelled to go back to that hospital room, as if she’ll be waiting for me there. When I was still in San Francisco, I’d walk by the hospital and look up at the corner room, facing the trees on the hillside, hoping to see her silhouette.

I wish she would show up in my dreams, so I could at least talk to a version of her, even if I intellectually know it would just be my own projection. She hasn’t shown up there once, except as a brief staccato “oh my god, you guys” that came out of nowhere and woke me up like a nightmare.

The morning she died, I collapsed into Erin; I’m not ready, I said, over and over, as if it could change anything.

I’m not ready.

I will never be ready.

I came back to Britain for my friend’s wedding a year after her lung transplant. I didn’t stay long: whenever I went anywhere, there was always the fear that something would happen. But I’d ripped my life apart to come to California to be with her, and returning there made me feel at least a little bit connected to what my life had been. I saw my friends, I saw the places that used to be home to me. But rather than slotting back, there was a bittersweetness to everything. It had all changed, my life and theirs, and this couldn’t be home to me anymore. I was severed.

I gave a presentation about the indieweb at an Edinburgh TechMeetup where my laptop had frozen up and needed to be hard-rebooted halfway through. Afterwards, we all gathered at a nearby pub, and a prominent member of the Edinburgh tech scene said to me, “I wouldn’t have gone. I would have said, ‘sorry, Mum, you made the choice to move there’.” I couldn’t understand, and I still can’t. She had never met my mother. She would never understand who my mother was. And she misunderstood me if she thought I would ever say that. (Did I do the wrong thing?, I asked myself that night, and for years afterwards, over and over.)

Ma’s illness was genetic. We’ve lost five members of our family — people we dearly loved. Researchers were finally able to figure out how to identify the relevant mutation in the TERT gene, which eventually led to my sister and I getting cleared. But, of course, the science is evolving; there’s no complete guarantee that we are actually cleared. It will hover over us forever either way: we lost people we dearly love to this thing as recently as this summer, so any relief we might have felt was painfully hollow.

Holy shit, did it fuck me up.

I remember my first experience of really feeling different when I was around eight years old; the dawning understanding in my third-culture mind that people saw me as some kind of other. One boy used to drag me into the ditch at the side of the school playing field and just jump on me, as if he was trying to break my legs. The teachers at my school mocked me for having a German name; forty years later, the war still weighed heavily for them. I have wondered if they would have acted differently if they’d known my Jewish heritage, but honestly, I don’t think it would have mattered. I wasn’t one of them, was the thing; I was Other.

When I was a teenager, I became so tall that I often loomed over people. My new presence attracted yet more attention, and I grew to hate the looming hugeness of my body, this bounding form that people found it necessary to laugh at. I wished I could have disappeared. I wished I could have been normal. I fantasized that there was a magic word that other people knew that I didn’t, and if I could only figure out how to invoke this special incantation, I would finally feel like I was okay.

So when this happened, when I tore my life to bits at the hands of this terrible terminal disease, I felt like I deserved it. I didn’t feel like Ma deserved it; I didn’t feel like my dad deserved it; I didn’t feel like my sister deserved it; I didn’t feel like the other members of my family deserved it. Intellectually, I don’t believe in fate or karma. Nonetheless, I deserved it. Of course I did.

The internet, though. Here was a place where I could write something, or take a photo, or build some software and release it, and the world would respond. Every response was a distraction from what was actually happening. This other world, not so much a backchannel to real life as a parallel universe with its own culture and rules, could take me away, just as it had when I was a teenager. Even then, I would check for new messages relentlessly, dialing up to Demon Internet and logging in many times during a long, after-school evening. Now, decades later, the web seemed infinite, and there was always something new to say, to get involved in. It was a balm, and then an addiction, and then a distraction. A way to feel less worthless. And whereas my teenage self had needed to dial up from the desktop computer in his bedroom after school, the iPhone gave me access to it anywhere.

I wrote recently about needing to pull back from social media. It’s not the first time I’ve written a post like this: it’s been a cycle of addiction. But I don’t think I’ve ever written in depth about why I needed that back-channel. It’s sometimes easier to look down at the device in your hands than take life squarely in the face.

But that doesn’t mean the escape is reasonable, or healthy, or right. There were times over the last fifteen years when I needed to be present in the moment and I just wasn’t: when I was racking up points sharing links rather than facing up to what was happening. It made me avoidant and disconnected; untethered me from the world. It dulled my empathy and let me remove myself from it all.

This isn’t a “screens are bad” post. It is a post about being forced to reckon with what actually matters, even when it’s hard to look at.

Maybe what I’m saying doesn’t make sense to you. But when I say I want to remove myself from social media, when I don’t think it’s good for me, and when I keep coming back, this is what I mean. This is what’s happening.

Which means the indieweb isn’t just a technology movement to me. It’s a way of reclaiming more of myself. And in that light, perhaps I should just own my mind and switch it all off for good.

· Asides · Share this post


ChatGPT as a writing partner

Sometimes we all need a robot cheerleader.

2 min read

Confession: I’ve started to find ChatGPT to be useful in my fiction writing.

And now, before proceeding, I must very quickly add that I haven’t let it write a word of the story, or come up with any ideas, or engage in any ideation. That’s all me.

But writing is lonely, and conventional wisdom says that you shouldn’t share your first draft with anybody. (I agree with that: the times I’ve broken this rule have been disastrous.) So for me, a first-timer who blogs quickly but has rarely published outside of that format, the self-doubt had reached a crescendo.

Which is why I’ve started feeding passages to a generative model and asking it to provide a loose critique — then adding and editing, and asking it to provide a second one.

Here’s a response it gave me yesterday on a revision:

This revision maintains the strong atmospheric and thematic elements of the original while making significant strides in clarifying the narrative and deepening the intrigue around the Source. The interactions between [character] and [other character] are particularly effective in teasing out the central mysteries of the story.

[Further description of strengths and weaknesses omitted]

In summary, this version of the passage improves upon the original by deepening the mystery, enhancing character depth, and expanding the thematic exploration. Further refining the balance between exposition and action, clarifying the stakes, and enriching emotional and sensory descriptions will continue to elevate the narrative, drawing readers deeper into the world you've crafted.

Look, I know. I’m incredibly familiar with all the shortcomings of AI. And I know its literary feedback is not good. But there’s a kind of magic feather quality to this back-and-forth: now I feel less alone, and the feedback, however mechanical, is enough to puncture my fear that everything I’m doing is bullshit. It’s the equivalent of a mechanical Turk that sticks its thumb up from time to time and tells me I’m doing great, but also, have I remembered to show not tell? And that’s kind of what I need in the moment.

I guess what I’m saying is, sometimes I need a robot cheerleader. And I’m going to say that’s okay.

· Asides · Share this post


Gardens and power

Power dynamics change everything.

2 min read

Manu Moreale discusses the dual use of the garden metaphor for both walled gardens and digital gardens:

It’s interesting how we’re using the same metaphor—the garden—to describe two completely different things. [The walled garden] is the embodiment of the capitalist mindset applied to the digital ecosystem driven by greed. The other is the digital manifestation of personal expression. Digital gardens are—or at least should be—a welcoming place.

It’s an insightful observation, and an illustration of the way power dynamics change everything.

Consider surveillance. We don’t want (and shouldn’t want) the government or big business to understand the nuances of our lives; our comings and goings; who we gather with; the things we say to each other behind closed doors. At the same time, we absolutely do want to understand the nuances of the lives of people with power; their comings and goings; who they gather with; the things they say to each other behind closed doors.

That’s because they have power and we do not. giving them more knowledge about our lives just cements their position; giving us more insight into them gives them more accountability to us.

So it is with gardens. If a megacorporation builds a walled garden, it’s to hem us in. If we build a walled garden, it’s to keep them out.

· Asides · Share this post