Feb 222011
 

We’ve been working on a little toy app for Sal and he’s been part of the process.  I like hearing his opinion on UI and he’s got a decent eye for things.  There’s a lot of subtle changes that need to be made to transition from a mouse UI to touch UI.  He’s made the transition much faster than I have, though it probably helps that he doesn’t really remember computers pre-iPad too.

Sal: Why does it say ‘click to start’?
Me: Because you need to click it when you’re ready to play.
Sal: But why does it say ‘click to start’?
Me: Huh?
Sal: It should say ‘touch to start’ or ‘tap to start’.

Uh huh.  And later, we were putting on extra images here and there.  Off the cuff I ask him if the stickers should be the same as on another page, or different, or it doesn’t matter.  He thinks for a second, then says they should be different, and we talk about the algorithm for insuring things are different when you’ve got a shuffled deck.

Next day, he’s playing with it and says “This is wrong. The goat was on both screens.”  Ask him to clarify and reminds us that the stickers should be different.  We shouldn’t see the goat on both screens.  But it’s not consistently reproducible.  Turns out, the deck was being shuffled in between screens, so there was a chance of the sticker being repeated.  But it was random enough not to be too obvious.

Unless it is your requirement.  Then I guess it is more obvious.

Me: Good bug, man!
Sal: How can bugs be good?  [Then laughs at me.]

So its been good to see that he’s still getting more observant.  It makes things a little tougher when I’m trying to slide a fast one by him, but in the end, I think it’s better that he sees things for what they are.  Including us.

Bugs and all.

Nov 052009
 

Or “if you say you can’t, you’re right.”  Or “Are you a mexican or a mexican’t?”

All those phrases ring true for me and I couldn’t help but think of them last night as Catherine was trying to press two 26 pound kettlebells.  She’d get them a little way up and then she’d start shaking her head no and then her arms would come down.

If only she’d believe she could do it, then she could do it.  She was that close.

So I thought about ways to change her world view/context that would enable her.

“If you press the two 26 pounders, I’ll shave.”  I told her.  She grinned.

So focused, inhaled, and brought the double bells to the rack position.  Another deep breath, created a solid foundation, and the bells rose from her shoulders to locked out elbows.

She could do it, all she had to do was think she could do it.  There was no giving up in the middle this time and she was able to press both bells.

Its a pretty straightforward lesson in life that I think I shared with her…that in itself is an enormous reward.

No reason for me to shave right away, right?

Jul 242009
 

The sumo wars at the end were fun again.

People don’t always show their enthusiasm all the time, but it came out during the sumo wars.  And I think the class ended on a high note for everyone.  The kids were done.  I was done. They beat my bot.  They learned a bit about programming.  They had to continually adjust their strategies as new vehicles were introduced.  They adapted and learned without it feeling like learning.  Hopefully.

The kids that won were the ones that ripped off my idea early on.  I tried to adapt to exploit the weaknesses of my design, but I couldn’t build one fast enough that was accurate enough.  Basically, I wanted to run around them (cause they just drove forward) and then push them from behind. Though I couldn’t reliably get behind them.  Others used that idea a bit, but the winning team’s brute force was just too much for everyone to handle.  They didn’t go undefeated, but they weren’t really ever threatened.  The girls in the contest (one in the class and one was the TA) did pretty well too.  TA ended up in 3rd place.  And the girl that was enrolled, even though her robot was destroyed after each session, managed 6th place out of 10.

Some of them did ask me if I was teaching the course again next year.  We left it vague as to whether or not that was a good thing or not.  And I might.  Even though on Monday and Tuesday, I’m kicking myself for doing it, by Thursday and Friday things are fine.

Jul 222009
 

That’s the conclusion I’ve come to after another 3 days of this robotics class.

I’m a bit surprised by some of these kids. They convinced their parents to spend 1500 bucks to send them to a robotics course for 1 week – when the kit itself only costs 250 or so.

So there is a 1250 premium paid for me and the social bonding that they get in class.

Maybe when Sal’s 14 it’ll be worth 1250 bucks to send him away for a week in the summer.

Actually, one girl (the only girl) in class is here for a couple of weeks of classes in this program.  I asked her what her next class was.  She doesn’t know. I asked her if she’s just gonna pick one on Friday for next week.  She said her parents get to pick it for her and will tell her Monday morning what class to goto.

So there are some other things at play…

But I want to really like teaching this class…except I’m not really a good teacher.  Good teachers inspire and draw kids out.  I’m not really doing that.  The kids that want to learn, I’m excited to help and encourage and challenge.  The kids that wanna SMS on their iPhone all day – well, I let them.  I’m not here to force them to build robots.  That’s what their parents are for.  Or did.

Monday morning I judged my class, naturally.  There were a couple of jock kids from Montana – wearing shirts they tore the sleeves off of.  A couple of social outcasts/misfits/nerds.  A dude wearing a fitted dress shirt with embroidery on it – a 14 year old dude.  And some Korean kids. Oh – and another kid wearing a fedora – again 14 years old.

What a crew.  The roster said that one of the kids was diagnosed with Asperger’s.  Which I thought was kind of interesting info to put on the roster.  But it was missing the other bit of crucial information – how many of the kids were tested for Asperger’s?

Anyway – the class has turned out to be okay.  Not by my doing mind you – but by the kids.  Most (slightly more than half…) of them are interested and motivated and want to learn.  The sad part of this course is that kids come in thinking they’re going to build bad ass robots that will do their chores and all they really learn is that it is a pain in the butt to build a simple robot that’s behavior is almost too sad to want to share publicly cause people would say “that’s all it does?”

So unless you goto summer camp to have your hopes and dreams crushed, you come out of my course unsatisfied.  Which takes some of the fun out of the class.  I mean, I like the idea that simple, dumb robots can do a lot of useful things – but for the most part, these kids want to create sophisticated things.  They want to be able to do vision and create complicated algorithms.  Forget the fact that they have no programming skills.  Robots should just know how to do it, right?

So I teach them how to define algorithms, without them knowing that that’s what they’re doing. I teach them how to debug, iterate, and rethink things.  I think they’ll come out of class with some good fundamentals, possibly without realizing it.

I should say I teach some of them.  I don’t lecture.  These kids don’t want to hear me ramble on.  I give them a problem. Then when they look challenged, I chat with them about their problems.  If they want to.  Some don’t want to talk to me.  But some do and I enjoy those conversations and I can help guide them to different perspectives on the problems at hand. Still, for the most part, I just sit and watch them and make sure my work email inbox doesn’t get too out of control.  (I have a TA helping me out in class.  She helped out with the 9-12 year old robot course.  She was busy all the time with them.  She was surprised how there’s not much to do in this course cause the kids are more developed.  She organized everyone’s LEGOs for them one day. Then the next she started working on the website for the Stanford Ballet.)

I kind of wish I had the skills and energy to inspire them all. But I don’t.  I only want to back the winners. “Why waste your time with the losers?” I think.

Cause that’s where teachers really can make a difference maybe?

Aug 062007
 

DMA robotics courseThat’s an error message I got from the Lego NXT programming environment just now. I take it as a sign to give it a rest. I mean, it’s an insane error. Either the computer is gong crazy or its calling me crazy or it is just impressed and using slang. All signs point to me writing in English for the rest of the night.

Class was pretty interesting today. The guys (8 guys in the class) all built the first model pretty quickly, which was supposed to go navigate around a set of couches that I built up into a maze. Some used ultrasonic sensors some used touch sensors.

I got scared pretty quickly. Cause this took less than 2 hours. What I was figuring was going to take the day.

So I upped the ante – rolled with the punches. Said that it was too bad I didn’t have any tape to draw an oval/arena on the carpet, so that we could see who could clear it out the fastest. But, we could use the ping pong table. We’d have a competition to see who could knock the most balls off the table, without their robot falling off the table.

The edge of the table has a thick white line around it. Can be used by the light sensor (dark table == okay, white stripe == danger!) to determine safety. I thought maybe this would keep them calm until the end of the first day, then I’d panic and figure out what to do for the rest of the week tonight.

DMA robotics courseWell, they got all super creative, with this part. Which was their downfall. Creating spinning, clawing, instruments of ball clearing, with sensors all over the place detecting where the next balls were. And very little effort on trying to keep their robot on the table.

At the end of day 1, no one has really done it. One group has even taken their robot completely apart (3rd time so far) to rethink things. I’ve chatted with them about the successes and failures of their previous models, so that maybe they can redirect their efforts this 4th time.

Another fellow in class wants to program his robot in C instead of the graphical language that is available. C’s fine, and there are a couple of nice environments for it, but in general, it is a bit of overkill to not use their graphical environment, unless you’re doing some low level work or need finer granularity control or writing your own sensors or motor control algorithms. Anyway, this dude was persistent, so I told him where to look.

And he kept on downloading the version for a different brand robotics kit. Then was asking me what’s wrong with it. We had the conversation at least twice, possibly 3 times. In the end, I tried to convince him that if he’s having trouble downloading and installing the environment, perhaps he’s not ready to program his robot in C. That message didn’t get received either.

So I can’t fault the class for enthusiasm. I think it’s natural for 13-16 year olds to just do what they want to do. I’ll bring my kit in tomorrow and maybe school them a bit, by showing them how to build a robot to do the task. We set 11am as the competition time, but then they thought about it and preferred sometime after lunch.

We’ll try that. See how it goes. I’m pretty flexible in class. Making stuff up as I need to. Catherine’s asking me if I’m worried about class. Not really. They’re just punk kids. Can they tell I’m making it up as I go? I dunno. Does it matter too much? Not really. They’ll get out of the class what they want to get out of it. I’ll help them as much as I can (not including teaching them how to install, then program in robot C though) and then we’ll call it day.

At dinner, she was asking me if I would do it again. I don’t think I would. I feel guilty with that answer – because, why not? Well, they aren’t paying me enough for one. Besides the 8 hours a day of working the class, there’s 2-3 hours of prep for each day that’s necessary. That’s a lot of time and when do the per hour rate of what they’re paying me, it is micenuts. “But, Cris, you’re not doing it for the money”, I’m sure you’re thinking.

And you’re right. I’m not really doing it for the money. But helping these kids ain’t that rewarding either. I see these kids as opportunity rich and helping them, ain’t that big a deal. Sure, their parents maybe should spend some time and build these kits with them, but if they don’t want to, they can just pay someone else to do that with their kids. That’s fine. Just that being the person paid to spend the time with their kids doesn’t make me feel that good inside. Underprivileged kids though, that’d be different. I’d feel like I could be making more of a difference, that the steps we’re taking would be bigger, relatively speaking.

Others I’ve spoken to can see how there is a difference between working with the privileged versus underprivileged , but they don’t feel it would be significant. To me, it is a very significant difference. Working with the kids at Bishop Elementary means more to me than kids at a Standford summer school. Maybe it is because it is yearlong versus a week. Or maybe it is because it is a younger, more malleable age. Or maybe it is opportunity rich versus opportunity poor.

Or maybe I’ll change my mind after a few more days.

May 082007
 

That’s the main selling configuration for the Lego Mindstorms NXT. Sal likes the robot shape – and actually, coming back from Fry’s tonight, we had quite a little conversation about the different sized robots that he, I and moms would be. We also went over the different sounds each would make. He’s into robots for some reason. But I think he likes robots that don’t move more than the ones that do move.

I’ve been given the opportunity to instruct a class this summer with 13-17 year olds around the NXT kit. At first, I thought it would be lots of fun. I thought we could make it more advanced by having more interaction between robots – to show the complexity of behavior created by simple interactions. You know, the stuff my thesis was made of – or more simply, the stuff Vehicles was made of.

Too anxious to wait for the group offering me the position to get the kit back from some other person they were lending it out too – I’ve read up online and bought 3 books. The job doesn’t start until August – but I need to prepare.

But all I’ve done is scare myself. This robot building stuff ain’t so easy. There are tons of blogs and crazy dudes out there building complex robots and hacking the brick to get the most out of it they can. They have Lego creations that solve Rubiks cubes. There’s a Lego automobile factory. Someone’s built a Short Circuit model too. Freaking nuts. I just want to get things zooming around on the floor – maybe play a game of tag or Marco Polo…but it doesn’t look like that’s gonna happen.

So it turns out that this will actually be a course in programming, with some real world constraints. Echolocation doesn’t seem to be a strong point here. IR receivers, not really. Can communicate via bluetooth – but that lacks directional information. So I was a little frustrated and depressed.

Then I found a fantastic book – which describes the process of building 5 distinct, specialized robots, within the context of the robots behaving like trained monkeys to investigate a Mayan Tomb. It is a nice blend of archeology and robotics as far as story telling goes – but more than that, a unique teaching tool for laying out a solid methodology for problem solving. I mean I don’t even like 2 or 3 of the robots that much – but the mental exercises that the book puts one through I think are very well done.

So I’ll email the author (a blogger) and see what he thinks about me using his book as the basis for a week long course. Hopefully it’ll be a positive reaction. Because, rather than mindlessly building kits – I’d really like to work on the thought process behind robot design.

And hopefully, I’ll get off my butt and buy a bunch of extra connectors and some photocells and make some generic light detectors. Then we can program up some Vehicles on the last day.

Just to plant the seed of emergent complexity in their minds…