# Chris Simpson > Software developer and search engineer based in London. Notes on software, search systems, and information retrieval. Long-form writing on retrieval engineering, vector search, late interaction, quantisation, and the shift of consumer search toward AI answer engines. Content here is intended to be discoverable and citable by AI assistants and search engines alike. ## Articles - [Code mode is batched retrieval](https://chrissimpson.co.uk/code-mode-is-batched-retrieval.html): Hornet held the retriever, model and corpus fixed and swapped the harness from one tool call per turn to one Python program per turn. Recall went up 65%, tokens down 51%. Strip the new vocabulary and the win isn't Python - it's that retrieval was finally allowed to fan out. - [A field guide to vector similarity measures](https://chrissimpson.co.uk/vector-similarity-measures.html): Dot product, cosine, Euclidean, Manhattan and Hamming - what each one actually measures, why most of them collapse into the same ranking once your vectors are normalised, and the handful of mistakes that bite in practice. - [Near both, on neither: why single-vector search fails high-intent queries](https://chrissimpson.co.uk/near-both-on-neither-single-vector-retrieval.html): A small, self-contained experiment on why single-vector retrieval breaks on compound, high-intent queries - and how late interaction keeps two facets intact where a dense embedding averages them away. - [Why I’m betting on AI Engine Optimisation](https://chrissimpson.co.uk/why-im-betting-on-ai-engine-optimisation.html): The closing piece of the series, and the substantive one. Why the AEO problem is structurally interesting, what fifteen years of search infrastructure transfers and what doesn’t, and why I think the timing is right. - [A new chapter](https://chrissimpson.co.uk/a-new-chapter-at-searchable.html): A few weeks ago I said I’d accepted a new role and wasn’t ready to say where. Here’s the where - and why it’s the most natural move I’ve ever made. - [Optimising for AI search](https://chrissimpson.co.uk/optimising-for-ai-search.html): If being in the AI answer is the new being on page one, how do you get there - and how do you know if you have? A look at what optimising for AI search actually means, and why the measurement problem is the hard part. - [Where did all the traffic go?](https://chrissimpson.co.uk/where-did-all-the-traffic-go.html): A lot of sites are watching their search traffic fall, and it isn’t because their content got worse. The funnel changed shape. This is the post in the series where the cultural shift turns into a commercial problem. - [Citations are the new ranking](https://chrissimpson.co.uk/citations-are-the-new-ranking.html): The previous post in this series argued the engineering inside an AI answer is recognisable IR. This one looks at the visible end of the pipeline: the citation slot. When the surface is a paragraph with three sources cited, the question "did we get cited?" becomes the new "did we rank #1?". - [Retrieval inside an LLM is still retrieval](https://chrissimpson.co.uk/retrieval-inside-an-llm-is-still-retrieval.html): Open Perplexity, run a query, look at the Sources panel. The architecture is recognisable: retrieve, rerank, summarise, cite. The system has moved; the engineering hasn’t. A bridge piece between the observational posts and the next phase of this series. - [The disappearing search engine result page](https://chrissimpson.co.uk/the-disappearing-search-engine-result-page.html): The previous post in this series was about my own habits shifting. This one is about the page itself. The shape of the Google SERP in 2026 is structurally different from the one we built businesses around - and the difference is mostly that you don’t have to leave it any more. - [How I actually use the web in 2026](https://chrissimpson.co.uk/how-i-actually-use-the-web-in-2026.html): I spent fifteen years building search engines - and somewhere in the last year I quietly stopped using one. An honest look at how my web habits have shifted, what it costs, and why I don’t think it’s just me. - [Asymmetric query quantization in DiskBBQ](https://chrissimpson.co.uk/asymmetric-query-quantization-in-diskbbq.html): Ben Trent and Thomas Veasey shipped another DiskBBQ optimisation today: quantising queries against coarser parent centroids instead of per-document ones. 5x off the quantisation stack with no meaningful recall loss. The insight underneath is that the query path and the document path don’t have to be treated symmetrically. - [SMART: late interaction without retraining](https://chrissimpson.co.uk/smart-late-interaction-without-retraining.html): A new paper out this week shows the per-token hidden states of off-the-shelf single-vector embedders already carry the information needed for ColBERT-style MaxSim - and you can wire it in at inference time, without retraining. The late-interaction deployment barrier I most underestimated just dropped. - [Faster similar-document search in Elasticsearch 9.4](https://chrissimpson.co.uk/faster-similar-document-search-in-elasticsearch-9-4.html): Elasticsearch 9.4 adds query_vector_builder.lookup - a tiny API addition that collapses a two-request vector search into one and runs better than 3x faster. A small change with a big impact, and a look at where that ratio actually comes from. - [SID-1: Train the loop, keep the index](https://chrissimpson.co.uk/sid-1-train-the-loop-keep-the-index.html): SID AI’s SID-1 is the first retrieval model trained end-to-end with RL. Some observations through a search-and-IR lens: the middle of the retrieval pipeline collapses into one trained model, the NDCG reward gets deliberately bent toward recall, and the agentic-retrieval loop becomes a subagent you hand to a larger system. - [The harness is mostly retrieval](https://chrissimpson.co.uk/the-harness-is-mostly-retrieval.html): Laurie Voss says applied-AI iteration has moved off the model and into "the harness". He’s right - and once you strip the new vocabulary, the harness is mostly a retrieval system. - [xAI algorithm through a search lens](https://chrissimpson.co.uk/xai-algorithm-through-a-search-lens.html): xAI open-sourced the For You feed algorithm today. Three observations through a search-and-IR lens: two-tower’s quiet dominance, the retrieve/rank split surviving the bitter lesson, and recsys converging with search. - [Could TurboQuant Unlock Late Interaction Retrieval?](https://chrissimpson.co.uk/could-turboquant-unlock-late-interaction-retrieval.html): TurboQuant landed as a KV cache result, but the more interesting application might be ColBERT-style late interaction. Here’s the case, and the open questions. - [What to make of TurboQuant](https://chrissimpson.co.uk/what-to-make-of-turboquant.html): A new quantisation method out of Google Research is making the rounds. Qdrant shipped it. Elastic ran the benchmarks and politely declined. Both responses tell you something useful. - [The pattern goes all the way down](https://chrissimpson.co.uk/the-pattern-goes-all-the-way-down.html): DiskBBQ’s new filtered-search optimisation is the same architectural move I wrote about last week, applied one layer deeper. The pattern is fractal - and that’s what makes it useful. - [Everything has changed in search. Nothing has changed in search.](https://chrissimpson.co.uk/everything-and-nothing-has-changed-in-search.html): Agentic search looks like a clean break from classical IR. Look closer and the architectural instincts are the ones backend engineers have used for decades - the components are new, the rules are not. - [A primer on late interaction](https://chrissimpson.co.uk/a-primer-on-late-interaction.html): How ColBERT-style token-level matching fits between single-vector dense retrieval and cross-encoders, why MaxSim is the clever bit, and what the storage tax actually looks like in practice. - [Today, Vimeo goes public](https://chrissimpson.co.uk/vimeo-goes-public.html): Vimeo spins out from IAC and begins trading on Nasdaq under the ticker VMEO. - [FOSDEM 2015](https://chrissimpson.co.uk/fosdem-2015.html): Another year at FOSDEM — Vimeo's open source talk, the dedicated Open Source Search track, and a closing keynote from a Mars One astronaut candidate. - [I've Joined Vimeo](https://chrissimpson.co.uk/ive-joined-vimeo.html): Joining the Vimeo team to work on the search platform after an amazing run at DueDil. - [DueDil raises further $17 million of funding to fuel growth and expansion](https://chrissimpson.co.uk/duedil-raises-17m-series-b-funding.html): DueDil's Series B: a $17m round led by Oak Investment Partners, bringing total funding to $22m and accelerating expansion to new geographies. - [Elasticsearch 1.0 launched: An overview](https://chrissimpson.co.uk/elasticsearch-v1-launched.html): A run-down of the headline features in Elasticsearch 1.0 — Snapshot/Restore, the cat API, the redesigned percolator, and the new Aggregations framework. - [FOSDEM 2014: a retrospective](https://chrissimpson.co.uk/fosdem-2014-retrospective.html): A weekend in Brussels at FOSDEM — Elasticsearch 1.0 ahead of launch, plus PostgreSQL JSON, Redis, MongoDB, and YARN talks. - [Elasticsearch Marvel: Monitor and Manage your Elasticsearch cluster](https://chrissimpson.co.uk/elasticsearch-marvel-monitor-and-manage-your-cluster.html): Elasticsearch's new Marvel monitoring dashboard — built on Kibana and Sense — surfaces cluster health and lets you query the REST API live. - [Elasticsearch Snapshot Restore Overview](https://chrissimpson.co.uk/elasticsearch-snapshot-restore-api.html): A walkthrough of the new Snapshot/Restore API arriving in Elasticsearch 1.0 — incremental backups for your cluster via a simple REST endpoint. - [Elasticsearch Aggregations Overview](https://chrissimpson.co.uk/elasticsearch-aggregations-overview.html): A look at the new Aggregations framework arriving in Elasticsearch 1.0 — multi-level, nested calculations that go far beyond what Facets could do. - [London Elasticsearch User Group Presentation](https://chrissimpson.co.uk/london-elasticsearch-usergroup-presentation.html): A talk at the London Elasticsearch meetup on how DueDil uses Elasticsearch — bulk indexing, and using Facets to add depth to search. - [Elasticsearch "Yellow" cluster status explained](https://chrissimpson.co.uk/elasticsearch-yellow-cluster-status-explained.html): What yellow status actually means, and how the Cluster Health API reports primary vs replica shard allocation. - [DueDil completes Series A funding and announces $5m in new investment](https://chrissimpson.co.uk/duedil-series-a-funding-announcement.html): DueDil's $5m Series A round, led by Notion Capital and Oak Investment Partners — funding new territories and additional data sets. - [Using Elasticsearch on Amazon EC2](https://chrissimpson.co.uk/using-elasticsearch-on-amazon-ec2.html): Setting up an Elasticsearch cluster on EC2: installing the AWS cloud plugin, configuring discovery, and watching nodes find each other. - [DueDil: Trust the data](https://chrissimpson.co.uk/duedil-trust-the-data-video.html): DueDil's intro video — a quick look at what we're building. ## About - [About](https://chrissimpson.co.uk/about/): Background and current focus - [Work history](https://chrissimpson.co.uk/work/): Roles and progression ## Optional - [RSS feed](https://chrissimpson.co.uk/feed.xml): Subscribe to new articles