Sign in

iiinova is part of the Atmosphere — an open, public network where you own your identity.

Martin Paul Eve

@mpe.hcommons.social.ap.brid.gy
60 followers 11 following 527 posts

Tech Lead @ Knowledge Commons, MESH, Michigan State University | Lit Prof @ Uni of London, Birkbeck | Music on tici taci records | My books: books.eve.gd 🌉 bridged from ⁂ hcommons.social/@mpe, follow @ap.brid.gy to interact

PostsRepliesMedia
Martin Paul Eve @mpe.hcommons.social.ap.brid.gy · 6h
I had a most cheering visit from Dr Paula Clement Vega this afternoon!
A picture of me, Martin Paul Eve, and Paula Clemente Vega in a hospital room - we are smiling and happy.A picture of me, Martin Paul Eve, and Paula Clemente Vega in a hospital room - we are smiling and happy and Paula is tilting her body and raising her arm in an amusing way. We are both laughing.
000 0
Martin Paul Eve @mpe.hcommons.social.ap.brid.gy · 12h
I do actually love Sundays, with the quiet, non-dialysis afternoon. I get but two of these per week, on Wednesday and Sunday. A friend will visit later, but for now I am writing.
A picture of me, Martin Paul Eve, writing at a computer, in a hospital, with a hospital wrist band and an Apple Mac computer running a Linux virtual machine. I am a white man, here with germinative beard and longer hair than usual by a long way (but still fairly short). I am wearing a Janeway t-shirt.
000 0
Martin Paul Eve @mpe.hcommons.social.ap.brid.gy · 13h
For the 100th anniversary of Michel Foucault's birth, Duke University Press is making many Foucault titles free. dukeupress.wordpress.com/2026/10/15… The books don't seem actually to be free (yet?) but everything else is!
dukeupress.wordpress.com
Michel Foucault Centennial
In celebration of Michel Foucault’s 100th birthday, Duke University Press is pleased to present a wide selection of articles and books that explore the life of the French social theorist and critically engage with his robust body of work. In honor of his influence on our scholarship, we’re pleased to make these works free until December 15, 2026. * * * BOOK ** _Foucault′s Discipline: The Politics of Subjectivity_** John S. Ransom 1997 BOOK ** _Race and the Education of Desire: Foucault’s History of Sexuality and the Colonial Order of Things _** Ann Laura Stoler 1995 BOOK CHAPTERS **“Foucault and Critique” “Foucault and Knowledge/Power”** Lawrence Grossberg _On the Way to Theory_ 2024 BOOK CHAPTERS **“Good Vibrations: John/Eleanor, Dame Alys, the Pardoner, and Foucault” “Coda Getting Medieval: Pulp Fiction, Foucault, and the Use of the Past”** Carolyn Dinshaw _Getting Medieval: Sexualities and Communities, Pre- and Postmodern_ 1999 BOOK CHAPTER **“Why Foucault No Longer Matters”** Daniel T. O′Hara _Empire Burlesque: The Fate of Critical Culture in Global America_ 2003 BOOK CHAPTER **“Foucault’s Oedipus”** Michael Meranze _Situation Critical: Critique, Theory, and Early American Studies_ 2024 BOOK CHAPTER **“Foucault’s Limits: Experience at the Edge”** Cressida J. Heyes _Anaesthetics of Existence: Essays on Experience at the Edge_ 2020 BOOK CHAPTER **“Althusser and Foucault : Apparatuses of Subjection”** Warren Montag _Althusser and His Contemporaries: Philosophy’s Perpetual War _2013 BOOK CHAPTER **“Foucault through Deleuze, or The Diagrammatics of Power”** David Rodowick _Reading the Figural, or, Philosophy after the New Media _2001 BOOK SECTION **“Neither Freud nor Foucault?”** Janet Halley, Andrew Parker (eds) _After Sex?: On Writing since Queer Theory_ 2011 JOURNAL ISSUE **“Foucault’s Late Politics”** Gavin Walker (ed) _South Atlantic Quarterly_ 121:4, 2022 JOURNAL ISSUE **“Future Foucault: Afterlives of Bodies and Pleasures”** Jacques Khalip (ed) _South Atlantic Quarterly_ 111:3, 2012 ARTICLE **“Prisons, Immigration, and the Right to a Livable Life in the Anthropocene: Reading Garrett Hardin and Michel Foucault”** Robert P. Marzec _boundary 2_ 51:2, 2024 ARTICLE **“Order and Archive: A Foucault Abecedary** “ Lynne Huffer _boundary 2_ 51:4, 2024 ARTICLE “**Unbearable Speech”** Lynne Huffer _differences_ 35:3, 2024 ### Join the Conversation: * Tweet * * Email a link to a friend (Opens in new window) Email * Share on Bluesky (Opens in new window) Bluesky * More * * * * Share on Reddit (Opens in new window) Reddit * Print (Opens in new window) Print * Share on Threads (Opens in new window) Threads * Like Loading...
005 5
Martin Paul Eve @mpe.hcommons.social.ap.brid.gy · 14h
"QS had expressed concern that Romi would get an unfair advantage over other candidates" SHE HAS TO WRITE BY BLINKING. WHAT ADVANTAGE? www.bbc.co.uk/news/articles/c6zxj8g… This is a very typical response to disability accommodations. They are seen as giving the disabled person an […]
hcommons.social
Original post on hcommons.social
0014 14
Martin Paul Eve @mpe.hcommons.social.ap.brid.gy · 17h
Today I will start a physiotherapy programme to try to prepare myself for getting home. That's still a way off, but I cannot walk more than 5m by myself at the moment. Hospital deconditioning is extreme.
000 0
Martin Paul Eve @mpe.hcommons.social.ap.brid.gy · 18h
Had a cup of tea + small glass of water to take my medications. That's my entire fluid allowance for today. 500ml.
000 0
Martin Paul Eve @mpe.hcommons.social.ap.brid.gy · 18h
"DCR separates the assertion of identity from any authority over that identity". The last section on limits of CIMD shows similar problems, though. aaronparecki.com/2026/07/29/19/solv…
aaronparecki.com
Solving the Missing Trust Anchor in Dynamic Client Registration with CIMD
OAuth originally assumed clients would be pre-registered at an authorization server. Before an app can talk to an OAuth server, a developer signs up for an account, registers the client by providing the name and logo and other client information, configures redirect URIs, and gets a `client_id`. The server has some record of who this client is and who is responsible for it. That works fine when the ecosystem is closed. Google can require developers to register before accessing their API. Salesforce can do the same. But what about ecosystems where any client should be able to talk to any server, where it's not possible for the client developer to be aware of every server ahead of time? This is the "open web" problem. Mastodon users expect any Mastodon client to work with any Mastodon server. BlueSky works the same way. The MCP ecosystem is heading in the same direction, users expect to be able to connect their own MCP client to any MCP server. When you have potentially thousands of clients and thousands of servers, you can't require every client developer to register with every server operator in advance. Dynamic Client Registration (DCR) was designed to solve this. A client shows up at a server, registers itself on the spot, and gets credentials. No prior relationship required. The problem is DCR pushes all the trust decisions onto the authorization server, with nothing to actually base those decisions on, and no real link to the client developer. * How Dynamic Client Registration Works * The Problems with DCR * Anyone Can Register Anything * The Client Lifecycle Problem * Client Impersonation Is Undetectable * Credential Sprawl for Clients * The Root of the Problem * How Client ID Metadata Document Works * What CIMD Makes Possible * Domain Ownership as a Trust Signal * Enterprise Pre-Registration Without Client Changes * Clients Control Their Own Keys * Mobile Apps and Attestation * What CIMD Does Not Solve * Desktop Apps * Where This Leaves Us ## How Dynamic Client Registration Works DCR is defined in RFC 7591. The client sends a POST request to the server's registration endpoint with its metadata: a display name, logo URL, redirect URIs, contact information. The server responds with a `client_id` and optionally a `client_secret`. From that point on, the client uses those credentials in OAuth flows with that server. sequenceDiagram participant C as Client participant AS as Authorization Server C->>AS: POST /register<br/>(name, logo, redirect_uris, ...) Note over C,AS: Unauthenticated — no credentials required AS->>C: 201 Created<br/>(client_id, client_secret) This works, at least in the sense that it solves the bootstrapping problem. The client can show up without any prior arrangement and get credentials. But there is a deeper problem that this flow makes hard to see. ## The Problems with DCR ### Anyone Can Register Anything The registration endpoint must be open to the world by design. That is the whole point of dynamic registration in an open ecosystem. Any actor, whether that's a legitimate app, a bot, or an attacker, can call it and create a client registration. graph LR A[Web App\nname: Acme\nlogo: acme.com/logo.png] B[Desktop App\nname: Acme\nlogo: acme.com/logo.png] C[Attacker\nname: Acme\nlogo: acme.com/logo.png] A -->|POST /register| R[/Register Endpoint/] B -->|POST /register| R C -->|POST /register| R R --> D[client_id: aaa] R --> E[client_id: bbb] R --> F[client_id: ccc] style C fill:#ffdddd style F fill:#ffdddd The metadata in the request is entirely self-asserted. The server has no way to verify that the entity calling `/register` controls the logo URL it submitted, runs the website it claims to represent, or is in any way connected to the app name it provided. The authorization server is simply asked to accept claims it cannot check. The only clue as to the real identity of this client is the `redirect_uri`, which is only a partial solution as we'll discuss shortly. ### The Client Lifecycle Problem Once a client registers, the authorization server is responsible for managing that registration indefinitely. This creates an operational problem that has no clean solution. There are a few approaches servers take to clean up stale registrations: **Delete if unused within N hours.** This seems reasonable until you realize it breaks clients that register in advance of a user session, or clients used infrequently. It also does nothing for malicious registrations that were used once. **Delete when the last refresh token expires.** This is a cleaner signal, but it still requires keeping a record of every client until its tokens expire. For servers with high legitimate usage, this table grows continuously. **Leave it to the client to re-register.** The problem here is clients have no reliable way to know whether their registration is still valid before sending a user through an OAuth flow. The client doesn't even discover the registration is gone when the flow fails, because this failure mode ends with the user on the authorization server screen, never being sent back to the client. To avoid dead ends, clients tend to re-register on every login. This compounds the very bloat you were trying to avoid. client_id | created | last used ---|---|--- aaa1 | 6 months ago | unknown bbb2 | 3 months ago | unknown ccc3 | 3 months ago | today ddd4 | 1 month ago | unknown eee5 | today | today ... 10,000 more | | The authorization server is stuck guessing which records are safe to delete, while new ones keep arriving. ### Client Impersonation Is Undetectable The most serious problem with DCR is not the operational overhead. It is that impersonation is structurally impossible to detect. Nothing in DCR prevents an attacker from registering a client with the same name, logo, and description as a legitimate app. Both will have a `client_id`. Both will show users the same consent screen. The authorization server has no mechanism to distinguish them. graph LR subgraph Legitimate App L[client_id: abc123\nname: Acme Wallet\nlogo: acme.com/logo.png] end subgraph Malicious App M[client_id: xyz789\nname: Acme Wallet\nlogo: acme.com/logo.png] end L --> U1[User sees:\n'Acme Wallet wants access'] M --> U2[User sees:\n'Acme Wallet wants access'] style M fill:#ffdddd style U2 fill:#ffdddd This presents a real OAuth phishing risk. A fake app can present a consent screen that looks identical to a legitimate service. If the user authorizes it, from the server's side, nothing looks wrong. There are defenses against this, but they all require clients to opt into something extra: signed software statements, app attestation, platform-issued certificates. That pushes a significant burden onto every legitimate developer, and leaves the protection entirely voluntary. ### Credential Sprawl for Clients From the client developer's perspective, DCR introduces a class of credential that OAuth was supposed to eliminate: per-server identities that have to be managed, stored, and refreshed. For each authorization server the client works with, it now needs to: * Call `/register` to receive a `client_id` and `client_secret` * Store those credentials securely, separately from any tokens * Handle rotation and expiration of those credentials * Decide whether to re-register when something changes There is also no standard mechanism for a client to verify its `client_id` is still valid before starting a flow. When the authorization server is about to present an OAuth consent screen, it realizes the `client_id` doesn't exist and ends the flow there, not sending the user back to the invalid client. The user sees a generic error screen, and the client doesn't even know this happened. ## The Root of the Problem All four of these issues trace back to the same structural flaw: DCR separates the assertion of identity from any authority over that identity. The authorization server accepts claims about who the client is, but has no external signal to verify those claims against. The client says "I am Acme App" and the server has nothing to cross-reference that against. Compare this to what we do for humans. When a user logs in, the server asks them to prove something: a password, a passkey, an OTP. The claim "I am Alice" is backed by something. DCR never asks the client for anything comparable. The question is: what does a client actually control in the real world? A web app controls its domain. A mobile app has a backend, or an app store identity. These are real anchors. The question is whether the protocol uses them. Client ID Metadata Document (CIMD) is built around that insight. The `client_id` is a URL. The authority comes from who controls that URL. ## How Client ID Metadata Document Works With CIMD, there is no registration step. The client's identifier is a URL on a domain the client controls. When an authorization server encounters a `client_id` it has not seen before, it fetches that URL to discover the client's metadata. sequenceDiagram participant App as Client App participant Browser as Browser participant AS as Authorization Server participant Meta as app.example.com App->>Browser: Redirect to AS<br/>client_id=https://app.example.com/client Browser->>AS: GET /authorize?client_id=https://app.example.com/client&... AS->>Meta: GET https://app.example.com/client Note over AS,Meta: Back-channel fetch from client-controlled domain Meta->>AS: Returns JSON metadata document AS->>Browser: Show consent screen using fetched metadata Browser->>AS: User approves AS->>Browser: Redirect to redirect_uri with auth code Browser->>App: Delivers auth code App->>AS: POST /token AS->>App: Access token The client publishes its own display name, logo, redirect URIs, supported authentication methods, and JWKS. The AS discovers this at runtime. Nothing needs to happen in advance. This one change, making the `client_id` a URL on a client-controlled domain, solves most of the problems described above. ## What CIMD Makes Possible ### Domain Ownership as a Trust Signal When the AS fetches the client metadata, it knows what domain it fetched it from. That domain is something it can actually start making decisions about. This opens up trust tiers that were structurally impossible with DCR: graph TD subgraph Authorization Server Policy A{Client domain\nseen before?} A -->|No, first time| B[Show extra confirmation\nto user] A -->|Yes, pre-approved| C[Proceed normally] A -->|Flagged/blocked| D[Deny request] end B --> E[User approves] E --> C An AS can prompt users for extra confirmation when a client from a newly seen domain requests access — similar to how browsers warn about unfamiliar download sources. Once enough users have authorized clients at a domain and nothing suspicious has come up, the AS can gradually reduce the friction for that domain. It can integrate domain reputation services. It can maintain an explicit allowlist of verified domains for frictionless access, and block suspicious ones. None of this requires the client to behave differently based on which AS it is talking to. A client that has been pre-enrolled by an enterprise admin and a client talking to the same AS for the first time present their `client_id` URL identically. The domain is implicit in the URL, and the AS decides what to do with it. ### Enterprise Pre-Registration Without Client Changes Enterprise admins need control over which apps can access company resources. With DCR, this is nearly impossible: the `client_id` is generated dynamically at registration time, so the admin has no way to reference it before the employee runs the app. With CIMD, the admin pre-registers the `client_id` URL (for example, `https://myapp.example.com/oauth/client`) in the AS. When an employee runs the app, the app presents its `client_id` URL as it always does. The AS fetches the metadata, finds the URL is already registered by the admin, and proceeds with the enterprise-approved experience. sequenceDiagram participant User participant App as Client App participant AS as Authorization Server participant Admin Admin->>AS: Pre-register client URL<br>https://myapp.example.com/oauth/client Note over Admin,AS: Setup happens once, in advance User->>App: Starts OAuth flow App->>AS: client_id=https://myapp.example.com/oauth/client AS->>App: Fetch metadata from URL App->>AS: Returns metadata Note over AS: URL matches pre-registered entry AS->>User: Proceeds with approved experience The client doesn't know or care whether it is being used in an enterprise context. Its `client_id` URL is the same everywhere. The enterprise filtering happens entirely at the AS. ### Clients Control Their Own Keys Because the client publishes a JWKS (or a JWKS URI) in its metadata document, it can rotate keys without coordinating with the authorization server. The AS fetches fresh metadata when the cache expires and picks up the new keys automatically. This makes `private_key_jwt` client authentication practical for any client with a web presence. Authorization servers that want to enforce strong client authentication can validate the signatures. Servers that do not have that requirement can ignore the signature and proceed with whatever they accept. The client publishes good metadata and lets each AS enforce what it needs. ### Mobile Apps and Attestation Mobile apps have always been a challenging case for client identity. The app binary has no inherent web identity, and DCR gives it none. With CIMD, a mobile app can follow the pattern in OAuth Attestation-Based Client Authentication: the app's backend (an "attester backend") hosts the CIMD document and manages the client's keys. The AS fetches the CIMD URL, which points to the attester backend, and can perform attestation checks against the key material there. sequenceDiagram participant App as Mobile App participant AB as Attester Backend participant AS as Authorization Server Note over AB: Publishes CIMD at<br>https://attester.example.com/client Note over AB: Manages JWKS and<br>attestation material App->>AS: client_id=https://attester.example.com/client AS->>AB: Fetch CIMD document AB->>AS: Returns metadata + JWKS URI AS->>AB: Fetch JWKS AB->>AS: Returns public keys Note over AS: Can now verify app-signed assertions<br>using attester-managed keys Mobile platforms also give apps a way to "claim" an https redirect URL, linking the app binary to a domain the developer controls. This connects the redirect URL and the CIMD URL to the same domain end to end, giving the AS another corroborating signal. One thing worth noting for readers familiar with DCR: the spec does define a `software_statement` property that was intended to solve a similar problem. In practice it was left underspecified — the DCR spec itself says nothing about how to create one, what it should contain, or how keys should be managed. Any ecosystem trying to use it would need to define all of that separately, and then convince every mobile app developer and every AS to adopt the new behavior. CIMD combined with Attestation-Based Client Authentication layers on top of the existing `jwks_uri` mechanism, which means it composes with what implementations already support rather than requiring a new convention from scratch. This gives the AS a meaningful level of confidence in the mobile app's identity. ## Comparison | Dynamic Client Registration | Client ID Metadata Document ---|---|--- Registration step | Required (unauthenticated POST) | None Authority anchor | None (self-asserted) | Domain ownership Client impersonation | Undetectable | Domain-keyed, harder to fake Client lifecycle management | AS must manage cleanup | Client controls its own document Key rotation | Requires AS coordination | Client-controlled, AS fetches on use Enterprise pre-approval | Out-of-band coordination required | Admin registers URL; client behavior unchanged Mobile attestation | Requires special-casing | Natural fit via attester backend Per-AS credential to store | client_id + secret | None ## What CIMD Does Not Solve CIMD is not a complete solution to the open ecosystem trust problem. A few things are worth calling out, either as known limitations or as possible future work. Domain spoofing at the visual layer is still possible. An attacker pretending to be `acme.com` can register `acme-login.com` and host a convincing CIMD document there. Domain reputation services help, but do not eliminate this. The improvement over DCR is that there is now a domain to leverage in any decisions, and domain-based signals are much richer than nothing. CIMD only helps as much as the AS acts on it. A server that accepts any CIMD URL without applying any domain-based policy gets roughly the same trust posture as DCR on the impersonation dimension, though the client lifecycle and credential sprawl problems are still improved. For machine-to-machine clients without an attester backend, CIMD without `private_key_jwt` or mTLS is still self-asserted metadata, just fetched from a URL rather than submitted via POST. Strong client authentication still requires key material. ### Desktop Apps Desktop apps are the hardest case. Mobile platforms provide attestation APIs and let apps claim https redirect URLs. Desktop platforms currently do not. A desktop app cannot cleanly connect its running instance to a domain the developer controls, and localhost redirect URLs (which desktop apps are forced to use) can be intercepted by any app on the same machine and provide no protection against app impersonation. This means client impersonation for desktop apps remains possible even with CIMD. That said, it is no worse than DCR, which also provides no solution here. And adopting CIMD for desktop apps still removes the credential sprawl problem and makes the AS implementation uniform across all client types, rather than requiring special handling for desktop. Token binding is still available to desktop apps. Specs like DPoP bind access tokens and refresh tokens to client-asserted keys without trying to solve client authentication. A desktop app can leverage DPoP to limit token reuse even when client identity itself cannot be strongly verified. ## Where This Leaves Us DCR solved the bootstrapping problem but could not solve the trust problem. It gave authorization servers a way to accept unknown clients, without giving them any tools to reason about which unknown clients to trust. CIMD is not a drop-in replacement for DCR in every deployment. But for open ecosystems like MCP, decentralized social, and federated enterprise, it provides the trust hooks that DCR structurally cannot. The domain is a useful anchor. Enterprise pre-enrollment of clients requires no client changes. Key management stays with the client. Mobile app attestation fits naturally. For AS operators, the path forward is to accept `client_id` values that are HTTPS URLs, fetch the metadata document on first encounter, and build domain-based trust policies from there. For client developers, the change is even simpler: publish a metadata document at a stable URL on your domain and use that URL as your `client_id`. The specs are live and moving through the IETF process. Client ID Metadata Document covers the metadata document format and discovery. Attestation-Based Client Authentication describes the architecture of using an attester backend with mobile apps. If you are building in this space, both documents are worth reading, and the OAuth working group is actively discussing both. Feel free to chime in on the OAuth mailing list or on the individual GitHub repos for the specs.
000 0
Martin Paul Eve @mpe.hcommons.social.ap.brid.gy · 17/10/2026
@mike this is so deadpan that I can't tell whether you are kidding! I mean... Of course it should be a longterm contributor 😂 It's just that succession planning means everyone throughout the maintainer tree etc.
100 1
Martin Paul Eve @mpe.hcommons.social.ap.brid.gy · 17/10/2026
This is a total piss take. I mean, which other industry's product is regulated based on the ultra-low bar of not killing 50 people? Oh wait, I forgot. The US has guns. www.politico.com/news/2026/10/16/an… I guess the problem is they are just not willing to […]
hcommons.social
Original post on hcommons.social
002 2
Martin Paul Eve @mpe.hcommons.social.ap.brid.gy · 17/10/2026
My mother-in-law has cats. Lots of cats. And she lives in deepest Somerset. Her beloved cat, Bertie, has been missing for weeks, but he's just showed up... in Cardiff! What did this cat do? Catch the train? Has he been on a holiday somewhere in the meantime? Extraordinary distance to have roamed.
002 2
Martin Paul Eve @mpe.hcommons.social.ap.brid.gy · 17/10/2026
A new annoying trend: self-published authors writing to me asking whether I will act as their agent or review their book. OK, not terrible. But they resend if I haven't replied in 2 days!
000 0
Martin Paul Eve @mpe.hcommons.social.ap.brid.gy · 16/10/2026
A most entertaining Q&A with guitar god and folk-rock legend, Richard Thompson www.theguardian.com/music/2026/oct/…
000 0
Martin Paul Eve @mpe.hcommons.social.ap.brid.gy · 16/10/2026
Linus Torvalds wants to talk succession planning, but also said he wants to "make it harder for new people to contribute code to the kernel" 🤔 lwn.net/SubscriberLink/1099594/be20…
lwn.net
The 2026 Maintainers Summit
The Maintainers Summit is a one-day, invitation-only gathering of about 30 kernel developers; i [...]
100 1
Martin Paul Eve @mpe.hcommons.social.ap.brid.gy · 16/10/2026
Perhaps the most frustrating of my malnutrition symptoms is my shaking. I go to use my phone, for instance, and I inevitably double-tap with a twitch when I only wanted to single-press on an item. It makes many digital devices quite difficult to use.
000 0
Martin Paul Eve @mpe.hcommons.social.ap.brid.gy · 15/10/2026
@mike cheers, Mike! I am going to get there. Home.
100 1
Martin Paul Eve @mpe.hcommons.social.ap.brid.gy · 15/10/2026
Intelligence: Computation or Symbolic Form? an event at Birkbeck, University of London. Online and in-person attendance options. With N. Katherine Hayles just one participant in a starry cast. www.bbk.ac.uk/events/event/65932/in…
010 1
Martin Paul Eve @mpe.hcommons.social.ap.brid.gy · 15/10/2026
Well, this morning I passed my competency training in disconnection from IV feeding. I now know safely how to disconnect and am authorised to do it myself tomorrow morning. Exciting!
000 0
Martin Paul Eve @mpe.hcommons.social.ap.brid.gy · 15/10/2026
Finally... an update from day 68 in hospital... eve.gd/2026/10/15/an-update-from-da…
eve.gd
An update from day 68 in hospital...
Here’s an update on my health, at Day 68 in hospital. There are lots of people I have wanted to update personally, but it’s incredibly difficult to find time, for the reasons listed below. Once I have done my work at Knowledge Commons, there is hardly any time left in a day. So the below is somewhat generic. ## Isolation Station One of the main concerns that people have had for me is that I am in an isolation room at the hospital and have been for months on end… and the challenges this might pose for my mental health or wellbeing. The sense of desolate quiet pervades such thinking. This is not how things go at all. From 6 till 12 there is a non-stop barrage of medical interventions (obviously, this is why I am in hospital). It starts with observations at 6 followed by blood sugar levels shortly thereafter at 6.35 or so. Then they must take my weight, apparently by 7am. The drug round follows shortly to make sure I have taken (all) my (many, many) pills correctly. Then the IV feeding stops and the nutritional trainer comes round to train me to disconnect myself and then returns later to do the connection training. I have now, I think, mastered this process! After that come the doctors themselves, perhaps the most important part of the morning’s onslaught. Then at 12, lunch comes (an hour without any other intervention as eating is valued on this ward! So I scoff it down and get some stuff done) and from 1pm to 1.30pm the porter will arrive, five days a week, to take me to the dialysis unit two floors up in the main hospital which is attached to this one. I usually have four hours of dialysis but there’s usually half an hour faffing (by which I mean: connecting me up or disconnecting me), then there’s waiting for porters. I also have to wait for a nurse to come from the ward to accompany me back down. So I usually get back to the ward between 7 and 8.30 depending on how things are going. I do get a good solid chunk of work done during the dialysis period (noise-cancelling headphones are a must) but then I work in the evenings (as I am not going anywhere). As a result of dialysis five days a week in the afternoons, I am only able to have visitors two days per week. But if I do not have visitors, this is also a lovely quiet period where I can get some things done and caught up on things for myself. Like writing this update. So overall, although I am isolated in solitude, 1. I like isolation and solitude! and 2. if only I could get them. ## Health So what’s actually going on medically? The Intestinal Rehabilition Unit team have been carefully calibrating an intravenous feed for me that balances lipids and vitamins and everything I need in my current state of acute malnutrition. It’s all very complicated because if you have too many lipids you wreck your liver… especially in the longer term. At the same time, if I have too many fluids, it becomes problematic from a kidney perspective, because all of that fluid has to come out via dialysis. So, to give more calories you need more fluids, giving more fluids needs more dialysis, and it’s all very difficult. Another example of this difficulty, I have now been placed on a 500ml fluid restriction per day, because I am getting extra fluid from the feed. That’s **one cup of tea and one glass of water** , by the way, per day. I still eat by mouth as much as I can, but norovirus symptoms are ongoing. Well, they kind of have been… ### Norovirus Content warning: discusses bowels Last week I had a full-on cessation of norovirus symptoms. In fact, I was constipated and had to take drugs to counter this! This lasted for seven days and I had three straight days of no bowel movement at all. I genuinely thought that the norovirus had gone. I have had constipation and bowel dysmotility for years and this felt like I had gone back to that! Yes, that really isn’t ideal, either. It causes pseudo-obstructions and hospitalisations. But, oh my word, I thought I had escaped norovirus. If the norovirus went away, I would also be able to put on weight again and the IV feeding, with all its dangers and challenges, would not be necessary. But then, last night, well, it all came back, with a vengeance. Diarrhea was intense and blocked all of my sleep. It was bad. So I don’t know what this acute oscillation means. But I’m moving between diarrhea and constipation. I also don’t know what this means for their attempt to balance my vitamin and electrolyte levels. It will surely alter the electrolyte balances and they may find that what they have set up is now problematic or incorrect. Hopefully, I will see the doctors today and tomorrow to discuss this (Wednesday was their MDT day). ### So: Am I Getting Better? When they scanned me body weight wise to work out my body mass composition versus my fluid levels in my body, 57.6kg and 57.8kg were the two readings that came out. Not good. However, at dialysis my weight has shown itself to be about 61.5kg. I can tell this because, when we approach that weight at dialysis, without fluid and without little food content, I start to get cramps, headaches, and my blood pressure drops. So I have put on some weight. Not much, but some. The primary goal of this lengthy admission is a long-term preventative outcome that stops me from dying from malnutrition, which was the prevailing risk given the direction of my situation. It will take many months before, hopefully, improvement is seen. What we really want is for me to be out of hospital, out of the range of infection risk, and administering the feed at home so that, over time, I can gain weight, have a better functioning immune system as a result (even though it will always be impaired), and for me to have some freedom from hospital again. ## Getting Out To get out of hospital I have to be stable for two weeks on the IV feed prescription. It then takes two to three weeks for the home care company to set that up, get all the provisions in place and be ready to support me at home, should I need it. I was told by someone that three weeks is much more likely. In the meantime, I must be trained to set up the line, disconnect myself from the line, work through all the hygiene procedures (which are many and extensive), and ensure that I can perform all the procedures safely. Because the line that goes into my heart area is implanted in my arm, my wife, Helen, has also kindly volunteered to be trained so that she can change the dressing and apply the extension that allows me to do the rest of the work myself. I cannot get two hands, you see, to the point near the elbow (where the line goes in), to work with the line. So I think we’re looking at mid-to-late November, perhaps, for discharge. But anything can happen. Then I would be on the IV feed at least for the medium-term future while I try to put some weight back on and reach a healthy level. Christmas at home will be starting very early this year for us (I have decided). The imagined, nostalgic, homeliness of that Christmas discharge is my focal point for how things will improve. I do have to remember, though, that I am so weak now that I will also have to learn things like “how safely to climb the stairs”, again. But I’m imagining instead that perfect end of the year when I am back home. It will be Christmas time and all will be well.
200 2
Reposted by Martin Paul Eve
ploum @ploum.mamot.fr.ap.brid.gy · 14/10/2026
I had that idea that we could cut AI-bros from their Internet connection but, instead, connect them directly to a swarm of AI agents that would render website they want to see, that would send them emails (that their own agents would reply to) and would improve their metrics (clic-rate, visits […]
mamot.fr
Original post on mamot.fr
016 6
Martin Paul Eve @mpe.hcommons.social.ap.brid.gy · 14/10/2026
Janeway is pleased to announce a new collaboration with PLOS to develop and extend the Janeway codebase for use in parts of PLOS’s article submission process www.openlibhums.org/news/1025 We've gone from Andy and me coding Janeway by hand, in those pre-AI days, over a weekend or so, to […]
hcommons.social
Original post on hcommons.social
000 0
Reposted by Martin Paul Eve
Der Rabe Ralf @raberalf.mastodon.social.ap.brid.gy · 14/10/2026
Kapitalismus und Patriarchat überwinden: Wie Frauen und Lesben die größte soziale und ökologische Bewegung Brasiliens verändern www.raberalf.de/gesellschaft/kapita… #brasilien #feminismus #umverteilung #landwirtschaft
Eine Wand mit gemaltem Portrait von Marielle Franco vor der Kulisse von MST-Land.
001 1
Martin Paul Eve @mpe.hcommons.social.ap.brid.gy · 13/10/2026
@jaamcouture ah - I have done several myself AND consulted them, too 😁🤓
000 0
Martin Paul Eve @mpe.hcommons.social.ap.brid.gy · 13/10/2026
Okay, I would be most grateful for your thoughts and input: for my Star Trek:Voyager book/monograph, should there be an index? There's an open online copy, so you can search, but thematic connections can be drawn much better in an index.
301 3
Martin Paul Eve @mpe.hcommons.social.ap.brid.gy · 13/10/2026
@wragge Oh...
000 0
Martin Paul Eve @mpe.hcommons.social.ap.brid.gy · 13/10/2026
I receive several PhD applications per week on some intersection of literature with AI. It often looks as though the paragraph about my work has itself been AI generated. Dispiriting.
002 2
Reposted by Martin Paul Eve
Tim Sherratt @wragge.hcommons.social.ap.brid.gy · 12/10/2026
Really interesting (and scary) work by @cameronneylon and Bianca Kramer on trajectories for scholarly publishing costs and open access. youtu.be/sQ5MeReCzLQ (via OpenAccess Australasia)
103 3
Martin Paul Eve @mpe.hcommons.social.ap.brid.gy · 13/10/2026
Is It Open?™ Our proprietary openness classifier. Enter any product. Our closed-source model will tell you how open it is. openfatigue.ai
openfatigue.ai
OpenFatigue™ — Open is the new closed.
OpenChamber. OpenAI. Open WebUI. OpenDoor. OpenTable. OpenClaw. Open weights. Open this. Open that. We're tired.
011 1
Martin Paul Eve @mpe.hcommons.social.ap.brid.gy · 13/10/2026
Nurse practitioner, not a doctor, sees nine-year-old in A&E. She ignores GP referral, which suspects appendicitis. She sends boy home with diagnosis of Flu. Child dies of ruptured appendix. www.reddit.com/r/doctorsUK/s/7GDTqz…
000 0
Martin Paul Eve @mpe.hcommons.social.ap.brid.gy · 13/10/2026
I'm sure this is right. I went to my GP 6x before I was believed. Finally, a female GP referred me to hospital immediately and reprimanded her male colleague. www.theguardian.com/society/2026/oc… This study shows […]
hcommons.social
Original post on hcommons.social
004 4
Martin Paul Eve @mpe.hcommons.social.ap.brid.gy · 12/10/2026
Just bought this book from Open Book Publishers in paperback. The Politics of Open Infrastructures. www.openbookpublishers.com/books/10…
000 0
Reposted by Martin Paul Eve
Terence Eden @edent.tel · 11/10/2026
New blog post: I paid people to try and follow my README shkspr.mobi/blog/2026/10/i-paid-peo… Developers suck at writing documentation. We like to say RTFM but often there ain't no FM to R. At best we have a half-arsed collection of notes, some obsolete …
shkspr.mobi
I paid people to try and follow my README
Developers suck at writing documentation. We like to say RTFM but often there ain't no FM to R. At best we have a half-arsed collection of notes, some obsolete tips, and a link to a desolate forum full of people asking the same questions again and again. That's no way to treat our users. I naïvely believe there's a better way. As I've written before, you should sit down and actually test your …
293 9
Martin Paul Eve @mpe.hcommons.social.ap.brid.gy · 11/10/2026
I'm sad to hear of Chris Wickham's death. He was my editor on a British Academy volume on open access. He even-handedly let me say my piece, while probably disagreeing. www.thebritishacademy.ac.uk/publica…
010 1
Martin Paul Eve @mpe.hcommons.social.ap.brid.gy · 11/10/2026
@veilamp I *love* the look of Veilamp! Thank you for your work on it. But I can't easily try it - I am in hospital for 2 months and only have my music library on a remote machine. Is CLI/server mode on the roadmap for "soon"? I'd love to be able to run this remotely on the server that has my […]
hcommons.social
Original post on hcommons.social
000 0
Reposted by Martin Paul Eve
Terence Eden @edent.tel · 11/10/2026
"David Bowie invented the NFT in 1997" shkspr.mobi/blog/2021/10...
shkspr.mobi
Investing In People
David Bowie invented the NFT in 1997. The "Bowie Bond" allowed you to directly invest in an artist's catalogue and receive royalty payments based on their sales. Here's how it worked: You pay money...
021 2
Martin Paul Eve @mpe.hcommons.social.ap.brid.gy · 11/10/2026
Here in the UK, The Guardian will suddenly chirp: 'Wealth taxes are now tools of conservative governments. We cannot use such tools to fix our economy here.' 🤔 I half joke, but there is some seriously good news here, if we can only get this through in other contexts. @alineblankertz […]
hcommons.social
Original post on hcommons.social
011 1
Martin Paul Eve @mpe.hcommons.social.ap.brid.gy · 09/10/2026
kfitz - In the Wake kfitz.info/in-the-wake Adapted: In the early hours of October 2, ET, we discovered clear evidence that we were experiencing a malicious intrusion. I initiated an immediate shutdown of the platform, a rotation of all of our access keys, and a revocation of our […]
hcommons.social
Original post on hcommons.social
000 0
Martin Paul Eve @mpe.hcommons.social.ap.brid.gy · 09/10/2026
The people holding up the internet sheets.works/data-viz/holding-up-th…
sheets.works
The people holding up the internet
Four billion phones ask one text file what time it is. One lecturer keeps it in his spare time. We counted the rest.
02316 23
Martin Paul Eve @mpe.hcommons.social.ap.brid.gy · 09/10/2026
Emergency supply of caffeinated tea: delivered to the hospital by Mrs Eve this week. Saviour.
A box of Yorkshire Gold tea
000 0
Martin Paul Eve @mpe.hcommons.social.ap.brid.gy · 09/10/2026
I'll believe it when I see it, but I spoke with a very nice man at Motability yesterday, who promised that they would not take away my wheelchair. Apparently, the dealership should not have just, in the first instance, immediately called me to tell me my contract was terminated.
000 0
Martin Paul Eve @mpe.hcommons.social.ap.brid.gy · 09/10/2026
Unbelievable. A livestream of someone being killed. Public execution back in the US. "Execution tonight, at 6, all channels." www.theguardian.com/us-news/2026/oc…
000 0
Martin Paul Eve @mpe.hcommons.social.ap.brid.gy · 08/10/2026
On Mark Z. Danielewski's Tom's Crossing www.publicbooks.org/the-golden-age-…
publicbooks.org
000 0
Martin Paul Eve @mpe.hcommons.social.ap.brid.gy · 08/10/2026
I can safely report that this is a deeply tedious document. It includes the instruction "do not watch pornography during the nurse's visit". It horrifies me that this has happened and they must prevent it again. 🤢
The front page of the Home Parenteral Support Services in England Patients Charter (Version 3)
000 0
Martin Paul Eve @mpe.hcommons.social.ap.brid.gy · 08/10/2026
Yesterday, I met the home parenteral support nurse. She will train me to administer IV feeding to myself, w/ support from my wife, at home. We begin training proper today! Meanwhile, medics continue to try to bring my weight up w/ feed.
010 1
Martin Paul Eve @mpe.hcommons.social.ap.brid.gy · 07/10/2026
I've really had enough now. I just got a phone call to say that they are trying to take away my electric wheelchair because I've been in hospital for more than 28 days. So when I get out, by Nov, I will have no way of going anywhere. If I have to go through the process for a new one again, it […]
hcommons.social
Original post on hcommons.social
220 2
Martin Paul Eve @mpe.hcommons.social.ap.brid.gy · 07/10/2026
"I have been following financial news closely for decades, and never before have the workings of the market appeared so radically detached from human needs or even basic empirical reality" adamkotsko.substack.com/p/no-risk-n…
001 1
Martin Paul Eve @mpe.hcommons.social.ap.brid.gy · 07/10/2026
Pretty hilarious when people just wade in like this with no tact or gratitude for the time of an open-source maintainer. 😂 @icing chaos.social/@icing/117393867492903…
chaos.social
Stefan Eissing (@icing@chaos.social)
Someone is a bit fed up that #curl limits individual cookies parsed from a file to 8200 bytes. "the pedantic opinion of someone" has a nice touch, I'd say. https://github.com/curl/curl/issues/23284
120 2
Martin Paul Eve @mpe.hcommons.social.ap.brid.gy · 07/10/2026
TIL: No matter how good at computers you think you are, or how much hubris you have about your Linux expertise, sometimes you do still need just to turn it off and on again to fix that ridiculous problem.
000 0
Martin Paul Eve @mpe.hcommons.social.ap.brid.gy · 05/10/2026
This is the political economic trade-off in our space: politics (time devoted to critiquing AI, developing policies for handling it) vs. pleasure (reading and teaching literature). And that’s what AI, along with every other bureaucratic incursion, ends up taking away from us […]
hcommons.social
Original post on hcommons.social
012 2
Martin Paul Eve @mpe.hcommons.social.ap.brid.gy · 05/10/2026
TIL: There's a great list of free, human-made, royalty-free images at humancode.us/2026/08/28/royalty-fre…
117 7