Writing
The Blog
Engineering notes, build logs, and thoughts on creative development.
Building AI-Native Apps: Vector Search in Laravel 13 & PostgreSQL
This guide explores how Laravel 13 has revolutionized search by introducing native vector similarity methods. We cover everything from the basic whereVectorSimilarTo syntax to the advanced orchestration of embeddings using the new Laravel AI SDK, providing a clear path for architects to build intelligent, semantic search engines.
The Push-Based RAG: Building a Semantic Alerting Engine with Kafka and pgvector
Learn how to build a push-based RAG engine using Kafka and pgvector. This reverse-search architecture matches data streams against user intent vectors for real-time notifications.
The Semantic Versioning Crisis: Engineering a Vector Schema Registry for Distributed RAG
Avoid silent failures in RAG by implementing a Vector Schema Registry. Learn how to manage embedding versioning, handle semantic drift, and enforce contracts in Laravel.
The Semantic Cache: Reducing LLM Latency and Costs with pgvector
Cut LLM latency and API bills by implementing a semantic cache with pgvector. Learn to handle the embedding tax and optimize HNSW indexing for similarity-based query retrieval.
The Vector ETL: Offloading Document Chunking to dbt Python Models
Learn how to offload resource-heavy document chunking from application workers to your data warehouse using dbt Python models for RAG, ensuring lineage and scalability for AI pipelines.
Stop Hiring Prompt Engineers: The Case for Data Rigor in AI-Native Teams
Stop relying on prompt engineering to fix broken retrieval. Discover why context engineering and data pipeline rigor are the foundations of a modern AI engineering team structure.
The Semantic Data Warehouse: Modeling Vector-Relational Hybrids with dbt and Snowflake
Stop treating vectors as sidecars. Learn how to model embeddings directly in Snowflake using dbt to optimize RAG performance, handle model drift, and manage semantic-relational joins at scale.
Changing Tires at 100 MPH: Zero-Downtime Schema Evolution in Vespa.ai
Master zero-downtime Vespa.ai schema migration using the shadow field backfill pattern and Visit API to update embedding dimensions without service interruption.
Astra Has Landed: Architecting for OpenAI GPT-6 and the Era of Native Computer Use
GPT-6 Astra introduces Native Computer Use and 1.05M context windows. Learn to re-engineer backend pipelines for long-running reasoning cycles and density-heavy retrieval.
Late Chunking: Solving Context Loss in Laravel RAG Pipelines
Stop shredding your data. Learn to implement late chunking vector search in Laravel 13 to preserve semantic context and eliminate hallucinations in RAG pipelines.