Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

I offered to participate at my kid's pre-school for various activities (yes, I'm crazy like that), and one of them is to help them discover extra-curricular (big word for a pre-school, but by lack of a better one... :)) hobbies, which may or may not relate to a professional activity.

At first I thought that it wouldn't be really easy to have pre-schoolers relate to programming or the internal workings of a computer system in general (and I'm more used to teaching middle-school to university-level students), but then I thought there must be a way. So I'm trying to figure out ways to introduce very young kids (3yo) to computer systems in a fun and preferably educational way.

Of course, I don't expect them to start smashing the stack for fun and profit right away (or at least not voluntarily, though I could use the occasion for some toddler tests...), but I'm confident there must be ways to get them interested in both:

  • using the systems,
  • becoming curious about understanding what they do,
  • interacting with the systems to modify them.

I guess this setting is not really relevant after all, it's pretty much the same as if you were aiming to achieve the same for your own kids at home.


Considering we're talking 3yo pre-schoolers here, and that at this age some kids are already quite confident using a mouse (some even a keyboard, if not for typing, at least to press some buttons they've come to associate with actions) while others have not yet had any interaction with computers of any kind, it needs to be:

  • rather basic,
  • demonstrated and played with in less then 5 or 10 minutes,
  • doable in in groups or alone,
  • scalable and extendable in complexity to accommodate their varying abilities.

The obvious options are:

  • basic smallish games to play with,
  • interactive systems like LOGO, Kojo, Squeak and clones (possibly even simpler than that), or thngs like Lego Systems.

I guess it can be a thing to reflect on both at the software and the hardware levels: it could be done with a desktop or laptop machine, a tablet, a smartphone (or a crap-phone, for that matter, as long as you can modify it), or even get down to building something from scratch (Raspberry Pi and Arduino being popular options at the moment).

I can probably be in the form of games, funny visualizations (which are pretty much games) w/ Prototype, virtual worlds to explore. I also thought on the moment (and I hope this won't offend anyone) that some approaches to teaching pets could work (reward systems, haptic feedback and such things could quickly point a kid in the right direction to understanding how things work, in a similar fashion - I'm not suggesting to shock the kids!).

Hmm, Is There an Actual Question in There?

  • What type of systems do you think might be a good fit, both in terms of hardware and software?
  • Do you have seen such systems, or have anything in mind to work on?
  • Are you aware of some research in this domain, with tangible results?

Any input is welcome. It's not that I don't see options: there are tons, but I have a harder time pinpointing a more concrete and definite type of project/activity, so I figure some have valuable ideas or existing ones.

Note: I am not advocating that every kid should learn to program, be interested in computer systems, or that all of them in a class would even care enough to follow such an introduction with more than a blank stare. I don't buy into the "everybody would benefit from learning to program" thing. Wouldn't hurt, but not necessary in any way. But if I can walk out of there with a few of them having smiled using the thing (or heck, cried because others took them away from them), that'd be good enough.


Questions I've seen and that seem to complement what I'm looking for, but not exactly for the same age groups or with the same goals:

share|improve this question

closed as off topic by Eric King, Walter, Robert Harvey, Thomas Owens Nov 20 '12 at 23:37

Questions on Programmers Stack Exchange are expected to relate to software development within the scope defined by the community. Consider editing the question or leaving comments for improvement if you believe the question can be reworded to fit within the scope. Read more about reopening questions here. If this question can be reworded to fit the rules in the help center, please edit the question.

I guess "games" are pretty much the answer, and maybe the essence and complexity of the problem lies more in the UX for any kind of system than about what the system itself really is or does. Still, I'm interested in any thoughts on the question. –  haylem Nov 20 '12 at 15:40
Will be interested to hear any ideas others can come up with. I was about to say 3yo is maybe a bit young, but then I remembered I was using Windows 95/playing games in DOS mode when I was 3, so we'll see...! –  Anonymous Nov 20 '12 at 15:41
@Anonymous: I remember baby-sitting a 4yo when I was myself 15, and I was already blown away at the time by what she could do with a computer back then when they weren't that prevalent. I haven't exposed my kids too much (though my 3yo is pretty good at navigating youtube, for instance, hopping from video to video). I think there's some potential, and as hinted in the question I think some things can really be taught in simple systems with a pure action-triggers-feedback/reaction approach. Anyone, no matter what age, would react to such things. –  haylem Nov 20 '12 at 16:57
Awesome. :-D I guess I'm just not 'with it'! –  Anonymous Nov 21 '12 at 8:08

2 Answers 2

Try to keep it off the screen and syntax free if possible, remember you're dealing with kids who haven't learnt to write instructions, type or read to a high level. Typically at the low level physical objects are used rather than anything written down ie counters for math or cut out letters for spelling.

At school we had these roma robots which you could program and they'd follow the programmed path. simply press the buttons on the top to program and then press go to make it follow the route. If you can't get something like this then perhaps something simpler like a remote control car with pupils instructing you how to drive it or one of those cheap line following robots you can get from Maplins and the like.

Don't forget that tech isn't a panacea, I see far too many people on Quora asking how tech can help 5 year olds get masters from MIT. Just because the tech is there does not mean they'll be interested or be able to comprehend what you're trying to do.

share|improve this answer
re: "Don't forget that tech isn't a panacea, ..." See the note at the end of the question. I don't really push kids into anything, nor think tech is for everybody. I actually keep my own kids pretty much removed from it most of the time. –  haylem Nov 20 '12 at 17:00
You're right with the 1st paragraph. Obviously we don't expect kids to know how to type anything. Systems for young kids would rather have giant push buttons and maybe some rotating ones, but that's pretty much it I guess. Though with touch interfaces some of them get the "press and drag" thing quickly, for instance. –  haylem Nov 20 '12 at 17:04
@haylem Yeah I know what you said, it turned into a bit of a rant at Quora users, some of the people on there are little insane when it comes to technology in education. They seem to think tech will replace simple things like reading to your kids or reciting number bonds. –  Inverted Llama Nov 22 '12 at 11:06

My boys preschool teacher bought him something like This. It's a great first step in how to put things together to make things happen (lights go on, fans go round etc). This physical world stuff is what the kids can grasp, and surprisingly leads them into programming concepts. He had hours/days of fun and with it.

As far as programming goes, I suggest looking at games that require logical though and can easily be visualized what needs to be done, and the child can tell you how they are doing it. Tetris is a really good one if you remove the "timer" requirement.

share|improve this answer

Not the answer you're looking for? Browse other questions tagged or ask your own question.