Slashdot Mirror


Software Engineering Demo for a K-5 Career Fair?

gmjohnston asks: "A local elementary school is having a Career Fair in a couple of weeks and I volunteered. The idea is for parents with various jobs and careers to show and tell the kids a little bit about what their's is, why they think it's interesting and rewarding, etc. It's to try to give kids a little early exposure to some of the diverse kinds of things one can do with one's life. I'm a software engineer, so I'd like to show something that has to do with programming or Computer Science, but which would be interesting to an elementary school student." What would be the best way to illustrate what a software engineer does to a group of primary school kids? "I'm trying to come up with something like what got me hooked way back when, which was when my Organic Chemistry professor in college showed me a listing of a Basic program (Basic Plus on a PDP-11/70 running RSTS/E if you must know) and I realized that, computers relied on a bunch of instructions that tell the machine what to do, and that if I could change the instructions then I could make the machine do what *I* want it to do! I'll have my laptop with me and I'll be at a table that the kids will be able to gather around and see the screen (or potentially do something themselves on the laptop, depending on what I come up with). Of course, showing them the kind of code I really work on (software development tools) would likely instantly bore them to death. So, the question is: What should I show? If other Slashdot readers have done this kind of thing, what did you do and how did it work out?"

2 of 310 comments (clear)

  1. Start with Basic by EdZ · · Score: 5, Insightful

    Set up a little Basic introduction, the old 'Hello World' schtick. 'Help' them type out the code (all 2 incredible lines of it!) and watch them marvel in thier instant command of the computer.

  2. Beakman's World by wowbagger · · Score: 5, Insightful
    Beakman's World did a pretty good demonstration about this, and you may be able to do an adaptation of that approach:

    You need things:
    1. A collection of Nerf balls (or other soft small throwable objects).
    2. A hoop of some sort.
    3. A whiteboard and dry-erase markers.
    4. A person to play the CPU.
    5. A person to play the Engineer.


    On the whiteboard you write the Requirements:
    Design a program to get the CPU to throw a ball through the hoop.


    The CPU is only allowed to execute instructions that are written on a whiteboard by the Engineer.

    The CPU is to be as literal as possible when interpreting the instructions - so if the instructions are:
    1. Throw ball at hoop

    Then the CPU should pantomime throwing something, because the Program does not include the instruction "Pick up the ball".

    Start with just the "Requirements" on the whiteboard. As the kids come up, you explain the rules, and let them tell you what instructions to write down.

    You can even have a bit more fun - if a kid starts suggesting your standard juvenile crap ("Have him scratch his butt <snicker>") you can pull a Donald - "You have been caught goofing off at work - YOU'RE FIRED!".

    If you are real meanie, you can even do more of the experience:

    • The PHB, who randomly changes the spec
    • The Hardware Engineer, who designs the hardware ("OOPS! - the CPU cannot pick up the balls because the arm is too short! Hardware Revision!")
    • the Vendor ("Oh No! The balls have gone End-Of-Life, and we have to find a replacement!")
    • The Marketing Guy ("I can't sell this doody - make it sing too!")
    • The Auditor ("You have failed to use the proper font for your program - your ISO-9000 certification is revoked - unless you want to hire me as a consultant to help you be in compliance....")