Writing on software development, building with Twilio, and my entrepreneurship journey.

All of my long-form thoughts on programming, leadership, product design, and more, collected in chronological order.

Build a Foodbank Voice and WhatsApp Agent with Twilio Agent Connect

Owl Food Support: a TypeScript foodbank agent on Twilio Agent Connect that works over voice and WhatsApp, remembers household details in Conversation Memory traits, runs an eligibility check, books a real collection slot, hands messy cases to a human queue, and ships with prompt evals that check it keeps its promises.

Hybrid Retrieval: Not Every Question Needs an LLM Call

Lessons from building a RAG assistant over a founders knowledge base at Acumen Academy: a tree-based retrieval structure driven by Contentful metadata, a keyword layer that answers lookups without touching a model, and a pre-warmed cache for the documents everyone asks about.

AdieraBot: The Architecture Behind My WhatsApp Fact-Checking Agent

I wrote a tutorial for the Twilio blog on building a WhatsApp fact-checking bot. The tutorial answers every message with a fresh LLM call. The real bot does not, and this post explains the three-tier pipeline that keeps it fast and affordable.

Send an SMS When Your Build Fails on Travis CI

Every year just before Christmas, this tweet warning about holiday deployments resurfaces within Engineering circles. It is testament to the complications that could arise when we deploy changes to code. For this reason many companies have made the shift to Test Driven Development (TDD).

How to Create an iCal Calendar Feed with PHP using Laravel Lumen

iCal, short for iCalendar, is an internet standard file format used to store calendar information. Being a standard format, it is compatible with most online calendars, giving you access to important dates regardless of your preferred client (Google Calendar, Outlook Calendar, Apple Calendar, etc.).

How To Build A WhatsApp Chatbot Using Twilio, Dialogflow and PHP

Natural Language Processing (NLP), is a branch of Artificial Intelligence (AI) that helps computers understand, interpret and manipulate human language. With the help of Natural Language Understanding (NLU), which is a branch of NLP, computers are able to handle the nuances of language.