Writing
Notes from the work.
How real data and AI projects get built: what the problem actually was, what I chose, and what I would tell a client before they start.
RSS feed
3 min read
Why your RAG chatbot gives stale answers, and how to keep the index in sync
Most RAG pipelines only ever add to their vector index, so edited and deleted documents keep being served. The record-manager pattern that fixes it.
RAGVector DatabasesPineconen8nLLMs
3 min read
Building a sales forecast: most of the work is not the model
What an end-to-end sales forecast really involves: cleaning, a warehouse, automated loads, evaluated models and dashboards. The model is the smallest part.
ForecastingData EngineeringPower BISQL Server
2 min read
Automating a shared inbox with an AI agent: deciding where it should stop
An AI agent can read email, classify intent and update your CRM. The hard design decision is which messages it must never answer on its own.
AI AgentsEmail AutomationCRMn8nLLMs
3 min read
When a graph database beats SQL: turning call logs into a relationship map
Call data is a relationship problem. Why Neo4j answers who-talks-to-whom questions better than SQL joins, and how to add grounded AI insights on top.
Neo4jGraph DatabasesData Engineeringn8nLLMs
3 min read
Automating a weekly KPI report: the pagination bug that makes reports quietly wrong
Automated weekly reports save hours, but one that reads only the first page of an API looks fine and is wrong. How to build a report you can trust.
ReportingETLAutomationn8nSlack
3 min read
Turning cricket video into data: how a computer vision pipeline works
How detection, tracking, ball trajectory, pose and shot classification turn broadcast cricket footage into one structured row per delivery.
Computer VisionDeep LearningYOLOPyTorchSports Analytics
Let’s build
Have a data problem like one of these?
Tell me what you are trying to decide or automate, and I will come back with how I would build it.