Here lie the posts of the past
Sometimes, the cobwebs have cobwebs.
Sometimes, the cobwebs have cobwebs.
It’s 2026 and I’ve been trying to decide what AI and LLMs are useful for in my day to day teaching. One of the things that has been floating around has been the promise of reducing admin time for teachers using LLMs, but I honestly haven’t found the argument to be that compelling. I don’t trust it near the things that take up most of my admin time like communicating with students, parents, and partner schools. It’s mostly been terrible for curriculum planning, mediocre at best for assessment design, and laughably bad at generating lesson slides, particularly anything involving diagrams. ...
Pre(r)amble This is part of a series of posts documenting some of the process of (building|cat herding an AI agent to build) Clipy, an easily hosted Python teaching tool built with just front-end JS and a WASM port of MicroPython. You can find the GitHub repo for the project here I keep a relatively up to date version here if you want to try it What we had before Last week was mostly about fixing up issues with implementation methods. ...
Pre(r)amble This is part of a series of posts documenting some of the process of (building|cat herding an AI agent to build) Clipy, an easily hosted Python teaching tool built with just front-end JS and a WASM port of MicroPython. You can find the GitHub repo for the project here I keep a relatively up to date version here if you want to try it What we had before Last week was adding the record-replay feature (lots more about that this week, what a rabbit hole) and putting in nicer file management (which still needs some tweaks, but I’m pretty happy with it). ...
Pre(r)amble This is part of a(n aspirationally) series of posts documenting some of the process of (building|cat herding an AI agent to build) an easily hosted Python teaching tool built with just front-end JS and a WASM port of MicroPython. You can find Part 1 here You can find Part 2 here You can find Part 3 here You can find Part 4 here You can find Part 5 here This is Part 6! I have a (somewhat) up to date version of this tool running on the site. Things might occasionally be broken, things might not work the same way as they did before. ...
Pre(r)amble This is part of a(n aspirationally) series of posts documenting some of the process of (building|cat herding an AI agent to build) an easily hosted Python teaching tool built with just front-end JS and a WASM port of MicroPython. You can find Part 1 here You can find Part 2 here You can find Part 3 here You can find Part 4 here This is Part 5! You can find Part 6 here I have a (somewhat) up to date version of this tool running on the site. Things might occasionally be broken, things might not work the same way as they did before. ...
Pre(r)amble This is part of a(n aspirationally) series of posts documenting some of the process of (building|cat herding an AI agent to build) an easily hosted Python teaching tool built with just front-end JS and a WASM port of MicroPython. You can find Part 1 here You can find Part 2 here You can find Part 3 here This is Part 4! You can find Part 5 here You can find Part 6 here What we had before See last week’s post for some of the details and screenshots. ...
Pre(r)amble This is part of a(n aspirationally) series of posts documenting some of the process of (building|cat herding an AI agent to build) an easily hosted Python teaching tool built with just front-end JS and a WASM port of MicroPython. You can find Part 1 here You can find Part 2 here This is Part 3! You can find Part 4 here You can find Part 5 here You can find Part 6 here This week I was really excited about getting the Abstract Syntax Tree feedback and testing working, as well as just tightening up the user experience a bit, hiding knobs and dials when they weren’t used, etc. I’m getting close to the end of my initial feature list! ...
Pre(r)amble This is part of a(n aspirationally) series of posts documenting some of the process of (building|cat herding an AI agent to build) an easily hosted Python teaching tool built with just front-end JS and a WASM port of MicroPython. You can find Part 1 here This is Part 2! You can find Part 3 here You can find Part 4 here You can find Part 5 here You can find Part 6 here What we had before The outcome of the previous week’s achievements was pretty satisfying since I’d tried and failed to solve the problems of having a responsive WASM Python runtime for user code before. Being able to lean on the agent to do things like make changes to C code where I knew what the outcome needed to be, and knew how it needed to work, but didn’t know what to do to make it happen was so valuable. ...
Pre(r)amble I’m in a strange place in my head with respect to coding agents. On one hand I see all the really dumb stuff that “intelligent” chatbots produce, on the other hand, I’ve used them myself to turn something from “I should do that sometime when I’m motivated” into something I can actually use. It’s a weird time to be a teacher, let alone one of Digital Technologies. Anyhow, this post (and hopefully some future ones) is an attempt to use AI to help shift some projects out of my head and backlog, and try and get them made. I’m aware of some of the things I found with my first AI coding experiment, in that rather than necessarily turning me into a “10x Engineer”, in fact it can turn me into a “0.95x Engineer”, getting me 95% of the way there and then getting stuck. The wonderful Cory Doctorow had a turn of phrase “reverse centaur” in this post, referring to when humans are forced to use AI. I loved the term, but probably not for the reason it was intended. I feel that when you’re being a centaur using AI agents, sometimes you’re the human, and sometimes you’re the horse(’s arse). ...
Note: There’s a companion post to this about using agentic AI here. Pre(r)amble I have a problem. Well, I have several problems, but this post is specifically about my habit of seeing a neat looking microcontroller, not really thinking about whether I need another one, and then buying a couple (because, well, you need two just in case, right?). In the office I have: A stack of v1 micro:bits Some third party micro:bit clones Several v2 micro:bits Raspberry Pi Picos (2040) DFRobot Beetles (ATmega) DFRobot Firebeetles (ESP32) Some ESP8266s Various ESP32 variants (some camera versions, some plain boards) How many have I actually gotten around to writing code on? One of the Firebeetles 😂 …and all of the micro:bits. Why? Having nice accessible inputs and outputs makes programming so much more enjoyable. The micro:bit completely nails this - no faffing around with which pin to use for the buttons, no I2C or SPI nonsense needed to poke at the accelerometer, and nothing funky to do to access the display, sound, or mic. Just use the nice simple API, load the code via USB and off you go. Even when running peripheral sensors, servos, etc the micro:bit is just a joy to get going with. ...