← Index

Teaching Robotics

I coach VEX IQ, and a student who is ready to leave block code has nowhere obvious to go. The official material stops at blocks. The competition material assumes you already write C++. In between is a middle schooler who can build a robot that works and cannot yet write a for loop.

So I wrote the fourteen weeks in between.

blocks to text wk 1-2 control flow wk 3-4 sensors wk 5-6 PID wk 7-8 odometry wk 9-10 algorithms wk 11-12 capstone wk 13-14 starts at a semicolon ends at a skills autonomous
Dead reckoning lands in week six so that week nine has something to be the answer to.

The order is the argument. Students meet dead reckoning early, watch a robot miss by four inches for reasons nobody can point at, and only then get told what odometry is. Handed the fix first, they would have learned a technique. Handed the problem first, they learn why anyone bothered. the problem before the fix

Meeting them where they are

The first page is not week one. It is four side-by-side pairs: a stack of blocks on the left, the C++ it compiles to on the right. Drive for two seconds. If the bumper is pressed, stop. Repeat four times. Set a variable, then use it.

Nothing new is taught on that page at all. They are the same four programs every one of them has already written, in the other notation. The point is to make it obvious that they are not starting over, and that the hard part is the punctuation rather than the ideas.

The semicolon gets explained as the thing that snaps two statements together, which is what the notch on a block already does for them.

Next to the thing it teaches

Teaching Robotics the lesson VEXcode IQ the robot
Every layout decision came out of one number: half a laptop screen.

That was the only real design constraint, and it settled everything else. A student should never have to alt-tab away from the editor to read the next instruction.

There is no server and no install. It is HTML you double-click. Progress is kept in localStorage, which means it lives in one browser on one machine and resets if a student moves, and that is on purpose. No accounts, no roster, nothing a coach has to administer before a lesson can start.

The password

The site sits behind a password, and the README says exactly what that is worth: a client-side gate that anybody who opens developer tools can read straight out of the JavaScript. Good enough to keep a class's material in one place. Not security.

It felt important to write that down rather than let it read as protection. The document is for teachers, and a curriculum about how computers actually work is a strange place to start being vague about how a computer actually works.

What I would change

Quiz answers go nowhere. For a self-study tool that is defensible, and it also means I cannot see which question a whole class got wrong, which is the single thing that would tell me whether a lesson landed.

The later weeks lean on code I had already written for my own IQ robot, the odometry loop and the go-to-a-point motion. Teaching from it made me clean it up more than competing with it ever did, which I did not expect and probably should have.