| 10/17/25 | misc | Johno’s Lab - First Week of A New YouTube Channel | 
| 9/20/25 | misc | Biltong, Biofilm Flocs, Hyperspectral Glasses, Marangoni Photography, Poop Guns, Slide Scanning and Speedy Duckweed (Misc Updates) | 
| 9/17/25 | essays | If Anyone Builds It, Does Everyone Die? | 
| 9/12/25 | solveit | What Is Solveit? | 
| 9/9/25 | Video | Jet-Nemotron, Gated DeltaNet, and the slow triumph of hybrid models | 
| 9/8/25 | blogs, solveit | Counting Incomplete Cubes | 
| 8/7/25 | Video | ‘Diffusion Beats Autoregressive in Data-Constrained Settings’ - Paper read + a win for open review | 
| 8/3/25 | misc | Duckweed Growth Experiments, or, ‘LLMs as General Optimizers in Science’ | 
| 7/24/25 | misc | Mapping Smells, Gamifying Family Trips, Playing ARC-AGI-3 like an LLM… (Vibe Coding Wins) | 
| 7/20/25 | mini-hw-projects | 1Hz Dropper | 
| 7/11/25 | Video | SVG generation as a microcosm of generative AI research trends | 
| 6/19/25 | Video | The Diffusion Duality (Paper reading + discussion) | 
| 6/16/25 | Video | Diffusion Language Models: Turning ModernBERT into an instruct-tuned Diffusion LLM | 
| 5/27/25 | Video | FastHTML App in Claude Code | 
| 5/21/25 | misc | Crystals, Crokinole, Cellular Automata (small updates) | 
| 5/16/25 | Video | New Ways to Scale Inference Time Compute of LLMs: Parallel Scaling, Diffusion and More | 
| 5/1/25 | misc | ICLR 2025 | 
| 4/20/25 | mini-projects | SpecID - A Hard Eval for Multimodal LLMs | 
| 4/12/25 | mini-projects, Video | Extrapolate All The Things - Small-To-Big Extrapolation For LLMs | 
| 4/11/25 | mini-hw-projects | Lab Junk Rheoscopic Fluid | 
| 4/10/25 |  | Hiding an Annoying Element with Stylus | 
| 4/9/25 | misc | Tab Clearing (April 9 2025) | 
| 4/1/25 | mini-projects | Can AI Models Rhyme? | 
| 3/18/25 | essays | My Thoughts on the Future of “AI” | 
| 3/1/25 | mini-hw-projects | Quickly Making Carbon Quantum Dots | 
| 2/17/25 | papers, blogs | Direct Ascent Synthesis: Revealing Hidden Generative Capabilities in Discriminative Models | 
| 2/10/25 | misc | Bubble Colors | 
| 2/7/25 | misc | Tab Clearning (Feb 2025) | 
| 2/4/25 | misc | First Impressions of Three New AI Models | 
| 2/3/25 | essays, mini-hw-projects | Vibe Coding and V-Plotters | 
| 1/28/25 | mini-hw-projects | Scanning slides with a microscope, a 3D printer and a webcam | 
| 1/21/25 | mini-projects | Adding a Debug View for FastHTML Learning | 
| 1/18/25 | mini-hw-projects | Schlieren Imaging with a cheap Freshnel Lens | 
| 1/11/25 | mini-hw-projects | Photographing Crystals with a Modified Microscope | 
| 1/10/25 | Video | Paper walkthrough: rStar-Math: Small LLMs Can Master Math Reasoning with Self-Evolved Deep Thinking | 
| 1/9/25 | mini-projects | Fine-Tuning on Distances To Paris: Practical LLM Psychology, or ‘Documenting a Quick Test of a Research Hypothesis’ | 
| 1/8/25 | misc | Trying Devin | 
| 1/4/25 | TILs | Talking to the Duet, and USB in WSL | 
| 1/1/25 | Blog | 2024 Overflow: UV Flourescence, ESPing + ESP32CAM, modernBERT musings, Autobackup & NBDev, LLM Psychology, and Reflections on the year | 
| 12/4/24 | misc | Tab Clearning (December 4 2024) | 
| 12/2/24 | essays | AI Outputs as Junk Food | 
| 11/16/24 | mini-hw-projects | Making Giant Bubbles | 
| 11/14/24 | mini-projects | Nerdsnipe: Map Folding | 
| 11/8/24 | essays | 3 Modes of Making with AI | 
| 11/7/24 |  | Deploy Your Artifacts! | 
| 11/1/24 | mini-projects | Facewave: Controlling Midi Expression with your webcam | 
| 10/30/24 | mini-projects | Mini Synth and Audio Visualization | 
| 10/7/24 | misc | Tab Clearning (October 7 2024) | 
| 9/23/24 | misc | Tab Clearning (September 23 2024) | 
| 9/14/24 | mini-hw-projects | Doodling In Hardware | 
| 9/8/24 | tils | TIL: Kalman Filters | 
| 8/30/24 | Video | Min P Sampling: Balancing Creativity and Coherence (paper explanation + code) | 
| 8/21/24 | mini-hw-projects | Single-Pixel Camera (Hardware) | 
| 8/21/24 | Blog | Building Silly Projects with FastHTML | 
| 8/19/24 | Blog | Computational Linguistics | 
| 8/14/24 | Blog | What You Should Read (AI Edition) | 
| 8/13/24 | Video | Mixed-Modal Early-Fusion Foundation Models: Paper run-throughs for ‘Chameleon’ and ‘MoMa’ | 
| 8/6/24 | mini-hw-projects | Robot Arm Shenanigans (Draft Post) | 
| 6/27/24 | Blog | Tab Clearing | 
| 6/20/24 | Video | LLM Steganography: Hiding Messages in Text | 
| 5/8/24 | Blog | More=Better? | 
| 4/27/24 | mini-hw-projects | Basement Hydroponics: Part 1 | 
| 4/19/24 | TILs | TIL: Intercepting Github Copilot with MITMProxy | 
| 3/30/24 | mini-hw-projects | DIY Bio: A Cool Hobby, Not Quite For Me | 
| 3/14/24 | mini-projects | Mini Experiment: Broken Multimodal Telephone | 
| 2/20/24 | mini-projects | Can LLMs estimate the length of a sequence? | 
| 2/2/24 | mini-hw-projects | Exploring 3D-Printed Instruments | 
| 1/27/24 | mini-hw-projects | Door Desk | 
| 1/23/24 | Blog | A few tips for working on high-surface-area problems | 
| 1/1/24 | TILs | TIL: GPT4-V Doesn’t Support Function Calling, but We Can Hack Around That | 
| 12/6/23 | blogs | Quick Experiment: Filtering Preference Data for Better DPO | 
| 11/29/23 | Video | Paperathon #1 | 
| 11/26/23 | Video | ZipLoRA: Any Subject in Any Style (deep dive and paper explanation) | 
| 11/20/23 | mini-hw-projects | Mini Work Timer | 
| 11/16/23 | Video | MLOps Community Mini Summit #3 Talk: What The Kaggle LLM Science Exam Competition Can Teach Us About LLMs | 
| 11/7/23 | TILs | Getting My YouTube Videos as MarkDown pages for this Quarto blog | 
| 10/23/23 | Video | Evaluating Diffusion Models with PickScore | 
| 10/18/23 | Video | How I ‘monetized’ an AI demo | 
| 9/13/23 | mini-hw-projects | Text-to-3D-Print | 
| 9/13/23 | mini-projects | Mini Experiment: DoLa w/ a guidance scale | 
| 9/6/23 | mini-projects | Mini Experiment: Hiding Easter-Eggs in LLMs | 
| 9/5/23 | Video | Gaussian Splatting explorations | 
| 9/1/23 | Video | LLM basics #4 with the LLM Science Exam Kaggle Competition - Retrieval | 
| 9/1/23 | Video | What is Speculative Sampling | 
| 8/11/23 | TILs | Exporting from Wordpress into a Quarto Blog | 
| 8/10/23 | Video | LLM basics #3 with the LLM Science Exam Kaggle Competition - Training a task-specific model for MCQs | 
| 8/9/23 | Video | LLM basics #2 with the LLM Science Exam Kaggle Competition - Generating Synthetic Data | 
| 8/7/23 | Video | LLM basics #1 with the LLM Science Exam Kaggle Competition - Zero-Shot approaches | 
| 8/4/23 | blogs | Exploring Softmax1, or “Community Research For The Win!” | 
| 7/30/23 | mini-projects | Bark To Bark: Adding Noise Control to a Game | 
| 7/1/23 | blogs | Why and how I’m shifting focus to LLMs | 
| 4/6/23 | blogs | A Recipe for Training Good Generative Models | 
| 4/4/23 | mini-projects | Reward Hacking with RainbowDiffusion | 
| 3/2/23 | mini-projects, Reports | Style Loss Showdown | 
| 2/15/23 | Video | Stylizing Video with Diffusion Models | 
| 2/13/23 | Reports | A Deep Dive Into OpenCLIP from OpenAI | 
| 2/3/23 | Video | InstructPix2Pix Explained - Edit Images with Words! | 
| 1/30/23 | Video | Stable Diffusion Deep Dive Notebook Run-through | 
| 1/15/23 | mini-projects | Genuary 2023 | 
| 1/10/23 | Video | Podcast E6 - Wasim Lorgat | 
| 1/10/23 | Reports | Mid-U Guidance: Fast Classifier Guidance for Latent Diffusion Models | 
| 12/30/22 | blogs | DistilHN: Summarizing News Articles with Transformers | 
| 12/30/22 | Video | Building DistilHN - Using ML to Summarize News Articles | 
| 12/23/22 | Video | HuggingFace Class | 
| 12/22/22 | Video | HuggingFace Diffusion Model Class | 
| 11/22/22 | Video | Editing Images with Diffusion Models (lit review _ overview of different approaches) | 
| 11/13/22 | Video | TGL Discussion Series - Hamel Husain | 
| 11/10/22 | Video | TGL Discussion Series - Jason Antic | 
| 11/10/22 | Video | TGL Discussions Series - Apolinario Passos | 
| 11/10/22 | Video | TGL Discussion Series - Teodora Szasz | 
| 11/10/22 | Video | TGL Discussions Series - @EnzymeZoo | 
| 10/25/22 | blogs | How Predictable: Evaluating Song Lyrics with Language Models | 
| 10/11/22 | Video | Progressive Distillation for Fast Sampling of Diffusion Models (paper sumary) | 
| 8/1/22 | Video | Summarising Neuromatch Deep Learning Course in 20 minutes | 
| 7/19/22 | Reports | Mapping Econimic Wellbeing from Space | 
| 6/24/22 | Video | Paper exploration - Making Diffusion Models go BRRR! | 
| 6/13/22 | Video | AIAIART #9 - Evolutionary Algorithms and CPPNs | 
| 6/2/22 | Reports | WhistleGen V2: Making Music With Transformers | 
| 5/27/22 | blogs | Update Time | 
| 5/22/22 | Reports | Fun With Neural Cellular Automata | 
| 5/16/22 | Video | AIAIART #8 - Neural Cellular Automata | 
| 5/9/22 | Reports | CLOOB Conditioned Latent Denoising Diffusion Generative Adversarial Networks (GANs) | 
| 5/8/22 | Video | AIAIART Lesson 7.5 | 
| 5/3/22 | Video | AIAIART Lesson #7 - Diffusion Models | 
| 4/17/22 | Video | AIAIART Lesson 6 | 
| 4/12/22 | blogs | Fine-tuning a CLOOB-Conditioned Latent Diffusion Model on WikiArt | 
| 4/11/22 | Video | AIAIART Lesson #5 | 
| 4/5/22 | Video | HugGAN sprint - demo project | 
| 3/29/22 | blogs | Sketchy Unet | 
| 2/18/22 | blogs | Turtle Recall: A Contrastive Learning Approach | 
| 2/15/22 | Video | Come along for the ride as I dive into an ML contest (MABe 2 on AICROWD) | 
| 1/19/22 | Video | AI Art Showreel (Jan 2022) | 
| 11/24/21 | blogs | AIAIART Course Retrospective | 
| 11/9/21 | blogs | Playing with Tweet Sentiment Analysis | 
| 10/18/21 | Video | AIAIART Lesson #4 (Live session recording) | 
| 10/16/21 | Video | AIAIART Lesson #3 | 
| 9/28/21 | Video | AIAIART Lesson 2 | 
| 9/20/21 | Video | AIAIART Lesson 1 | 
| 8/10/21 | Video | ‘Mars Affair’ | 
| 7/21/21 | Video | Getting to Grips with AI ART | 
| 5/20/21 | Video | Competition Attempts - ADDi Alzheimers Detection Challenge | 
| 5/13/21 | blogs | WhistleGen: Generating Traditional Irish music with ML | 
| 5/13/21 | blogs | In Brief: Playing with Class Imbalance | 
| 4/22/21 | blogs | BirdClef Entry: Bird Call Classification with FastAI | 
| 4/22/21 | Video | Competition attempts - BirdClef 2021 Initial Approach | 
| 4/22/21 | Video | Competition Attempts - MABE Challenge first thoughts | 
| 3/29/21 | Video | Meet DotSwarm - A Slime-Mould-Inspired Shader | 
| 3/25/21 | Video | Days of Code - Intro and Recap of the first few weeks | 
| 3/25/21 | Video | Days of Code 2 - WhistleGen - generating Irish music with machine learning | 
| 10/30/20 | blogs | Language Models for Protein Sequence Classification | 
| 9/16/20 | blogs | Data Glimpse: Predicted Historical Air Quality for African Cities | 
| 8/12/20 | blogs | Personal Metrics | 
| 6/16/20 | blogs | Update: Why the pause? | 
| 2/22/20 | blogs | Self-Supervised Learning with Image网 | 
| 2/5/20 | blogs | Meta ‘Data Glimpse’ - Google Dataset Search | 
| 1/24/20 | blogs | Swoggle Part 2 - Building a Policy Network with PyTorch, dealing with Cheaty Agents and ‘Beating’ the Game | 
| 1/20/20 | blogs | Swoggle Part 1- RL Environments and Literate Programming with NBDev | 
| 1/16/20 | blogs | Behind the scenes of a Zindi Contest | 
| 11/29/19 | blogs | Snapshot Serengeti - Working with Large Image Datasets | 
| 11/12/19 | blogs | Deep Learning + Remote Sensing - Using NNs to turn imagery into meaningful features | 
| 10/29/19 | blogs | Zindi UberCT Part 3: Uber Movement | 
| 10/21/19 | blogs | Zindi UberCT Part 2: Stepping Up | 
| 10/19/19 | blogs | Zindi UberCT Part 1: Getting started | 
| 9/12/19 | blogs | Packaging a classification model as a web app | 
| 9/6/19 | blogs | Pothole Detection (aka Johno tries fastai) | 
| 8/27/19 | blogs | Trying Automated ML | 
| 8/7/19 | blogs | Mapping Change in Cropland in Zimbabwe (Part 2) | 
| 7/14/19 | blogs | Mapping Change in Cropland in Zimbabwe (Part 1) | 
| 7/13/19 | blogs | Data Glimpse: Cropland and Settlement maps from QED.AI | 
| 7/8/19 | blogs | Data Glimpse: Nighttime Lights | 
| 7/7/19 | blogs | Data Glimpse: South Africa’s Hydrological Data | 
| 6/28/19 | blogs | Data Glimpse: Visualizing Economic Activity with the G-Econ Project data | 
| 6/27/19 | blogs | Tutorial: Improving Crop Type Predictions | 
| 6/26/19 | blogs | Tutorial: Predicting Crop Types with GEE | 
| 6/19/19 | blogs | New Database: Forest Change in Different Regions | 
| 6/11/19 | blogs | Zindi Competition 2 - Trying CatBoost on the Traffic Jam Challenge | 
| 6/11/19 | blogs | Zindi Competition 1 - Making Art! | 
| 6/7/19 | blogs | Looking at traffic/congestion vs air quality AKA a quest for data | 
| 5/17/19 | blogs | ML and IR Tomography | 
| 3/12/19 | blogs | Mapping Baobabs, Part 3 - Model Applicability | 
| 3/7/19 | blogs | Mapping Baobabs, Part 2 - Qualifying Model Performance and More Complex Models | 
| 2/15/19 | blogs | Mapping Baobabs, Part 1 - Modelling the Density of Baobab Trees in Zimbabwe with a Linear Model in GEE | 
| 1/22/19 | blogs | Curious correlations | 
| 1/22/19 | blogs | Christmas games - simulation and lazy stats | 
| 1/11/19 | blogs | init(self): What is this blog | 
| 11/16/18 | mini-hw-projects | CIRTS - Configurable Infra-Red Tomography systems | 
| 7/1/18 | mini-hw-projects | Owning a 3D printer | 
| 7/24/16 | mini-hw-projects | Studying automation with an octopus overlord! | 
| 6/4/16 | mini-hw-projects | Mini PCB printer | 
| 4/9/16 | mini-hw-projects | Scanning EIT Imaging System (SEITIS) Attempt | 
| 1/28/16 | mini-hw-projects | Pimp my dormroom | 
| 6/29/15 | mini-hw-projects | Cell Phone Oscilloscope | 
| 7/3/14 | mini-hw-projects | Micromouse attempt | 
| 6/17/14 | mini-hw-projects | Kwese - musical instrument | 
| 3/20/14 | mini-hw-projects | Electronic Bagpipes | 
| 3/20/14 | mini-hw-projects | Mini Laser Cutter | 
| 1/1/14 | mini-hw-projects | Multitouch Surface | 
| 12/1/13 | mini-hw-projects | DIY Cellphone Macro Lens | 
| 10/2/13 | mini-hw-projects | Laptop in a briefcase | 
| 9/2/13 | mini-hw-projects | Junk VDG | 
| 8/3/13 | mini-hw-projects | Easy 3D Scanner | 
| 7/4/13 | mini-hw-projects | IR Webcam | 
| 1/1/10 | mini-projects | Title |