Blog
Exploring GEPA and DSPy for AI system optimization
Sep 7, 2025
An overview of DSPy and GEPA for AI system optimization.
Building RL environments for open-source AGI
Aug 23, 2025
Weekend notes on porting environments, running evaluations, and serving LMs on a cloud-hosted GPU.
Building a CLI Agent
Aug 3, 2025
My experience building a terminal-based AI agent and demystifying the hype around agents.
Vibe-coding a digital wardrobe
May 1, 2025
My thoughts on vibe-coding as of May 2025.
New Builds 2024
Sep 30, 2024
A recap of building a generative choose-your-own-adventure game in 24 hours at New Builds 2024 hackathon
Understanding the diffusion process
Aug 18, 2024
An exploration of the DDPM paper by Ho et al., covering core concepts of diffusion models for image generation.
LLM Evals
Jun 25, 2024
A tutorial on evaluating LLM performance using LangSmith for 10-K filing retrieval tasks.
LangChain Primer
Jun 18, 2024
An introduction to LangChain framework for AI applications, including RAG implementation and monitoring.
Fine-tune GPT-2 for Classification
Jun 4, 2024
A tutorial on fine-tuning GPT-2 for classification tasks using the Hugging Face Transformers library.
Building LSTMs from Scratch
May 24, 2024
A step-by-step implementation guide for building multi-layer LSTMs from scratch in Python.
GPT-4 Vision Example
Dec 20, 2023
A guide to using GPT-4 Vision API for generating advertising copy from product images.
Building a Transformer
Dec 8, 2023
A detailed breakdown of the Transformer architecture, focusing on encoder-decoder blocks and self-attention.
IMDb Rating Prediction
Nov 1, 2023
A regression analysis project predicting IMDb movie ratings and identifying key influential features.
EPL Season 14 Group D
Aug 30, 2021
An analysis of ESL Pro League Season 14 Group D performance metrics and player statistics.