Data residency was the wrong question
The Dutch government today blocked Kyndryl’s acquisition of Solvinity, the IT company that operates DigiD. DigiD is the digital identity system roughly fourteen million Dutch citizens use to file t...
130 posts going back to 2013. Some are single-link references I wanted to remember. Most are short.
The Dutch government today blocked Kyndryl’s acquisition of Solvinity, the IT company that operates DigiD. DigiD is the digital identity system roughly fourteen million Dutch citizens use to file t...
At about half past eleven one evening this week I noticed a US Navy E-6B Mercury orbiting over the North Sea. Not “noticed” in the way of someone who happened to look up — I was on the sofa with a ...
Cloudflare’s Project Glasswing write-up landed today and the Hacker News thread is mostly arguing about whether the prose was written by Mythos or by Opus. It is a fair complaint and an irrelevant ...
Cloudflare laid off more than 1,100 people yesterday, around 20% of the company. The announcement, titled ‘Building for the Future’, explains the cuts by noting that internal AI use is up 600% in t...
Robert Glaser has a long post arguing that individual AI productivity gains do not become organisational gains, and that companies need a ‘Loop Intelligence Hub’ to capture which agentic workflows ...
Sena Evren’s piece on who owns the code Claude Code writes was the most-discussed link on Hacker News this week, and it is a careful walk through human authorship, work-for-hire, GPL contamination,...
The Lightning PyPI compromise published on 30 April is being written up as another Shai-Hulud variant, which it is. Versions 2.6.2 and 2.6.3 of the lightning package shipped with a hidden _runtime ...
Denis Stetskov’s piece this week, ‘The West Forgot How to Build. Now It’s Forgetting Code’, does a superb job of opening with the Fogbank story and the EU’s failure to deliver a million artillery s...
Most of what I have shipped this year has been built using Claude Code. That part is no longer interesting on its own — half the engineering timeline is talking about it. What is more interesting i...
Six weeks ago I started building something. A real commercial SaaS product, not a prototype — authentication, billing, scheduled background work, document ingestion, AI generation, distribution flo...
A reader emailed after my Email Service post to flag something I had missed. John Graham-Cumming, Cloudflare’s CTO until March 2025 and now a board member, has a long pre-Cloudflare history in spam...
A proof of concept I built for the College of Policing is included in the techUK ‘From Pilots to Practice’ report this month as the Justice and Policing case study. It was a short engagement agains...
Anthropic published a postmortem yesterday covering three separate changes that degraded Claude Code output between 4 March and 20 April. Two were deliberate product decisions. One was an actual bu...
Cloudflare pushed Email Sending into public beta last week as part of Agents Week, with an announcement so thickly frosted in agent language that you could miss the actual product underneath. Strip...
The fastest-growing category of Claude Code add-ons solves a problem Anthropic has already mostly solved. Native CLAUDE.md, auto memory, plan mode, hooks, and skills cover roughly 80% of what third...
Anthropic does not publish exact token counts for any Claude subscription tier. This makes direct comparison between Team Premium seats and individual Max plans unnecessarily difficult, and most on...
I have been writing about Cloudflare’s Developer Platform on this blog for a while now. Posts about Workers, Containers, Analytics Engine, the platform as a whole. Each one started the same way: I ...
A recent blog post titled ‘I miss thinking hard’ has sparked extensive debate among engineers, revealing something engineering leaders should find uncomfortable: a growing divide between those who ...
The UK government’s Fuel Finder service, which launched on 2 February 2026, mandates that petrol stations report price changes within 30 minutes. For organisations building navigation, fleet manage...
OpenAI has released a macOS desktop application for its Codex coding agent, providing a dedicated interface for running multiple AI agents in parallel across software projects. The launch confirms ...
Microsoft is deploying Anthropic’s Claude Code across its largest engineering divisions, including the teams responsible for Windows, Microsoft 365, Teams, and Edge. More significant than the engin...
The inversion of Linus Torvalds’ famous dictum has been circulating for months now. “Code is cheap. Show me the talk.” It’s a clever rhetorical move, suggesting that articulation and architectural ...
Most discussions of Cloudflare’s Durable Objects focus on what they can do: manage WebSocket connections, implement rate limiters, coordinate real-time collaboration. These are valid applications, ...
Something remarkable happened in the final days of November 2025. A researcher named Richard Weiss, while probing Claude 4.5 Opus for its system prompt, stumbled upon something unexpected. The mode...
Watch a developer struggle with an AI coding assistant and you’ll see the same pattern. They write a prompt. The model misunderstands. They add more detail. The model makes different wrong assumpti...
At exactly 100,000 queries per second, TikTok’s payment service stopped being an engineering problem and became an economic one. The APIs fetching user balances and transaction statistics consumed ...
AI systems need to interact with the world. They need to read files, query databases, call APIs, and access services that require credentials, configuration, and context. The Model Context Protocol...
Cloudflare’s Data Platform announcement deserves attention not for what it builds, but for what it reveals about the economics of distributed analytics. By co-locating data processing with their gl...
We’re witnessing the birth of a new computing paradigm. Large language models are shedding their role as sophisticated search engines to become autonomous agents capable of executing complex workfl...
Looking at this Chromium vulnerability report, lets examine one of the most sophisticated browser security exploits discovered in recent years. This post shows how seemingly abstract architectural ...
The UK government provides an excellent open data resource through data.police.uk, offering free access to street-level crime statistics, police force information, and neighbourhood policing detail...
Claude Code’s new plan mode solves a problem most developers didn’t realise they had. We’ve grown accustomed to AI tools that immediately start generating code, but this reactive approach often pro...
Cloudflare’s new pay-per-crawl system sounds reasonable on paper: AI companies pay content creators for the privilege of scraping their work. Finally, some economic justice for publishers getting s...
Cloudflare has launched Containers, and it changes how we think about building applications at the edge. This is the missing piece in Cloudflare’s developer platform—the layer that handles everythi...
The US Embassy in Dublin just dropped a bombshell that should terrify anyone who values digital privacy. Future student visa applicants must now provide “all social media usernames or handles of ev...
Software complexity discussions often devolve into frustrating exchanges where participants talk past each other. The reason is simple: we lack a shared definition of what complexity actually means...
SQLite is a useful case study in architectural philosophy and the tensions that arise when general-purpose systems encounter specialised workloads. Most of us encounter it daily—embedded in smartph...
As LLM-powered agents become more sophisticated and gain access to sensitive tools and data, prompt injection has evolved from academic curiosity to genuine business risk. A recent research paper f...
On 12 June 2025, Google Cloud Platform experienced what can only be described as a catastrophic failure that brought down not only their own services but cascaded across the internet, taking Cloudf...
Bear Blog wins on every metric I care about. Pika.page is the prettier interface for people who would rather not see Markdown.
The boundaries between containers, serverless functions, and edge computing are blurring. Cloudflare’s forthcoming Containers offering, set to launch in June 2025, isn’t just another product in the...
If you’ve heard about Cloudflare’s Developer Platform but aren’t quite sure what it offers, this guide breaks it down in plain terms.
In a world where camera manufacturers battle in technical one-upmanship, Fujifilm has made a curious move. The new GFX100RF presents something genuinely different: a fixed-lens medium format camera...
I’ve just stumbled upon what might be the most comprehensive resource on camera lens technology I’ve ever seen, and I simply had to share it with fellow photography enthusiasts. The website is call...
The announcement of Z-mount versions of RED’s V-RAPTOR [X] and KOMODO-X cameras marks the first tangible outcome of Nikon’s acquisition of RED. While the mount change itself intrigues technically, ...
If you’ve ever needed to process data through multiple stages with different throughput rates, handle concurrency gracefully, or build a processing pipeline that doesn’t overwhelm its downstream sy...
Basic Recipe & Technique
Time-series databases are hardly new, but Cloudflare’s Workers Analytics Engine offers an intriguing twist on the traditional approach. After diving into its technical documentation and architectur...
Watch a child pluck a raisin from a bowl and you’re seeing a feat that would humble the world’s most sophisticated robots. Yet those same robots can solve mathematical equations that would leave mo...
Temporal databases just got more interesting. With PostgreSQL 18’s upcoming support for bitemporal primary and foreign keys, we’re seeing a fundamental shift in how databases handle time-aware data...
A new category of tools has emerged for AI-assisted software development: repository-to-prompt converters. These utilities address the need to feed entire codebases into LLMs like GPT-4, Claude, an...
AWS CEO Matt Garman told an internal meeting that within two years most developers might stop coding altogether. This is what someone says when they confuse coding with typing.
Polyfill.io was acquired by a Chinese company and immediately began injecting malware into the 100,000+ websites that loaded it, JSTOR and the World Economic Forum among them. The original maintain...
Google has long been the dominant search engine, but in recent years the quality of its search results has noticeably declined. What was once a source of highly relevant information has now become ...
A startup called Daylight has unveiled a unique new Android tablet featuring a custom 10.5” e-paper-like display boasting a 60fps refresh rate. Whilst e-ink devices like the reMarkable and Kindle S...
In a new paper, researchers at Anthropic have made significant strides in understanding the inner workings of large language models like Claude 3 Sonnet. By applying a technique called sparse dicti...
In the ongoing debate over the EU’s Child Sexual Abuse Regulation, commonly known as Chat Control, a glaring double standard has emerged. According to the latest draft, politicians, police, and int...
Reddit, once known as the “front page of the internet,” is clearly facing a growing bot problem that threatens the very nature of the site as a place for authentic human discussion and content shar...
I’ve recently needed to hash passwords as part of authentication endpoints for an API I’m building using Cloudflare Workers. My complete code is below as I failed to find a single place with this a...
The recent Cloudflare outage is a stark reminder that even the most robust and seemingly secure systems are not impervious to failure. The incident, lasting from November 2 at 11:44 UTC until Novem...
Web components have gained a lot of attention as a way to encapsulate and reuse HTML, CSS, and JavaScript. They deliver on a lot of that promise—but there are several real-world considerations deve...
Annual smartphone releases stopped making sense years ago. The hardware delta between an iPhone 14 and an iPhone 15 is rounding error. Most of the headline ‘new’ software features could ship to las...
Firefox now exists primarily as Google’s antitrust shield. ‘Web standards’ in 2023 means whatever Chrome ships. When alternative browser engines arrive on iOS, the small remaining argument for Fire...
I recently ventured into the world of Notion AI, enabling the features on my workspace with an eager curiosity to see what it could do for my writing. Although I wasn’t sure what to expect when I f...
After enduring The Rings of Power recently and being unsurprisingly disappointed, I’ve discovered the BBC show Detectorists. This programme has been around since 2014 but I only discovered it recen...
I feel like I should write more.
Watching Musk destroy anything he touches at the moment is excellent entertainment.
Bike Outliner, a rich text editor for macOS (sadly only macOS 😔) has just received an update that includes a neat feature I’ve not seen before.
I’ve been contemplating getting some binoculars for use at air shows and much like when I was looking for a microscope for micrometeorite hunting or looking for a new mattress, I’ve really enjoyed ...
Everyone keeps going on about how good Keychron keyboards are so I caved and got one. The keyboard I’ve been using for the last 6 years was still working fine but I’d begun to not appreciate having...
The official Notion API finally supports code blocks with a recent update. I’ve updated NotionToJekyll to add this functionality. This post is just a test to see if code blocks with different langu...
FaceID is amazingly good, particularly considering I was such a lover of TouchID on the iPhone 6S and really did not like the idea of FaceID when it first came out having only seen terrible impleme...
I hate iOS. And I also hate Android. For years I developed apps for both platforms (and Windows desktop too) and for this reason I’m an anti-fanboy. I’m all too aware of the terrible memory usage w...
I’ve done the last 3 or 4 Hacktoberfests and really enjoyed the motivation to plough into a project during October.
Having recently moved house, we’ve come to the conclusion that we don’t need and won’t be reinstalling our smart lightbulbs and Amazon Echos, or any other smart devices for that matter.
No. No they’re not. There’s too much misinformation floating around about this issue and it’s easy to prove they’re not. Although when using Guid.NewGuid() you seem to always get a v4 UUID, this do...
I’ve just added post category and tag support to NotionToJekyll using two multi-select columns. This input type is perfect for these fields as they’re just string arrays. Now organising posts from ...
I use Notion as my personal knowledgebase and normally write blog posts in temporary pages and then manually publish them to my Jekyll site using SiteLeaf. With the Notion API now operational I’d b...
There’s no built-in multiple select in Blazor but it’s pretty easy to get one working without any libraries.
This blog uses Jekyll and I’ve no plans to change that - Jekyll is a great static site generator with plenty of features and a high level of maturity. Once in a while though I like to freshen thing...
Spring 2021 is still outlined as the release timeframe for the Notion API and I can’t wait. I’ve been using Notion since becoming a Lead Developer to try and improve my knowledge storage and it’s b...
I’d just started drafting a post about combining HTMX with Razor pages to produce dynamic web applications and thought I’d better quickly check the internets to ensure it hadn’t been covered since ...
I’ve published a dataset on GitHub that comprises of a single CSV file containing every locomotive in the UK. This includes historic and private locomotives, London Underground and other light rail...
Some employers, utility companies, banks or government departments still require you to be in possession of physical documents - it’s now 2021 and this is stupid.
Whilst reading about the plan for Entity Framework Core 6.0 I noticed a remark about .Net Standard that I’d not clocked last year.
I like Windows 10. As a developer using .Net and Azure I use Windows all the time and generally think it’s pretty great. However out of the box it does contain some annoying default settings, featu...
I recently wanted to upload something to an Azure Storage Blob Container and specify the content type without having to make another request, sadly there’s currently no documentation that I could f...
A couple of days ago Epic released a video showing a demo for Unreal Engine 5. If you’re reading this then you’ve likely already seen that video, but I wanted to put into words my feelings about su...
With the ongoing pandemic and ‘lockdown’ facing a decent chunk of the planet, we’ve had to resort to video calls with our families using FaceTime, Facebook Messenger, WhatsApp or Zoom. This is all ...
I’ve recently been looking into how exactly nosql document databases work. Not just existing solution APIs like Amazon DynamoDB and Azure CosmosDB, I mean how they work inside, with a view to creat...
You can set a timer triggered Azure Function to run on startup when built for development like this:
Sadly Microsoft’s documentation on this is non-existent at the moment and there are a couple of tricky parts that caught me out the first time I tried so I thought I’d provide instructions here for...
For the third year in a row I attended Tech Nottingham’s Hack24; a 24 hour hackathon hosted in the heart of Nottingham and sponsored by some of the most prominent technology businesses in the area ...
I recently had the need to access a property in another property in C#. Accessing a property value is trivial using PropertyInfo but it’s only capable of accessing properties on the current object ...
Earlier today I turned Cloudflare’s automatic email obfuscation off on this site. Why you might ask? Well because it was the only JavaScript on this site and I liked the idea of having absolutely n...
Jekyll makes it trivial to edit a site’s look and feel, just modify your sass files and push to Github. I keep playing around with colours, paddings and fonts - there’s always something to tweak.
At home I use two computers: a 13 inch MacBook Pro for less intensive tasks and a Dell Precision T1700 with a 4K monitor when I want to stretch the software engineer bit of my brain. Jekyll is only...
Having spent a lot of time recently (even more than normal) working with Git I decided to once again migrate my site to another content management system. I do this every few years, mainly because ...
Whilst studying for my integrated master’s degree in Computer Science at the University of Lincoln, I’m also demonstrating on a number of modules to enhance my own skills as well as gain some valua...
Google seems to be in the habit of making helpful little websites packed with info for developers. An apparently new addition to their line-up is the Device metrics page. It includes a list of comm...
The White House has told the Supreme Court that APIs can be copyrighted (arstechnica.com). This is generally being perceived as terrible news, the design of an API is typically very standard affair...
First of all, I feel it’s important to make clear that I’m typically a ‘Windows person’, that is to say, I’ve always used Windows as my primary OS. Of course I’m perfectly comfortable working with ...
I thoroughly enjoy looking at implementations of font combinations; the use of space, colour and content are all interesting considerations when choosing which font to use. Browsing fonts on Google...
I never need much of an excuse to try a new CMS, subsequently I’ve created a new website for myself to showcase my photographic efforts using Koken. Recently treating myself to a new camera (a Cano...
Ello.co is a new social network that’s caused a bit of a stir online due to its anti-Facebook attitude, the manifesto makes this fact pretty clear…
Have a look at these delightfully colourful representations of a few common data structures and algorithms. Sometimes grasping fundamental concepts can be achieved faster using well designed visual...
How can web forms be reformed into a 21st century tool for data input? Codrops have published an interesting take on the traditional form that improves usability at the expense of universal support.
The Heartbleed Bug is a serious vulnerability in the popular OpenSSL cryptographic software library. This weakness allows stealing the information protected, under normal conditions, by the SSL/...
Having attended Dr Richard Stallman’s interesting talk at Lincoln University yesterday, I thought I’d have a look on Twitter at reactions to his militant views. One tweet sent me to the best softwa...
Finding a source of inspiration for a new project can be tough, I think so at least. So when I stumbled upon Awwwards my mind was blown. This site hands out awards to the very best websites as chos...
Project Tor enables anyone to browse the internet anonymously as if from another side of the planet. This is useful to those wanting to engage in shady activities, it’s also very convenient for web...
As you will be aware by now, I’ve been following the beta journey of Moot, a new and exciting forum system designed to eradicate dated phpBB forums from the internet. The system has just reached a ...
Archive going back to 2013. RSS feed lives at /feed.xml — still the best way to follow along.