Slashdot Mirror


Programming — Now Starting In Elementary School

the agent man writes "The idea of getting kids interested in programming in spite of their common perception of programming to be 'hard and boring' is an ongoing Slashdot discussion. With support of the National Science Foundation, the Scalable Game Design project has explored how to bring computer science education into the curriculum of middle and high schools for some time. The results are overwhelmingly positive, suggesting that game design is highly motivational across gender and ethnicity lines. The project is also finding new ways of tracking programming skills transferring from game design to STEM simulation building. This NPR story highlights an early and unplanned foray into bringing game-design based computer science education even to elementary schools."

30 of 162 comments (clear)

  1. What do you mean, "now" starting? by EmagGeek · · Score: 5, Interesting

    I took programming in 3rd and 4th grades. In 3rd grade we started with logo, and then in 4th grade we started writing in BASIC.

    That was standard curriculum throughout the State back in the early 80s.

    1. Re:What do you mean, "now" starting? by gman003 · · Score: 4, Interesting

      Same - I was using Logo in 3rd grade, back in '96 or so. Loved that turtle.

      Weirdly, programming disappeared from my curriculum until high school, when I was started on Java. Of course, I taught myself in the mean time - Basic, C++, Java, and so on. Tried teaching myself assembly - did not go so well.

    2. Re:What do you mean, "now" starting? by RightwingNutjob · · Score: 2

      In the Philadelphia public schools in the early 90's, 2nd and 3rd graders would have computer class with Apple 2e's 1-2 hrs a week, and LOGO was the tool of choice to teach programming. Loops, subroutines, conditionals, everything. And then it disappeared, only to be echoed weakly with the occasional 10-line TI calculator program in high school calculus.

      My thinking is that when you're talking about young kids, they'd be open to it, but the school district would have to have the funding, patience, and political will to have a programming class for each grade, not just a one-off thing in elementary school. After all, math, English, history, and foreign language are multi-year sequences. It would be absurd to only have arithmetic in 3rd grade and then do no math until high school, or to have one year of Spanish in 5th grade and then expect fluency out of high school grads.

    3. Re:What do you mean, "now" starting? by NotSoHeavyD3 · · Score: 2

      Yup, I'm another one. They had us do Logo when I was in the 6th or 7th grade in the early 80's. Still maybe if they get to the kids early enough they can teach them some good coding habits. (For instance yes, most of your functions should fit on the freaking screen. No, it's not a good idea to have functions that are several hundred if not several thousand lines long. Oh, and my favorite, DON'T CUT AND PASTE CODE THROUGH OUT YOUR PROGRAM! Write a function damn it.)

      --
      Did you know 80 to 90% of the moderators on slashdot wouldn't recognize a troll even if one dragged them under a bridge.
    4. Re:What do you mean, "now" starting? by phaserbanks · · Score: 5, Insightful

      Yup. Started BASIC in 3rd grade at public elementary school in Tampa. Fast forward today: I asked my son what they do in his computer class, and he said "we made a song in Garage Band". WTF

    5. Re:What do you mean, "now" starting? by the+agent+man · · Score: 2

      I took programming in 3rd and 4th grades. In 3rd grade we started with logo, and then in 4th grade we started writing in BASIC.

      That was standard curriculum throughout the State back in the early 80s.

      yes, WAS! Programming has been tried before, in some way or another, even in Elementary Schools. However, these programs did not stick. At the high school level there are some CS AP courses but in general they are doing quite terrible especially with female and minority students. At the middle school level there are very few programming related activities. At the elementary school level there is basically nothing in US schools.

      Unlike with the programming found in schools in the 80ies there is now some evidence suggesting that middle and elementary school teachers can be trained to sustain programming related activities and that programming can even be introduced into the curriculum. This was never really the case before.

    6. Re:What do you mean, "now" starting? by Anonymous Coward · · Score: 3, Funny

      I taught myself in the mean time

      That was very much the mode in those days.

    7. Re:What do you mean, "now" starting? by EmagGeek · · Score: 3, Insightful

      I started teaching myself Fortran in 7th grade when I got my Ham Radio license and heard that it was the program of choice for modeling Antennas. Of course, I was not aware of this whole calculus thing, so I couldn't actually write my first antenna modeling program until 8th grade after my dad taught me calculus over the summer.

      Math is another subject we seriously need to accelerate. High School just doesn't teach enough Math, even in AP. High school graduates pursuing STEM degrees need to have a firm grasp of Vector Calculus and Differential Equations by the time they get to college. Too many entry level classes are non-calculus based because of this problem, and are therefore a waste of time.

      We can do better.

    8. Re:What do you mean, "now" starting? by rrohbeck · · Score: 2

      Modern CPUs are too complex to learn Assembly on them. I learned on an IMS6100, basically a single chip PDP-8. It had a RISC-y instruction set that you knew by heart within a week. Same thing a little later with the 6502. Even the 8086/8088 was tolerable. It started to get hairy with the 386. It's like C++: TIMTOWTDI and everybody uses a subset.
      I'd start learning on an emulated old 8-bitter, maybe a C64 emulator.

    9. Re:What do you mean, "now" starting? by steelyeyedmissileman · · Score: 4, Insightful

      Seriously-- there's no reason we shouldn't be teaching Algebra from the *very beginning*. I mean, come on.. what's the difference between 1 + _ = 2 and 1 + x = 2? You're figuring out the exact same thing!! The only reason I can think that we can't introduce Algebra from the start is that it scares the heck out of the teachers.

    10. Re:What do you mean, "now" starting? by gman003 · · Score: 5, Informative

      No, it won't be "irrelevant", because it's some of the most fundamental elements of programming.

      Things I learned in that Logo class:
      variables and assignment
      IF-THEN-ELSE statements
      WHILE loops
      FOR loops
      GOTO
      Functions

      With the exception of that last one, what, really, is different in modern programming? I still use every one of those, every day, except the goto.

      The syntax is unimportant. The API is unimportant, as long as it's simple, and visual enough for a third-grader to "see" the results of his program. The important thing is teaching the basic programming elements. Hell, the important thing at that age is teaching that a computer is just a machine, that it's not some magic box. I've seen *adults* who can't grasp why a computer is doing what they told it instead of what they want.

    11. Re:What do you mean, "now" starting? by MightyYar · · Score: 3, Interesting

      Elementary math is memorization and learning a mechanical system of computing. Algebra relies more on symbolic thought.

      That said, I think that algebra could be taught a few years earlier. I remember seeing it for the first time in 8th grade and thinking, "Oh, wow, this is just like variables in BASIC!"

      --
      W..w..W - Willy Waterloo washes Warren Wiggins who is washing Waldo Woo.
    12. Re:What do you mean, "now" starting? by OrangeTide · · Score: 2, Interesting

      amd64 is not too bad, it cleans up i386 stuff quite a bit. but ARM asm is where things get super easy. I don't understand why people are buying AVR and PIC microcontrollers, or why stuff like Arduino is popular, when an ARM microcontroller is as cheap and is easier to program. (yes, you can get a cortex-m0 for under $2 now)

      --
      “Common sense is not so common.” — Voltaire
    13. Re:What do you mean, "now" starting? by sensei+moreh · · Score: 2

      My second grade teacher convinced me I could do algebra using essentially this example:
      . Teacher: How much is 1+1?
      Class: 2
      Teacher: if 1+x = 2, what's x?
      Class: 1
      Teacher: You're doing algebra.
      I was convinced. It wasn't until I hit my undergraduate group theory class that I started thinking maybe I can't really do algebra (but I repeated the class, group theory, that is, and convinced myself I really could do it)

      --
      Geology - it's not rocket science; it's rock science
    14. Re:What do you mean, "now" starting? by RightwingNutjob · · Score: 5, Insightful

      Lack of funding my ass. There's plenty of money to spend of laptops and HD projectors and electronic whiteboards and new sets of math textbooks with new sets of politically correct glossy pictures every other year. It ain't the money, it's the lack of an adult in the room to decree that it's the math that's important, not the glossy pictures. My dad showed me his 5th grade algebra textbook from 1950's Soviet Russia. The size of a DVD case, not a single picture, but all the math you need to learn in a simple package. And it probably would cost $20 to write, fact-check, print and distribute here in today's dollars.

    15. Re:What do you mean, "now" starting? by JonySuede · · Score: 4, Insightful

      Logo's better than you think.

      It is a scheme like language:
            world model --> initial environment
            procedure level -> nested environment
            turtles --> thread environment

      It revolves around a built-in actor model funnily named turtles.
      An implementation of a multithreaded logo interpreter is trivial because of that.

      If Logo was compiled to byte-code or machine code using a modern compiler it would be a competitive language assumed it had a decent library or the capability to call to other languages transparently.

      --
      Jehovah be praised, Oracle was not selected
    16. Re:What do you mean, "now" starting? by MightyYar · · Score: 2

      I can't comment on your specific school district, but on average the US spends more per-pupal than just about any other country (I think we're number 2?). We rank far lower in achievement... money ain't the problem.

      --
      W..w..W - Willy Waterloo washes Warren Wiggins who is washing Waldo Woo.
    17. Re:What do you mean, "now" starting? by mooingyak · · Score: 2

      High School just doesn't teach enough Math

      I wasn't aware that it taught math at all. Well, it teaches students how to memorize formulas, but that's about it. Let's try to improve schools before we "accelerate" any of the material.

      I remember sitting in my HS Calculus class, listening to the teacher explain a topic to the class that I already grasped. As she went over the specifics, I started to wonder why anyone would explain it that way. It was such a bizarre approach to the material. And then it hit me. She didn't actually understand what she was teaching, she had simply memorized it. It was a "This method will solve this problem for you. I don't know why though" approach. Rather unsettling experience.

      --
      William of Ockham had no beard. The most likely explanation is that it was chewed off by squirrels every morning.
    18. Re:What do you mean, "now" starting? by MightyYar · · Score: 2

      Those idiots forced me to spend half my school time on arts and crafts, home economics, and other stuff that I had zero interest in, and it was a waste of my time and theirs.

      We need to put a system in place to identify where kids are going at a young age and put them into schools that allow them to pursue those interests. The people who currently control our education system seem hell-bent on stamping out a bunch of identical automatons, and it's just wrong.

      I feel like these two sentences are somewhat contradictory - they are trying to expose you to varied subjects as opposed to setting you on an unalterable course. In the British system, they pretty much have your career pegged by the time you are 11 and you specialize from then on. In my wife's case, this essentially pushed her towards a J.D., and she ultimately hated it and went back to school for an M.D.

        I know that my wife's case is not any more statistically valid than your single case, but I wanted to point out that there may be some value to giving students a wide range of exposure and keeping their options open until they are adults.

      --
      W..w..W - Willy Waterloo washes Warren Wiggins who is washing Waldo Woo.
  2. Statistics of motivation by imbusy · · Score: 5, Interesting

    It would be interesting to see how many of us started out wanting to make a game/some graphics demo and then learning how to do it compared to some other motivation for learning programming. I started out that way myself.

  3. CoderDojo teaching kids to code by ei4anb · · Score: 4, Interesting
    I help out at the local CoderDojo, it's like a youth club and we show them everything from Scratch through HTML & Javascript up to developing Android apps (for the older kids). The company I work for just donated 100 old laptops to allow kids without their own (or parents) laptop to take part.

    Here's what it looks like http://www.youtube.com/watch?v=MMODHilE4qk

  4. Re:A shrinking market by RightwingNutjob · · Score: 2

    Just because the hardware's made in China (we'll see how long that lasts, but that's another issue) doesn't mean the software can be. Software in many cases can't be one-size-fits all. Whether your business is sufficiently different that the off-the-shelf accounting or inventory software doesn't quite cut it or you want your web page to look *just right* and don't feel like playing email tag with some minimum wage drone 12 hrs away from your time zone, there will always be a need to people right here who know how to code. Nevermind all the embedded work that requires being physically present to get it to work.

  5. Programming is treated as too "mystical" by whizbang77045 · · Score: 4, Insightful

    Society seems to treat programming as though it were something mystical. In fact, it is simply learning how to think and express oneself logically, using a very basic (no pun intended) language. How is this different than learning how to read and write English effectively? We expect too many things to be hard, so we make them hard by our attitudes.

    1. Re:Programming is treated as too "mystical" by Tr3vin · · Score: 4, Funny

      Hey now, I make good money convincing people that what I do is something mystical. I'm sure many others here do too. Don't go and ruin it for the rest of us.

    2. Re:Programming is treated as too "mystical" by russotto · · Score: 2

      Hey now, I make good money convincing people that what I do is something mystical. I'm sure many others here do too. Don't go and ruin it for the rest of us.

      I wouldn't worry about it. Math has the same rep, and it's been taught in schools for millennia.

  6. generalize to problem solving by RichMan · · Score: 4, Insightful

    Programming is not special. Programming is the literacy of problem solving.
    Facing a required task and then using known tools to construct a method the achieve the required task in logical steps.

    There should be less emphasis on "programming" and more on general problem solving. Learning the general method is better than learning the specific method until you need to become as master of the specific method.

    Programming can be one aspect of teaching problem solving because programming is very structured. However problem solving skills in general need to raised a lot higher than general grade school level before real programming can be done.

  7. Ignoring the Actual Problem by TemperedAlchemist · · Score: 4, Insightful

    The problem isn't that we don't teach them algebra soon enough, it's that we don't teach them how to think (read: at all). It's not that mathematics doesn't teach people how to think, it does. But only in some kind of sneaky way, and people are assumed to have great logical deduction abilities like it's some inherent intuitive concept. But it doesn't work that way.

    Unless you attended a rich and large high school, chances are your exposure to any level of logic is nil. Why is it only philosophy majors are the ones forced to take informal logic (and not even very much at that)? The only way you actually get an adequate exposure to formal education in rational thinking is if you're a logician.

    But really I'm just deluding myself, who wants a workforce that knows how to think?

  8. Re:A shrinking market by bmo · · Score: 5, Interesting

    And the United States is doomed

    We are, unless things drastically change in politics and the boards of corporations. This is a matter of facts on the ground. It's not open to debate. It's happening.

    we should all lay down and slowly starve.

    We won't have any choice if things don't change.

    We have been handing technology, as a society, to the Chinese for decades now, with the delusional belief that all the high-end stuff will still happen here. I believe it started with Voc-Ed being a place to dump the "dummy" students. This is how I believe we lost the skills to make anything here - that we systematically decided that making anything = sweatshop and if you were smart, you didn't go into manufacturing, ever. We denigrated actual work for decades and anyone who worked in a factory making anything was therefore just some dumb monkey. And you can replace monkeys on one side of the planet with monkeys from another side. That's the thinking that got us here.^1

    But transferring the manufacturing base over to China makes it inconvenient for the engineering and software to happen here, so guess where it's going to move.

    Go ahead, guess.

    Engineers and scientists are already moving to Shanghai.

    Unless we stop the haemorrhaging and start building up our own manufacturing base here encouraging students to go into STEM without learning Chinese is a joke and a half.

    But I don't see that happening any time soon.

    --
    BMO

    Postscript: I was looking at a Popular Mechanics from the 1950s and there was articles that went on for pages on how to use a shaper and a tip on how to turn a taper using ball bearings instead of ordinary conical centers , and it was just *there* as if machining was a skill that many people had. You don't publish an article in a popular magazine where you deliberate write over the heads over your readers or write something they don't care about. It was expected that the readers of the 1954 Popular Mechanics^2 would find this stuff applicable. Today you would *never* find such an article in a mainstream magazine such as that.

    Footnotes:

    1. The war on work: http://www.ted.com/talks/mike_rowe_celebrates_dirty_jobs.html

    The first half goes on about castrating sheep. But that's the set-up for the second half, so watch the whole thing.

    2. http://books.google.com/books?id=Nt8DAAAAMBAJ&lpg=PA126&dq=1954%20Popular%20Mechanics&pg=PA234#v=onepage&q&f=true

  9. Re:A shrinking market by Anonymous Coward · · Score: 2, Insightful

    Alright, you make some good points, but I'd argue that manufacturing jobs are leaving center stage anyway.

    Look around, we build factories that require a tenth of the labor they used to. We build entire shipping centers that are more or less automated. I'm not sure that we really need manufacturing anymore. If anything China is serving as an excellent stop-gap to ease the transition to a much different kind of society.

    I mean, when you get down to it, the problem is really that the amount of product per single skilled worker in a modern, automated factory is so large, that there quite frankly isn't a demand for the entire population to be employed. China has cheap labor now, but machines will become cheaper, and at that point the only thing left is engineering.

  10. Re:A shrinking market by inglorion_on_the_net · · Score: 2

    How do you mean "there wont be job"? I thought elementary school was for giving kids a basic set of knowledge and skills, not to train them for any specific line of work. Programming teaches analytic thinking, logic, and gives some insight into how computers work and what sort of things they can and cannot do for you. These are useful skills to have in life, even if you don't actually end up developing software for a living.

    --
    Please correct me if I got my facts wrong.