Writing
Notes on AI, agents, web technologies, and building with LLMs
Technical articles on AI integration, agents, agent harnesses, MCP, web technologies, and emerging tools. Working notes from a Google Developer Expert with 25+ years of building and teaching.
237 articles · Page 3 of 24
Filter by tag ▾
- All posts
- ADK
- AI
- AI Agents
- AI Literacy
- AI Strategy
- API
- AX
- AXI
- Agent Experience
- Agentic AI
- Agents
- Angular
- AngularJS
- Architecture
- Article 4
- Automation
- Bash
- Browser APIs
- C2PA
- CLI
- CSharp
- Cloudinary
- Community
- Compliance
- Conference
- Content Credentials
- Core Web Vitals
- DevFest
- DevRel
- Developer Tools
- Docker
- EU AI Act
- Embeddings
- Enablement
- FDE
- Firebase
- Frontend
- Function Calling
- Gemini
- Ghost
- Google ADK
- Google chrome
- GraphQL
- Harness Engineering
- Image Formats
- Image Optimisation
- Jamstack
- JavaScript
- LLM
- Large Language Models
- Learn To Code
- Loop Engineering
- MCP
- MCP Apps
- MEAN
- Machine Learning
- Memory
- MongoDB
- MySQL
- NLP
- Next.js
- NoSQL
- Node.js
- Open Source
- PHP
- Performance
- Polymer
- Product Strategy
- Production AI
- Progressive Web App
- Progressive Web Apps
- Provenance
- RAG
- React
- Recruitment
- Review
- RxJS
- SQLite
- Security
- Serverless
- Service Worker
- Sponsored
- SynthID
- Taipei
- Thought Leadership
- Tool Use
- Tooling
- Transformers.js
- TypeScript
- VMware
- Veo
- Vercel AI SDK
- Vue.js
- Web
- Web Assembly
- Web Development
- Web Performance
- WebMCP
- this || that
Harness - A Local Managed Agent in Four Planes
Anthropic decoupled their agent into brain, hands, and session. I built a local TypeScript version in roughly 2,400 lines to see what the architecture actually feels like when you type it out.
The Loop Agent Pattern
When one pass is not enough, let agents iterate. A playlist curator built with Google ADK that generates songs, verifies them against MusicBrainz, and refines until every track checks out.
The Sequential Agent Pattern
Chaining multiple specialised agents into a pipeline where each one builds on the last. Illustrated with a TypeScript CLI that fetches a quote, researches its author, and writes an inspiration card.
The Parallel Agent Pattern
When agents do not depend on each other, run them at the same time. Illustrated with a TypeScript translation pipeline built with Google ADK that translates a phrase into three languages simultaneously, then aggregates the results with Gemini.
The Single Agent Pattern
A look at the simplest agentic AI pattern: one model, one tool, zero orchestration. Illustrated with a tiny TypeScript agent built with the Google Agent Development Kit (ADK) that uses Gemini and Google Maps to review any place by name.
Watch the Past Move: Animating Historic Photos with Gemini and Veo
What if you could take a dusty old black-and-white photograph and watch it come to life? In this post, I walk through a Node.js pipeline that colorises historic photos with Gemini and then animates them into video using Veo 3.1.
Building a Historical Time Machine with Gemini and Google Maps
Have you ever wondered what your favourite landmark looked like a hundred years ago? In this post, I walk you through a Node.js application that generates historically accurate photographs of any real-world location at any point in time, and even checks its own work for anachronisms.
Why How You Split Your Documents Matters More Than You Think
Before you reach for a more powerful embedding model or a larger context window, look at what you're actually feeding into a RAG pipeline. Sometimes the highest-leverage improvement isn't a better model but rather it's a better split.
Filesystem as Context: Building an AI Detective with bash-tool
Instead of stuffing documents into prompts, give your AI agent a filesystem and let it retrieve its own context. Here's how, using a murder mystery detective as the demo.
Building AI Agents with Google ADK: A Practical Guide
Learn how to build multi-agent systems with vector search, tool orchestration, and semantic understanding using Google's Agent Development Kit (JS/TS version).