Ryan Toal
Director of Sport · EasyPE
I was vibe coding before I knew what it was called.
I stumbled across p5.js — a JavaScript animation library — and built an animation for IGCSE PE. Then I turned it into a student task. They made their own. It became the basis of their presentations. I had no idea I was coding.
Around the same time I got fed up with fixture letters. Same template every time — venue, timings, names, kit — every detail changed by hand, hundreds of times. I asked AI how to automate it. That led me to Google Apps Script (GAS). And that changed something.
When I started to understand what GAS could do, my mind was blown. I'd been using a computer for years without realising a massive aspect of its functioning. That it was capable of far more than I'd ever asked of it. It was like seeing myself as a senior typing with one finger when the other nine were right there.
There's a phrase going around — "vibe coding" — which gets misread as effortless. Describe what you want, the AI writes it, job done. That hasn't been my experience.
Writing the code is the hard part. What coders do is an incredible feat of human creativity and intelligence. What vibe coding gave me was a way to describe what I wanted precisely enough for that craft to work with.
The Sports Day Manager — my most-used app, run live at a real whole school sports day — took over 200 build attempts. Each one involved changing the idea, finding a bug, fixing it, discovering two more, testing with students, rebuilding a section, hitting a wall, stepping back, trying again.
AI needs directing. It needs context, correction, testing, and patience. It also needs to be called out — because it will agree with you when it shouldn't.
“It will agree with you when it shouldn’t. And you don’t learn from being agreed with.”
The hard part is knowing what you actually want and being precise enough to say it. That's the skill. It transfers.
Testing with real users — students, colleagues — is worth ten times more than testing yourself.
Everything on this site I have used in my own classes, with real students. These are the ones I'm confident in after 2 years. The rest will come.
ChatGPT — Image creation and visual content.
Gemini — Thinking out loud. I'm better at talking than typing. Gemini's conversational flow works when I'm working through an idea.
DeepSeek — Bug fixes. Sharp for iterative debugging and high free token usage.
Claude AI — My preferred platform for launches. Where most of the EasyPE apps came together.
Caffeine.ai — Building and deploying the actual web apps. Every app on this site is hosted here.
Use the right one for the right task, but that is always subjective.
More advanced reusable teaching tools. A new element of a teacher's toolbox.
Some apps were pure admin — the fixture letter automator handles unlimited squad invitations, formal RSVP, school branding, all automated. For the BISAL conference I built a roster manager and a member's interest in buying one for their school gave me the original inspiration to start EasyPE. Others came from putting myself in my students' shoes — thinking about what would actually make them want to show up and compete.
I created an app to gamify Orienteering. Students were directed on the app around a 20-point orienteering course, answering questions which the app verified live, keeping record of their stations hit and most importantly an exact time of how long it took. Students could see the leaderboard even before they started and they were showing self-directed goal setting, aiming to be the new champion. I made it cross-curricular so there were four subjects to try.
Students chasing a live leaderboard ran harder than they ever do round the track.
Now students were running between checkpoints with big smiles. I want this app to become a community project where the community of EasyPE users direct me for what they want to see next. This app really showed me the impact of high quality use of technology in PE and it made me double down on my investment of time and money into this EasyPE project.
Running a whole school sports day used to mean clipboards, someone sprinting results between tables, and a twenty minute gap before anyone knew what happened in the 100m. With the Sports Day Manager, results were on screen seconds after each event finished — their time, whether they'd broken a school record, a running house points total that everyone in the arena could follow. Students knew immediately. That changed the atmosphere in a way that's hard to describe until you've seen it. We're using it again next year, with improvements based on how it performed the first time round.
The addition of live feedback for students in PE was the real strength of EasyAthletics. Similar gamification concepts were applied in this app originally built for students. Then I realised the teacher dashboard potential for helping select athletics teams, helping to recognise talent in award ceremonies. Helping to create uniform assessment rubrics throughout the PE department for athletics. No shared ugly Google Sheet. Useful analytics. One thing I realised this year is all students love leaderboards, and the opportunity to fairly feature on it purely through their own efforts. EasyAthletics provides this and I am looking forward to building V2.
I'm running 1-to-1 online CPD sessions — starting one-to-one on purpose, because I want to understand what you're trying to build before we start, not run a generic tutorial that doesn't fit your school.
This grew out of teaching and still fits around a full-time job. The goal was never to turn teachers into developers — it's better practice, less admin, more time with students.
Details are on the Build with AI page. First callers get direct time with me.
Ryan Toal — Director of Sport
Full-time PE teacher and Director of Sport. BISAL Conference Co-Chair. Building AI-powered tools for educators in between lessons, fixtures, and parent-teacher evenings. All views are honest. All tools are tested in real classes.