The Curious Engineer

All blogs / AI / ML

Tim Kellogg

timkellogg.me

Principal AI Architect. Creator of open-strix, a harness for building agent teams. Writing about AI architecture, stateful agents, and what happens when you give AI memory.

AI / MLSoftware / engineering practice

Posts
146 from 28 May 2010 to 1 Aug 2026
Posting
monthly (16 in the last year)
Kind
personal blog
Feed
https://timkellogg.me/blog/atom.xml

2026 11

  1. Prompt Walkthrough: Fixing my 3D printer with Codex (and Chutes & Ladders!)
  2. Lanius: AI Agents Need an OS, Not a Bigger Brain
  3. Ambient Associative Memory
  4. Agent Memory Patterns
  5. Shared Nothing Engineering
  6. How to forget
  7. Plan Mode Is A Trap
  8. Stateful Agents: It's About The State, Not The LLM
  9. The Levels of Agentic Coding
  10. Viable Systems: How To Build a Fully Autonomous Agent
  11. Is Strix Alive?

2025 33

  1. Memory Architecture for a Synthetic Being
  2. What Happens When You Leave an AI Alone?
  3. Strix the Stateful Agent
  4. MCP Colors: Systematically deal with prompt injection risk
  5. Agents are Systems Software
  6. AI generated code is slop, and that's a good thing
  7. Don't Parse, Call
  8. Does AI Get Bored?
  9. How I Use AI
  10. Link Graveyard: A snapshot of my abandoned browser tabs
  11. GPT-5 failed the wrong test
  12. Explainer: K2 & Math Olympiad Golds
  13. Do LLMs understand?
  14. Software Engineering
  15. Layers of Memory, Layers of Compression
  16. A2A Is For UI
  17. MCP Resources Are For Caching
  18. Agents Need Responsibility
  19. I was wrong: AI Won't Overtake Software Engineering
  20. I was wrong: AI Won't Overtake Software Engineering
  21. MCP is Unnecessary
  22. Inner Loop Agents
  23. LLMs Are Not Security Mitigations
  24. Multi-Agents Are Out, PID Controllers Are In
  25. MCP Demystified
  26. Target Practice: Resumes, But Better
  27. LLaDA: LLMs That Don't Gaslight You
  28. Recursive Improvement: AI Singularity Or Just Benchmark Saturation?
  29. S1: The $6 R1 Competitor?
  30. USA Could Win By Rolling Back AI Export Controls
  31. Explainer: What's R1 & Everything Else?
  32. Powershell Users Like To Vomit
  33. Normware: The Decline of Software Engineering

2024 26

  1. Explainer: Latent Space Experts
  2. AI Engineering Primer
  3. Is ML Experience A Liability For AI Engineering?
  4. How Can I Be An AI Engineer?
  5. Entrapix: You Should Have A ConfusedAgentError
  6. LRMs Are Interpretable
  7. We need an LSP for AI
  8. Cursor: How I rollback multi-file changes
  9. Why is entropix important?
  10. What is entropix doing?
  11. I Taught My 8yo Subduction Zones With NotebookLM
  12. AI Didn't Write That Bug
  13. Who Wins With Cursor & Copilot?
  14. Does Prompt Caching Make RAG Obsolete?
  15. Vector Stores Are Dumb
  16. Accountants Should Do Hackathons!
  17. Mistral: Are LLMs Commodities Now?
  18. Why The Llama 3.1 Announcement Is Huge
  19. Request for Meetings
  20. RAG Trick: Embeddings are Spheres
  21. How Emotional is Trump?
  22. Emopoint: Extract and measure emotion from text
  23. htmx is composable??
  24. Release: Fossil 0.2
  25. Application Phishing
  26. Birb + Fossil: An RSS Revival?

2023 6

  1. Are They Actually Afraid of AI?
  2. A Better Mastodon Client
  3. LLMs: Fake it till you make it
  4. LLMs are Interpretable
  5. On Waiting
  6. Regex Isn't Hard

2022 3

  1. Sprint Driven Development
  2. Just commit more!
  3. Three Plates

2021 1

  1. Cold Paths

2016 2

  1. Why I Don't Share Baby Pictures On Facebook & Twitter
  2. Your Debugger Is Obsolete

2015 4

  1. Websockets Are Not Magical
  2. Can HTTP/2 Replace MQTT?
  3. Was C For Hipsters?
  4. IoT Startups Will Fail Without Standards

2014 5

  1. ThingMonk 2014: Toward a more intelligent IoT
  2. Why Open Source May Not Always Work For IoT
  3. FP For The Working Programmer: Why Is null Bad?
  4. MQTT - Another Implementor's Perspective
  5. Why I'm Not Going To Stop Posting Go Links

2013 2

  1. An Unbiased Comparison of F# and Scala
  2. The Single Point of Failure

2012 14

  1. Value Types and Memory Usage
  2. Jump-Location: autojump for Windows
  3. How to use AutoFactories in StructureMap
  4. Trappings: An easier way to do functional testing
  5. Why don't more developers contribute to open source?
  6. Why Open Source Is Worth Your Time
  7. Alternate Code Coverage Metrics
  8. Why Object IDs & Primary Keys Are Implementation Details
  9. Abstract Data Layer Part 1: Object ID Types And Conventions
  10. Discriminated Unions in C# Mono Compiler
  11. One Thing I Learned From F# (Nulls Are Bad)
  12. C# Reflection Performance And Ruby
  13. Thoughts on the C# driver for MongoDB
  14. BDD ideas for structuring tests

2011 32

  1. Can Bad Code Ruin Your Career?
  2. Behavior Driven Development in C#
  3. Why I hate generated code
  4. Defining Watergile
  5. The Pain and Glory of C
  6. Occupy Wall Street Is Not Stupid
  7. Quiet Time
  8. AutoMapper And Incompleteness
  9. View Models, AutoMapper, and The Law of Demeter
  10. Introducing comboEditable
  11. Parenthetical Thesis on Ruby.NET (or IronGem (or whatever the kids call it these days))
  12. Launching personal website
  13. Maybe Node isn't so bad
  14. Git is a platform
  15. Semantic versioning
  16. Got a backbone?
  17. Introducing NetLint
  18. Hipster developers
  19. Some useful git aliases
  20. Scripting with rake
  21. Automocking containers are not just for mocks
  22. Introducing MoqContrib Auto-mocking Container
  23. Object Incest
  24. Unit testing databases - with NHibernate!
  25. Introducing ObjectFlow
  26. Crass grammar drives me crazy
  27. I'm becoming a DVCS snob
  28. NUnit Extension Methods
  29. The internal secrets of Git
  30. Mind control
  31. Declaring the Future of Programming
  32. Would I choose Git again?

2010 7

  1. Why Linux Sucks
  2. Object-Form mapping
  3. Why we chose Git instead of Subversion
  4. CouchDB + Ext as a Replacement for Server Code
  5. Playing With ExtJS
  6. Why I Decided To Start A Blog
  7. Incidental Inversion of Control