Slashdot Mirror


Want To Get Kids Interested In Programming? Teach Them Computer History

An anonymous reader writes "With poor IT teaching putting kids off pursuing a career in the computing it is time to look for a new approach. Taking kids back to the time of computing pioneers like John Von Neumann and the first machines — the likes of the Z3, the Eniac and the Colossus — would both inspire them and help get over the fundamentals about how computers work, argues silicon.com."

7 of 200 comments (clear)

  1. Yea... teach them history... by Anonymous Coward · · Score: 5, Funny

    ...with PowerPoint.

    >:(

    1. Re:Yea... teach them history... by polymeris · · Score: 5, Interesting

      Why?

      Last week I put together a one-hour implementation of Reversi & showed it to my little brother (he's 12). I expected his reaction to be "meh", since the board was represented by a boring 2D array of dots, Xs and Os representing the pieces, and the input was in numerical coordinates, and of course he's used to cinematic 3D games and mouse input.
      To my surprise, he not only had fun playing, he wanted to know how I had done it, what could be improved, pointed out bugs, and keeps nagging me to fix them.

      Still don't know what the best way to start programming would be for him, but motivation is not the hard part.

    2. Re:Yea... teach them history... by Anonymous Coward · · Score: 5, Insightful

      EXACTLY! The way to get kids interested in programming is to encourage curiosity -- give them the code to a simple video game (tetris? Space invaders?) and let them tinker with it.
      Nibble & Byte magazines used to list page-after-page of source code for Apple][ games. Typing that in, debugging the inevitable mistakes, etc. are good practice! Or show them the amazing old BeagleBros. 2-liner programs.

    3. Re:Yea... teach them history... by JPLemme · · Score: 5, Interesting

      Last year I wrote a simulator of a VERY simple computer. It had four instructions, 16 bytes of memory, and 2 registers. There were no branch instructions; literally the only thing you could do was write a program to add two (8-bit) numbers together. (And it would set the error bit if the result was bigger than 255.) I gave it an interface of nothing but (simulated) LED lights for the registers and memory, and then (simulated) push buttons to select a memory address and poke a value into it. It looked like a relic from 1956.

      I then explained it to my then 9 and 11 year-old sons (who both are teaching themselves to program), explained base-2 math, explained how the "computer" worked and the four instructions they had available, gave them a whiteboard, and tasked them with writing a program to add two numbers.

      They went NUTS! They were discussing theories, pointing out errors in each other's ideas, and getting excited when they fixed bugs. And they were doing it with a maturity level way beyond their years. They loved it. And I think that part of it was because it was simple enough that they felt in control of it. I also had the memory lights turn green as the instruction pointer advanced, so they could watch the program running. (It was slow enough that they could follow it and watch the registers change.) Granted, my boys love history, so that may have sweetened the deal for them a bit. But I was shocked at how easily they picked it up and how much they enjoyed it.

      I'd like to expand it to the point where they can watch a stack operating, and see pointers and offsets getting used, but I just haven't had the time to follow up on it. But it confirms (for me) that the idea of starting at the beginning might be the most effective way to teach programming. (I also taught programming at a local trade college for a few years, and I noticed how much harder it was for the students to pick up--say--OO programming concepts when they had never had to deal with the problems that OO concepts were designed to solve. Trying to simplify it even more for elementary school students seemed mis-guided.)

      The very best part of the story was six months later touring the Mercury Redstone program blockhouse at Kennedy Space Center (I know it's not technically on the KSC property, save your breath). They had an old Sperry-Rand computer with a console full of lights, and both boys lit up and told the (confused) tour guide "I KNOW THIS! I KNOW HOW TO PROGRAM IT!". It nearly brought a nerdy tear to my eye.

      P.S. If anyone is curious for more information I'd be happy to share. It wasn't very complicated, but I think it has a lot of potential.

  2. Frankly... by jcreus · · Score: 5, Funny

    Being part of the generation Z, sometimes I still wonder how people survived with less than one megabyte of memory, no tabs (no Internet!)... Depressing!

    1. Re:Frankly... by PolygamousRanchKid+ · · Score: 5, Insightful

      But those paper magazines surely had a low data capacity.

      . . . as opposed to new socially networking twittering systems that have high data capacity but low information content.

      --
      Schroedinger's Brexit: The UK is both in and out of the EU at the same time!
  3. Exactly what I did by Tx-0 · · Score: 5, Interesting

    Given the opportunity to teach Informatics to Diagnostic Radiology Imaging students, almost all in their 20s, I decided to start with a first lesson about history of computing, and I started from the ancient times when the most sophistcated calculator was the abacus. Guess what? Almost all of them listening, interested about something that's not really about their business.