Human support requires human queries

By pdw

We are committed to providing support delivered by real humans. We know how frustrating it can be to have to fight your way past chatbots and virtual assistants that can’t help you in order to get to a human that can. In fact, when you contact us, your message will be dealt with not only […]

Swimming Pools, Pee, and Trying to Delete Your Data From the Internet

By Troy Hunt

Presently sponsored by: Report URI: Guarding you from rogue JavaScript! Don’t get pwned; get real-time alerts & prevent breaches #SecureYourSite

I can't recall if someone else originally came up with this saying or if I said it in some off-the-cuff comment and it just propagated, but since it's often attributed back to me, I'll relay it here regardless:

Trying to delete yourself

Types of Tornado Alert

I hate the unearthly sound my phone makes when the weather service issues a tornado harbinger.

Experimental Shared Signals Framework support in Keycloak

By Thomas Darimont

We are excited to announce that Keycloak now provides experimental support for the OpenID Shared Signals Framework 1.0 specification, available from today in the nightly release. This allows Keycloak to act as a Shared Signals Transmitter, pushing signed Security Event Tokens (SETs) about identity-relevant events to any subscribed Receiver, using a standardised wire format defined by the OpenID Foundation.

This closes a long-standing gap. When you revoke a user’s session in Keycloak today, the SaaS app they’re logged into usually doesn’t sign them out until their next token refresh, which can be minutes, hours, or in some cases never. The same gap exists when an account is disabled, a credential is rotated, or a device is flagged as non-compliant. Keycloak knows; the relying parties don’t, until they happen to ask again. With SSF, Keycloak can now push those signals to subscribed receivers in seconds — no per-vendor webhooks, no bespoke polling endpoints, no Kafka topic per integration.

Concretely, this also unlocks an integration the Keycloak ecosystem has been missing: Keycloak can now act as the federated IdP for Apple Business Manager, signalling user-state changes back to Apple so enrolled devices can ask the user to reauthenticate.

This post is the first in a small series. It introduces SSF, walks through what’s actually shipped in the experimental release, and outlines where we’d like to take it next. Follow-up posts will cover how to define custom events, how to emit synthetic events, and an Apple Business Manager integration end to end.

A short tour of Shared Signals

The OpenID Foundation’s Shared Signals Framework 1.0 defines a standard way for one party (the Transmitter) to tell another party (the Receiver) about identity-relevant events as they happen. Each event is delivered as a signed JWT, a Security Event Token (RFC 8417) delivered over either an HTTP push channel (RFC 8935) or an HTTP poll channel (RFC 8936).

Two profiles ride on top of that envelope:

  • CAEP 1.0 Continuous Access Evaluation Profile. Events like session-revoked, credential-change, device-compliance-change. Roughly: "the conditions under which I issued that token have changed".

  • RISC 1.0 Risk and Incident Sharing and Coordination. Events like account-disabled, account-credential-change-required, identifier-changed. Roughly: "something happened to this account that downstream parties should know about".

In both cases the receiver decides what to do — sign the user out, prompt for re-auth, force a step-up, lock a device, log it. The framework moves the signal; policy stays with the receiver.

Why this matters in practice

Beyond the headline gap, SSF gives Keycloak operators three concrete benefits:

  • Faster propagation of security-sensitive state. A session-revoked event can reach subscribed receivers in seconds, not minutes-to-hours.

  • A single, standardised wire format. No more per-vendor webhooks, polling endpoints, or Kafka topics each with their own schema and auth model. SETs are JWTs, signing is JWS, transport is HTTP, and the event vocabulary is defined by CAEP and RISC.

  • A growing ecosystem of receivers. Apple’s device fleet management products (Apple Business Manager and Apple School Manager) consume SSF events from upstream IdPs to keep enrolled-device state in sync with user state. The same model applies to a growing list of SaaS and security tooling vendors (Okta, Cisco Duo, Slack and others have either shipped or announced SSF support).

What’s in the experimental release

SSF is shipped as an experimental feature, gated behind Profile.Feature.SSF. It’s off by default, and you opt in per realm and per client. The current scope covers the Transmitter role — i.e. Keycloak emits SETs, downstream services receive them.

Concretely:

  • Standards conformance. SSF 1.0 (Final), CAEP 1.0, RFC 8935 (push), RFC 8936 (poll, return-immediately form), RFC 9493 (Subject Identifiers), RFC 8417 (SETs), and the CAEP Interoperability Profile 1.0.

  • Stream management. Full CRUD on streams, plus status, verification and stream-config endpoints.

  • Subject management. Per-user and per-organisation subscription, with an ssf.notify.<clientId> attribute, a defaultSubjects policy of ALL or NONE, and an ignore state to explicitly exclude users from delivery.

  • Receivers as OIDC clients. SSF Receivers are configured as regular OIDC clients in the realm with client-credentials or auth-code grant, with a per-client ssf.enabled toggle. Currently we only support one stream per client.

  • Event mapping. Native Keycloak events (login, logout, credential change, session revocation, …) are mapped to the right CAEP / RISC events automatically. Custom event types can be added through an SPI.

  • Transactional outbox. Events are persisted into a durable outbox inside the same transaction that produced them, then drained asynchronously by a cluster-aware drainer with exponential backoff. This decouples event generation from delivery, a slow or failing receiver can never block the originating transaction or drop events.

  • Delivery channels. HTTP push (RFC 8935) and HTTP poll (RFC 8936, return-immediately).

  • Synthetic event endpoint. A REST endpoint to inject events that didn’t originate inside Keycloak, for example, a SOC/IAM tool reporting a compromised or changed credential. Useful for bridging an external IAM source.

  • Per-receiver event filter. An "emit-only-events" allowlist so a receiver only sees the event types it actually cares about.

  • Legacy SSE CAEP profile. Shipped alongside CAEP 1.0 specifically for Apple Business Manager / Apple School Manager interop, since Apple still consumes the older draft profile and changing that out from under deployed fleets is not on the table.

  • Admin UI + REST. Per-realm SSF admin endpoints and Admin Console pages to manage SSF-enabled clients, Receiver, Stream, Subjects and Events tabs.

  • Observability. Prometheus metrics under keycloak_ssf_* cover the dispatcher, drainer, poll endpoints, verification flow, outbox depth and per-delivery counters / latencies.

  • Test coverage. Over 100 integration tests across the dispatch / outbox / push / poll pipeline.

A new capability: Keycloak as IdP for Apple Business Manager

One of the strongest motivations for shipping the Transmitter first is Apple device fleets. Apple Business Manager (ABM) and Apple School Manager (ASM) want a federated identity relationship with the organisation’s IdP, and they want to be told, in close to real time, when a user’s status changes so that the corresponding enrolled devices can be locked, wiped or re-enrolled.

Until now there has been no clean path to put Keycloak in that role. With the new SSF Transmitter, plus the legacy SSE CAEP profile bundled for ABM / ASM compatibility, Keycloak can be configured as the federated IdP for an Apple Business Manager tenant and signal session-revoked, credential-change and device-compliance-change events to Apple, which then propagates them onto the enrolled devices.

This was verified end-to-end against ABM during development. A dedicated follow-up post will walk through the setup like realm configuration, client / stream registration on the ABM side, the legacy CAEP profile toggle, and how to test the event flow. This effectively allows to use Keycloak as the identity provider for federated Apple accounts.

Roadmap

The Transmitter is the first half of the picture. Tracked separately:

  • Documentation. Describe the concepts, configuration and integration patterns in the official documentation. The Admin Console UI is designed to be discoverable without docs, but we want to provide more detailed guidance and examples.

  • SSF Receiver role. Keycloak ingesting SETs from upstream IdPs and risk engines (originally proposed in #43614). The hard problem is action mapping, e.g. how an incoming account-disabled event from an upstream party should affect Keycloak’s local state. We deliberately want to validate the data plane via the Transmitter side first before settling that. Eventually an SSF event might just trigger a workflow.

  • More events. Broader coverage of CAEP / RISC events, and a richer set of synthetic events for integrations with external IAM and SOC tooling.

  • Dedicated SSF signing key. Today SETs are signed with the realm’s OIDC signing key. A separate SSF signing key is on the roadmap so key rotation policies can diverge.

  • Security review. Required before promoting SSF out of experimental status.

Getting started

SSF is experimental and off by default. Enable it on the server with:

kc.sh start-dev --feature-ssf=enabled

To see the pipeline end-to-end the quickest path is to point Keycloak at caep.dev, SGNL’s public CAEP test receiver, and subscribe to session-revoked and credential-change events via HTTP poll.

Even with HTTP poll as the delivery channel, caep.dev still needs to reach Keycloak to call the transmitter metadata and stream-management endpoints. If you’re running Keycloak locally, expose it through a tunnel like ngrok first.

  1. Enable the SSF Transmitter on the realm. In the Admin Console, open the realm’s settings and turn the SSF Transmitter toggle on. This sets the ssf.transmitterEnabled realm attribute and activates the per-realm SSF endpoints (transmitter metadata, stream management, JWKS).

  2. Create the SSF Receiver client. Under Clients → Create client, register an OpenID Connect client (for example caep-receiver) with:

    • Client authentication on, Service accounts roles enabled (no browser flows needed)

    • On the SSF tab: SSF enabled, Default Subjects set to ALL, an Audience of your choice (e.g. https://caep.dev), and both Push and Poll ticked as supported delivery methods

    • Under Client scopes, add ssf.read and ssf.manage as Optional scopes

  3. Register on caep.dev at https://caep.dev/register, then open caep.dev/receiver/streams and click Receive events.

  4. Obtain a Keycloak access token via the client-credentials grant, scoped to ssf.read ssf.manage:

    curl -s -X POST "https://my.keycloak.test/realms/myrealm/protocol/openid-connect/token" \
      -d "grant_type=client_credentials" \
      -d "client_id=caep-receiver" \
      -d "client_secret=…" \
      -d "scope=ssf.read ssf.manage"
  5. Create the stream on caep.dev with the following settings:

    • Access token: the token from the previous step

    • Transmitter metadata URL: https://my.keycloak.test/.well-known/ssf-configuration/realms/myrealm

    • Delivery method: POLL, Poll interval: 20s

    • Event types: Session Revoked, Credential Change

    • Description: anything you like (e.g. my poll)

      Click Create. caep.dev calls Keycloak’s POST /streams endpoint under the hood; the stream then appears in the Admin Console under SSF → Streams on the realm, marked as receiver-managed.

  6. Verify the round-trip. Back on caep.dev, click Poll Now. After a few seconds an SSF verification event should appear in the receiver’s event list, confirming the stream is live.

  7. Generate real events. Sign in to the realm’s Account Console as a test user, change the user’s password, then sign out again. Hit Poll Now on caep.dev and a credential-change followed by a session-revoked SET should arrive in the stream UI within a poll cycle.

From here you can experiment with subject management (per-user opt-in via ssf.notify.<clientId>, or the ignore state), swap delivery to push against a webhook.site endpoint, or point a second receiver at the same realm.

For a more application-oriented receiver, the quarkus-openid-ssf Quarkiverse extension turns any Quarkus application into an SSF Receiver, handling stream registration, SET verification and event dispatch so apps only need to react to the decoded events. The quarkus-openid-ssf-test sample wires it end-to-end against a Keycloak Transmitter and is a good starting point if you want to consume CAEP / RISC events directly inside an application.

We’d love feedback — particularly from anyone with concrete CAEP / RISC integrations they want to try against a Keycloak Transmitter.

Feedback

SSF is shipping experimental specifically so we can shape it around real integration experience before it’s promoted to a stable feature. We’d particularly like to hear from you if any of the following applies:

  • You have a concrete CAEP / RISC receiver (in-house or third-party) that you want to drive from a Keycloak realm.

  • You’re already running SSF somewhere and have an opinion on the event vocabulary, stream-management ergonomics, or the receiver authentication options.

  • Your use case isn’t covered by the current event mapping and you’d like to see additional native Keycloak events surfaced as CAEP / RISC events (or as custom event types via the SPI).

  • You hit a rough edge, e.g. a missing metric, confusing Admin UI label, an integration that didn’t behave as you expected.

Please share your feedback, integration reports and feature requests in the dedicated GitHub discussion:

Bug reports against the experimental implementation are best filed as regular issues against keycloak/keycloak with the area/ssf label, so the discussion thread can stay focused on direction and integration experience rather than tracking individual fixes.

Internal documentation that actually gets used: ADRs, MCP servers, and AI-accessible knowledge

By Simon Woodhead

Part 12 of 12 – Conversation Intelligence Platform series Back to Part 1 There’s a category of engineering problem that doesn’t show up in postmortems or sprint reviews: the slow accumulation of undocumented decisions. Nobody documents the decision in the…

The post Internal documentation that actually gets used: ADRs, MCP servers, and AI-accessible knowledge appeared first on Simwood.

Documentation as a first-class product: narrative guides, live OpenAPI, and Scalar

By Simon Woodhead

Part 11 of 12 – Conversation Intelligence Platform series Back to Part 1 Most API documentation in telecoms is a reference dump. A list of endpoints. Parameters, types, response codes. If you’re lucky, an example. If you’re very lucky, an…

The post Documentation as a first-class product: narrative guides, live OpenAPI, and Scalar appeared first on Simwood.

Deprecation as a feature: how we migrate a 200-endpoint API without breaking customers

By Simon Woodhead

Part 10 of 12 – Conversation Intelligence Platform series Back to Part 1 “We’re retiring this endpoint” is a statement that has earned its bad reputation. In practice it usually means: we decided internally to stop supporting something, gave you…

The post Deprecation as a feature: how we migrate a 200-endpoint API without breaking customers appeared first on Simwood.

Authentication done right: API keys, OIDC, and the end of Basic Auth

By Simon Woodhead

Part 9 of 12 – Conversation Intelligence Platform series Back to Part 1 Authentication is one of those things where the gap between “works” and “done right” is enormous and mostly invisible until something goes wrong. This post is about…

The post Authentication done right: API keys, OIDC, and the end of Basic Auth appeared first on Simwood.

A new API architecture: independent services, one gateway, zero coupling

By Simon Woodhead

Part 8 of 12 – Conversation Intelligence Platform series Back to Part 1 The Conversation Intelligence platform didn’t get built on top of our existing API. It got built alongside a replacement for it – and understanding why we replaced…

The post A new API architecture: independent services, one gateway, zero coupling appeared first on Simwood.

Conversation Memory and vCon: the intelligence that compounds over time

By Simon Woodhead

Part 7 of 12 – Conversation Intelligence Platform series Back to Part 1 Per-call analysis is useful. Intelligence that compounds across calls is transformative. A single conversation, however well-instrumented, tells you only what happened in that conversation. But calls don’t…

The post Conversation Memory and vCon: the intelligence that compounds over time appeared first on Simwood.

Operators: turning a call into structured signals your systems can act on

By Simon Woodhead

Part 6 of 12 – Conversation Intelligence Platform series Back to Part 1 The media tap described in Part 5 gives you the audio. Transcription gives you the text. Neither of those is directly useful to your systems – what…

The post Operators: turning a call into structured signals your systems can act on appeared first on Simwood.

Real-time intelligence at the carrier layer: how the media tap works

By Simon Woodhead

Part 5 of 12 – Conversation Intelligence Platform series Back to Part 1 The “carrier advantage” described in Part 4 is not a marketing claim. It has a specific technical basis. This post explains what that is. When someone mentions…

The post Real-time intelligence at the carrier layer: how the media tap works appeared first on Simwood.

Introducing Conversation Intelligence: the carrier advantage nobody else has

By Simon Woodhead

Part 4 of 12 – Conversation Intelligence Platform series Back to Part 1 Voice calls have historically been the least visible channel in business communication. Emails are indexed. Chat is logged. CRM records are structured. But conversations – the ones…

The post Introducing Conversation Intelligence: the carrier advantage nobody else has appeared first on Simwood.

Simwood has always shipped early: from L3 switches to containers to carrier AI

By Simon Woodhead

Part 3 of 12 – Conversation Intelligence Platform series Back to Part 1 The thing about infrastructure decisions is that by the time the rest of the industry makes them, you’ve already forgotten why they were hard. The difficulty was…

The post Simwood has always shipped early: from L3 switches to containers to carrier AI appeared first on Simwood.

The AI-accelerated build: how this platform was designed, documented, and shipped

By Simon Woodhead

Part 2 of 12 – Conversation Intelligence Platform series Back to Part 1 There’s a version of the AI-in-software-development story that you’ve probably heard: developer uses Copilot to write boilerplate faster, saves a few hours a week, productivity up 20%.…

The post The AI-accelerated build: how this platform was designed, documented, and shipped appeared first on Simwood.

Resetting Xbox

Comments

Footage Shows Cop Stalking Woman After Surveilling Her with a LPR

Comments

Aluminum foil (2021)

Comments

'There Is No Going Back': The Inside Story of Europe's Rupture with America

Comments

Nintendo announces new product revisions in Europe with replaceable batteries

Comments

Show HN: Scan your AI agents for dangerous capabilities

Comments

How Kalshi Infects the News

Comments

Why low-latency Java still requires discipline?

Comments

Workers Cache

Comments

Show HN: Pet Reminder – A macOS reminder app with a desktop pet

Comments

Amazon will stop accepting new customers for Mechanical Turk

Comments

Fable 5 On Vending-Bench: Misbehaving, With Plausible Deniability

Comments

Anthropic's Method to Losing Goodwill in a Few Easy Steps

Comments

Road to Elm 1.0

Comments

C programmers commit fresh crimes against readability

Comments

ITV hits such as I'm a Celebrity to stay free to watch after Sky takeover

Sky boss Dana Strong's comments came as the channel announces it is buying ITV's media and entertainment divisions in a £1.6bn deal.

Trump confirms he asked Fifa boss for review of US striker's ban

The US president says Fifa "made the right decision" to suspend Folarin Balogun's one-match ban, adding that otherwise, it would have left a "big stain" on the World Cup.

Trump confirms he asked Fifa to review Balogun ban

United States President Donald Trump says Fifa "made the right decision" to suspend Folarin Balogun's one-match ban, adding that otherwise, it would have left a "big stain" on the World Cup.

Resignations after male councillors vote for rapist taxi driver to keep operator licence

The four have resigned from Highland licensing committee after voting to allow David Brown to keep an operator's licence.

Inquiry into care of man held after 3-year-old injured in crocodile enclosure

A council and the CQC confirm they have begun inquiries after a boy, 3, was attacked by a crocodile.

Farage says he's 'done no wrongdoing' after benefits from ally not declared

The Liberal Democrats have asked the Reform UK leader to be "straight with the British people".

Chris Mason: Accusations around Farage leave him looking vulnerable to his rivals

The Reform UK leader is in the news and at the heart of the headlines are questions about power, transparency and money.

Integrity of game at stake over Fifa Balogun decision - Uefa

Uefa says Fifa's decision not to uphold Folarin Balogun's immediate ban at the World Cup is "unprecedented, incomprehensible and unjustifiable".

Ukraine warns of interceptor missile shortage as 21 killed in Kyiv region

President Zelensky says Sunday's "massive Russian attack" on Kyiv consisted of 68 missiles and 351 strike drones.

'Here to stay' - Fans react to the rise of soccer in the US

The BBC's Nardine Saad spoke to soccer fans about the sport's growing popularity in the United States.

Teenagers cleared of murdering 15-year-old boy in sword attack

Amen Teklay died after a confrontation involving the two boys, who were aged 14 and 15 at the time, in Glasgow in March 2025.

How to get through World Cup-induced sleep deprivation

The euphoria from England's dramatic victory over Mexico might not be enough to get you through Monday.

Wildfire in southern France forces evacuation of 10,000 people

Tour de France organisers ban spectators from stage three as a wildfire hits the Pyrénées-Orientales region.

Amber heat-health alerts issued as UK could see 10 consecutive days of temperatures over 30C

Temperatures in the UK could reach above 30C for 10 consecutive days during the third heatwave of the summer

Buckingham Palace says Prince Harry will not stay there despite his team announcing he would

Royal sources say the Duke of Sussex had not responded to the offer of accommodation at a Royal residence by the deadline last week.

Vacation is off to a good start

By /u/isthatericmellow

Vacation is off to a good start

We haven’t even taken off yet.

submitted by /u/isthatericmellow to r/mildlyinfuriating
[link] [comments]

Big news end of day is definitely to do with F1

By /u/Silv3r_exe

Big news end of day is definitely to do with F1 submitted by /u/Silv3r_exe to r/formula1
[link] [comments]

Will Buxton’s tweet earlier identical to his one when Hamilton moves to Ferrari. Is there a big move happening?

By /u/Danbuarth

Will Buxton’s tweet earlier identical to his one when Hamilton moves to Ferrari. Is there a big move happening? submitted by /u/Danbuarth to r/formula1
[link] [comments]

Is it embarrassing to date someone still living at home?

By /u/bigpussystance

Is it embarrassing to date someone still living at home?

Hi all.

I’m 28F. I moved back home about 2 and a half years ago after a really bad breakup. I couldn’t afford my own place and my mental health was really low. I have lived with my mum since and have still struggled with mental health, with me experiencing a complete nervous breakdown last year that I’ve finally recovered from. I came back with over £20k of debt too which I’m close to paying off which living at home has helped with immensely.

I’m saving for a house. I pay my way. I pay my own bills. Take care of the house and myself etc. it’s just that I happen to live with my mum. She has her own life and I have mine. We both contribute equally to the house and it’s all fair. Living with her has helped a lot with my mental health recovery. I’m thankful she is very loving kind and supportive and I don’t feel isolated and lonely like I did when I left home.

I’ve recently decided to start getting back into the dating game. I hit it off with who I thought was a lovely man and as soon as we started discussing our home situations, he turned funny. He has his own place (he was upfront and said he had help and an inheritance) yet said it was embarrassing that someone of my own age has moved back home despite even renting here being crazy. Obviously I haven’t seen him since but it’s deflated me a bit.

If I had the money to move out I would but even renting as a single person would be most of my wage and I lived with people years ago briefly when I was 18/19 and it was hellish. I started dating my ex and I was still at home but I was 22 then and I guess maybe it was seen as more normal but would you be put off by someone pushing 30 still living at home even though I’ve left and tried living in my own place a few times? I’m not planning on being here forever.

I guess I want to know is there sane reasonable people out there in the dating world who understand not all of us have the luxury of being able to rent or own for many years and don’t have inheritances or family who can help us. Like my goal is to just save and once I have enough for a deposit hopefully in a few years time to get a house and finally have my own home.

ETA:

Years of depression takes a toll on me sometimes and it sounds stupid but sometimes the littlest thing sets me off and can knock me back.

submitted by /u/bigpussystance to r/CasualUK
[link] [comments]

Lando Norris tried to win the British GP in the pit lane

By /u/BirdoMastah

Lando Norris tried to win the British GP in the pit lane submitted by /u/BirdoMastah to r/formula1
[link] [comments]

Elizabeth Line Passenger

By /u/JayProspero

Elizabeth Line Passenger

Jumped on the Elizabeth line at Faringdon on Friday and sat next to a hawk! According to it's handler it's a Harris's hawk and they work for pest control and were on their way home from a morning shift.

submitted by /u/JayProspero to r/london
[link] [comments]

Jude Bellingham is a genuine sweetheart.

By /u/traceykm

Jude Bellingham is a genuine sweetheart. submitted by /u/traceykm to r/MadeMeSmile
[link] [comments]

It was worth it lads

By /u/Badnewsbrowne316

It was worth it lads submitted by /u/Badnewsbrowne316 to r/GreatBritishMemes
[link] [comments]

This makes me feel sad

By /u/davethedog007

This makes me feel sad

I’ve been working on and off at John Radcliffe Hospital for the last 15 years. A few years ago I noticed this car. Just makes me think that some person drove themselves to the hospital and never left. No friends or family to sort it out.

submitted by /u/davethedog007 to r/drivingUK
[link] [comments]

GB News ‘to cut a third of workforce'

By /u/qwerty_1965

GB News ‘to cut a third of workforce' submitted by /u/qwerty_1965 to r/unitedkingdom
[link] [comments]

May's tweet game is top-tier.

By /u/Little-Attorney1287

May's tweet game is top-tier. submitted by /u/Little-Attorney1287 to r/thegrandtour
[link] [comments]

Jumping spider climbs a lady's leg so she sics it on a fly

By /u/North-Guitar-1781

Jumping spider climbs a lady's leg so she sics it on a fly submitted by /u/North-Guitar-1781 to r/nextfuckinglevel
[link] [comments]

I don't drink coffee. Are they really such a boon to my caffeinated friends?

By /u/Valuable_View_561

I don't drink coffee. Are they really such a boon to my caffeinated friends? submitted by /u/Valuable_View_561 to r/SipsTea
[link] [comments]

Jamaican man who has lived in UK for 26 years facing deportation

By /u/yrro

Jamaican man who has lived in UK for 26 years facing deportation submitted by /u/yrro to r/unitedkingdom
[link] [comments]

What's a subtle, or not-so-subtle, sign that a pub is a bit sketchy even before you’ve ordered a drink?

By /u/Rough-Foundation9208

For me it's that uneasy nosiness when the entire room goes silent, and everyone eyes you up the second you walk through the door.

submitted by /u/Rough-Foundation9208 to r/AskUK
[link] [comments]

sqlite-utils 4.0rc3

Release: sqlite-utils 4.0rc3

I hoped to release sqlite-utils 4.0 stable this weekend, but as I worked through the backlog of issues and PRs with a combination of Claude Fable 5 and GPT-5.5 the changelog since rc2 kept getting bigger.

The biggest new feature is support for introspecting and creating compound foreign keys - a feature that involves a subtle breaking change to table.foreign_keys and hence needed to land for the 4.0 stable release.

sqlite-utils also now follows SQLite's convention for case insensitive column names, which turned out to touch a bunch of different places at once.

Tags: projects, sqlite, sqlite-utils, annotated-release-notes, gpt, claude-mythos-fable

sqlite-utils 4.0rc2, mostly written by Claude Fable (for about $149.25)

I wrote about the sqlite-utils 4.0rc1 release a couple of weeks ago. Since we only have Claude Fable on our Max subscriptions for a few more days, I decided to see if it could help me get to a 4.0 stable release that I felt truly comfortable about, since I try to keep to SemVer and like my incompatible major versions to be as rare as possible.

I started with this prompt, in Claude Code for web on my iPhone:

Final review before shipping a stable 4.0 release - very important to spot any last minute things that would be a breaking change if we fix them later

Here's that initial report it created for me. There were some significant problems that I hadn't myself encountered yet - 5 that Fable categorized as "release blockers". Here's the worst of the bunch:

1. delete_where() never commits and poisons the connection (data loss)

Table.delete_where() (sqlite_utils/db.py:2948) runs its DELETE via a bare self.db.execute() with no atomic() wrapper — compare Table.delete() at db.py:2944, which wraps correctly. The connection is left in_transaction=True, so every subsequent atomic() call takes the savepoint branch (db.py:430-440) and never commits either.

Reproduced end-to-end:

db = sqlite_utils.Database("dw.db")
db["t"].insert_all([{"id": i} for i in range(3)], pk="id")
db["t"].delete_where("id = ?", [0])   # conn.in_transaction is now True
db["t"].insert({"id": 50})
db["u"].insert({"a": 1})
db.close()
# Reopen: rows are [0, 1, 2] — the delete, row 50, AND table u are all gone.

That's a really bad bug! Very glad I didn't ship that, although at least it would have been a bug I could fix in a 4.0.1 point release, not a design flaw that would force a 5.0.

Over the course of 37 prompts, 34 commits and +1,321 -190 code changes over 30 separate files, we worked through the entire set of feedback in turn, making several other design improvements along the way.

A weird thing about coding agents is that harder tasks like this one actually provide more opportunity to do other things at the same time, since the agent sometimes needs 10-15 minutes to churn away on a new task. I went out to enjoy the Half Moon Bay 4th of July parade, occasionally checking in and prompting the next step for Fable from my phone.

Full details in the PR and this shared transcript. I switched to my laptop for the final review, which I conducted through GitHub's PR interface.

The most significant changes relate to transaction handling, which was the signature new feature in the earlier RC. The new RC now includes comprehensive documentation on the new transaction model, the intro to which I'll quote here in full:

Every method in this library that writes to the database - insert(), upsert(), update(), delete(), delete_where(), transform(), create_table(), create_index(), enable_fts() and the rest - runs inside its own transaction and commits it before returning. Your changes are saved to disk as soon as the method call finishes:

db = Database("data.db")
db.table("news").insert({"headline": "Dog wins award"})
# The new row is already saved - no commit() required

The same applies to raw SQL executed with db.execute() - a write statement is committed as soon as it has run.

You never need to call commit(), and you do not need to close the database to persist your changes. There are exactly two situations where you need to think about transactions:

  1. You want to group several write operations together, so they either all succeed or all fail - use db.atomic().

  2. You are managing a transaction yourself with db.begin(), in which case nothing is committed until you commit - the library will never commit a transaction you opened.

In reviewing Fable's documentation - I find that reviewing the documentation edits first is an excellent way to build an initial understanding of what has changed - I spotted this detail:

db.atomic() and the automatic per-method transactions are designed for connections in Python's default transaction handling mode. Connections created with the Python 3.12+ sqlite3.connect(..., autocommit=True) or autocommit=False options are not supported, because commit() and rollback() behave differently on those connections.

I admit I hadn't thought about how sqlite-utils would react to the more recent autocommit setting, added in Python 3.12. It turns out "behave differently on those connections" equated to almost the entire test suite failing, so I worked with the model to ensure that this difference would not break how the library works.

And a final review by GPT-5.5

I used to think that the idea of having one model review the work of another was somewhat absurd - it felt weirdly superstitious. The problem is it really does work - I've started habitually having Anthropic's best model review OpenAI's work and vice versa, because I've had that turn up interesting results often enough to be valuable.

I prompted Codex Desktop and GPT-5.5 xhigh with the following:

Review changes since the last RC. Also confirm that the changelog is up-to-date.

Which was enough to turn up two issues worth investigating:

Findings

  • [P1] sqlite_utils/db.py:663 db.query() now rejects non-row statements only after calling db.execute(), and sqlite_utils/db.py:705 auto-commits those writes first. So db.query("update ...") raises ValueError but the update is already committed. That is a surprising side effect for a method documented as “can only be used with SQL that returns rows.”
  • [P1] sqlite_utils/db.py:672 INSERT ... RETURNING through db.query() only commits after the returned generator is fully exhausted. db.query("insert ... returning ...") without iteration, or common next(db.query(...)) usage, leaves the transaction open and the write can be rolled back on close. This contradicts docs/changelog.rst:15 and docs/python-api.rst:232, which say it takes effect without iteration.

I pasted that into a fresh Fable session, which ran some experiments to confirm the problem:

Both findings were confirmed. db.query() called self.execute() first, which auto-commits writes, and only then checked cursor.description — so db.query("update ...") committed the update before raising ValueError. And the INSERT ... RETURNING commit lived at the end of the returned generator, so it never fired unless you exhausted the iterator — next(db.query(...)) or an un-iterated call left the transaction open, contradicting what the changelog and docs promise.

Here's the PR with the fix, and the full Claude Code transcript. Reviewing this code helped me build a better mental model of the edge cases of SQLite transaction semantics!

For an estimated (unsubsidized) cost of $149.25

I upgraded to the Claude Max $200/month plan (I was previously on $100/month) to increase my Fable allowance for the remaining time until the July 7th Fablepocalypse, when even Claude Max subscribers will have to pay full API cost for the model.

I was curious as to how much this would have cost me if I had been paying those costs directly. At first I thought those numbers weren't available to me since I had run the work remotely using Claude Code for web, and then I realized I could run AgentsView inside that existing session to get that cost estimate!

Run "uvx agentsview --help"​ and then use that tool to calculate the cost of this session

Claude figured out how to use the session list --include-children command and came out with the following:

Transcript Model Cost
Main session claude-fable-5 $141.02
API-surface sweep agent claude-fable-5 $2.40
Transactions/atomic review agent claude-fable-5 $2.39
Post-rc1 commits review agent claude-fable-5 $1.72
Migrations review agent claude-fable-5 $1.40
Prompt-counting agent claude-opus-4-8 $0.32
Total $149.25

I'm very glad I'm on that subscription! I really should have followed my own advice and leaned more heavily into subagents with cheaper models.

Here's what claude.ai/settings/usage is showing me right now:

Screenshot of a Claude plan usage limits panel: "Plan usage limits Max (20x)"; "Current session" with "Resets in 3 hr 52 min" showing a progress bar at "7% used"; "Weekly limits" heading with a "Learn more about usage limits" link; "All models" with "Resets Wed 12:00 PM" showing a progress bar at "32% used"; "Fable" with "Resets Wed 12:00 PM" showing a progress bar at "63% used".

I have several other major Fable-driven projects on the go right now as well, with the goal of hitting 100% on that Fable bar just in time for the price increase.

The full release notes for sqlite-utils 4.0rc2

Here are the full release notes for the RC. I had Fable add these to an "Unreleased" section of the changelog as each change landed, reviewing them as it went. This has the neat side effect that the commit history of the changelog acts as a concise summary of each of the changes that went into the release.

In the past I've had a policy of writing release notes by hand, but honestly these are better than I would have created myself. Release notes are a great example of writing that I'm OK to outsource to agents because they need to be boring, predictable and accurate.

Breaking changes:

  • Write statements executed with db.execute() are now committed automatically, unless a transaction is already open in which case they join it. Previously they opened an implicit transaction that stayed open until something committed it - writes appeared to work when read on the same connection but were silently rolled back when the connection closed. Code that relied on rolling back uncommitted db.execute() writes should use the new db.begin() method to open an explicit transaction first. The transaction model is documented in full at Transactions and saving your changes.
  • db.query() now executes its SQL as soon as it is called, rather than waiting until the returned generator is first iterated. Rows are still fetched lazily during iteration. SQL errors are now raised at the call site, statements such as INSERT ... RETURNING are executed and committed immediately without needing to iterate over their results, and passing a statement that returns no rows - previously a silent no-op - now raises a ValueError recommending db.execute() instead. A statement rejected this way is rolled back before the error is raised, so it has no effect on the database.
  • Python API validation errors now raise ValueError instead of AssertionError. Previously invalid arguments - such as create_table() with no columns, transform() on a table that does not exist, or passing both ignore=True and replace=True - were rejected using bare assert statements, which are silently skipped when Python runs with the -O flag. Code that caught AssertionError for these cases should catch ValueError instead.
  • table.upsert() and table.upsert_all() now raise PrimaryKeyRequired if a record is missing a value for any primary key column, or has a value of None for one. Previously such records - which can never match an existing row - were quietly inserted as brand new rows, or triggered a confusing KeyError after the insert had already taken place.
  • db.enable_wal() and db.disable_wal() now raise a sqlite_utils.db.TransactionError if called while a transaction is open. Previously they would silently commit the open transaction as a side effect of changing the journal mode, breaking the rollback guarantee of db.atomic() and of user-managed transactions.
  • The View class no longer has an enable_fts() method. It existed only to raise NotImplementedError, since full-text search is not supported for views - calling it now raises AttributeError instead, and the method no longer appears in the API reference. The sqlite-utils enable-fts command shows a clean error when pointed at a view.
  • The no-op -d/--detect-types flag has been removed from the insert and upsert commands. Type detection has been the default for CSV/TSV data since 4.0a1, so the flag did nothing - invocations using it should simply drop it. --no-detect-types remains available to disable detection.
  • Database() now raises a sqlite_utils.db.TransactionError if passed a connection created with the Python 3.12+ sqlite3.connect(..., autocommit=True) or autocommit=False options. commit() and rollback() behave differently on those connections, which previously caused every write made by the library to be silently discarded when the connection closed.

Everything else:

  • Fixed a bug where table.delete_where(), table.optimize() and table.rebuild_fts() did not commit their changes, leaving the connection inside an open transaction. Their work - and any subsequent writes - could then be silently rolled back when the connection was closed. All three now use db.atomic(), consistent with the other write methods.
  • The sqlite-utils drop-table command now refuses to drop a view, and drop-view refuses to drop a table. Previously each would silently drop the wrong type of object if the name matched. Both now exit with an error suggesting the correct command to use.
  • Migrations applied by the new migrations system now run inside a transaction, together with the record of the migration having been applied. If a migration raises an exception its changes are rolled back and it stays pending, so it can be safely re-applied after the error is fixed. Migrations that cannot run inside a transaction, such as those executing VACUUM, can opt out using @migrations(transactional=False) - see Migrations and transactions.
  • table.upsert() and table.upsert_all() now detect the primary key or compound primary key of an existing table, so the pk= argument is no longer required when upserting into a table that already has a primary key.
  • db.table(table_name).insert({}) can now be used to insert a row consisting entirely of default values into an existing table, using INSERT INTO ... DEFAULT VALUES. (#759)
  • Improvements to the sqlite-utils migrate command: --stop-before values that do not match any known migration are now an error instead of being silently ignored, --stop-before now works correctly with migration files that still use the older sqlite_migrate.Migrations class, and --list is now a read-only operation that no longer creates the database file or the migrations tracking table. migrations.applied() now returns migrations in the order they were applied.
  • New db.begin(), db.commit() and db.rollback() methods for taking manual control of transactions, as an alternative to the db.atomic() context manager.
  • New documentation: Transactions and saving your changes describes how transactions work and when changes are committed, and a new Upgrading page details the changes needed to move between major versions.

Tags: projects, sqlite, sqlite-utils, annotated-release-notes, anthropic, claude, llm-pricing, coding-agents, claude-code, agentic-engineering, gpt, claude-mythos-fable

sqlite-utils 4.0rc2

Release: sqlite-utils 4.0rc2

See sqlite-utils 4.0rc2, mostly written by Claude Fable (for about $149.25).

Building a World Map with only 500 bytes

Building a World Map with only 500 bytes

Iwo Kadziela (assisted by Codex) figured out a way to generate a credible ASCII world map using 445 bytes of data:

A map of the world rendered as black asterisk ASCII characters, it looks very good

The key trick is to use deflate compression, which is then wired together using this neat snippet of JavaScript. I didn't know you could use fetch() with data: URIs like this:

fetch('data:;base64,1ZpLsgIxCEXnrM...==').then(
  r => r.body.pipeThrough(new DecompressionStream('deflate-raw'))
).then(
  s => new Response(s).text()
).then(
  t => b.innerHTML = '<pre style=font-size:.65vw>' + t
)

Via Hacker News

Tags: ascii-art, data-urls, javascript

Better Models: Worse Tools

Better Models: Worse Tools

Armin reports on a weird problem he ran into while hacking on Pi:

The short version is that newer Claude models sometimes call Pi’s edit tool with extra, invented fields in the nested edits[] array. And not Haiku or some small model: Opus 4.8. The edit itself is usually correct but the arguments do not match the schema as the model invents made-up keys and Pi thus rejects the tool call and asks to try again.

That alone is not too surprising as models emit malformed tool calls sometimes. Particularly small ones. What surprised me is that this is getting worse with newer Anthropic models as both Opus 4.8 and Sonnet 5 show it but none of the older models. In other words, the SOTA models of the family are worse at this specific tool schema than their older siblings.

Armin theorizes that this is because more recent Anthropic models have been specifically trained (presumably via Reinforcement Learning) to better use the edit tools that are baked into Claude Code. This has the unfortunate effect that other coding harnesses, such as Pi, may find that their own custom edit tools are more likely to be used incorrectly.

Claude's edit tool uses search and replace. OpenAI's Codex uses an apply_patch mechanism instead, and OpenAI have talked in the past about how their models are trained to use that tool effectively.

Does this mean third-party coding harnesses like Pi should implement multiple edit tools just so they can use the one with the best performance for the underlying model the user has selected?

Tags: armin-ronacher, ai, openai, generative-ai, llms, anthropic, llm-tool-use, coding-agents, pi

Evolution Mail Users Easily Trackable Part 3, One Year On

One year ago this week, I wrote (twice) about some privacy problems that were being experienced by users of the Evolution Mail email client from the Gnome project. Problems that they turned out to have known about for years, and weren't happy about me publicising.

A few days later, I wrote about a bug that allows an email sender to easily consume all of an Evolution Mail users free disk space, within seconds of the recipient simply opening an email. Also, a bug with how they handle caching of attachments.


Support my work: PayPal   Patreon   Bitcoin

Open Source AI Gap Map

Open Source AI Gap Map

Current AI is "a global partnership building a public option for AI", founded as a non-profit at the AI Action Summit in Paris in February 2025 and backed by serious capital ($400m already committed).

They launched their Gap Map a couple of days ago - an attempt at indexing the current state of open source AI:

The Gap Map v0.1 details 421 products in depth: 266 software tools and libraries, 85 models, 50 datasets, and 20 hardware projects, produced by 228 organizations. These products are organized into 14 categories across 3 layers of the stack (model components, product / UX, and infrastructure). The remaining 24,400 artifacts constitute the uncategorized long tail of the open source AI ecosystem, and will carry no score until they are researched and cited.

The map itself is interesting to explore, but I'm more excited about the underlying data - released under an MIT license in the currentai-org/os-ai-map GitHub account: 1,184 YAML files plus the notebooks, schemas and other scripts used to help gather them.

Since the files are on GitHub you can use Datasette Lite to explore some of them - here are 16,185 GitHub repos the project is tracking as a CSV file loaded into Datasette Lite.

Tags: open-source, ai, datasette-lite, generative-ai, local-llms, llms

Quoting Josh W. Comeau

I just launched my third course, Whimsical Animations, and so far, it’s on track to sell roughly ⅓ as many copies as a typical course launch.

It’s a similar story with my two existing courses. Sales are down significantly from last year.

There are likely a lot of reasons for this, but I think the biggest is AI. There’s sort of a double whammy with AI:

  1. Many people are wondering whether developer jobs will even exist in a few months, so they’re reluctant to spend time/money learning new dev skills.
  2. Even if they do want to learn new dev skills, LLMs can provide personalized tutoring, so there’s less incentive to buy a paid course.

[...] I’ve spoken to a few course creators now, and we’re all seeing the same trend. Revenue down 50%+. Fewer people engaging with our content. People switching to LLMs, which slurp up all of our work and regurgitate it, without consent or compensation.

Josh W. Comeau, via Salma Alam-Naylor

Tags: ai-ethics, llms, ai, generative-ai, careers, josh-comeau

Fable's judgement

One of the most interesting tips I got from the Fireside Chat I hosted with Cat Wu and Thariq Shihipar from the Claude Code team at AIE on Wednesday was to let Fable (and to a certain extent Opus) use their own judgement rather than dictating how they should work.

The example they gave was testing. You can tell Fable "only use automated testing for larger features, don't update and run tests for small copy or design changes" - but it's better to just tell Fable to use its own judgement when deciding to write tests instead.

Jesse Vincent just gave me a related tip to help avoid burning too many of those valuable Fable tokens in the few days we have left before the prices go up. Tell Fable to use other models for smaller tasks, applying its own judgement about which model to use.

I prompted Claude Code just now with:

For all coding tasks use your judgement to decide an appropriate lower power model and run that in a subagent

Claude saved this memory file in ~/.claude/projects/name-of-project/memory/delegate-coding-to-subagents.md:

---
name: delegate-coding-to-subagents
description: Simon wants coding tasks delegated to subagents running an appropriately lower-power model
metadata: 
  node_type: memory
  type: feedback
  originSessionId: 30068d78-43a9-4fb1-bb29-9799e18c526a
---

Stated by Simon on 2026-07-03: "For all coding tasks use your judgement to decide an appropriate lower power model and run that in a subagent."

Why: cost/efficiency — implementation work rarely needs the top-tier model; judgment, review, and synthesis stay with the main loop.

How to apply: when a task in this project is primarily writing/editing code, spawn an Agent with a model override (sonnet for substantive implementation, haiku for trivial/mechanical edits) and a self-contained prompt; review the result in the main loop before committing. Design, auditing, data synthesis, and anything judgment-heavy stays in the main model. See also [[project-goals]].

So far it seems to be working well. I'm getting a ton of work done and my Fable allowance is shrinking less quickly than before.

Tags: claude, ai, claude-code, llms, prompt-engineering, coding-agents, generative-ai, claude-mythos-fable, anthropic

June 2026 newsletter

The June edition of my sponsors-only monthly newsletter is out. If you are a sponsor (or if you start a sponsorship now) you can access it here.

This month:

Here's a copy of the May newsletter as a preview of what you'll get. Pay $10/month to stay a month ahead of the free copy!

Tags: newsletter

llm-coding-agent 0.1a0

Release: llm-coding-agent 0.1a0

Another Fable 5 experiment. Now that my LLM library has evolved into more of an agent framework it's time to see what a simple coding agent would look like built on it.

I started a new Python library using my python-lib-template-repository GitHub template repository, then ran these two prompts (here's the Claude Code for web transcript):

Write a spec.md for this project - it will depend on the latest “llm” alpha from PyPI and implement a Claude code style coding agent complete with tools for reading and editing files and executing commands

Then:

Commit the spec, then build it using red/green TDD in a series of sensible commits (each with passing tests and updated docs) - occasionally manually test it using the OpenAI API key in your environment

Here's the spec, the resulting README file, and the sequence of commits.

I've shipped a slop-alpha to PyPI, so you can run the new agent like this:

uvx --prerelease=allow --with llm-coding-agent llm code

It's pretty good for a first attempt! Here's the (Fable-authored) README, which lists recipes like llm code --yolo and llm code --allow "pytest*" --allow "git diff*".

It also presents a Python API based around a CodingAgent(model="gpt-5.5", root="/path", approve=True).run("Fix the failing test in tests/test_parser.py") class which I didn't ask for but I'm delighted to see implemented.

Here's the suite of tools it implemented, listed using uvx ... llm tools:

CodingTools_edit_file(path: str, old_string: str, new_string: str, replace_all: bool = False) -> str

Replace an exact string in a file.

old_string must match the file contents exactly (including whitespace) and must identify a unique location unless replace_all is true. Returns a diff of the change so it can be verified.

CodingTools_execute_command(command: str, timeout: int = 120) -> str

Run a shell command in the session root directory.

Returns combined stdout and stderr followed by an Exit code line. timeout is in seconds (maximum 600); on timeout the whole process tree is killed.

CodingTools_list_files(pattern: str = '**/*', path: str = '.') -> str

List files matching a glob pattern, newest first.

Skips hidden directories, node_modules, __pycache__ and (in a git repository) anything covered by .gitignore. Returns at most 200 paths relative to the searched directory.

CodingTools_read_file(path: str, offset: int = 0, limit: int = 2000) -> str

Read a text file, returning numbered lines like cat -n.

Paths are relative to the session root. Use offset (0-based first line) and limit (max lines) to page through files too large to read in one call.

CodingTools_search_files(pattern: str, path: str = '.', glob: str = None, max_results: int = 100) -> str

Search file contents for a regular expression.

Returns matches as path:line_number:line, capped at max_results. Use glob (e.g. "*.py") to restrict which files are searched.

CodingTools_write_file(path: str, content: str) -> str

Create or overwrite a file with the given content.

Parent directories are created as needed. Prefer edit_file for modifying existing files.

I tried it out by running llm code --yolo and then prompting:

mkdir /tmp/demo and then in that folder create a simple swiftui CLI app for telling the time in ascii art

Here's the transcript, in which GPT-5.5 reasoning notes that "SwiftUI isn't suitable for a true CLI" and then builds an app that outputs this on swift run AsciiTime:

      █    █████         ████     █             █     ███   
     ██    █        █        █   ██      █     ██    █   █  
      █    ████           ███     █             █       █   
      █        █    █        █    █      █      █      █    
     ███   ████          ████    ███           ███   █████

Tags: projects, ai, generative-ai, llm, llm-tool-use, coding-agents, claude-code, claude-mythos-fable

Using DSPy to evaluate and improve Datasette Agent's SQL system prompts

Research: Using DSPy to evaluate and improve Datasette Agent's SQL system prompts

One of this morning's AIE keynotes covered dspy, which reminded me I've been meaning to see if it could help me improve the system prompt used by Datasette Agent - so I fired off an asynchronous research task in Claude Code for web using Claude Fable 5:

Pip install the latest Datasette alpha and datasette-agent and dspy - then figure out how to use dspy to evaluate and improve the main system prompts used by Datasette Agent for the feature where it can execute read only SQL queries to answer user questions about data.

Fable chose to test using GPT 4.1 mini and nano, and identified several promising looking directions for improvements. I particularly like this one:

The schema listing gives only table names; the "don't call describe_table if you already have the information" advice caused column-name guessing (page_count, o.order_id, first_name) and error-retry loops in baseline traces. Either include column names in the prompt's schema listing or soften that advice.

Tags: ai, datasette, generative-ai, llms, evals, dspy, datasette-agent, claude-mythos-fable

Understand to participate

I saw Geoffrey Litt speak at AIE yesterday, and one framing he used particularly resonated with me:

Understand to participate

Geoffrey was talking about the challenge of collaborating with coding agents as they construct increasingly large and sophisticated changes, and the need to avoid taking on cognitive debt as your understanding drifts from how the code actually works.

His argument is that you need to understand the code to a depth that enables you to participate further with the model:

You can learn what the agent is doing to make sure you can be an active participant in the creative process. [...]

You need a rich set of concepts in your mind to think creatively and fluently about how to move something forward. If you're lacking that fluency, your ability to participate in the project is meaningfully limited.

The AIE talks are all recorded - all 300+ of them! - and should be trickling out over the next three weeks. Geoffrey's is one that I recommend catching on YouTube.

Geoffrey also published a thread version of his talk on Twitter.

Tags: geoffrey-litt, coding-agents, cognitive-debt, generative-ai, ai, llms

Quoting Anthropic

We’ve received notice that the Department of Commerce has lifted export controls on Claude Fable 5 and Mythos 5.

We'll begin restoring access tomorrow, and will share an update soon.

Anthropic, on Twitter

Tags: anthropic, claude, generative-ai, claude-mythos-fable, ai, llms

Nano Banana 2 Lite

Nano Banana 2 Lite

Also known as Gemini 3.1 Flash Lite Image (gemini-3.1-flash-lite-image in their API), this is the "fastest and cheapest Gemini image model, engineered for velocity and scale".

I used AI studio to run this prompt:

Do a where's Waldo style image but it's where is the raccoon holding a ham radio

Densely illustrated "Where's Waldo"-style cartoon of a woodland festival filled with anthropomorphic animals (bears, foxes, badgers, rabbits, squirrels, owls) under a banner reading "FOREE'S FESTIVAL" and another reading "FOREST FIVAL," with bunting flags strung between trees, a Ferris wheel on the right, market stalls including one labeled "ACORN FAIR," signs reading "BANDSTAND," "HAM RADIO MEET" (appearing twice), and a stage where a bear plays guitar, a raccoon uses a ham radio, a badger plays drums, an owl looks on, and a fox plays trumpet, with crowds of animals wandering forest paths between trees and mountains in the background.

I like that one better than the results I got from the other Nano Banana models when I tried this back in April. It spelled Forest Festival wrong in two different ways though.

Via Hacker News

Tags: google, ai, generative-ai, llms, gemini, text-to-image, llm-release, nano-banana

Constraining LLMs Just Like Users

This post accompanies my recent video on this topic.

Large Language Models (LLMs) - often called "AI" - are incredibly capable at some tasks and rather misapplied for others. One of the things I think they're strongest at is intent analysis and extraction, and this is a place where they can be genuinely useful as an improvent to the human-computer interface (rather than merely being slapped on top so someone can call it "AI").

However, there's a catch - you can't trust LLM output any more than you can trust the user on the other end of it. In fact, it's even worse; you can't trust the LLM more than the lowest trust of any input it has, including any web pages it fetches, its system prompt, and in theory some part of its training set.

...

An Electromagnetic Force

I've just returned from a fourteen-day trip spent building, running and tearing down EMF, and as I sit on the plane writing this, as well as physical exhaustion, I am experiencing a whole host of emotions - happiness, wonder, determination, and also a strange sense of loss.

It is impossible to describe EMF to anyone who has not attended; while initially you might want to compare it to a normal festival, or something like Burning Man, it is fundamentally unlike almost any other event on Earth. The Dutch and German camps maybe come close, but even those have their own somewhat different vibe.

Over the course of my time heading up the logistics team over the last two weeks, I have done and seen such a wild variety of things that I'm never quite sure what was real. Among others, I watched a man play the US National Anthem on a tesla coil using a theremin; climbed up into a DJ booth in a solarpunk-themed Null Sector and pressed the "!! FIRE !!" button to light up the night sky with pillars of burning alcohol; exited the shower to hear HACK THE PLANET echo out over the field from the stage a quarter of a mile away; saw an inflatable t-rex driving a miniature Jurassic Park jeep, played games on a hillside using lasers, and refilled the duck flume several times (shortly after exclaiming "We have a duck flume?").

...

The Cloud Is Just My Basement's Computers

I've had many different development platforms over the years - from Notepad++ on library computers in my youth, to Gentoo and then Ubuntu installed on a series of carefully-chosen laptops with working drivers, and then for the last five years or so on Surface devices via the rather wonderful Windows Subsystem for Linux (WSL).

Of course, in the WSL era I am still just running Ubuntu, but inside the pseudo-VM that is the WSL subsystem of the Windows kernel. It's honestly pretty great, and I regularly joke that I'm using Windows as the GUI layer to develop on Linux.

Between the Steam Deck and WSL both being ascendant, maybe we finally got the Year Of Linux On The Desktop, just not as we expected.

...

Life-Critical Side Projects

TLDR: I am looking for new developers and maintainers for Takahē who want to help in exchange for my mentorship, or I'll have to sunset the project.

I find it important to have hobbies that aren't the same as what I do for work, which is why an increasing number of them don't involve computers at all - I'm very happy building new things on my camper van, making weird geographic art, or hiking around bits of the Rockies.

However, I still love programming and systems work, and I'll always have at least one project going on the side that involves it - nothing beats the size and complexity of what you can create in just a few hours of coding. That said, I have two basic rules for my programming side projects:

...

I am, approximately, here

There are many questionable things about American car culture, but the road trip is not one of them. In a country as large and geographically varied as the USA, road travel is not just a necessity, but it can also be the attraction itself.

When I first moved to the USA, I had vague plans of doing some driving around and enjoying the sheer alien-ness of tiny towns in the middle of nowhere, or motels where you are somehow the only guest. Nine years in, I've done a decent amount of that, but these days my attention is more focused around the camper van that I spent half a year building.

I like to try and share a bit of the experience with those who want to see it, and as well as posting pictures and videos, I've always liked the idea of having a live map of where I am - even if it's just for friends and relatives who are interested in my progress.

...

A Takahē refactor, as a treat

I had taken two months off from developing Takahē in the run up to PyCon US; both due to pressures at work (and then, more recently, half the company being laid off around me), as well as not quite being sure what I wanted to build, exactly.

When I started the project, my main goal was to show that multi-domain support for a single ActivityPub server was possible; once I had achieved that relatively early on, I sort of fell down the default path of implementing a lightweight clone of Mastodon/Twitter.

While this was good in terms of developing out the features we needed, it always felt a bit like overhead I didn't really want; after all, if you're implementing the Mastodon API like we do, all the dedicated apps for viewing timelines and posting are always going to be better than what you ship with a server.

...

Takahē 0.7

Today is the 0.7 release of Takahē, and things are really humming along now; this release marks the point where we've built enough moderation and community features to make me happy that I can open up takahe.social to registrations, albeit with a user number cap.

We've also launched a Patreon for Takahē, in a quest to make development and operation of Takahē more sustainable - and work towards start paying some people to help out with the less exciting work like triaging tickets, user support, and moderation of takahe.social. If you want to volunteer directly, that's covered in our Contributing docs.

There's some interesting technical topics I want to dig into today, though - it's been a little while since my last blog post and ActivityPub and friends continue to surprise.

...

Understanding A Protocol

Yesterday I pushed out the 0.5.0 release of Takahē, and while there's plenty left to do, this release is somewhat of a milestone in its own right, as it essentially marks the point where I've implemented enough of ActivityPub to shift focus.

With the implementation of image posting in this release, there are now only a few things left at a protocol level that I know I'm missing:

Custom emoji (these are custom per-server and a mapping of name-to-image comes with each post)

...

Takahē 0.3.0

So, after a few weeks of development, I'm happy enough with the state of Takahē to issue its first official release - which I've chosen to number 0.3.0, because version numbers are made up and I can start where I want.

We're only releasing Docker images right now in order to try and keep the support burden down (it removes having to worry about people's OS versions and library environments), so you can find it on Docker Hub.

A screenshot of Takahē

...

Twitter, ActivityPub and The Future

Twitter is - was - such a unique place. Somewhere where you can have the President of the United States coexist with teenagers writing fan fiction; where celebrities give personal insights into their lives while government departments post memes about public safety; the place that gave us @Horse_ebooks and @dril.

The "Fediverse", with Mastodon at its helm, is not this. It doesn't seem to want to be, and I honestly think that's fine - as many thinkpieces have recently said, the age of global social media might just be over. And given the effect it's had on the world, maybe that's alright after all.

But there is still a void to fill, and as someone who enjoyed Twitter most at its "medium" size, I think the ActivityPub ecosystem is well-placed to grow into such a space. But first, I think there's some important things we have to discuss about it.

...

Every Choice Changes Everything: The Show

By Jeff Atwood

About 3 weeks ago, Leo Laporte and I recorded the first episode of what will be a new monthly show on the TWiT network. Naming things is hard, and we almost voted on the name, like we did for Stack Overflow, but we quickly landed on Off By One with

Thank You For Being a Friend

By Jeff Atwood

It's been one of those months, and by that, I mean one of the 663 months since I was born. This won't be a long post, because I only have two things to say. First, I'm really glad we re-ordered the GMI (Guaranteed

Launching The Rural Guaranteed Minimum Income Initiative

By Jeff Atwood

It's been a year since I invited Americans to join us in a pledge to Share the American Dream:

1. Support organizations you feel are effectively helping those most in need across America right now.

2. Within the next five years, also contribute public dedications

The Road Not Taken is Guaranteed Minimum Income

By Jeff Atwood

The dream is incomplete until we share it with our fellow Americans.

Let's Talk About The American Dream

By Jeff Atwood

A few months ago I wrote about what it means to stay gold — to hold on to the best parts of ourselves, our communities, and the American Dream itself. But staying gold isn’t passive. It takes work. It takes action. It takes hard conversations that ask

Stay Gold, America

By Jeff Atwood

We are at an unprecedented point in American history, and I'm concerned we may lose sight of the American Dream.

The Great Filter Comes For Us All

By Jeff Atwood

With a 13 billion year head start on evolution, why haven’t any other forms of life in the universe contacted us by now?

alt

(Arrival is a fantastic movie. Watch it, but don’t stop there – read the Story of Your Life novella it was based on

I Fight For The Users

By Jeff Atwood

If you haven’t been able to keep up with my blistering pace of one blog post per year, I don’t blame you. There’s a lot going on right now. It’s a busy time. But let’s pause and take a moment

The 2030 Self-Driving Car Bet

By Jeff Atwood

It’s my honor to announce that John Carmack and I have initiated a friendly bet of $10,000* to the 501(c)(3) charity of the winner’s choice:

By January 1st, 2030, completely autonomous self-driving cars meeting SAE J3016 level 5 will be commercially available

Updating The Single Most Influential Book of the BASIC Era

By Jeff Atwood

In a way, these two books are responsible for my entire professional career.

alt

With early computers, you didn’t boot up to a fancy schmancy desktop, or a screen full of apps you could easily poke and prod with your finger. No, those computers booted up to the command

Building a PC, Part IX: Downsizing

By Jeff Atwood

Hard to believe that I’ve had the same PC case since 2011, and my last serious upgrade was in 2015. I guess that’s yet another sign that the PC is over, because PC upgrades have gotten really boring. It took 5 years for me to muster

The Rise of the Electric Scooter

By Jeff Atwood

In an electric car, the (enormous) battery is a major part of the price. If electric car prices are decreasing, battery costs must be decreasing, because it’s not like the cost of fabricating rubber, aluminum, glass, and steel into car shapes can decline that much,

Electric Geek Transportation Systems

By Jeff Atwood

I’ve never thought of myself as a “car person.” The last new car I bought (and in fact, now that I think about it, the first new car I ever bought) was the quirky 1998 Ford Contour SVT. Since then, we bought a

An Exercise Program for the Fat Web

By Jeff Atwood

When I wrote about App-pocalypse Now in 2014, I implied the future still belonged to the web. And it does. But it’s also true that the web has changed a lot in the last 10 years, much less the last 20 or 30.

alt

Websites have

The Cloud Is Just Someone Else’s Computer

By Jeff Atwood

When we started Discourse in 2013, our server requirements were high:

I’m not talking about a cheapo shared cpanel server, either, I mean a dedicated virtual private server with those specifications.

We

October

By [email protected] (Jon North)


 For some of my friends October is Inktober a month to try artistic skills with pen and ink or indeed anything using ink that makes marks on paper.  There is a website of course - these things become highly organised on the internet - but the artistic efforts of friends young and old on Facebook are just as interesting.  And October is also a pink month - in France the proliferation of pink umbrellas in towns and cities signals the very creditable support for the fight against breast cancer - you might say 'pinktober' though this has not caught on as a label.   Plenty of beautiful roses here though at other times of the year.


Politics is inescapable.  Around Europe looming elections in various countries raise images of freedom teetering on the brink like the hut on the edge of a cliff in the Charlie Chaplin film. I keep wondering what kind of fear pushes people to vote for populist disinfor:ation, and that's without the horrors of fascist tendencies across the Atlantaic.  In France, prime ministers appointed by an increasingly beleaguered president last ever shorter times before throwing in the towel - since politics is less and less about willlingness to compromise and more and more fragmented by party solidarity  the chances of coalitions holding a stable majority are increasingly remote, and the spectre of the far right taking power hover ever closer.

I have written before about ageing.  For the moment - long may it continue  - Mary and I are both reasonably capable, but we find ourselves among friends and family who have more serious problems of health, mobility and wellbeing.   In more than one case close to us one of a couple has started to become confused to the distress of both partners a diagnosis of dementia is a broad brush for a multitude of distressing conditions.  We are all too aware both of the presures of old age creeping on and feel incredibly lucky thus far to have escaped serious illness, so we feel all the more glad to have avoided major physical or mental disabilities.  Above all we are constantly aware and think with love of our various friends and family members who have suffered or (like my younger brother Tom) are sadly no longer with us in body.  

On top of all this, increasing difficulties with mobility mean that we risk losing touch even friends fairly close by here in France.  For many years we had frequent meetings with our friends Pierre and Charles who live in the hills north west of here, in a small and beautiful old château, and have a second house in Genoa.  We have stayed with them in both places, and were at their wedding in their French  mairie a few years ago, and we played trio sonatas with them often.  Communication has become more and more difficult for them, and we miss them as we miss many other friends

My mind often turns to words, and links between English and French.   I woke up in the night recently quite worried by the links between spiders and arrest - the French for spider araingnée seems close to an  English root/synonym for arrest - arraign - but the connection is tenuous.  It took me awhile to get this out of my sleepy head and return to sleep!  Anyway, this mild autumn there are plenty of toiles d'arraignée (spiders' webs) around our house to remind us of the complexities of language - tangled webs we weave whether or not we are practising to deceive!

As always we have been reading a lot, not just current afairs which often make us feel gloomy, but revisiting favourite fictional series, including two by Alexander McCall Smith, the Botswana stories of Mma Ramotswe and those of the Scottish philosopher Isabel Dalhousie.  AMS is an amazingly prolific author quite apart from his legal texts (he helped write the legal framework for the newly independent Botswana) and the quality never dips across several quite different sets of novels.  We have also rered the Montalbano novels of Antonio Camilleri, whose stories of refugees reaching Sicily in small boats are also amazingly relevant in these Meloni times.  Both authors relish complex detective plots; the translator into English of the Camilleri books Stephen Sartarelli is also inccredibly talented.

our weekly bilingual conversation groups continue and help us stay in touch 

Recently we also revisited the tv seris of Yes minister and Yes Prime Minister, which remain quite relevant and very amusing in these topsy turvy times.  We need the light relief.  We look back with pride and sadness on the talented lives of actors like Paul Eddington and Nigel Hawthorne

Out here in the European world  so sadlly abandoned by Johnson et al we rely on good internet communication, and that is ever more difficult.  I like reading the Guardian, and have had a subscription for around 20 years.  Of course costs go up, but in addition the subscription conditions alter and it is not always easy to simply pay the extra.  new operating systems arrive and subs are linked to them, so in the worst case you have to buy a new tablet.  Or, instead of just asking for more on the next renewal you get a flash message to say  'please contribute to gain unrestricted access' - without ads - when you thought you already had it.  The same applies to The Week  which now demands a new subscription even tough it says our payments are up to date - another out-of-date operating system on the iPad no doubt.  Of course, all the time age creeps on, so we oldies have to keep up with ever more whizzy systems.  No easy answers, I guess.



Life with wine chez nous and around

By Jon North ([email protected])




Welcome new discovery of  La Clausade, a new domaine quite near us in, Mauguio, producing wines from little-known grape varieties (see below)

This is about old friends on our minds at the moment, and about a new discovery.  Those of you who have stumbled on this blog but are not particularly interested in the alcoholic liquid know that my posts are as much about friends and countryside as about the drink - our presence in France is a lot to do with our liking for wine and vineyards, and for those who run them.  And good winemakers are not just farmers or growers, not just chemists or alchemists, and not just hardworking astute business people - making wine combines all three, in all weathers.  And they are human beings who grow old so have to hand on their businesses, and they have families some of whom willingly take over from their parents but some who simply follow other paths in their lives, so that wonderful vineyards change hands, change function.

All weathers has been on our minds this summer as temperatures soar and drought begins to  affect even the deep-rooted vines.  When we came here it was a given that vineyards could act as firebreaks, but recent summers have been so dry that vines burn too.  And yields of grapes have reduced for lack of water - here in the south it is no longer sure that vines can go with out extra irrigation.

One of our favourite local vineyards, Château Grès Saint Paul, is still in business.  Its owner, Jean-Philippe Servière, is the 7th generation of his family producing wines there, he has told us he wants to retire but there is no obvious successor, and and it is not clear what the future holds, but over nearly 20  years here we have often had a warm welcome there and enjoyed many of his wines.  They are still on the shelves in our local grengrocer's

Château Aiguilloux in the Corbièeres area west of Narbonne was one of our earliest discoveries and we were pleased to call there again on our way back from a holiday  in April.  Son Georges and his wife have now taken over from his parents - we first met Georges as a restaurateur in Narbonne on his parents' recommendation, and apparently he and his wife still cater for wine-inspired events at the domaine.

Fires in the Corbièeres area were all too frequent this summer, controlled more or less by the planes we heard often passing over our house carrying water from  the seaside étangs (not my photos)


I've written often of the Chemin des Rêves which we've known for nearly 20 years, from a young family starting our in Grabels, Benoit Viot and his wife Servane have flourished as winemakers north of Montpellier, building their own home in a vineyard in the Pic Saint Loup appellation (of which he was recently président) producing also wines with the Grès de Montpellier label.  We were delighted to go back this summer with friends Judi and Alex.


The Pic Saint Loup, backdrop to the Chemin des Rêves vineyard

New wines from old grape varieties - we have discovered, via our friendly caviste (another Benoit) at O Pêcheur de Vin a new winermaker just down the road in Mauguio, called La Clausade, which specialises in wines from grapes which are disease resistant - som red, but mainly white and rosé wines from varieties I'd never heard of and which are not in any of our wine grape guides; but which are uniformly deliciious as well as unusual.  We have reordered... Muscaris, Soreli, Floreal, Souvignier gris, Artaban, names to conjure with.  It seems random to pick wine grapes for their disease resistance, but it works as well as being ecological  As always, the people who run it are added bonuses in discovering these places, and ours is becoming an area of hidden pleasures in the wine world.

A lttle further east, across the river Vidourle in the Gard, is an area, the Vaunage we often go to for meetings of our French language group (including French people trying to  improve their English as well as helping us with our pronunciation and translation.  One town/village we often visit is Calvisson, with a good winemaker theh Domaine Roc de Gachonne, whose red wine Puech du Rouge we quite frequently receive at our language group's shared lunch.  It's called multi-tasking!




A Virgo month

By [email protected] (Jon North)

Not my phhoto, but that of someone patent who waited patientlyfor the storm over the Pic Saint Loup 

I began writing a rather downbeat piece about ageing, but then stopped and changed tack. We have many friends of around our age, and some are fortunate like us, with senses more or less whole, lots of good friends near and far, partners we love and care for. I think a lot of my friends, like me, live largely on the experiences we’ve accumulated, and even if life is now restricted by pain or illness there is a wealth of memory and inner enjoyment to enjoy. I know about music and am so thankful to be able to listen, supported by the wonder of recordings. And I am endlessly grateful for the gift of sight, the ever-changing skies and light in the place we live, and the sensory pleasures of food and drink. 

This is a birthday month for us, and has been throughout my life - my grandfather, my mother, the lady I married and numerous friends all share this season of mists and mellow fruitfulness (mists not so much in our warmer climes).  It ssms also to be a month for visitors - my nephew David has just left, and a dear friend from the US will be with us soon.  The summer heat has moderated and the storms have stayed away from Lunel, but seem to have broken all around us, wiith some floods in Montpellier.  I'm reminded that when we first came on holidayto the Languedoc, almost 25 years ago, there were bad floods in Nîmes and we had to trek up and down to our holiday flat onn the stairs because a lift shaft was flooded.  It keeps suprprising me that Lunel is so dry when there are floods and storms all around.

We enjoy visiting friends and receiving them here for our regular language groups, and in the lovely warm weather just now we can sit outside.  Our reading at the moment is from books by Eric-Emmanuel Schmitt.  The ones we have read so far are related by boys born into Jewish families - one, Monsieur Ibrahim et les fleurs du Coran is about a lad abandoned by his parents and adopted by a local Muslim grocer - Moïse becomes Mohaùmed - and the one we are currently reading, l'enfant de Noé,  is about a boy who is separated from his parents to be hidden from the Nazis in a Catholic boarding school in the early 1940s .  The writing is humorous despite the difficult stories.  Both are narrated in the voices of the boys.  We have a faithful group of 20-30 people who come regularly, and an average of 15 or so in our weekly gatherings.

Of the many upsetting things in the world around us, killing innocent people by powerful weapons in Gaza and Ukraine and the complete disdain shown by many politicians for the lives of  those they are supposed to govern are open sores in the daily news.  



We think more and more of our dear friends, with whom we must now keep in touch by electronic means if nothing else is possible.   With advancin age, calm and wisdom are lurking somewhere, but on the surface are all the ailments and frailties that  beset us.  It is easy to doubt your mental capacities, (sometimes, we know, with finite symptoms of mental deterioration).  And even if you are compos mentis, it is easy to wonder and doubt.  

My own difficuulties are mainly in walking (as regular readers will know), but it's important to take care with balance and avoid falling over!  Many of our family and friends have a  variety of more or less trying difficulties, including the very distressing loss of sight  and/or hearing for musicians after a lifetime of  active performing at all levels.  Things like arthritis can interrupt other kinds of art too.  And all the infirmities bring with them increasing isolation as travelling becomes more difficult.  Moving house to better adapted premises is a good theory, but the emotional wrench of leaving a good home and neighbourhood is  huge.  I think few people have really begun to think about the  challenges of living a lot longer than our grandparents.


wonderful meal at the Maison Soubeiran last week,,complete with birthday candle from the restaurant





     



Towards September

By [email protected] (Jon North)

 

We have just heard the very sad news of our friend Clare McCarty.  She and I met through young Quakers when I was working in Friends' House in the early 1970s, and later Mary and I met her husband Norman and stayed with them in their home in Lisburn.  Clare became a leading figure in the housing sector in Northern Ireland.  At our age the death of friends is not uncommon, but to lose a friend so much younger than me is a shock.  She was one of 2 of two women friends with the distinction of receiving an OBE for her work in the crossover sector I also worked in, linking voluntary, community and statutory sectors and I feel proud to have known her.











last month's red high risk map in the Aude - Lunel is on the far right, still orange and therefore still at risk a few days ago.   The Aude area is apparently still smouldering underground
 
The very hot weather of the past months seems to be waning thank goodness, and we have had a couple of short storms, but in the very dry conditions here the risk of fires continues very high, and it is not just folk rumour that many such devastating fires (such as the one which destroyed an area the size of Paris a week or two ago) turn out ot have been started deliberately.  It is really shocking when an already dangerous situation is aggravated by such vandalism.  We read that in the UK too there are fires, in Yorkshire for example.  Hre in France, water supplies are running low - the Canal du Midi may have to close  to navigation because of lack of water.  We need more rain - only 30mm in the past two months, most of it in the past couple of days.


Over the summer months our usual conversation groups (mixed French and English people, improving our understanding of one another's languages through reading and discussions together) shrink as people go on holiday, fmaily visits etc.  So our group recently has sometimes been reduced to single figures, but those who are free still like to meet and reward our morning's work with a shared meal.

skies clearing after a noisy storm last week - most of the rain fell to the north of Lunel




Hot as hell

By [email protected] (Jon North)

From time to time - I should probably do this more often to improve my language skills - I translate articles in French media.  Here's one from this week.

Translation of article in Midi Libre 13/8/25 - interview with Stéphanie Latte Abdallah, historian and anthropologist, by Arnaud Boucomont  Now living in the Cevennes, previously in Jerusalem, she has a harsh view of the strategy pursued in Gaza by the Netenyahu government, which requires an active response.

Do you think total occupation of Gaza by the Israeli army is feasible?

That would be complicated, although it has long been its public aim, staying in and recolonising Gaza. We've heard that for ages; the commander-in-chief of the army has said that clearly to politicians but the message has not been heard. It would take a huge number of men in the longer term, and the army is relatively fatigued with many reservists refusing to serve there. The Israeli army is faced by an ongoing guerilla war by Hamas. Gaza is pretty well destroyed but Hamas' capacity to act is not completely exhausted.

What's your view of the attitude of the international community, France in particular, over the past two years?

The recognition of the Palestinian state is long overdue, but there is an interest in isolating the current Israeli government over its refusal to recognise a Palestinian state. If Britain joins France as it has promised then the USA will be the only state in the UN Security Council not to recognise it. In the proposals publicised so farthere are no means of enforcing the proposals. There should be sanctions, and suspension of the accord of co-operation between the EU and Israel. But that would be to act without acknowledging the current genocide, without naming it as such. Because if it were named the countries involved could be even seen as complicit in the genocide because of their inaction.

What about the growing famine in Gaza?

There will be severe consequences for children, older people and those with chronic illnesses. In the long term I call that 'futuricide', resulting in killing as many people as possible. More than 61,000 have died directly as a result, but the lack of healthcare, chronic sickness, famine, land poisoned by armaments, pollution, lack of refuse collection and of cleaning services brings the total up to around 200,000 people.

How would you sum up the policy of Netenyahu over the past two years?

He was always against a Palestinian state. There is a fragile coalition between supremacist and pro-colonisation ministers and deputies and those in favour of annexation of the West Bank and the re-colonisation of Gaza. They claim to be following the biblical principles. Netenyahu himself is not especially religious but uses this language to build up support for his project. He has stayed in power by enlisting the most extremist members of his government who guarantee his position. He hopes to keep tension up by occupying as much territory as possible. He tries to avoid political scrutiny.

How do you view the religious aspects of the conflict?

On the Israeli side we can see the co-option of a religious-sounding language through the idea of a battle with Amalek, the old testament enemy of Israel, each side trying to destroy the other. In the Bible it was seen as necessary to destroy Amalek completely. In a March 2025 study by Penn State University, 82% of Israelis were in favour of moving all Palestinians out of Gaza.

In the other camp, obviously there are the islamist groups like Hamas and jihadists who fight in Gaza using islamist language. There are also other groups which are mainly secular. Within the Palestinian population religious motives are not so much to the fore.

The typical Palestinian who finds her/himself being bombed, losing children, how can that do other than generate hate or antisemitism?

Speculating on such emotions takes us beyond the realm of rational analysis But Palestinians distinguish clearly between Israeli policy and jews. the question of antisemitism as seen from France does not arise in the same way in Israel or Palestine.  

So how do you see this conflict being played out in France?

Generally we've seen a gradual change in public perception over the past two years. People were quite virulent in their views to start with, not wanting to see what was actually happening, that the Israeli government really wanted to destroy Gaza, but things are changing. Better late than never. For France, which has long supported the State of Israel, it's complicated. It is difficult to tell yourself that Israeli governments are committing genocide when that very state grew out of genocide suffered by Jewish people.

What about the strategy of Hamas?

At the time of the 7 October outrage Hamas' objective was to make sure Palestine was not forgotten in the signing of the Accords of Abraham which foresaw making peace without taking account of the Palestinian question. They also wanted to avoid the annexation of the West Bank and demonstrations in front of mosques.

They could have reacted differently!

From what they've said, some things got away from them. They do not accept that they intended to target civilians. They claimed that other groups had infiltrated theirs. But there were certainly abuses and war crimes by several groups, of course including Hamas.

All the same, the strategy involved murders and taking hostages…

Hostages certainly. They wanted to exchange them for Palestinian prisoners, using them as a kind of exchange currency to protect themselves. They ahd also decided to push the Israeli army to the Gaza border to break the siege. They see themselves as being involved in a war of resistance. I'm just saying how they see things - I'm not saying I agree with them.

Nostalgia

By [email protected] (Jon North)

Another year of the Tour de France has ended with a week of the women's race across the middle of France, emphatically won by Pauline Ferrand-Prévot.  But one of the highlights was the emergence of Maëva Squiban who won two of the penultimate stages in the mountains.  She will be one to watch.  Sadly our ability to see the Spanish grand tour, the Vuelta, willl be very limited.  We really must sort out access to tv channels.

The men's Tour finished for this  year in spectacular fashion.  Wout van Aert won on the Champs Elysées with the overall Tour winner Tadej Pogačar a few seconds behind.  The novelty this year was the addition of three ascents of Montmartre to the Sacré Coeur to the usual flat-out sprint round and round the Champs Elysées.  To my mind the change was excellent, adding excitement on the last day.  Wout deserved his final accolade - he had planned the attack on the final ascent - and seeing the final circuits happening on the cobbles, in the rain, was dramatic and without mishap.  

Amusingly Van Aert had earlier openly criticised the change in the final day, saying it was too dangerous.  He had the last laugh (or perhaps it was a cunning double bluff), and I'm fairly certain the new routine will stay - better than the old procesion with added sprinters (sorrry Cav).  I know there are those of my friends who find our interest in sport tedious,, but there we are.  It also applies to cricket (which we sadly can no longer watch) - in fact at least one friend I can think of can stand neither cricket nor cycling.  Sorry again!  But the women's race proved quite absorbing and came up with several top French contenders, which guarantees a French tv exposure.  Although women's cycling is advancing by leaps and bounds, not yet a level playing field.

slower creatures

A friend has just recalled a time in our lives when he and I lost touch.  Happly, we both feel, despite often living in different places, countries even, we have restored and stayed in contact since.  And there are ever more gaps in our circle as we age.  But we are so glad to remember those still with us even if we can seldom meet face to face.  This blog serves to keep some in contact, and despite its notorious replutation Facebook is still for us a valuable way of keeping in touch with old friends and newer ones.  The warmth of memories fills a lot of gaps when we can no longer travel so much.

The non-exhaustive list of people no longer physically with us include friends and Friends we made in France.  In the small Quaker community of Congénies were Dennis Tomlin and Brian Painter; others important in our lives here included Marcel and Michèle Bombart and neighbours in Lunel Michel Cazanave and Mme Picard. Quakers back in the UK were (among many others) Polly Tatum (an honorary Friend in my mind) and her husband Arlo, Arthur White, Geoffrey Bowes, Ted Milligan and  Malcolm Thomas.  Apart from my parents and Mary's mum, family members now no longer with  us include my brother Tom, my aunt Ida (who travelled with us memorably more than once in France) and Sam's father-in-law Taeke Oosterwoud.


My ex-boss Ted Milligan centre stage at our wedding reception in 1978
A complete album of our wedding photos is here

We have just re-established our car insurance.  The car is a lifeline now mainly for local travel, but above all for two things - for Mary to enjoy her cello outings, and for both of us to go to twice-weekly language groups which meet in various people's homes (including ours).  The summer has put a pause to all that, and I can well understand that she does not want to practise until the hot weather has passed.  Anyway, the car insurance would have lapsed next January for silly bureaucratic reasons, and we have to pay more (naturally!) for the replacement, but it is worth it.

Like another friend who has been sifting and disposing of huge piles of old papers, indeed like everyone until a few years ago, we have a life that used to be defined by files of papers but is now rapidly being encrypted in bits and bytes on electronic devices.  We have just re-sorted the paper files that still line our office, and finally tracked down various folders we thought lost.  And of course, 85% of the paper is no longer useful; the other  15% is probably useful but we may never get round to sorting it out.  So now we are continuing the endless process of chucking out old files into recycling - once the office is more or  less up to date I have started to excavate the roof where layers of dust need to be tackled too.  But it is frightening to find how soon things that I labelled clearly as current are just more unwanted archives.  As for the electronic things, the identifiers that work are fine, but once a chanin is broken oneis reduced to scurring between devices to confirm that I am me and getting in a fog of confusion when a password no  longer works.


Outside the August sunshine is just beautiful and the evening skies often breathtaking.  There have to be ways of setting aside the humdrum, confusing processes of admin, all the more when the old expedient of going for a walk (which Mary still enjoys) is slower and more laborious.

Reading still occupies a lot of our time.  Mary is a regular reader of books in French, often borrowed from the local library which has been one of several useful developments in our neighbourhood.  They sometimes have interesting short afternoon lectures.  I read a lot though mostly in English.  We are both re-reading series of novels we've enjoyed and enjoy still - Mary is nearly up-to-date with the Bertie books by Alexander McCall  Smith, and I am well into the Montalbano detective books by Andrea Camilleri, beautifully translated by Stephen Sartarelli.  We shall revisit the tv series over the winter I expect.  It is good to read paper books at least some of the time, even if some are far too heavy and cumbersome to take to bed and the Kindle is a welcome and more flexible alternative.

The hot weather is back this month.  There have been several severe fires in the countryside east and west of us, and the sound of the Canadair planes passing over us has been more frequent in July - they scoop water up from the étangs near the coast then drop it on the fires in the garrigue north of us.  Not too near where we live, but very worrying all the same.


This blog should have mentioned food more often than it has.  As much as wine, we enjoy our food and relish the local produce, particularly fresh fruit and veg, together with herbs and spices.

The salt pans at Aigues Mortes - pink colour due to algae in the water

But salt is both local and important.  Interestingly the articles about French salt on the internet are almost all about the Guérande and other places in the north and west of France.  But here it is the salt production of the Camargue, and in particular of the salines of Aigues Mortes, which is most prominent.  The names Aigues Vives and Aigues Mortes are both local place names - 'alive' and 'dead' water, fresh and salt water in other words.  And Aigues Mortes is a local centre for the production of salt.  The fleur de sel which we use at the table is the relatively small quantity of flaky salt which is left on the surface when the water eveporates.  Of course, salt is essentially sodium  chloride, but the fleur is a little diffferent because the evaporation leaves higher quantitites of minerals like magnesium - it is prized by chefs and a lot more expensive than the table salt we use in cooking and so  on.

Now into August, and we are looking forward to visitors in a few weeks' time when I guess the heatwaves may have subsided.  Lorry fires on the motorway are a regular part of the news.

To all our friends and relations, enjoy the rest of the summer.



Into the Pyrenees (them, not us!) and on to the Alps

By [email protected] (Jon North)

We have been scanning our wedding pics from 1978

The Tour continued after the first rest day, and some minor surprises like Pgačar falling off without much prompting in a fairly flat part of the race near Toulouse, some rather caustic comments about other competitors waiting for him  (no skin off their noses I think although some off his legs) and several riders sharing the glory, including a nice Irishman Ben Healy who stayed in the yellow jersey for 2 days.  I'm sorry when being sporting becomes a dirty concept, like today's politics really.  

At the end of Thursday's first Pyrenees stage normal service had, in a sense, been resumed - Pogačar back in yellow after a typical and jaw-dropping ride up the final steep climb.  OK, he may be using unfair magic, but if so Vingegaard and those behind have somehow missed out on the trick.  Actually I am (we are)  excited and awed by the compact power he shows,   As I write the next rest day is approaching, and they are heading for Carcassonne.   The race passes through Revel, an area we know well because our friend Barry, of whom I've written before, lives near there.  Next week to the east and other places we know well from our earlier twinning excursions.

There is a lot of yellow around during the Tour - my wine mag got into the act

The local paper meanshile is fairly typical of local French opinion, bemoaning lack of French winners of late - "Les Bleus plutôt pâles"  - French sports teams commonly known as les bleus and pale blue being, well, pale.

When the Tour reaches Paris, this year instead of just circling the Champs Elysées the race will add in two climbs towards Montmartre and the Sacré Coeur.  Wout Van Aert (who seems to be the official complainer in the peleton - he has just also objected to retaining sprinters who are too slow up hills) thinks it is dangerous.  So are a lot of things that happen in bike racing.  Anyway, sports rules are by definition arbitrary.

Memories of many no longer with us - our parents and my brother Tom, Ruth and Heinz Liebrecht, Malcolm Thomas.  Good people to remember and there are those of you who are still alive, happily.

Others who were at the wedding are sadly no longer with us - Ted Milligan, Polly & Arlo Tatum, and others.  We miss them all but are so glad of the memories they leave.  More photos in a future blog.

Meanwhile, back in the tedious world of admin, we have to keep proving we are still alive and entitled to pensions.  There are at least three different systems demanded by different pension providers, all of them complicated by the fact that English people do not recognise French, nor the French English.  It can all be got round, but it always seems an anxious moment for us.






Fires all round

By [email protected] (Jon North)


The hot dry weather and mistral (strong northerly wind - sometimes it it is north-westerly, coming over the Black mountains and called the tramontane) all combine to make the countryside like tinder, and this week we have had fires to the west of us north  of Narbonne, along the A9 motorway, and to the  east in the hills above Marseille.  The immediate causes are often unclear, but can arise from human idiocy.  One person was reported to have been towing a lighted barbecue on a trailer!  With the Fête National coming up, fireworks are planned everywhere despite the risks.  Climate change denial?

Our enjoyment of the Tour is undiminnished - Pogačar back in the lead and some fiarly flat stages this weekend.  The local paper had a good article on what some people call mechanical doping, and I have summarised this iin English in case it interests anyone.  "Looking for motors.   In a former life Nick Raudenski hunted terrorists.  Today he hunts motors in the bicycles of the Tour de France.  The American is now in charge of the fight against technological fraud at the UCI (Union Cycliste Internationale).  "When I arrived the first thing I tried to do was to put myself in the mind of a cheat.   How could I use a motor without being caught by the inspection patrols?  I worked in antiterrorism.     An idiot tried to blow up an aeroplane with a bomb in his shoe and now everyone has to take off their shoes at the airport.  The same thing in cycling"

Although technological fraud is often cited, only one case (in 2016) has been proved in the world of professional cycling, the 19-year-old Belgian Femke van den Driesse used a hidden motor in the world cyclo-cross trials.  Since then millions of checks have been carried out without finding anything.  "Why has nothing been found?   This really bugs me.  My job is get to  the bottom of it."  In the 2024 Tour 192 bikes were x-rayed, always including those of the stage winner each day and the yellow jersey holder, 17% more than in 2023.  "This year there will be even more" says the UCI, which is also running a programme of financial and other incentives to encourage those who provide useful intelligence.

In June in Combloux at the Criterium du Dauphiné,  Raudenski demonstrated the checks he carries out at the finish line where he intercepts riders, and on to the tent just behind the podium where bikes are taken apart and examined - "at the beginning of each stage the commissaires check bikes with the help of magnetic scanners.  They can alert us by phone if they notice anything suspicious.  Nick and his team have portable x-ray machines round their necks, checking machines from top to bottom.   "These meters are so good they can see the serial numbers of cables, eveything going on inside a bicycle. ...we know exactly what we' re looking for."  

Raudenski and his team keep up with the latest technology, comparing it with what happens in other sports like Formula 1, for example smaller and smaller batteries like those used to power drones - there has been enormous progress in these technologies in recent years.  Nick is very confident in the effectiveness of the tests and checks despite the doubt cast on the UCI's capacity from time to time.  "I really want people to believe, when they see an amazing climb or an explosive attack that they are seeing something genunie, not saying 'oh, they're using a motor'. As for the suspicion that the UCI covers things up so as not to damage the image of the sport, he is categorical "that's out of the question.  whatever may have happened in the past, that is not my style.  If we find something, we'll  make sure it is heard loud and clear."

The race is not just about winners, but those who make exceptional efforts.  Yesterday there were unusually two sharing the combativity prize: "The race jury came to a rare and exceptional decision. On stage eight of the Tour de France, there would be not one, but two winners of the combativity award: TotalEnergies pair Mattéo Vercher and Mathieu Burgaudeau.  The French duo broke away from the peloton with 80km to go into Laval. It was a day billed for the sprinters, and while everyone else resigned themselves to that fact, Vercher and Burgaudeau dared to believe a different result was possible. Team-mates in unison, their white jerseys transparent with sweat, they took off away from the bunch, and ploughed in tandem through the countryside of western France for an hour and a half.

The effort, in the end, was fruitless; both were swallowed by the peloton, and Lidl-Trek’s Jonathan Milan won the bunch sprint. It was, however, a historic occasion – only the fourth time in the Tour's history that the combativity award was shared.

The Tour - yet more cycling

By [email protected] (Jon North)


The canicule (heatwave) continues although the early mornings and late evenings are pleasantly less hot.  We have moved our sleeping quarters downstairs.  Interestingly our hugely improved roof insulation has meant that the nights upstairs are much warmer because the heat from the roof slowly seeps out then. 

This month will be taken up for us watching the cycling.  Cyclists of course have to plough on through the hottest weather, and it has been settled over a lot of France these past few days.

These 2 are well in evidence even at this early stage of the race

The first edition of the Tour de France was in 1903.  Since then much has happened - our local paper  has published a nice leaflet to mark the links between the race and our region, involved in a third of all the stages this year.  Names and events to conjour with - Laurent Jalabert, a successful competitor now a constant presence in the tv commentary team, competitors like the Colombian Nairo Quintana, key places like the rose city of Toulouse which is the jumping-off point for the Pyrenees and our local city of Montpellier which will host a rest day  this year,

Cheating is back in the newspapers, though without much hard news I can see, just the suspicions that often go with a gloomy feeling in France that French riders are not doing too well.  Apart from the hard cases like Armstrong it all comes down to the gut feeling that being that good is improbable.  Apart from using illegal substances and 'doping' machines (essentially hidden motors), the permitted changes in machinery and nutrition are enough to make huge changes in performances, and watching the ssecond stage today got me thinking, not just about changes in equipment and nutrition but about the huge infrastructure of support people, cars following every team with spare bikes and young blokes rushing to replace faulty bikes.  At any given point it must have been difficult to decide shat sas legal, and who had an unfair advantage.

Bikes have changed from steel and aluminium to carbon fibre, with disc brakes, electronic gear changes and many more derailleur gears, controls all electronic and sometimes using bluetooth, tyres filled with self-sealing liquid and no inner tube.  Over the years there have been frequent rumours about mechanical doping, with little hard evidence of cheating, but the mechanical advantages of new equipment have made a huge difference  to  the lightness and potential speed of the bikes.  Nutrition has also changed, both the science and the materials - careful  calculation of energy needs, fluids and gels easily carried and absorbed, calculated not just for the trrain but adapted to the needs of individual riders, with timing of a what to eat and when.


Away from cycling, Language is changing and not, for me, for the better.  The words batter (in cricket - formerly a cooking ingredient for pancakes and yorkshire pudding) and train station (which we always used to call a railway station) are now accepted terms.  Not sure why batsman was no longer acceptable for a male cricketer, although the female of the species did and doesneed a separate term.  But things move on, and I do accept that since long before Shakespeare the English language was and is living.


Hot, hot, hot

By [email protected] (Jon North)

It has been over 40° in the afternoon these last few days.  A British friend who has lived in the tropics sent some useful  tips - "In the middle of the night...open up all windows and even doors if it is safe security wise to do so to get the coolest air of the day circulating throughout your property. That should reduce internal heat to whatever the lowest overnight temperature was.  Then when things start to rise... close all windows and doors and draw all curtains. And keep them that way if you can throughout the day. Inside should then stay much cooler than outside.  The mistake folks make here in UK is that the hotter it gets the more they open windows during the day 'to get a breeze'. Well that breeze is as hot as outside temperature so it quickly brings inside up to outside."  Languedoc temps are less trying before mid-morning, and here we don't have curtains, but the principles stand.  I would add, from my O level physics, that keeping cool can be aided bynot drying oneself too thoroughly after a shower - 'evaporation causes cooling'.  The fans we bought last week also help.

There is now a red heat warning across part of France.  We shall not be going to our French groups this Tuesday - some people still want to meet, but driving to places would be a problem, and driving back more so for us and others who are approaching their 80s.  Having airconn in a house is one thing, but going back to a roasting car quite another.

our language groups have shrunk a lot in the summer heat,
but Danielle stilll helps those who remain!

One sad background to our afternoons is the sound of Canadair planes flying over on the way to fires to dump bellyfuls of water.  It hppens every dry summer, but I'm guessing this year will be the worst yet.  Mary read of one fire started someone towingn a lighted barbecue which shed lethal sparks along the roadside.

The mayor of Lunel, Pierre Soujol,  has died.  Very sad news - he seems to have done a lot of good things for the town.  

Mary has just set off down the garden to feed the 2 larger tortoises.  Their appetite for lettuce is undiminished.

I am collecting examples of autocorrect misfires and silly mistypes:


our son and daughter-in-law have been in Brittany
but are unlikely to have encountered  such onion-sellers.

I've just read bad news about champagne production: "The conditions endured by grape pickers in the Champagne region of France have been put under the spotlight by a human-trafficking trial that began in Reims last week. Svetlana Goumina, the Kyrgyz owner of a recruitment agency, is accused of luring 57 West African migrants, most reportedly undocumented, to the region from Paris, on the promise of well-paid work." The latest in a catalogue of mistreatement of seasonal agricultural workers; as often, I refer back to fictional parallels such as the excellent book A Short History of Tractors in Ukrainian, by Marina Lewycka (strawberry pickers are the victims in this case).

A joke which I hope does not offend anyone: "A Texas farmer went on vacation to Australia. He met up with an Australian farmer who proudly showed off his wheat field.   "That's nothing" said the Texan. "Back home, we have wheat fields that are twice as large as this."   Next the Australian pointed out his cattle.  "They're nothing," said the Texan. "Back home, we have longhorns that are twice as big as your cows."  Just then, half a dozen kangaroos bounded across the road.  "What are those?" asked the Texan.
The Australian replied, "Don't you have grasshoppers in Texas?"

Our newly surfaced road - not sadly our own cul-de sac de la Bréchette, which is long-neglected


...and finally the annual delight of our artichoke coming into flower







More on cycling

By [email protected] (Jon North)

Following my previous short post on cycling, I've been thinking about  my own long association with bikes.  I learnt to ride before the age of 10 on the large lawn of a friend in Chesham.  Soon after I had my first crash, setting out confidently down the steep hill from our gate and failing to judge the turn into the road just opposite.  Collision with curb, probably a grazed knee but it did not stop me for long.  Soon after I was going for rides with my dad, one of the few things we did together; we both had sit-up-and-beg bikes with rod brakes.

In my teens both at home and at boarding school I had a jazzy yellow 'racing' bike with 5-speed dérailleur (we pronounced it di-raill-ear or something - I only more recently learnt the French signification).  My main memory of those days is of the several journeys I made to and from boarding school to home, from Saffron Walden (via Royston, Baldock and a stop for refreshment around Hitchin), around 60 miles (83 km in new money).  For several years in my teens  I went for Sunday afternoon bike rides around the Essex coutnryside - Thaxted, Audley End  and other local places.  But those rides between home and school were the longest I tried - it amazes me now that I could do this.  But I enjoyed my cycling days until only a few years ago when I fell off rather more than I liked, and sold my nice 10 speed touring bike to a local contact in Lunel.  I do still miss it, and am tempted to buy a 3-wheeler with some motor assistance - we'll see once complex analysis of knee arthritis has ground on a bit.  I had an x-ray in a hi-tech scanner tunnel, complete with an array of whirrs and growls, in a virtually deserted outpatients clinic yesterday - a far cry from the old simple x-rays I had for my first knee replacement about 10 years ago.

The Criterium du Dauphiné which we've just watched on French tv is soon to be rechristened the Tour Auvergne-Rhône-Alpes which, a friend points out, does not trip off the tongue but does more accurately describe the routes from central France south-east towards and up into the high Alps.  It is, in any case, a major event in the run-up to the Tour de France now only a fortnight or so away and, like the Tour, reliably shown on French tv.  There are three or four good reasons to watch these daily broadcasts - it helps to improve our French by listening to the high-speed rattling of commentators; it gives the best view of the main Tour contenders; and the views and scenery are magnificent.  As with other French tv, the use of aerial photography is something that you can't get at ground level, just as the following of a whole race using other vehicles gives a completely different perspective than you could get standing by the roadside.  But shoals of folllwing cars bring their own hazards on narrow roads.

The French love of cycling racingis largely if not exclusively linked to the participation of French riders who very rarely win whole races (the Criterium is over 8 days, the Tour covers 3 weeks), but who quite frequently win stages in the classics.  This summer sees the retirement of  one icon of French cycling, Romain Bardet as another young hopeful, Paul Seixas edges into the top ten.  Bardet had a guard of honour of upended  bikes on his final appearance in the Dauphiné.  We are always pleased and amused to see and hear Thomas Voeckler, a previous French legend, ex-yellow jersey in the Tour, now commentating from the back of an accompanying motorbike.

The dubious example of Lance Armstrong, bang to rights for taking drugs after many years dominating the Tour, is in everyone's minds.  (He is now being rehabilitated, in a way, by people who cite his help for others recovering from drug misuse.  I'm not sure about that).  Seeing Pogačar winning often raises questions in some minds despite all the efforts made these days to test for doping.  Interestingly there is relatively little suspicion expressed in the French press about him - I prefer to  go by the usual fair view 'innocent till proved guilty'.  But there is also the question of doping bikes - that is, hidden motor assistance in racing bikes.  In our everyday lives we have friends who use electrically assisted pedal bikes, but the motors to be any use have to be more bulky than would work or be invisible on a pared down racing bike.  In any case, among competitors to win at the highest level, surely everyone must be doing it if anyone is.

One thing that always strikes me is  the lack of protection cyclists have from injury - they are skinny beings, and can use virtually no  padding, only head protection, yet you often see them fall, get up with horrible looking scrapes and get back on to  try and lose as little time as possble.

More interesting is the question of how competition pans out in the top ehelons of the international cycling world.  When Pogačar and Vingegaard are in a stage race, few others stand much chance; when they are not involved Roglič (really from the previous  generation of Slovenian cyclists, and having taken up cycling after a skiing accident) comes to the fore, and in less prestigious races other cyclists emerge from the péloton  to win - and so  on all the way down the pecking order.



Anyway, now we look forward to the Tour soon.  It is coming by Montpellier but not, I think, very near us unlike the two years soon after we arrived when it passed by  the end of our road.  They will be going up Montmartre on the last day in Paris, a thing some riders think is risky but will certainly add variety to the sprint round the circuit of the Champs Elysées










Cycling in the summer sunshine

By [email protected] (Jon North)

A short post this week.  The cycling season is with us (for us two, strictly as tele-spectators) - there have already been major internationsl races, but the Criterium du Dauphiné is the first of the year in France where the major contenders for the Tour de France  all show up.  This week the weather is getting warmer, and it's dry, so the scenery is a real pleasure in the early summer sunshine.  Geographically the Dauphiné is the mountainous region around our old twin area, the Diois, but the race spreads its route a long way to the north.  By the fourth day as I write it has more or less reached Valence passing through the rolling countryside of central France.  Mid-week we'll have the time trial, and then three tough mountain stages to finish thte week

The first days have gone more or less as expected - Pogačar, Vingegaard and assorted Dutch and Belgian riders up the leader board, the right mix of French riders near the top to keep the local interest up, though never quite strong enough to get right up there.  Over the first three days the lead changed, but we'll see by the end of the week when the mountains take their toll.  Meanwhile the scenery is a joy to watch as always in televised cycle races.  It is a shame the riders do not see it, especially (they say) because racing has speeded up so there is no time to admire views.  The normal speed on the flat is faster than a town speed limit for motors.

Thhis past week has seen the start of resurfacing work on the D24 road past our little cul-de-sac.  Slow work made even more sluggish by the bank hoidays that litter the month of May.  But for all the anxiety it provokes for me, the reality is that scarcely  anything seems to be happening.  Pictures of the preparations and improvided parking follow.


Having started talking about cyclists like Pogačar I needed a č, but the special ALT+ 0269 code I tried did not work (it is simple on the iPad) so I had to cut and paste it from a website!  The petty trials of modern life!  

Living in one place, citizen of other

By [email protected] (Jon North)

The wonderful flowers of the ornamental grenadier (pomegranate) whose hedge blooms year on year 




Old news for most of you, when we moved to France we were citizens of the EU  Now, thanks to what most people now see was a political  mis-step, the UK is well and truly Brexited  The rather mealy-mouthed stance taken by the so-called Labour government led by Keir Starmer is to try and  creep back in without too many people noticing.  Politics in like that, compromising in plain sight, watering down principles on the way.  So capping and removing welfare benefits is dressed up as financial prudence and the poorest people struggle more while better-off people like us are cushioned at every turn.  


I have recently sent in our French tax return for 2024 (calendar years here which have to be jiggled into line with British April to March financial years, since we receive our pensions from the UK.  I am always nervous about this, but generally there's no need provided the formulae on my spreadsheet are entered correctly, but one by-product of the cross-checking I always do to be sure is that year by year the gap  between Mary's income and mine shrinks - the bulk of my pension comes from a fixed-sum pot, while Mary and I both have British OAPs which are triple-locked so go up by more than the rate of inflation.  It would take a long while for her income to approach mine, but it is getting nearer every year.


This year we have been more than usually anxious about money, because we rely on our Brtish bank accounts for everyday purchases, and every now and then there is a glitch when someone elsewhere in the world decides to steal money from us.  Luckily our banks are on the lookout for this and twice (once on a French account, another on a UK one) we have had to cancel cards and wait  for new ones to come.  Last time the swindlers actually got their hands on a lot of money, but the French bank refunded it quickly.  This week we received a letter asking us to phone the bank, and then had to go through the meticulous checks to get through to a real person.  This one was in India or similar, and of course you always have to remain calm despite the feeling of advancing panic.  But all's well that ends well.  We keep reminding ourselves that the people who work in the call centres have tough jobs,  are not to blame for the processes they have to operate and have little room for discretion.

I am writing having just been out successfully to buy fans which we hope will moderate the heat to come.  For the last several years we have been too late, none left in shops, but this year we found what we wanted.   Many others we know have air conditioned houses, but we have decided not to go  down that road - like swimming pools which many friends have, we realise that they are expensive and troublesome luxuries - now, with my legs being as they are, even geting out of a pool would be tricky and I have taken to having shower rather than even an occasional bath.

a nearly deserted town centre after a visit to the local museum 

Even more than the excesses of Trump, my mind has been occupied with the excesses of the Israeli government.  More than ever, I find it impossible to relate its obscene actions in any way to the presence or absence of antisemitism, and I know many Jewish friends feel the  same.   I think the world is anaesthetising itself to destroying human life, easier and easier as the technology makes the distance between atacker and attacked ever greater, and the chances of innocent loss of life likewise.

As we approached a beautiful sunny weekend I was stranded at home while M is equally left in the lurch, waiting for the breakdown after our car locked her out. We have had a succession of mishaps with the car (two punctures, then this) which makes us all too aware how dependent we are on the car.  It is only a question of waiting, but as we both suffer from age and infirmity  I am seriously thinking of a second vehicle.  This is very unecological but we could afford it.  In the end it turned out some tiny ball-bearings had got trapped in the ignition keyhole.

On top of that, the main road to our house is to be closed for resurfacing for the next fortnight.  There are ways round it,  and the whole hting has been well signalled, but with our luck the visitors we expect next week may have problems.

Two bits of cheer this weekend - Simon Yates did an amazing ride uphill on a gravel track to overtake the then leader of the Giro d'Italia and effectively winning the multi-stage race.  And today thanks to the BBC still available here we can hear one of our favourite pianists Angela Hewitt interviewed.  

poppy time here - usually en masse in fields, but this one outside our front gate!





Longer days

By [email protected] (Jon North)

A headline in the local paper (mid-May) says there is a shrinking number of readers of books in France - according to the survey organisation Ipsos 63% of French people read fewer than 5 books a year.  In this house we do our best to keep the numbers up, but although Mary is a loyal visitor to our local library my reading is almost all on electronic devices and I'm not sure how that is included in the statistics.  Whatever, we in this house read a lot - a silent house more often means we are reading than absent.  We are, as they say, big readers, I mainly in English, Mary now mainly in French.  I do admire this, but I would be too slow if I tried, always stoppping to look up  words.  But we read in French in a group twice a week, with native French support, and are currently working through a history of Algeria and a translation of Alan Bennett's The lady in the van, very different and both very enjoyable though the history of the French in Algeria is much less cheerful.

My diary, and from time to time this blog, have frequently focused on my leg pain - three overlapping phenomena, arthritis, sciatica and (oh dear) gout as well as general aches and pains that the French lump together as courbatures.  Gout is, of course,  a result of drinking alcohol.  Well, it is avoidable but I ask myself how being a wine-lover is compatible with avoiding it.  So, moderation in all things, but it shows on my frequent blood tests so my doctor is 'aware' - he often mentions the uric acid but seldom directly talks about drinking less.  However, I have been presecribed a kind of trolley I can walk with and rest on if necessary.  Unfortunately so far it is not much good for me - I prefer to continue with my stick.

  


This had long since ceased to surprise me, since French culture and wine are intimately bound up with wine my present doctor refers to the subject obliquely via the annual reports from the blood lab - our previous doctor, now retired, did not mention it at all, adhering probably to an old French culture in which drinking wine was more commonplace.  In the UK medics often talk about drinking too much.  Someone gave me a book (in French so I am  only slowly reading it) about alcohol at the time of the French Revolution, before which it was apparently only consumed by people of a certain (upper) class.  So not at all commonplace until the 19th century,  and now 200 years later, the press is full of reports of declining wine consumption.

My leg pain has intensified, and tests and treatments are on the horizon.  I have become a very slow walker although I can still manage, and luckily I can still drive so things will be easier once I can pick my way through the French bureaucracy to  get preferential parking.  Most of the treatment I use at present is in the shape of pills relieveing pain, but a treatment I use daily now which is non-chemical is TENS - the French use the English phrase, abbreviated from Transcutaneous Electrical Nerve Stimulation

We have just revisited a restaurant,  La Maison Soubeiran in Lunel, which is becoming one of our favourite places to eat - a small family business, friendly with beautiful  food.  The walls are decorated with photos of Jane Birkin and Serge Gainsbourg.



Although this post is mostly about current things, I'll add one other thing.  Since we visited Armenia a few year ago we have been interested in the country, so I picked this up  from the European Correspondent newsletter this month and thought it worth repeating:

How Armenia is becoming the region's only democracysort of (by Nerses Hovsepyan)
In 2018, Armenians pulled off something rare: a peaceful overthrow of a corrupt government. What started as street protests led by ordinary citizens grew into a movement that toppled Serzh Sargsyan's long-standing regime. Since then, the country has taken small but important steps toward democracy.  Elections aren't guaranteed to favour the ruling party, opposition leaders aren't silenced, and media outlets have more freedom than ever before. This might not seem remarkable to the average European, but in a region where autocratic rule has been the norm for decades, Armenia's gradual shift is a noteworthy exception. 
In Azerbaijan, elections are largely a formality, and Iran, well, is Iran. In Türkiye, the government regularly throws opposition politicians into prison, along with journalists and protesters. Meanwhile, Georgia, once the democratic leader of the region, has been sliding toward authoritarianism (which you already know if you've been reading us). To illustrate this: Georgia's press freedom ranking fell from 60th to 103rd since 2013, while Armenia's improved from 102nd to 50th in the same period.  Before 2018, Armenia appeared locked into an authoritarian trajectory similar to its neighbours, with Russia influencing every aspect of its economy and politics: Moscow controlled 95% of its foreign trade, all major infrastructure, and even its border security. 
The Velvet Revolution didn't just topple a corrupt government; it began unravelling this decades-old dependence. Today, while still formally allied with Russia through the CSTO, Armenia has frozen its participation in the bloc and is actively but carefully pursuing an EU membership application – a geopolitical reorientation unimaginable before 2018.  The largely peaceful 2018 Revolution began because Armenians were fed up with a corrupt regime that had hijacked Armenia's democratic promise while tightening Moscow's grip on the country. It was led by Nikol Pashinyan, who has been prime minister ever since, and was dubbed 'velvet' in reference to the nonviolent 1989 Czechoslovak Velvet Revolution. 
Seven years after the revolution's euphoric promise, Armenia's democracy remains a work in progress. Yes, Armenia has seen peaceful power transfers, and opposition parties can now operate more freely. But the country still faces serious challenges.  The judicial system is slow to reform and remains deeply mistrusted. Media outlets, while less restricted, are still influenced by political and business interests. LGBT+ rights remain a thorny issue – queer events are frequently canceled under threats, and hate crimes often go unpunished.  For Armenia's fragile democracy to survive and grow, it needs sustained support – financial, diplomatic, and, given its security challenges, military – especially from the European Union. With authoritarianism tightening its grip across the region, from Azerbaijan's iron-fisted rule to Georgia's democratic backsliding, the threat of Armenia slipping backwards is all too real.
Our one trip to Armenia and Georgia was several years ago now and a plan to revisit with friends was stymied by Covid.  Now Mary and I have more or less decided not to fly again (our friends still travel a lot: they like others we know here are originally from other parts of the world and so have diverse reasons for wanting, needing to fly).

All 3 tortoises are thriving after hibernation for the 2 older ones - the little one still lives indoors!


20 years in the south of France

By [email protected] (Jon North)



Not everyone knows exactlyu where we live in France, so here is a recap.  Next year we'll have been in Lunel for 20 years.  We have few regrets other than distance from family.  We are midway between 2 historic cities, Montpellier and Nîmes, on a rail link which can tansfer us rapidly onto the TGV line to Paris, and with 2 local airports less than 30 minutes away though we rarely fly now.  We are close to the A9 autoroute (the busiest motorway in France apparently) which takes you quickly t o Spain, Toulouse and Bordeaux as well as to the A7 north-south route up the Rhône valley.  Lunel is less than 10 km from the Med,, and not much further from those hills to the north, the inland Cevennes; but we often escape the heavier rain inland - the risk here is often too little rain rather than too much.


Another crop of lemons on the way

I started this post at the end of April in bright sunshine after a quick overnight shower - nevertheless I was able to mow the lawn first thing in the morning, and  (starting early) I have also been for my annual round of blood tests.  Like a lot of French healthcare these are precautionary - an underactive thyroid is the only known concern, but there are 15 tests on the prescription.  We find the blood testing service very efficient, and for those like me who wake early the lab opens at 6.30!  And by the end of the afternoon the results were with me by email - all well except the marginally high uric acid which I know is the result of liking alcoholic drinks, and causes twinges of gout.  The price of being a wine enthusiast!



tortoises sunning themselves this spring

Some lovely white flowers from the garden this Mayday, and of course the white flower sold everywhere in France today is the lily of the valley.  It has been a flower symbolising good luck in France since Charles IX in the 16th century, and has been officially recognised for the Fête du Travail since 1936.  It is pretty but deadly poisonous, and we have none in our garden.  The production of the flowers is a multi-million euro market apparently centrered around Bordeaux.



The yellow iris is called baroque prelude, one of Mary's favourites

mcmodernslopcore

Howdy, howdy, folks.

For many years (ten now, about which, more soon) McMansion Hell has featured many prominent and diverse atrocities from all over these great United States and sometimes beyond them. However, most of these posts have consisted of houses built during the McMansion Era proper – from the 80s up through around the early 2010s.

This is for a number of reasons. First of all: I like these houses because they are insane. Second of all, they are indeed quite different from one another – they represent the owner’s idiosyncratic if poorly rendered desires and fantasies. They are heavily psychologically loaded buildings. One family dreams endlessly of Tuscany, another wants to recreate the mall. All interiorize previously exterior forms of consumption.

These houses were also very expensive to build compared to their contemporary iterations: all real, solid wood cabinetry and trim, wrought iron railings, marble floors, elaborate murals - none of this is cheap. This is not to say that I’m nostalgic for the classical McMansion (though many are) only that it, like, most other facets of architectural and everyday life, have become progressively cheaper and more bland.

The McMansion never truly goes away. It merely changes shape over time. One of the shapes it currently takes is a particularly loathsome imitation of contemporary high architecture (specifically the kind of houses architects love to build for celebrities in California) executed in the most wretchedly parsimonious manner possible. It feels cheap to use the word ‘slop’ but their indiscriminate nature - the way they have no regard for why or how the things they imitate even work - allows it. Of all the building forms that could be generated with AI, this is the most likely. At any rate, behold:

Yes this is a real house. Yes you can buy it for $6 million in, yet again, Barrington, IL. It has 5 bedrooms and 5.5 bathrooms totaling 11,600 square feet. But most importantly, it looks like dogshit, and that’s with ten layers of Photoshop have been used to gussy it up which, by the way, also makes it appear entirely not of this world. Were it not for the photos of the empty interiors, I myself would have trouble trusting my own eyes. Part of the reason it looks so unreal is because the design itself is absurd, as though someone created four equally ugly vessels and threw them up one by one.

In 2017, in a now-deleted essay for Curbed (RIP - they destroyed the archive) I called these types of houses McModerns, simply because they were McMansions dressed up in modernist garb, which they wore no differently than they would Neo-Tudor or Mediterranean (broadly construed.) These houses don’t warrant a new neologism, but they do feel like a degraded or perhaps even gonzo version of even that old concept. Slop works fine too, especially because half of what’s in these images isn’t real.

Much fascinates me about these houses, however one of the most unique elements vis a vis the last 30 years of building is how overtly and almost hostilely masculine they are. Anything that can be construed as feminized - color, softness, ornament - has been ruthlessly purged. They also rip off tech industry minimalism which only ads to their bro-ey nature. While previous iterations of McModernism (think new builds in Colorado with fake wood exteriors) scream dads with IPAs, these houses scream Reddit to me. They are Elon Musk-adjacent in sentiment.

By the way, this is what that room looks like without the fake furniture. It’s basically a sunroom.

Whole Foods would like to call in a robbery.

Because these houses are designed by men, for men, no one involved has learned how a kitchen works. Many are calling this setup the “grindset tiktok video kitchen.” This is the kitchen you see in those day in the life of an AI startup founder videos your algorithm forces you to watch against your will.

Virtual staging is actual literal slop. In fact, one can say that it was an early harbinger of the ontological crisis we now face, one of the first instances where one is forced against one’s will to question reality, what one sees with one’s own eyes. Beyond that, I think virtual staging is literally a form of lying. You can use it to make a space look bigger or smaller than it is. In this – lying to impress – it also has a lot in common with AI. This dining room has nothing to do with the world I’m living in. These chairs are not my problem.

It’s actually AMAZING how much of what’s in this house, beyond the furniture, is fake. Every single material is fake. The stone is aluminum paneling. The plants are plastic. The concrete is printed on some kind of surface (as evidenced through its repetitive pattern), though it’s hard to say from just pictures. I don’t even trust the floors!!

Ok if you haven’t read Kelly Pendergrast’s amazing essay “Merchandizing the Void” about how houses are all like stores now, HERE IS THE LINK. Some ideas never die, they just evolve, king. Like you.

Please, I’m very cold.

Unfortunately there are no pictures of the rear exterior of this house, so this is where we will have to conclude for today. That being said, these houses and their antecedents are developing a design language all their own that will, in time, be as culturally rich to us as the houses of yore. The problem is they are less visually interesting. They are houses made to scroll in and scroll right by. Expect to see more of them here, but only if they have something, anything to say.

If you like this post and want more like it, support McMansion Hell on Patreon for as little as $1/month for access to great bonus content including a discord server, extra posts, and livestreams. (Don’t worry! This doesn’t adjust for inflation! Now’s the perfect time to join!) By the way: new subscribers can buy a year of McMansion Hell for just $12!

Not into recurring payments? Try the tip jar! (I would seriously appreciate any and all tips because I am in the process of moving house!)

mctuscan heaven

Howdy folks,

I have some good news, which is that, after seven months, I’ve finally recovered from Long Covid. This is not something I particularly want to talk about in depth but it was the worst thing that ever happened to me! Anyway, sorry for the long period without posting that much, but I hope this amazing house (both laudatory/derogatory, that’s dialectics, baby) will make up for the three months I went AWOL.

BEHOLD:

Not to be over-exuberant, but I genuinely think this is the best McMansion exterior of all time. That includes all the messed up castles, the Mediterranean-style cult complexes, the Staten Island weirdness. Nothing, to me, epitomizes just how uniquely wacky these houses can be. The oversized broken pediment with the fat fake corinthian columns, the lawyer foyer transom window, the ultra-nub, the 45-degree angle, it is all there and it is all hellish, and none of it will ever happen ever again. Anyway this house is $2.5 million dollars and 10,000 square feet. Someone should buy it and give house tours to young people for whom this way of live will soon be unimaginable.

There is nothing so bold to me as the idea of a canted lawyer foyer flanked by two equally huge windows. The fact that the house is more populated by vases than people…something something a vessel for wealth, ah!

Someone on TikTok is going to find this house and set all the pictures to that terrible vaporwave nostalgia song. “tuscan kitchen [black heart emoji]” (as is their right, just like blogging is my right)

If you were a rich person muralist, please get in touch with me ([email protected]) I want to hear YOUR stories!!!!

I mean, if I had a giant mysterious wardrobe I, too, would be fernmaxxing (I am 32 years old and will not be talking like this. I am getting generationmogged and have to draw the line somewhere.)

If someone says to you “we should go to Venice in May” ABORT ABORT ABORT. you WILL pay 15 euros for gin and tonic. you WILL get pickpocketed or puked on by British people. you WILL be eaten by mosquitoes. Go in November when no one’s around and you can have a good cry about how everything dies, sinks into the ocean, one might say, and how futile it is to try keeping it alive on horrible wooden stilts. The gondolier will tell you wistfully about how the dolphins returned to the lagoons during the pandemic lockdown. Then he will look at you because their leaving again is your fault.

I hate putting the word “cuck” in this blog. Ten years ago, that would warrant an angry parent email. Now children say cuck to each other in elementary school because they learned it from a Charlie Kirk assassination fancam.

This is kind of like one of those 19th century galleries but for 400,000aires who mostly think of art as a piece of furniture.

I used to not believe in the mobbed up pizza place (no one likes an ethnic stereotype) but there was one I went to in Coastal New Jersey that was unmistakably mobbed up. Guys coming in and out of the back in suits, cash only, no GrubHub, no delivery. It wasn’t called Vito’s though. That would be stupid of me to disclose.

It’s so funny that for a month we collectively pretended that every man alive cared about the roman empire. Just the kind of cute thing we used to do online before cultural microphenomena became primarily driven by incel forums.

That’s right, folks, McMansion Hell is TEN YEARS OLD this year, and there WILL be a party in Chicago in July. (More details later.) Anyway, heinous back facade. What were they thinking.

If you like this post and want more like it, support McMansion Hell on Patreon for as little as $1/month for access to great bonus content including a discord server, extra posts, and livestreams. (Don’t worry! This doesn’t adjust for inflation! Now’s the perfect time to join!) By the way: new subscribers can buy a year of McMansion Hell for just $12!

Not into recurring payments? Try the tip jar! (I would seriously appreciate any and all tips because I am now, like, $3000 in medical debt from having Long Covid, a disease doctors and insurance companies famously believe in and cover. If you are the woman who hacked up a lung next to me on my flight to New Mexico, not even an N95 could beat your germs and I feel entitled to financial compensation.)

Anyway! See you next month!

for patreon i wrote about getting stranded in tomorrowland as an 8th grader, michael sorkin’s…

for patreon i wrote about getting stranded in tomorrowland as an 8th grader, michael sorkin’s classic essay “see you in disneyland” and the legacy of 1990s disneyfied architecture and urbanism today

chud atlantis

Hello everyone, sorry to go so long without posting something. I caught covid in August and it’s taken me months to start feeling relatively back to normal. I am still struggling with fatigue and some neurological problems, so thank you for your patience!

It is rare that the McMansion ever approaches the mythical, though it is, of coursed, steeped in its own mythology – of bootstrapism, castle doctrine and, importantly, a total commitment to individualism. No one bereft of a sense of personal mythos would build some of the houses I’ve posted about on this site throughout the years.

However, rarely do those houses sincerely believe their own myths, express them so utterly. Often, there’s a bit of cheek involved in all those Corinthian columns, even among the knockoff Rolex set. Whenever one does swallow the (blue) kool aid, well, it’s very important to me. And so, from the forgotten underwater past of the greater Houston suburbs, I bring you: Chud Atlantis

(it is always more fun to quote the front bit of that Shelley poem, because the second bit has been misappropriated by Reddit.)

Atlantic in size (8 bedrooms, 9 baths, 10,000+ square feet), and in price ($2.8 million), Chud Atlantis is proof that, for better or for worse, we used to build things in this country. (Just kidding, this house was built, astonishingly enough, in 2023.) Its existence is baffling to me not only because it is anachronistic (it belongs in the Bad 70s) but because it is Texan. This house is, in the fullest sense of the word, a transplant. Orlando is that way.

(Shall we enter, then, the eye-watery depths?)

It’s important that you understand that the most significant thing about this house is that it is blue. In an age of gray supremacy, it is nice to know that tacky can still come in more unconventional shades. No one prior to this has ever looked at a piece of dyed marble and thought: I need to make this my entire personality. Not even in the 80s!

Like many McMansion owners, these do not know how to decorate. One can only presume that the furniture involved is so heavy that staging also wasn’t an option. This makes the house a historical document because from this point onward such rooms will henceforth be yassified with AI.

this kitchen begs for a concept food. it begs for ‘gold leaf hamburger.’

I’m not entirely convinced that the Rococo period was ugly, but its imitators commit crimes unerringly and without fail. Furniture like this sits in a room like a big glob of meat. Instead of saying 'i’m rich’ what it actually communicates is: 'i’m heavy.’

I don’t know how you can make so much money and yet have everything you do look like the bootleg Chanel rugs they sell outside of the subway. Like, can’t you buy the real thing, dawg?

This may also be the first house whose broad aesthetic is executed by way of direct to consumer printing. The FedExification of art. Or something like that. After all, the internet loves a neologism more than it loves its elaboration.

“What should we put here to fill out this room” all-time bad answer.

Anyway, without further ado, the back:

The suburban mind yearns for the miniature golf course. The suburban mind yearns for water while it all dries up.

If you like this post and want more like it, support McMansion Hell on Patreon for as little as $1/month for access to great bonus content including a discord server, extra posts, and livestreams. (Don’t worry! This doesn’t adjust for inflation! Now’s the perfect time to join!) By the way: new subscribers can buy a year of McMansion Hell for just $12!

Not into recurring payments? Try the tip jar! McMansion Hell stocks, much like mortgage-backed securities only ever go up! For non-architecture stuff I also have a substack where I write about things like the ring cycle and going to the eye doctor.

For Patreon, I wrote about developer slop flooring, the history of walking on plastic, and what fake…

For Patreon, I wrote about developer slop flooring, the history of walking on plastic, and what fake floors say about the world we live and build in.

glam metal modern but also your contractor is going to jail dawg

Sometimes a house is so ugly, disgust boomerangs back into a form of respect.

This is a rare phenomenon, one which should be treated seriously. I’ve been looking at ugly houses professionally for almost a decade now and I can say with confidence that there are only a handful of true goose eggs that meet the mark. This house – this remarkable, revolting house – located, of all places, in Randolph County, North Carolina, is perhaps the finest goose egg a rogue and most certainly confused contractor could possibly lay.

Yeehaw, man. For the curious, the house is on the market for over 500 grand despite being badly sited and measly 2600 square feet. Most of that is devoted to the lawyer foyer which is not the choice I would personally make, but hey, to each their own.

Most of the houses on McMansion Hell these days are submissions from members of the McMansion Hell Patreon, either in our discord server or on our livestreams. This one, however was a total fluke. I came across it by accident because my brother is looking to move to the area in order to be closer to my folks. (I doubt he’d be interested in something this, uh, unique.)

Now, in all these years, I’ve never devoted an entire post to the exterior of a house. As they say, there’s a first time for everything. There is so much going on with this house, all of it in direct opposition to the concept of taste, it requires a deeper investigation than the initial exterior image usually allows. (Also the entire interior is, as one might expect, entirely dark gray, complete with that awful washed out laminate flooring.)

(here is a sneak peek inside. the rest is not really important nor interesting.)

Anyway, without further ado, let’s hit it from the top.

First off, no, I don’t know what is inside this house’s giant, hammerhead-esque forehead. It’s not supported by anything so my assumption is, well, nothing. They put this in there for the sheer aesthetic love of the game.

Second, we have to talk about the siding. It’s vinyl, and $500 grand is firmly in Hardie®™© Board territory. You can already start to see it ripple against the cornice, which is probably fine. The cornices are painted black in a cartoony, Roy Lichtenstein fashion, that is, if Roy Lichtenstein was drunk. The can lights are a nice touch. They help highlight important parts of the facade, such as:

The vinyl siding and black trim will continue until morale improves. Also, I zoomed out here to include the forehead (fivehead?) just because the scale is INSANE – that’s like a 50-50 wall-to-fivehead ratio. Honestly, even though things in the world are pretty dire, I wouldn’t trust that cantilever with my life.

The window layout on this thing makes me wonder if the people who put it together have eyes that can see and a brain that connects to them. Now, I’m not going to invoke the Greek orders or anything, but I am going to say that every single architectural rule is being brazenly broken here. Total impunity. The window and door don’t line up at the top, which is the bare minimum of common decency. Then there’s that little guy pulling a Leeroy Jenkins up in the corner. You go dude.

The trim on these masses is starting to look AI generated but it’s probably just the HDR every realtor uses. The FaceTune of the field. Anyway, I think it’s a bad idea to put what looks like builder grade wood flooring on the outside of a house. It’s giving mold. It’s giving sunbleaching. It’s giving Etsy.

As we can see, another familiar McMansion Hell enemy has also made an appearance: the prairie mullion window. There is no reason to use this window unless it involves building a fake bungalow, but the worst possible place to use it is in this particular situation. It’s the only window with white mullions, it looks weird with the siding, and it’s not exactly “”“modern”“” or whatever this house is supposed to be.

(Often I wonder if some people believe that modernism is just “doing some stuff with squares” and the more squares there are the more modernist it is. Probably not true, but then again, I’m not the one pulling massive profit on houses that look like doo doo so jokes on me.)

Zooming out again because context still matters even in the most nonsensical situations. The funny thing about this house is that the only normal part of it is the front door and even then… what?? Also, look at that siding-less patch of brick on the right. As though to say: haha! Finally, I love how the stairs lead down into a bunch of rocks. Serves you right!

Thanks to advanced screenshotting technology, we can see that there are also prairie mullions on these other windows, it’s just that they’re a more reasonable black. Don’t worry though, the windows are still offensive. They’re two windows stuck together in order to give the impression of a single continuous one. (Remember the inside shot?) Nice try, bucko. Second, why don’t the two windows meet where that little band of siding is? Well, we all know the answer to this question. (We don’t, in fact, know the answer to this question.)

This is my favorite part of the house. It’s almost good, to me, which is why I saved it for last. I have no idea what the hell that glossy composition book siding is but I love it. I’ve never seen it before. I also like how they’re doing a weird entablature-quoin combo thing with it, but only on the right side of the house. There’s some great five-cornice action going on but, thanks to the precedents set by truly mid postmodernism, it works.

Unfortunately there are some downsides here. What’s the deal with that tiny, skinny stone? brick? veneer? Second, why is the siding just hanging off the edge like that? That whole little section where the three (four?) cladding meet is precipitous. The cheapo off-white developer special garage door with the little trad elements is a nice gesture, one that tells you life has no meaning. Why bother?

Anyway, after all that, if we put it all together again, we get this:

If you like this (unusual) post and want more like it, support McMansion Hell on Patreon for as little as $1/month for access to great bonus content including a discord server, extra posts, and livestreams. (Don’t worry! This doesn’t adjust for inflation! Now’s the perfect time to join!) By the way: new subscribers can buy a year of McMansion Hell for just $12!

Not into recurring payments? Try the tip jar! McMansion Hell stocks, much like mortgage-backed securities only ever go up!

FYI, this post is now available for all to read!

mcmansionhell:

Bonus Post: The McMansionization of the White House, or: Regional Car Dealership Rococo, a treatise

FYI, this post is now available for all to read!

McMansion Hell urges all New Yorkers to Rank Zohran Mamdani #1 for Mayor of NYC

I know I am just a blog about ugly houses but I want to say something important here: the ruling class in this country does not want you to have affordable housing. They don’t want you to have clean, reliable public transportation. They don’t want you to have access to groceries you can afford. If something bad happens to you, they don’t care if you live or die. If you lose your home, they will hole up in their penthouses, McMansions, and mommy-bought apartments and tell you it’s your fault – but it’s not. It is theirs. Everything from budget cuts to rent hikes, is their fault, their way of ensuring that the city becomes a place made up solely of people like themselves.

Zohran Mamdani is the only high profile candidate I’ve seen in my narrow, millennial lifetime running for any position – least of all the mayor of the biggest city in the country – on a platform of decommodification in terms of access to food, housing and transportation. City-run grocery stores would ensure that food stays affordable because there is no profit motive. While some are critical of his policy of fare-free transportation (as opposed to spending the same amount of money improving services), given the amount of policing involved in watching the fareboxes, it’s something I’m coming more and more around to.

In demanding a rent freeze, Zohran is one of the only politicians able to articulate a direct plan for keeping people in their homes at a time when rent is skyrocketing with no end in sight. Zohran is one of a limited few in this miserable, cowardly country who are willing to speak out for the rights of Palestinians being murdered en masse by Israel. A vote for Zohran is a vote for the idea that better things are possible and, if you ask me, I think we live in such dire times that we’ve begun to forget this fundamental truth: things do not have to be like this. We do not have to live under the jackboot of privatization and exploitation forever. That choice, however, is up to us.

I am forever skeptical of the power of the ballot box to enact lasting change, especially in recent years. In fact, I am the most skeptical of electoralism I have ever been. However, why is it that the right can use what little sovereignty and enfranchisement is available to us to enact sweeping, if devastating changes, and yet, when the opportunity presents itself to the left, all we hear is that such things are no better than pissing in the wind? The answer to this question, of course, is that the ruling class is perfectly content with a party that hinders rather than ushers in change. Zohran may be using the sclerotic party system we’ve been doomed to inhabit, but despite these limitations his candidacy has surged immensely in the last few months, and the momentum of the people is on his side. This may be one of the last chances wherein one can attempt a truly progressive campaign like this.

Now that things are heating up, the ruling class, the backers of Andrew Cuomo, an abuser of women and a man responsible for the untold deaths of the elderly because he valued profits over their lives so early on in the pandemic, will stop at nothing to make sure that Zohran Mamdani does not win, that things stay the same. That the rent goes up, that the grocery prices continue to explode, that New York City becomes the playground of the rich and famous at the expense of everyone else. The party will try to intervene in undemocratic ways just like they did with Bernie Sanders in the 2020 primary. There will be untold lies and accusations, the press will abandon what few journalistic obligations they still abide by, and it will get ugly. There are even rumors that Cuomo will run as an independent even if he loses the primary, which, to be honest, isn’t a bad tactic – he’s just the worst guy to be using it.

I realize this post may be annoying to some (hell, I myself live in Chicago), and I’m sure there’s some rightful criticism for my not having used my blog like this before. (However, for those of you who don’t know, I usually write about all manner of politics in my column at The Nation!) That being said, if you follow me and you live in New York City, rank Zohran #1 and Brad Lander #2. DO NOT RANK SUBURBANITE BIKE LANE-PARKER ANDREW CUOMO.

Anyway, that’s all. I’ll be back with a new McMansion Hell this Friday, so stay tuned.

Bonus Post: The McMansionization of the White House, or: Regional Car Dealership Rococo, a treatise

simulacra for bootlickers

FYI, this post is a little more NSFW than usual with the language.

Usually I think McMansions are kind of funny. Sometimes, I even like them. If I didn’t like them at least a little bit, I don’t think I’d be running this blog for a solid eight years and counting. Some McMansions are so strange and so fascinating in their architectural languages (it’s never just one language) that they test the boundaries of what residential architecture can do on an individual and often ad hoc level. Others so cogently and often whimsically express various cultural fascinations and deeply entrenched American ideas of what prosperity looks like (read: neuroticisms), that, as a sociological text they remain unrivaled.

But some (many!) McMansions are, to put it bluntly, evil. And it is these McMansions that reveal the ugly truth beneath the ugly architecture: that the McMansion is a manifestation of power and wealth meant to communicate that power and wealth to others as explicitly as possible, and that it does so in a country besieged by brutal and inescapable income inequality. In our present political moment characterized by extreme and deliberate cruelty, fear, and baleful destruction of all that is pro-social in nature (and nature itself), I figured it was my duty to show my readers a house that embodies these sentiments, one we can all use to assuage some of our perceived powerlessness by way of mocking the shit out of it.

There are a lot of fake White Houses in the US. Most of them can be found in or around the area of McLean, Virginia, the ground zero of DC blob sickos whose job it is to mete out the ratio of lethality and economy for weapons manufacturers. This one, however, is in Indiana, outside of Evansville. It was built at the apex of theme park mindset in architecture (1997) and is on the market for $4.9 million dollars. However, don’t be fooled by this opening exterior shot. It takes literal drone footage to show how unhinged this house actually is. In reality, the White House facade is akin to the light dangling from an anglerfish, luring the unsuspecting victim in…

Completely NORMAL amount of money at play here!

There are some images historians (if there are any left) will look back upon and say, such a phenomenon truly would not be possible without an abundance of cheap oil and derivative products. Fortunately, in the immanent post-neoliberal chobani yogurt solarpunk utopia, this house will be converted into a half ruin garden (though this will take some time with all the plastic) half public spa complex. A better world is possible, but only if we imagine it.

Pro tip: there’s a way of saying “wow it’s so big” that can land as the most devastating insult in the rhetorical lexicon.

I’ll be real, the armchair thing is a new one for me, too.

(Rise and grindset voice): Inside you are two lions. Both of them are hungry for prosperity and success. Let’s get this bread, king.

Not to do gender here, but compared to the rest of the house, this is a “my wife got her way” room if there ever was one.

Fixer Upper was basically 9/11 for “architectural foam trappings” and “color.” Look what they took from you…

Honestly, what a great juxtaposition. This is what that book The Machine in the Garden was all about. (No it’s not.)

Half of this post tbh:

Well, that’s it for this extremely upbeat and positive McMansion Hell post in this extremely positive and upbeat time we are living in. Join us soon for the concluding part 2 of the Neuschwanstein Castle series, especially if you like beautiful, psychosexually crippled swan boys (real and fictional) and kitsch theory.

If you like this post and want more like it, support McMansion Hell on Patreon for as little as $1/month for access to great bonus content including a discord server, extra posts, and livestreams. (Don’t worry! This doesn’t adjust for inflation! Now’s the perfect time to join!)

Not into recurring payments? Try the tip jar! McMansion Hell stocks, much like mortgage-backed securities only ever go up!!

About my last few months.

About my last few months.

on neuschwanstein castle (part 1)

This is an essay in two parts.

Neuschwanstein Concept Drawing by the stage designer (!!) Christian Jank (1869).

There exist in architecture clear precedents to the McMansion that have nothing to do with suburban real estate. This is because “McMansionry” (let’s say) has many transferable properties. Among them can be included: 1) a diabolical amount of wealth that must be communicated architecturally in the most frivolous way possible, 2) a penchant for historical LARPing primarily informed by media (e.g. the American “Tuscan kitchen”) and 3) the execution of historical styles using contemporary building materials resulting in an aesthetic affect that can be described as uncanny or cheap-looking. By these metrics, we can absolutely call Neuschwanstein Castle, built by the architect Eduard Riedel for King Ludwig II of Bavaria, a McMansion.

Constructed from 1869 through 1886 – the year of Ludwig’s alleged suicide after having been ousted and declared insane – the castle cost the coffers of the Bavarian state and Ludwig himself no fewer than 6.2 million German gold marks. (That’s an estimated 47 million euros today.) The castle’s story is rife with well-known scandal. I’m sure any passing Swan Enthusiast is already familiar with Ludwig’s financial capriciousness, his called-off marriage and repressed homosexuality, his parasocial obsession with Richard Wagner, his complete and total inability to run his country, and his alleged “madness,” as they used to call it. All of these combine to make Neuschwanstein inescapable from the man who commissioned it – and the artist who inspired it. Say what you like about Ludwig and his building projects, but he is definitely remembered because of them, which is what most monarchs want. Be careful what you wish for.

Neuschwanstein gatehouse.

How should one describe Neuschwanstein architecturally? You’d need an additional blog. Its interiors alone (the subject of the next essay) range from Neo-Baroque to Neo-Byzantine to Neo-Gothic. There are many terms that can loosely define the palace’s overall style: eclecticism, medieval revivalism, historicism, chateauesque, sclerotic monarchycore, etc. However, the the most specific would be what was called “castle Romanticism” (Burgenromantik). The Germans are nothing if not literal. Whatever word you want to use, Neuschwanstein is such a Sistine Chapel of pure sentimentality and sugary kitsch that theme park architecture – most famously, Disney’s Cinderella’s castle itself – owes many of its medieval iterations to the palace’s towering silhouette.

There is some truth to the term Burgenromantik. Neuschwanstein’s exterior is a completely fabricated 19th century storybook fantasy of the Middle Ages whose precedents lie more truthfully in art for the stage. As a castle without fortification and a palace with no space for governance, Neuschwanstein’s own program is indecisive about what it should be, which makes it a pretty good reflection of Ludwig II himself. To me, however, it is the last gasp of a monarchy whose power will be totally extinguished by that same industrial modernity responsible for the materials and techniques of Neuschwanstein’s own, ironic construction.

In order to understand Neuschwanstein, however, we must go into two subjects that are equally a great time for me: 19th century medievalism - the subject of this essay - and the opera Lohengrin by Richard Wagner, the subject of the next. (1)

Part I: Medievalisms Progressive and Reactionary

The Middle Ages were inescapable in 19th century Europe. Design, music, visual art, theater, literature, and yes, architecture were all besotted with the stuff of knights and castles, old sagas, and courtly literature. From arch-conservative nationalism to pro-labor socialism, medievalism’s popularity spanned the entire political spectrum. This is because it owes its existence to a number of developments that affected the whole of society.

In Ludwig’s time, the world was changing in profound, almost inconceivable ways. The first and second industrial revolutions with their socioeconomic upheavals and new technologies of transport, manufacturing, and mass communication, all completely unmade and remade how people lived and worked. This was as true of the average person as it was of the princes and nobles who were beginning to be undermined by something called “the petit bourgeoisie.”

Sustenance farming dwindled and wage labor eclipsed all other forms of working. Millions of people no longer able to make a living on piecemeal and agricultural work flocked to the cities and into the great Molochs of factories, mills, stockyards, and mines. Families and other kinship bonds were eroded or severed by the acceleration of capitalist production, large wars, and new means of transportation, especially the railroad. People became not only alienated from each other and from their labor in the classical Marxist sense but also from the results of that labor, too. No longer were chairs made by craftsmen or clothes by the single tailor – unless you could afford the bespoke. Everything from shirtwaists to wrought iron lamps was increasingly mass produced - under wretched conditions, too. Things – including buildings – that were once built to last a lifetime became cheap, disposable, and subject to the whimsy of fashion, sold via this new thing called “the catalog.”

William Morris’ painting Le Belle Iseult (1868).

Unsurprisingly, this new way of living and working caused not a little discontent. This was the climate in which Karl Marx wrote Capital and Charles Dickens wrote A Christmas Carol. More specific to our interests, however, is a different dissenter and one of the most interesting practitioners of medievalism, the English polymath William Morris.

A lover of Arthurian legend and an admirer of the architect and design reformer John Ruskin, Morris was first trained in the office of architect G. E. Street, himself a die-hard Gothic Revivalist. From the very beginning, the Middle Ages can be found everywhere in Morris’ work, from the rough-hewn qualities of the furniture he helped design to the floral elements and compositions of the art nouveau textiles and graphics he’s most famous for – which, it should be said, are reminiscent of 15th century English tapestries. In addition to his design endeavors, Morris was also a gifted writer and poet. His was a profound love for medieval literature, especially Norse sagas from Iceland. Some of these he even translated including the Volsunga Saga – also a preoccupation of Wagner’s. Few among us earn the title of polymath, but Morris’ claim to it is undeniable. Aside from music, there really wasn’t any area of creative life he didn’t touch.

However, Morris’ predilection for the medieval was not just a personal and aesthetic fascination. It was also an expression of his political rejection of the capitalist mode of production. As one of the founders of the English Arts & Crafts Movement, Morris called for a rejection of piecemeal machine labor, a return to handicraft, and overall to things made well and made with dignity. While this was and remains a largely middle class argument, one that usually leads down the road of ethical consumption, Morris was right that capitalism’s failing of design and architecture did not just lie with the depreciated quality of goods, but the depreciated quality of life. His was the utopian call to respect both the object and the laborer who produced it. To quote from his 1888 essay called “The Revival of Architecture,” Morris dreamed of a society that “will produce to live and not live to produce, as we do.” Indeed, in our current era of AI Slop, there remains much to like about the Factory Slop-era call to take back time from the foreman’s clock and once more make labor an act of enjoyable and unalienated creativity. Only now it’s about things like writing an essay.

I bother to describe Morris at length here for a number of reasons. The first is to reiterate that medievalism’s popularity was largely a response to socioeconomic changes. Additionally, since traditionalism - in Ludwig’s time and in ours - still gets weaponized by right-wing losers, it’s worth pointing out that not all practitioners of medievalism were politically reactionary in nature. However – and I will return to this later – medievalism, reactionary or not, remains inescapably nostalgic. Morris is no exception. While a total rejection of mass produced goods may seem quixotic to us now, when Morris was working, the era before mass industrialization remained at the fringes of living memory. Hence the nostalgia is perhaps to be expected. Unfortunately for him and for us, the only way out of capitalism is through it.

To return again to the big picture: whether one liked it or not, the old feudal world was done. Only its necrotic leftovers, namely a hereditary nobility whose power would run out of road in WWI, remained. For Ludwig purposes, it was a fraught political time in Bavaria as well. Bavaria, weird duck that it was, remained relatively autonomous within the new German Reich. Despite the title of king, Ludwig, much to his chagrin - hence the pathetic Middle Ages fantasizing - did not rule absolutely. His was a constitutional monarchy, and an embattled one at that. During the building of Neuschwanstein, the king found himself wedged between the Franco-Prussian War and the political coup masterminded by Otto von Bismarck that would put Europe on the fast track to a global conflict many saw as the atavistic culmination of all that already violent modernity. No wonder he wanted to hide with his Schwans up in the hills of Schwangau.

The very notion of a unified German Reich (or an independent Kingdom of Bavaria) was itself indicative of another development. Regardless if one was liberal or conservative, a king, an artist or a shoe peddler, the 19th century was plagued by the rise of modern nationalism. Bolstered by new ideas in “medical” “science,” this was also a racialized nationalism. A lot of emotional, political, and artistic investment was put into the idea that there existed a fundamentally German volk, a German soil, a German soul. This, however, was a universalizing statement in need of a citation, with lots of political power on the line. Hence, in order to add historical credence to these new conceptions of one’s heritage, people turned to the old sources.

Within the hallowed halls of Europe’s universities, newly minted historians and philologists scoured medieval texts for traces of a people united by a common geography and ethnicity as well as the foundations for a historically continuous state. We now know that this is a problematic and incorrect way of looking at the medieval world, a world that was so very different from our own. A great deal of subsequent medieval scholarship still devotes itself to correcting for these errors. But back then, such scholarly ethics were not to be found and people did what they liked with the sources. A lot of assumptions were made in order to make whatever point one wanted, often about one’s superiority over another. Hell, anyone who’s been on Trad Guy Deus Vult Twitter knows that a lot of assumptions are still made, and for the same purposes.(2)

Meanwhile, outside of the academy, mass print media meant more people were exposed to medieval content than ever before. Translations of chivalric romances such as Wolfgang von Eschenbach’s Parzival and sagas like the Poetic Edda inspired a century’s worth of artists to incorporate these characters and themes into their work. This work was often but of course not always nationalistic in character. Such adaptations for political purposes could get very granular in nature. We all like to point to the greats like William Morris or Richard Wagner (who was really a master of a larger syncretism.) But there were many lesser attempts made by weaker artists that today have an unfortunate bootlicking je nais se quoi to them.

I love a minor tangent related to my interests, so here’s one: a good example of this nationalist granularity comes from Franz Grillparzer’s 1823 pro-Hapsburg play König Ottokars Glück und Ende, which took for its source a deep cut 14th century manuscript called the Styrian Rhyming Chronicle, written by Ottokar Aus Der Gaul. The play concerns the political intrigue around King Ottokar II of Bohemia and his subsequent 1278 defeat at the hands of Grillparzer’s very swagged out Rudolf of Habsburg. Present are some truly fascinating but extremely obscure characters from 13th Holy Roman Empire lore including a long-time personal obsession of mine, the Styrian ministerial and three-time traitor of the Great Interregnum, Frederick V of Pettau. But I’m getting off-topic here. Let’s get back to the castle.

The Throne Room at Neuschwanstein

For architecture, perhaps the most important development in spreading medievalism was this new institution called the “big public museum.” Through a professionalizing field of archaeology and the sickness that was colonialist expansion, bits and bobs of buildings were stolen from places like North Africa, Egypt, the Middle East, and Byzantium, all of which had an enormous impact on latter 19th century architecture. (They were also picked up by early 20th century American architects from H. H. Richardson to Louis Sullivan.) These orientalized fragments were further disseminated through new books, monographs, and later photography.

Meanwhile, developments in fabrication (standardized building materials), construction (namely iron, then steel) and mass production sped things up and reduced costs considerably. Soon, castles and churches in the image of those that once took decades if not a century to build were erected on countless hillsides or in little town squares across the continent. These changes in the material production of architecture are key for understanding “why Neuschwanstein castle looks so weird.”


Part of what gives medieval architecture its character is the sheer embodiment of labor embedded in all those heavy stones, stones that were chiseled, hauled, and set by hand. The Gothic cathedral was a precarious endeavor whose appearance of lightness was not earned easily, which is why, when writing about their sublimity, Edmund Burke invoked not only the play of light and shadow, but the sheer slowness and human toil involved.

This is, of course, not true of our present estate. Neuschwanstein not only eschews the role of a castle as a “fortress to be used in war” (an inherently stereotomic program) but was erected using contemporary materials and techniques that are simply not imbued with the same age or gravitas. Built via a typical brick construction but clad in more impressive sandstone, it’s all far too clean. Neuschwanstein’s proportions seem not only chaotic - towers and windows are strewn about seemingly on a whim - they are also totally irreconcilable with the castle’s alleged typology, in part because we know what a genuine medieval castle looks like.

Ludwig’s palace was a technological marvel of the industrial revolution. Not only did Neuschwanstein have indoor plumbing and central heat, it also used the largest glass windows then in manufacture. It’s not even an Iron Age building. The throne room, seen earlier in this post, required the use of structural steel. None of this is to say that 19th century construction labor was easy. It wasn’t and many people still died, including 30 at Neuschwanstein. It was, however, simply different in character than medieval labor. For all the waxing poetic about handiwork, I’m sure medieval stonemasons would have loved the use of a steam crane.

It’s true that architectural eclecticism (the use of many styles at once) has a knack for undermining the presumed authenticity or fidelity of each style employed. But this somewhat misunderstands the crime. The thing about Neuschwanstein is that its goal was not to be historically authentic at all. Its target realm was that of fantasy. Not only that, a fantasy informed primarily by a contemporary media source. In this, it could be said to be more architecturally successful.

The fantasy of medievalism is very different than the truth of the Middle Ages. As I hinted at before, more than anything else, medievalism was an inherently nostalgic movement, and not only because it was a bedrock of so much children’s literature. People loved it because it promised a bygone past that never existed. The visual and written languages of feudalism, despite it being a terrible socioeconomic system, came into vogue in part because it wasn’t capitalism. We must remember that the 19th century saw industrial capitalism at its newest and rawest. Unregulated, it destroyed every natural resource in sight and subjected people, including children, to horrific labor conditions. It still does, and will probably get worse, but the difference is, we’re somewhat used to it by now. The shock’s worn off.

All that upheaval I talked about earlier made people long for a simplicity they felt was missing. This took many different forms. The rapid advances of secular society and the incursion of science into belief made many crave a greater religiosity. At a time when the effects of wage labor on the family had made womanhood a contested territory, many appeals were made to a divine and innocent feminine a la Lady Guinevere. Urbanization made many wish for a quieter world with less hustle and bustle and better air. These sentiments are not without their reasons. Technological and socioeconomic changes still make us feel alienated and destabilized, hence why there are so many medieval revivals even in our own time. (Chappell Roan of Arc anyone?) Hell, our own rich people aren’t so different from Ludwig either. Mark Zuckerburg owns a Hawaiian island and basically controls the fates of the people who live there lord-in-the-castle-style.

Given all this, it’s not surprising that of the products of the Middle Ages, perhaps chivalric romance was and remains the most popular. While never a real depiction of medieval life (no, all those knights were not dying on the behalf of pretty ladies), such stories of good men and women and their grand adventures still capture the imaginations of children and adults alike. (You will find no greater fan of Parzival than yours truly.) It’s also no wonder the nature of the romance, with its paternalistic patriarchy, its Christianity, its sentimentality around courtly love, and most of all its depiction of the ruling class as noble and benevolent – appealed to someone like Ludwig, both as a quirked-up individual and a member of his class.

It follows, then, that any artist capable of synthesizing all these elements, fears, and desires into an aesthetically transcendent package would’ve had a great effect on such a man. One did, of course. His name was Richard Wagner.

In our next essay, we will witness one of the most astonishing cases of kitsch imitating art. But before there could be Neuschwanstein Castle, there had to be this pretty little opera called Lohengrin.

(1) If you want to get a head start on the Wagner stuff, I’ve been writing about the Ring cycle lately on my Substack: https://www.late-review.com/p/essays-on-wagners-ring-part-1-believing

(2) My favorite insane nationalist claim comes from the 1960s, when the Slovene-American historian Joseph Felicijan claimed that the US’s democracy was based off the 13th century ritual of enthronement practiced by the Dukes of Carinthia because Thomas Jefferson owned a copy of Jean Bodin’s Les six livres de la Republique (1576) in which the rite was mentioned. For more information, see Peter Štih’s book The Middle Ages Between the Alps and the Northern Adriatic (p. 56 for the curious.)

If you like this post and want more like it, support McMansion Hell on Patreon for as little as $1/month for access to great bonus content including a discord server, extra posts, and livestreams.

Not into recurring payments? Try the tip jar! Student loans just started back up!

New on Patreon: New Jersey Bonus Post (5 additional, “wonderful” rooms!“

New on Patreon: New Jersey Bonus Post (5 additional, “wonderful” rooms!“

new jersey “19th century” “eclecticism”

It’s always funny to me when new wealth tries to imitate old wealth, but in a very specific way: by trying to reproduce old ways of building that are no longer viable via mass produced building materials and contractors who are better than average but still not quite in the legion of the bespoke. It’s rarely the case that houses are fully “custom” these days – the amalgamation of all the different parts in a new formation is the “customization” at work. As we can see in this example, this is a truth that is often covered up by excessive decorating.

This 5 bedroom, 6.5 bathroom house, built in 1997 (shocker) will run you an extremely reasonable $3.5 million big ones, but I say extremely reasonable because it wants to be a $10 million house but doesn’t quite get there - after all, it’s made with drywall. The architectural style is not really anything in particular – though the front entrance would like to recall the Tudors. Really it is trying to emulate an existing pastiche style, namely the eclecticism of the 19th century. It also doesn’t do this well.

No stately manor is complete without dueling staircases. Also, I don’t know how to explain it, but every room in this house longs to be a bathroom. Or a powder room. A really big one. It’s probably the floor, and the wallpaper. This is just the appetizer for the main attraction:

Jules Verne larping is so rare in McMansion Hell that you have to commend them for trying. I’m kind of obsessed.

This room is so important to me. It’s like if an Olin Mills (dating myself here) set was an entire room. A sense of watching someone in one’s own house, performing “dinner.” Also I would slay as the swan knight, I have to say, so I get it.

What happened to baskets hanging from the ceiling and powder blue walls and porcelain lined up on the picture rail?

I have seen columns terminating into soffits that would make Scamozzi cry.

In Big America bathing and lavishing is a spectator sport.

Ok, again, the palette of this house is basically The Polar Express mixed with a very bizarre hotel lobby.

The chimney hole is sending me because that does appear to be a working chimney. Like, can you see the smoke come out? Who knows!

Anyway, happy Thanksgiving to everyone, and I’m especially thankful to the folks who sponsor me on Patreon! If you want to see more scenes from this house, that’s the place to do it!

If you like this post and want more like it, support McMansion Hell on Patreon for as little as $1/month for access to great bonus content including a discord server, extra posts, and livestreams.

Not into recurring payments? Try the tip jar! Student loans just started back up!

2007-core nostalgia extravaganza

Quick PSA: someone on Facebook is apparently impersonating me using an account called “McMansion Hell 2.0” – If you see it, please report! Thanks!

Howdy folks! I hope if you were born between 1995 and 2001 you’re ready for some indelible pre-recession vibes because I think this entire house, including the photos have not been touched since that time.

This Wake County, NC house, built in 2007, currently boasts a price tag of 1.7 million smackaroos. Its buxom 4 bedrooms and 4.5 baths brings the total size to a completely reasonable and not at all housing-bubble-spurred 5,000 square feet.

I know everyone (at least on TikTok) thinks 2007 and goes immediately to the Tuscan theming trend that was super popular at the time (along with lots of other pseudo-euro looks, e.g. “french country” “tudor” etc). In reality, a lot of decor wasn’t particularly themed at all but more “transitional” which is to say, neither contemporary nor super traditional. This can be pulled off (in fact, it’s where the old-school Joanna Gaines excelled) but it’s usually, well, bland. Overwhelmingly neutral. Still, these interiors stir up fond memories of the last few months before mommy was on the phone with the bank crying.

I think I’ve seen these red/navy/beige rugs in literally every mid-2000s time capsule house. I want to know where they came from first and how they came to be everywhere. My mom got one from Kirkland’s Home back in the day. I guess the 2010s equivalent would be those fake distressed overdyed rugs.

I hate the kitchen bench trend. Literally the most uncomfortable seating imaginable for the house’s most sociable room. You are not at a 19th century soda fountain!!! You are a salesforce employee in Ohio!!!

You could take every window treatment in this house and create a sampler. A field guide to dust traps.

Before I demanded privacy, my parents had a completely beige spare bedroom. Truly random stuff on the walls. An oversized Monet poster they should have kept tbh. Also putting the rug on the beige carpet here is diabolical.

FYI the term “Global Village Coffeehouse” originates with the design historian Evan Collins whose work with the Consumer Aesthetics Research Institute!!!!

This photo smells like a Yankee Candle.

Ok, now onto the last usable photo in the set:

No but WHY is the house a different COLOR??????? WHAT?????

Alright, I hope you enjoyed this special trip down memory lane! Happy (American) Labor Day Weekend! (Don’t forget that labor is entitled to all it creates!)

If you like this post and want more like it, support McMansion Hell on Patreon for as little as $1/month for access to great bonus content including a discord server, extra posts, and livestreams.

Not into recurring payments? Try the tip jar! Student loans just started back up!