Categories
News

I Made My Debut as a RumiCar Instructor ☆

Hello! My name is Muto, and I teach the RumiCar programming classes. In my day job I am an ordinary engineer who builds web systems for businesses.

On August 11, at Hokutopia in Oji, Tokyo, we held a RumiCar programming class and our 18th driving meet. It was a full day: we set up the venue at 9 a.m. and wrapped up the driving meet at 6 p.m.

I have had my share of chances to explain things to people before. But this was my first time teaching a RumiCar class, and to be honest, I was a little restless the night before. When the subject changes, everything about teaching feels different.

Now that it is over, what stays with me is very simple.

I want to do it again.

And I want many more people to experience this time for themselves.

As participants — and as instructors, too.


So, what is RumiCar?

For those who have not heard of it yet, let me explain briefly.

RumiCar is a small self-driving car that you program yourself. It is about the size of the palm of your hand.

The front of the car carries three laser distance sensors. Each fires a laser and calculates distance from the time the light takes to bounce back off an object. This tells the car, in three directions ahead, how far away the walls are.

These sensors are RumiCar’s eyes.

And the program you write is what decides, from the numbers those eyes bring back, how the car should drive. The right wall is getting close, so ease left. The road ahead is clear, so go. You write every one of those decisions yourself.


Autonomous driving really comes down to just three things

The phrase “autonomous driving” can sound intimidating. It did to me at first.

Yet what we teach in the class is almost disappointingly simple. Boiled down, autonomous driving does only these three things.

First, learn what is around you through sensors. Next, decide how to drive in that situation. Then, command the car to make that move.

That is all.

A real autonomous car loaded with sensors worth tens of millions of yen and a palm-sized RumiCar share the same skeleton. The difference, you could fairly say, is only complexity and precision.

So you start with the simple RumiCar and let your hands memorize those three steps. The shortcut to understanding complicated things usually lives somewhere like this.


Cars are about to be redefined by software

There is one more thing I always mention at the start of the class.

Cars, it is said, are becoming “SDVs” (Software Defined Vehicles). Feel free to forget the acronym. It simply means cars that, like smartphones and PCs, learn to do new things through software updates.

And it is not only features that will change. The very way a car drives — relaxed and smooth, or quick and lively — is expected to become switchable without buying a new car. Some day it may change simply because you asked it to.

In other words, an era is coming in which a program somebody wrote decides a car’s personality.

And that “somebody” might one day be the elementary schooler right in front of you, currently forgetting a semicolon. Seen that way, a two-hour class starts to look like the entrance to something rather big.


What actually happened in class that day

We ran the class twice, two hours each, morning and afternoon. Our participants were an adult and several elementary school students.

First, produce an error

The first exercise is as simple as they come: just read the sensor values. Write the code, compile it, flash it to the car.

Then an error appears. It almost always does.

But this is a precious experience. Miss a single semicolon and the computer flatly refuses to move. You let that unreasonableness sink in properly once — then you read the red text, fix it, and flash again.

And then numbers start streaming across the screen. Hold your hand over the sensor and the numbers shrink; take it away and they come back.

“It’s responding.”

What was only a string of characters a moment ago connects with a machine for the first time, right there.

Then we go straight to driving 🚗💨

That day we skipped several of the intermediate exercises and jumped straight to the car driving on its own.

Flash the program, set the car on the course, let go.

It drove.

The looks on everyone’s faces at that moment were wonderful. Text that minutes earlier had lived inside a screen was now moving a real object in front of them — spotting walls, dodging them, driving on.

Never mind the theory — it simply makes you happy.

Delivering the “it moved!” moment early: that ordering was my biggest takeaway of the day.

The rest of the time went entirely to tuning 🔧

And this is where the real part began.

All the remaining time went into tuning numbers. Change a value slightly, flash, run, change it again. Over and over.

I want to hug the wall a little tighter. It turns too slowly. I made it faster and now it flies off the course.

Before long, everyone had gone quiet, absorbed in the work. Trial and error had begun on its own, without a word from us.

And the cars gradually changed. A car that at first bumped into every wall would — fix after fix, run after run — learn to go around the course without touching anything.

Afterwards, we received many comments like these:

“Actually driving it is so much fun!”

“It was fascinating how, as I kept tuning and running it again and again, the car gradually stopped hitting the walls.”

These words made me genuinely happy.

Because what they enjoyed was not “getting it right on the first try,” but the process of getting a little better each time.

Is that not exactly the richest part of making things? You form an idea, try it, it fails, you ask yourself why, and you try again. It is no different from what I do at work every day.

And they kept at it — not because anyone told them to, but because it was fun.

This is what I teach for, I felt, right there on the spot.


In the evening, the driving meet

From 3:30 p.m. we held the 18th driving meet in the same hall — a generous five and a half hours until 9 p.m. Participation is free. (That day, with a typhoon approaching, we wrapped up early at 6 p.m.)

The driving meet is a much freer place than the class. Some people bring their own RumiCar and simply run it for hours; some rewrite their code on the spot to shave lap times; some just watch. Any way of spending the time is fine.

You do not need to own a RumiCar, either. Rental cars are available at the venue.

I don’t quite get it, but I want to try driving one. It might be useful for something I am building. It just looks fun.

Any of those is reason enough to come.

Grown-ups discussing control algorithms in earnest while little cars buzz around a course: it is a slightly curious, and very good, way to spend an evening.


And now, a word to my fellow engineers

To be honest, this is what I most wanted to say in this article.

RumiCar is looking for people to teach alongside us.

“Could I really be an instructor?” — I know that feeling well. Even with some teaching experience, this was my first time with RumiCar, and I was on edge right up until we started.

Here is what I honestly learned by doing it.

First, no special teaching skills were needed. Only two things were: being able to read an error message together with someone, and being able to genuinely celebrate with them when the car moves. If anything, people who write code for a living are better suited to this — from your own experience, you can tell exactly where the person in front of you is stuck. They stumble in the very places you once stumbled.

The teaching materials already exist. RumiCar comes with a set of step-by-step exercises, so there is no curriculum to build from scratch. All I really did this time was reorder the existing material into a sequence I thought would land better. Those adjustments have been handed over properly to the next instructor, so whoever takes this on next starts from a better place than I did.

Your own understanding deepens. Explaining something you have long taken for granted to an elementary schooler, without using a single technical term, is surprisingly hard — it mercilessly exposes every spot you only “sort of” understood. You cannot put a thing into simple words unless you truly understand it. I learned that the hard way.

And finally, the biggest one. You get to be present at the moment your knowledge turns into someone’s “I did it!” right before your eyes. It is a completely different kind of reward from delivering a system at work. You can see the thing you handed over catch fire inside another person. Opportunities like that do not come along often.

You do not have to start as an instructor

There are many ways to be part of RumiCar: building car bodies, writing code, designing courses, helping run events on the day, handling the livestream — or simply coming to drive.

If teaching still feels like too high a bar, come and hang out at a driving meet first. It is free, and watching from the side is perfectly fine. Helping with the running of the event is very welcome, too.

If you breathe the air of that room even once, that alone will make me glad.


Upcoming events

Sunday, August 30 — RumiCar Build Class (capacity: 10). Assemble your own car with your own hands, starting from the parts. If you enjoy hands-on work, this one is for you. https://rumicar.connpass.com/event/397715/

Wednesday, September 23 (national holiday) — Autonomous Driving Programming: RumiCar Programming Class. Two sessions, morning and afternoon, with identical content — pick whichever suits you. Complete beginners are very welcome. A full RumiCar set (car and course) is provided.

Please bring a Windows PC that you are able to install the Arduino IDE on, something to write with, and the wish to give it a try. If the installation worries you, come as you are — we will help you set it up on the day.

Wednesday, September 23 (national holiday) — 19th RumiCar Driving Meet. Starts at 15:30, free of charge. Watching is welcome, and rental cars are available. Taking the class and rolling straight on into the driving meet is a fine way to do it, too. https://rumicar.connpass.com/event/396361/

All events are held at Hokutopia (1-11-1 Oji, Kita-ku, Tokyo), a short walk from Oji Station on the JR Keihin-Tohoku Line and the Tokyo Metro Namboku Line. Parking is available.


In closing

The car moves exactly as your code told it to. Or it does not — so you hunt down the reason, and next time it does.

A car that did nothing but hit walls gradually stops hitting them.

That “I did it!” feels just as good at any age, I am quite sure.

It is perfectly fine to arrive knowing nothing at all. If you have found yourself thinking “I’d like to try,” that is enough — on the day, we will be right beside you.

And if you are someone who already writes code — how about joining the side that creates the “I did it!” this time?

I look forward to seeing you at the venue.

Instructor: Muto


RumiCar links

#RumiCar

How this site is built (v1.4.0)

Some components are open source:

Enjoyed the machinery? The main event is our autonomous-driving simulator — it runs in your browser.
Try the simulator → / GitHub →