Here lie the posts of the past
Sometimes, the cobwebs have cobwebs.
Sometimes, the cobwebs have cobwebs.
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 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 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. ...
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. ...
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. ...
The last couple of months I’ve been working through Reuven Lerner’s Pandas Workout book. Summary The book covers the basics of pandas in a way that I felt was generally easy to understand and absorb, particularly the first couple of chapters on Series and DataFrames. The latter half of the book moves a bit more quickly than I would have liked. Each exercise is a discussion of the topic, a set of worked steps and questions, and three or so “beyond the exercise” questions to solve without the help of the book. There is a GitHub repo of notebooks containing all of the book code and the “beyond” solutions. ...
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? ...
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. ...
As a teacher of relatively hands-on subjects, I regularly get roped into running sessions with groups of Year 6 students coming in for Orientation Days. Since getting my first batch of Micro:bits I have been running short sessions with physical computing since it’s short and accessible, and the kids can achieve something concrete by the end of a 45 minute session. The last couple of years I have been running sessions using laser cut Inchworm robots, where students hook up a servo, battery, and infrared sensor (to demonstrate external sensing but also to remove the need to fiddle with buttons on moving objects) to the Micro:bit, and then write some basic code investigating ideal angles of movement for the servo, delay time in between moves, and utilising loops. ...