
Lightbot: Kids learn programming concepts - plurby
http://www.light-bot.com/hocflash.html
======
wcarss
About two years ago, I was responsible for the curriculum of a number of
after-school "learn programming" classes for kids aged 11-14 (Canadian grades
6-8), and we used a slightly older version of light-bot as one of our teaching
tools, among others.

After using light-bot as a central piece of the first classes we ran, I
decided to make less use of it, because it had significant usability issues
for the kids. The awkward click-targets and instruction management were very
difficult for the kids, who wanted to experiment and change the order of their
bot programs frequently. I'm very glad to see that that's one of the biggest
improvements in this version of light-bot: instructions highlight when you
mouse over them, clicking them removes them/adds them immediately, the
position they will end up in when you release a drag is highlighted, etc.
Great work on that! Starting with just enough instructions and slots to
demonstrate the direction of flow is also a good move.

There are a few other issues that seem to have popped up: there are so many
buttons on the relatively small screen that at any point, it can be difficult
to tell what to push next. What do >> and >>> mean to an 11-year-old, or < vs
a wraparound back arrow?

I haven't tested this version (I no longer teach those classes), but I can
imagine kids clicking arbitrarily around until things move forward without
them quite understanding why or whether they were successful, or just being
paralysed by not being sure what to do. That paralysis was very common for us,
and it sometimes took a lot of encouragement to get kids to just play around
and try whatever came to mind.

Regardless, I think light-bot is fun, challenging, feels good to beat, and
helps to familiarize kids with step-by-step operations and looping structures
especially. Procedures often required some extra conceptual explanation, but
also get a good treatment. Glad to see it being updated and promoted!

~~~
jvrossb
I used the hour of code version of light-bot on the first day of a 5 day
intensive programming course for 11-14 year olds to get them exposed to
programming concepts. It worked great - we graduated from it to other content
after a few hours with it but it was a great introduction to programming for
the kids.

------
greenyoda
This is a very clever game and I had lots of fun playing with it, but it seems
to be a dead end in terms of the size and complexity of programs that you can
create. A similar, but more versatile teaching language is Logo[1],
implemented way back in 1967. Logo's "turtle graphics"[2] have similar
primitives, such as "FORWARD 100" or "LEFT 90"[3], but the numerical arguments
let you create much more complex patterns, and named procedures let you create
programs that are much easier to understand than just "P1" and "P2".

[1]
[https://en.wikipedia.org/wiki/Logo_%28programming_language%2...](https://en.wikipedia.org/wiki/Logo_%28programming_language%29)

[2]
[https://en.wikipedia.org/wiki/Turtle_graphics](https://en.wikipedia.org/wiki/Turtle_graphics)

[3]
[https://en.wikipedia.org/wiki/UCBLogo](https://en.wikipedia.org/wiki/UCBLogo)

~~~
femto
My children (~7yrs) found LightBot to be a useful starting point. The main
things they got out of it was the idea of following a set of instructions and
that groups of instructions could be reused. It's not a game they played over
though. They played the provided levels though once, then graduated to
Scratch. The progression from Lightbot to Scratch seems to work, in that
Scratch takes over from where LightBot leaves off.

My one gripe with LightBot was that it's not open source, so the kids couldn't
look inside it. The ideal would be if gCompris included a LightBot style
activity.

------
owenversteeg
I'm a mentor for a Lego robotics team and have been for years - this year's
season will mark my eighth year of Lego Robotics. I love to help the kids
learn and I even try to teach them (to some extent) how to code.

The thing that gets their interest every time is something physical. I can sit
them in front of Scratch for four hours twice a week, or this, or LOGO, or any
of a multitude of other solutions, but the two things that never fail to
interest them are Lego Mindstorms and my quadcopter. My quadcopter usually
catches their attention (wow, a machine that can go over a hundred miles an
hour! cool!) but the Lego Mindstorms robot is what keeps them interested.

This is because they have no idea of how to build a quadcopter that can go as
fast as mine (which is reasonable, considering it took eight months to build
mine - it's among the fastest in the world and may even be the fastest) but
they do know how to drag and drop blocks to make the robot go.

My point is: there has to be some kind of moment where you snag the kids'
attention. I don't see any moment here that would make the kids excited.
Seeing my quadcopter soar through the sky at over a hundred miles an hour
fascinates them. Seeing the robot move across the board, shoot projectiles or
battle another robot (at their command!) fascinates them. But having a virtual
character follow commands in an interface which looks like it came out of a
preschool? I doubt it.

It looks like this may be targeted towards very young children, but in that
case my worry is not that this won't snag their attention (very young children
are much more interested in a computer game than my quadcopter) but rather
that they'll simply forget about it by the time they learn to read and write
(and thus even be able to start reading and writing code.)

Here's another comment I made about teaching kids to code:
[https://news.ycombinator.com/item?id=7450503](https://news.ycombinator.com/item?id=7450503)

~~~
dyarosla
I can see the merit in having something that snag's kids' attention. When
anyone is intrinsically motivated to understand something, that is the moment
when they'll truly look to understand rules and really start learning.

I would have to say that the physical devices thing is perhaps your own
projection for being the best way of snagging kids' attention- of course, you
do work with robotics and quadcoptors, but for many kids, real games (and that
means not Scratch or Logo) are what catches attention.

LightBot's design starts basic. But the puzzles become quite difficult. From
what I've seen, kids associate with the character and first become interested
due to that connection, and then are later motivated to complete puzzles
because each completion actually feels rewarding and something that they truly
had to figure out (very few things do that nowadays outside of puzzle games
for kids).

So perhaps physical toys are your cup of tea, and they may be for many kids,
but just think about how many kids today would rather play Minecraft than play
Lego Mindstorms. It's not a physical contraption and can be seen as an
educational tool in many regards. I would argue that physical toys aren't
always the best motivators for kids in the same way that video games aren't
for others.

------
ccleve
Designers of these systems need to understand that their target market can't
yet read, and the whole system is worthless for small kids if you need to be
able to read written prompts.

My five year old zips around the ipad and could do a lot more than he's doing,
but he's just not going to take the time to sound out words and try to figure
out what the game is telling him.

~~~
jimmaswell
Is reading without sounding anything out not expected by 5?

~~~
mirkoadari
Essentially, you can't really force these skills on kids. These things happen
on individual pace for every kid out there. Some are better at art, some are
better at speech, some are better at math and some learn to read earlier than
others. That's why the school starts when it starts. By that time development
seems to even out across the board.

------
barbs
A similar and fun boardgame is RoboRally:
[http://boardgamegeek.com/boardgame/18/roborally](http://boardgamegeek.com/boardgame/18/roborally)

~~~
sandyarmstrong
I kickstarted the (apparently unintentionally) similar
[http://www.robotturtles.com/](http://www.robotturtles.com/) boardgame. My 3.5
year old loved it and picked it up right away.

From my few minutes with it, Lightbot seems like a great follow-up game for
older kids.

------
ianstallings
Wow this is very well done. I had entirely too much fun playing around with
it. I've been using minecraft and some mods like computercraft
([http://www.computercraft.info/](http://www.computercraft.info/)) to try and
teach my nephews but this may be more fun to help explain concepts.

~~~
squidsoup
I started a programme at my son's primary school to teach rudimentary
programming skills using Computercraft, but ultimately found the Minecraft
environment proved too distracting for the children. Supervised, they did
absolutely fine, and Computercraft essentially provides a Logo like
environment using a modern programming language which is superb. Computercraft
is engaging, and setting up tasks for the kids to perform with the turtles was
instructive and fun. Left to their own devices however, the children were more
inclined to just mess around in the sandbox. I still think Computercraft can
be a useful tool for an educator, but it absolutely requires supervision and
guided learning.

~~~
ianstallings
Yeah I think this is where the new(ish) adventure mode in mincraft can come in
handy because I see the same thing. With adventure mode you can define world
parameters such as "only these blocks are mineable" and so forth. With that
you could setup a world where only the tasks you want accomplished could be
possible. But I'll be honest, that's a lot of work for someone trying to
teach!

~~~
squidsoup
Interesting, I wasn't aware that adventure mode allowed for that kind of
customisation. I don't think that mode was available in Minecraft when I was
running the workshops, but can see how that would be useful. You're right that
it's a lot of work though - teaching with something like Scratch is certainly
easier to get up and running.

~~~
russellsprouts
Yeah, those features are very new. IIRC, they were introduced in the snapshots
for 1.8, so they haven't even reached the stable version yet. (Minecraft 1.8
is nearing completion, after ~8 months of development).

Once 1.8 is officially released, someone could create educational adventure
maps. I have played some 1.8 maps, and the new features can essentially make
Minecraft into a game engine for voxel-based adventure games.

Here's an example from earlier in the 1.8 dev cycle -- there are even more
features now. [http://www.minecraftmaps.com/adventure-maps/mystery-of-
the-t...](http://www.minecraftmaps.com/adventure-maps/mystery-of-the-time-
keeper)

------
olivier1664
Very nice tutorial. My daugther (6y) has enjoying the 1st levels. But she do
not get the proc part of the second part.

Dyarosla, can you consider adding an easy level with "P1"? A very very long
blue line would be perfect to learn to call P1x12 instead of enter
(Walk+Light)x12.

Can you also add more basic levels: she had liked to solve them, but now she
doesn't want to play again. The levels are "already done" or "too hard".

------
sellyme
I remember playing the original Lightbot on Kongregate back in 2008, and still
remember thoroughly enjoying completing it. I've always had a soft spot for
well-made puzzle games and for some reason I've never really connected that to
my natural curiosity with regards to programming.

------
kolev
I have both Android versions and although my 5-year-old is pretty intelligent,
I find the game too hard for him, i.e. sometimes I need to help him and often
I have hard time myself, too.

------
RX14
I got angry at this because it "didn't work". I simply didn't read you only
have to light up the blue tiles. Maybe i have to go back to reading lessons...

------
s369610
light bot is looking great and has certainly come a long way! I was inspired
by an earlier version to make a similar game that revolves around events and
forking. If you have a modern browser (webgl 1.0) you can try an early version
here
[http://moaijs.moaiforge.com/progrocket/index.html](http://moaijs.moaiforge.com/progrocket/index.html)

------
marak830
Site failed horribly on firefox android fyi. Will have to check it out later
at home though :-)

