Robot Transfer Protocol

At MacHack 2001 Simon Frasier (someone I had met at the conference) and I presented a "hack" that I dubbed "Robot Transfer Protocol".

My boss at the time, Dr. Chris Rogers, was/is a big Apple fan and had done all of the development work on the educational version of the robotics software that our group worked on for LEGO - called ROBOLAB at the time - on his Mac. I think it was Chris that had probably sent me to the conference. Chris wrote the code himself (in addition to running a fluids lab and other projects!) and I was the curriculum coordinator. In addition to writing help files and lots of QA testing with students, I also contributed to some of the design ideas.

A "hack" in the world of MacHack is something that you have created at generally a very low level inside your Mac to make it do something really interesting. In other words, something fairly hardcore. The hacks are demonstrated in front of a large auditorium full of people until the wee hours of the morning. Some people standing in the line to get on stage are still working on their hacks as they stand there with their laptops. A hack entirely made at the conference is considered extra cool.

I wasn't a hardcore Apple hacker. I was only there to do a workshop on LEGO robots. The workshop was fairly successful, and mostly attended by dads who had brought their sons or daughters to the conference. I thought it would be cool to create a LEGO-themed hack.

The idea of the LEGO hack was to type something in one computer, have the robot store it, drive across the table on the stage, stop, and "deliver" the message to the second computer. For a long time I sat in my workshop room across from the auditorium trying to get the code to work. Then I asked Dave Baum to look at the code and he pointed out a small thing that I had neglected to do and it all worked. [Dave Baum and I lived in the same fraternity at MIT, but in different decades, and we met via LEGO robot groups online. He wrote a book on LEGO robots (one of the first published) which showed his C-ish programming language NQC, or "not quite C".]

Once on stage I presented the title of the hack and people were laughing, so it was a good start. Then I showed the code and said "this is the code" and someone shouted "yeah that's the diagram but where is the code?" to which someone replied "don't you know code when you see it?" The hack went off without a hitch to a round of applause. It was my 2 minutes of fame in the Apple hacking community.

What was extra cool is that Apple founder Steve Wozniak was in the audience. I knew that he worked with kids on educational projects, and I knew he would be interested in this. As I explained the system I looked at Steve's face for a reaction and he was definitely watching intently. That was special.

Note: The ROBOLAB elements used in this are very advanced, e.g. for high school or university level. The ones that elementary school children would use are much simpler and easy to understand. Some of the original design ideas from ROBOLAB and its predecessor "LEGO Engineer" are still in the LEGO Mindstorms software line today.