WASM Python - Cat Herding 01

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). ...

Thu, Aug 28, 2025 · Rob

Agent Experiment

Pre(r)amble It’s hard to avoid all the AI infesting everything these days, but apart from using completions a bit in VSCode Copilot with the occasional conversation about different libraries (which I find a pretty pleasant way to learn about new things, even if those new things are occasionally BS) I haven’t really used it for code a lot. I read Github’s breathless “now, with AGENTS” release a while back, and never really gave it much thought until they also put out their Copilot Adventures … tutorials? The word “tutorial” feels a bit off, since the activities are couched in terms of “you’re going to make X!” but you’re not really making anything - you’re just being given examples of prompt structure to get the agent to build the thing for you. ...

Sat, Aug 9, 2025 · Rob

Genuary 2025

January / Genuary is over for another year, and I’m coming to the end of my enforced holiday, starting my new remote teaching job this week. Despite the “need to find a new job” pressure, it’s actually been pretty nice to sink some time into things like the Pandas Workout book, Advent of Code (my first 50 stars, although I relied on some explanations for a couple of the problems) and Genuary. For Genuary I got through most of the month (certainly a lot more than last year when I was working throughout January) and made a few things that I was pretty happy with, so I thought I’d put together some outputs from my Genuary code here, since it’s nice to be able to look at everything all together. ...

Sun, Feb 2, 2025 · Rob

LLMs at the Arcade

I was mentoring at our local fortnightly Coder Dojo session yesterday and heard a couple of students talking about getting help from ChatGPT. My ears pricked up because these are mostly younger kids (mid-late primary, a few in early secondary) and, as much as I try to encourage them to broaden their horizons, usually are firmly in Scratch-land, with a few who have been working in MakeCode Arcade; how were they using LLMs here? ...

Sun, Nov 24, 2024 · Rob

I go, hugo

TL;DR; I’ve given Publii the boot and shifted this site to hugo. I myself got a gentler boot, being made redundant and so eyeing off what to do next. 2020, it’s been quite a year OK so it’s actually 2024, but whilst migrating this site to Hugo I noticed I haven’t written anything for the last four years or so. It isn’t much of an excuse for the 2020 and 2021, but from 2022 I’ve been out of the classroom, working at a Digital Technologies EdTech platform. As such most of the interesting stuff I worked on was either internal, and thus not really relevant to write about, or external, and published as a course or delivered as part of a professional development session, and so I didn’t really feel like it was something to write about on my personal site. I know that sort of excuse doesn’t hold much water for lots of people who write about internal work topics all the time, but it feels right to me. ...

Tue, Nov 19, 2024 · Rob

Micro:bit Haunted House

Testing out LDR sensors This year I have been teaching robotics to Year 8s for the first time. I’ve mainly been using BBC Micro:bits, since they are quite affordable, robust, are easy to hook up to a range of widely available components, and are easy to program in a few different environments (MicroPython being my weapon of choice). To keep myself entertained, and to provide my students with a sample project (although more complex code-wise than they’re likely to accomplish) I decided to make something myself this term while my class worked on their own group projects (theirs are themed after the UN Global Goals). I had ideas for either building a carousel or a light gun game, and settled on the latter so I didn’t have to also tackle 3D printing out cams and gears and the like. ...

Mon, Nov 5, 2018 · Rob

Migrating from Squarespace

I’ve been getting a bit antsy about continuing to pay Squarespace to host Headtilt, mostly due to the infrequent updates that I seem to be doing over the last couple of years, and partly because I think I feel the need to tinker with stuff. For ages I’ve liked the idea of static site generators, and occasionally I’ll go and play with one for a while before falling out of love with the idea of writing up posts in Markdown, having to remember its syntax for links, images, etc, and then go running back to the arms of a regular CMS. ...

Sat, Aug 18, 2018 · Rob

Publii to Microblog

When deciding to play around with Publii (after taking a dislike to Jekyll, and not finding anything else that tickled my fancy), the first problem seemed to be that despite supporting tags for posts, there was no way to create an RSS or JSON feed based on a tag. Publii creates a feed, but it contains all posts regardless of the category. Two alternatives presented themselves, neither particularly nice: ‘hide’ all posts except Microblog tagged posts from the feed. This is both kludgy, and not pleasant looking, since only Microblog posts would then appear on the front page of the site. Write a script to create a new feed from the main one with everything except Microblog tagged posts filtered out. Not very hard, but requires running the feed filter after each post. This wouldn’t be a big deal if Publii followed most other static site generators in running with command-line scripts, since I could just add another script to the chain of posting, but since it all runs through a GUI program with a shiny “sync changes” button, it means then manually (or on a schedule to check for changes with a cron job maybe) pulling the JSON feed, filtering posts, and then pushing the new file to the site again. (not a real option) figure out how to modify Publii to do what I wanted. Anyhow, I guess option 2 seems like the way to go since it’s gross but simple to do. If it turns out I care (or post!) enough, I’ll automate it later.

Sat, Aug 18, 2018 · Rob

Playing with Affinity Designer Brushes

The Backstory Before Christmas I was noodling around with Affinity Designer in an attempt to be a bit better at design. Part of this has been getting more familiar with the tools by working through a bunch of the tutorials at Tuts+. Tuts+ hosts some tutorials aimed at Designer, but working through the ones aimed at other software like Illustrator has been an interesting exercise in figuring out Designer’s tools. While I was making a robot face, I was trying to make wires by putting a gradient on a stroke, but it seems Designer won’t allow you to have a gradient which follows parallel to the stroke. Instead it will apply the gradient to the stroke colour in the same manner as filling. ...

Sun, Jan 1, 2017 · Rob

Real Heroes of the Touch Bar

After using the new MBP for a week, I’m coming to appreciate the apps that do a good job with their Touch Bar behaviour. I wrote about Affinity Designer before. Pixelmator uses a similar approach, although it seems to be a bit inconsistent, since it allows you to choose tools, but not all of them. Pixelmator: Touch Bar tool options The real heroes that I’ve found so far are Terminal, Preview, and whatever the app is that takes screenshots behind the scenes based on ⌘-Shift-3/4/6 keyboard shortcuts. The default (and optional) buttons for these mostly seem to have been provided to give actual value to a software button, rather than just be there to show that there’s support. ...

Wed, Dec 14, 2016 · Rob