Slashdot Mirror


How Early Should Kids Learn To Code?

the agent man writes "Wired Magazine is exploring how early kids should learn to code. One of the challenges is to find the proper time in schools to teach programming. Are teachers at elementary and middle school levels really able to teach this subject? The article suggests that even very young kids can learn to program and lists a couple of early experiments as well as more established ideas including the Scalable Game Design curriculum. However, the article also suggests that programming may have to come at the cost of Foreign language learning and music."

54 of 299 comments (clear)

  1. logic by Anonymous Coward · · Score: 4, Insightful

    learning logic skills should be well in advance of coding. i do think our society waits too late on that.
    that alone could improve lots of things out side of computer programming as well.

    1. Re:logic by happy_place · · Score: 5, Interesting

      One problem with math education is that it simply isn't the same thing as logic or computer linguistics. Even Discrete Mathematics uses a whole different set of terms, jargon and solves only a subset of the sorts of logical conditions one can expect to program in a computer. But then that's been a problem for mathematics since its inception--its application to real world issues and uses...

      And very few schools actually teach programming, even at the High School level, let alone at lower level education. One reason is that a programmer generally gets paid better than a public school teacher, and so if you know how to program you've probably got a better paying job not at school. Further there's the question of what is a decent education in programming--and do you focus on programming at all with the limited time and access to computers--or teach them basic computer skills and be happy with it.

      In a public school you can probably expect the computer science teacher to double as a coach, with his first love being coaching. My High School experience was a bunch of us "smart kids" (most of them were kids who had dads with computers and that had taught them a few things) figuring it out, while the teacher floundered to explain sorting algorithms and what recursion was. (He had no clue, though I didn't realize this until I got to College and what had taken months to study and explain was all explained in perfect clarity by a grad student in about an hour lecture...)

      --
      http://www.beanleafpress.com
    2. Re: logic by sleigher · · Score: 4, Interesting

      I don't want a nation of thinkers, I want a nation of workers. - John D. Rockefeller.

      --
      All points of time and space are connected.
    3. Re: logic by sjames · · Score: 2

      Exactly.

      Amusing: quote at the bottom of the page is "There is very little future in being right when your boss is wrong."

    4. Re:logic by michelcolman · · Score: 2

      My computer had one disavantage at the time: there was no software available (except for the BASIC interpreter). Later, I appreciated that this was actually an advantage: by the time I went to university I had written about 200 games, a couple of word processors and a spreadsheet program.

      Exactly, and the big disadvantage of today's computers is that they have too much software with almost no skill required to use it. You pretty much boot up right into FaceBook, why would you learn to program? There's just no challenge anymore, you don't need to know how it works, it's an appliance. Kids just prefer to play games rather than make some simplistic BASIC program that does nothing they're interested in.

    5. Re:logic by kent_eh · · Score: 2

      My son started using Scratch when he was about 10.
      He saw someone else using it at school and asked me to install it at home, then he basically taught himself to program simple games in it.

      Lately, he has been creating mods for Minetest, again entirely on his own (researching the file format, reading the project Wiki, dissecting other user's Mods, etc)

      I have a bunch of Python resources standing by for when he wants to take another step up.

      --

      ---
      "I can't complain, but sometimes still do..." Joe Walsh
    6. Re:logic by DragonTHC · · Score: 2

      agreed.

      Start with the PB&J robot.

      Pretend to be a robot and have your kid give you instructions on how to make a PB&J sandwich.
      When they skip a step in the algorithm, you simply respond, "HOW?"

      This is probably the easiest lesson in programming and a great place to start because it forces you to think in pseudocode.

      Perfect for a five year old.

      --
      They're using their grammar skills there.
    7. Re:logic by CastrTroy · · Score: 2

      You don't have to be a professional level programmer to teach basic programming to elementary and highschool kids. They teach soccer at schools, that doesn't mean the teacher has to be Pele or Diego Maradona. They teach woodworking, but that doesn't mean the teacher has to be Norm Abram. They just have to have some basic skills, and some interest in the subject.

      --

      Anthropic principle: We see the universe the way it is because if it were different we would not be here to see it.
    8. Re:logic by el+jocko+del+oeste · · Score: 2

      Most soccer coaches at the middle school and high school level aren't actually qualified to *teach* soccer. It would be more accurate to say that they run a soccer program: choosing players, arranging a schedule, and running the team during games. The players learn to play soccer in other programs.

      Similarly, a teacher with some interest in computers and a basic familiarity with programming can organize and run a set of programming activities. But he or she wouldn't be able to actually *teach* programming at anything more than the most basic level. For the students to get a real education in computer programming you need someone who has a greater depth of knowledge and experience.

      With that said, we live in the real world and sometimes we have to take what we can get. It's better to have inexperienced but enthusiastic soccer coaches than shut down the program because more knowledgeable coaches aren't available. And better to give interested kids some exposure to computer programming, even if they have to do most of the real learning on their own.

      But if your goal is something greater than that, to really be teaching computer programming in middle and high school, then you're going to have to recruit teachers who know what they're doing--and that includes both the technical material as well as the teaching aspect.

    9. Re:logic by msobkow · · Score: 3, Insightful

      So bring back philosophy classes. There was a time when philosophy was a core part of education, when students were taught to think, not merely regurgitate.

      Aside from that, I think you're over-emphasizing the complexity of basic boolean logic that is required by the average programmer. At the level we're talking about, basic parenthesized AND and OR constructs are more than adequate; there is no need to introduce elementary school kids to concepts like NOR or XOR.

      The languages used need to change pretty dramatically, too. Pascal-style compilers that produce some kind of code after error correction insertions would be far more helpful for kids to learn than barf-on-missing-semicolon compilers like Java. An awful lot of "errors" in code are caused by syntactic sugar, not actual errors in the logic being described.

      Letting such code run with any resulting errors could be as educational for the kids as seeing the results of properly structured code run.

      That's if the concept of a text language needs to be maintained at all. I've worked with a 4GL that used pictures and flow chart diagrams to "code". It was doable, but a pain in the butt for someone like me who prefers to type instead of mouse. But for kids used to tablets and phones, it might actually be an easier and quicker coding environment than a traditional keyboard. Using that language gave me a kickstart on thinking about how to do such an interface better. I don't think I want to tackle the job, but over the past couple or three years I've come to realize that text based programming is an arcane art that might well someday be dead except for a few historians still slugging away at COBOL.

      --
      I do not fail; I succeed at finding out what does not work.
    10. Re:logic by Shompol · · Score: 3, Interesting

      And math education in the US and around the world is abysmal.

      Have you taken school math "around the world"? As someone who graduated from HS in post-Soviet Russia I can testify that US high school graduates are at the level of 6-graders in Russia. And Physics is not even a requirement in US! I would easily place US at the bottom 30% of the world at school science preparation.

    11. Re:logic by mdielmann · · Score: 2

      ...and so if you know how to program you've probably got a better paying job not at school.

      My wife is a grade school teacher and I am a programmer. She couldn't do my job and there's no way I could do hers. Even if the two professions paid equally, I don't believe that someone who can program can also teach, or that someone who can teach can also program.

      Saying that being able to program means you can't teach is like saying being able to program means you don't have fashion sense, being able to program means you aren't good at sports, or being able to program means you have poor social skills.

      ...I'm not sure which side of the argument I'm on, either.

      --
      Sure I'm paranoid, but am I paranoid enough?
  2. teach reasoning, curiosity, specificity in preshoo by raymorris · · Score: 4, Insightful

    Preschoolers can start learning 90% of programming - thinking clearly, being specific about what you mean, looking at HOW things work. I was actually coding BASIC around third grade I guess, but code is a small part of programming.

    Pre-setting a macro in a toy truck is programming, and develops the skills - breaking down a desired outcome into specific steps, trying it and then making refinements, etc.

  3. My Experience by TheRaven64 · · Score: 3, Interesting
    I was 7 when I learned to program. We had one lesson a week taught by the school's headmaster on whatever he thought was interesting, and so he taught some programming in BASIC[1] on the BBC Model B. He also taught some geometry using Logo on the same machine. It was connected to a big TV (which, by modern standards, is a small TV), and he'd ask the class to describe the program and he'd type it. After school and at lunch and break times there were a few of these machines that we could use, and I learned a bit more. I asked my father to teach me a real language, and he taught me PL/M86 (which I still miss sometimes), and I then moved on to C[2].

    When I got to university, I discovered how much of the theoretical side I was missing. The main problem with teaching programming at an early age is that it really needs to be accompanied by teaching logic and then game and graph theory. I've seen classes that do this well for under-10s, but they're very rare.

    [1] The Dijkstra comment that teaching BASIC should be a criminal offence doesn't really apply to BBC BASIC, which had full support for structured programming, an integrated assembler, and direct access to memory-mapped hardware.
    [2] Back then, you really needed makefiles because there was no equivalent to a modern compiler driver. Compilation, assembly, and linking were all separate, manual, steps.

    --
    I am TheRaven on Soylent News
    1. Re:My Experience by beaverdownunder · · Score: 3, Insightful

      > [1] The Dijkstra comment that teaching BASIC should be a criminal offence doesn't really apply to BBC BASIC, which had full support for structured programming, an integrated assembler, and direct access to memory-mapped hardware.

      BBC BASIC was good, but even Microsoft BASIC was better than nothing. Saying you shouldn't teach kids how to cook unless you're teaching them fine cuisine is stupid.

  4. ASAP by Thanshin · · Score: 4, Insightful

    Programming on itself isn't so useful, but learning to divide and organize a complex idea into it's base elements is one of the biggest flaws of the existing curricula. Almost no effort is done in that direction before kids reach college ages and not even for all kinds of degrees, at that point.

  5. When they want to. And ONLY when they want to. by Anonymous Coward · · Score: 4, Insightful

    Jesus Christ. It's disgusting to see all of these comments saying "early", or "by the time they're 4", or something along those lines. Jesus Fucking Christ!

    Kids should learn to code IF AND ONLY IF THEY WANT TO, AND ONLY WHEN THEY WANT TO .

    Forcing it on them surely won't help. It'll just alienate them from it.

    If a kid wants to learn to code, and expresses this interest, then provide him or her all of the support that's possible. Otherwise, bugger off and leave the kid alone. Just how nerdy kids don't like to be subjected to football and other sports against their will, athletic kids very likely don't want to be subjected to computer programming against their will.

    1. Re:When they want to. And ONLY when they want to. by Anonymous Coward · · Score: 2, Insightful

      No, just plain wrong.

      The idea that kids should only learn about or do things that they explicitly present an interest in is simply retarded. Kids should be exposed to all kinds of different things, because if you don't expose them to all the things they'll have no clue which of them they are interested in, or find fun.

      Sure, there comes a point where if your kid is going "daddy daddy, I want to go windsurfing" you shouldn't tell them "no, we're going to program for the next 3 weeks", but that doesn't mean that you shouldn't introduce your child to {programming, windsurfing, .....}

  6. Difficult pros and cons by geekmux · · Score: 2

    Tossing programming courses in the curriculum is a wise idea, but now one has to balance the value add across the entire group if you're going to remove things like foreign language skills or music, both of which I see offering a considerable challenge to the value argument.

    I highly doubt the person wanting to visit a foreign country will be praising the fact they have excellent programming skills at age 17, and yet find they cannot communicate.

    Ask any programmer. 99% of them cannot live without music. It can help feed the creative mind that job demands. Learning about various kinds of music and their benefits (such as classical music impact on brain wave activity) rather than growing up shoehorned into the top pop/YouTube culture can be key to unlocking the potential of the creative mind.

    1. Re:Difficult pros and cons by IndustrialComplex · · Score: 2

      I highly doubt the person wanting to visit a foreign country will be praising the fact they have excellent programming skills at age 17, and yet find they cannot communicate.

      When I was in Germany, I had just finished my degree in Computer Engineering so programming was fresh in my mind. I was also fluent in Spanish. Communication was done in English and 'Bitte Danke Bitte, der Rechnung bitte' since I didn't meet a single person in Germany who knew Spanish.

      (That said, I agree with your point.)

      --
      Out of modpoints but really liked a post? 1BDkF6TtmmeZ3yqXbz9yhdYVqRYnwFoXDj
    2. Re:Difficult pros and cons by TangoMargarine · · Score: 2

      I actually find that I have a very difficult time focusing on programming if the music has any lyrics. Or were we talking about instrumental stuff?

      --
      Unity? Screw that: XFCE. Slashdot Beta? Screw that: SoylentNews. Australis? Screw that: Pale Moon. UX developers DIAF
    3. Re:Difficult pros and cons by melchoir55 · · Score: 2

      There are truly extraordinary programmers who not only don't listen to music while they code, they don't listen to music at any time. They don't see the point. I don't put myself in the extraordinary programmer bucket, but I have only the most superficial and passing interest in music. For example, I never have it on when I'm coding. I feel that it distracts me slightly and that I want all my mental resources available to focus on the problems I'm working on.

      Everyone thinks their specialty or interest is something that the rest of the human race is missing out on. I am often amused when I talk to musicians and fine artists because they think my life is incomplete since I can't play the cello (if they are a cellist) or do an extraordinary oil painting. I could say I feel their life is incomplete because they often don't seem to write very well (I did philosophy) and can't do anything which eliminates work for humanity (I am also a programmer), but I don't, because it's shortsighted.

      Humans currently have a very limited time to exist. Step 1 for a human is making sure you can provide for yourself and survive (most humans want this). After that, let people do what they want. It is their limited time to spend in the way they think will make them happy. *This includes children*.

  7. As early as they can read by TheRealMindChild · · Score: 5, Interesting

    We had a computer class once a week when I was in Kindergarten (1984-1985 to put it in perspective). We would type out small, prewritten LOGO programs and afterwards would discuss what they did and how our programs went wrong. We even had this little tank like robot in which you would input LOGO commands and it would move like the turtle would on the screen. It was what got me interested in everything programming and computers

    --

    "When life gives you lemons, don't make lemonade. Make life take the lemons back!" -- Cave Johnson
  8. That's fairly easy by Opportunist · · Score: 5, Interesting

    As soon as they're interested in it. Simple as that.

    Huh? That doesn't fit into your curriculum? Then I think it's time you ponder whether your curriculum has a problem or whether you want to continue making it the kids' problem.

    --
    We used to have a Bill of Rights. Now, with the rights gone, all we have left is the bill.
    1. Re:That's fairly easy by the+agent+man · · Score: 3, Informative

      No, that does not work. The Scalable Game Design project - discussed in the article - is specifically addressing the problem of broadening participation, e.g., the lack of interest in CS by girls. In other words, the lack of interest is precisely the problem. Our research (with over 10,000 students from all around the USA) suggests that MOST students, boys and girls, CAN be interested in CS through games and can advance from games from STEM simulations. Also, Scalable Game Design is a curriculum, not an afterschool program, that has been integrated into middle schools and even some elementary schools. The key is to 1) find time in existing curriculum to get started (e.g., in keyboarding and powerpointing types of courses) and to 2) transition to relevant STEM topics by teaching kids how to create science simulations. This is part of the new Next Generation Science Standards.

    2. Re:That's fairly easy by the+agent+man · · Score: 2

      Of course there is no point in coercing people into things that they do not want to do. The problem with CS is that, particularly with girls, it has a strong negative perception, e.g., "programming is hard and boring". Our data suggest, however, when introduced to CS in a certain way (with the right tools, curriculum and pedagogy) a very large percentage of students (boys and girls) changes their minds. The strategy is to expose them once in very compelling way. If they don't like it - no problem.

  9. That's obvious by Virtucon · · Score: 4, Interesting

    As soon as they ask that they want to learn how to do it is when you should start engaging them not only in coding but other computer science topics as well. Before my kids (3 out of 4) learned the basics of programming, they also had a fundamental understanding of electronics not because I pushed it on them but because they saw me working and started asking questions. Coding isn't for everybody and despite efforts to the contrary, it's more creative than people would think at first. That's the fatal assumption, if you have a foundation with Math and good logic skills that doesn't equate to being good or even liking coding as a profession. Now, if you ask my three kids (who are now 18+) what they want to do in terms of careers, one is in a CS program the others are not taking that track.

    --
    Harrison's Postulate - "For every action there is an equal and opposite criticism"
  10. "At the const of" language skills? by Antique+Geekmeister · · Score: 4, Insightful

    That's absurd. Learning time-sensitive ordered tasks, such as in music or dance, or alternative ways to express similar ideas, such as language skills, are invaluable to skilled programmers. The ideas of checklists, logical operations, and revising a program on the basis of alternate events, learning about backup and what you can lose without it, are all useful.

    I'd be more concerned about what happens with _bad_ programming lessons, being taught to manipulate only GUI based patterns in a teacher expected way or be marked down for not doing it the way an uninformed, underpaid coding monkey wrote to mark the checksheet off their daily tasks and pays no attention to encouraging the children to learn how things work. I'm concerned tht the children will be taught only how to fill out a checklist blindly. I've worked with programmers taught that way, and they can become an active obstacle to good computing, good science, or even good politics.

    I'm afraid that a lot of the pre-teen children I've been meeting in public school would be better off, though, with real recess or a daily siesta rather than yet another mandatory lesson that requires sitting in a computer classroom. They're exhausted, and getting their bodies moving is being neglected in conflicting academic policies and goals.

    1. Re:"At the const of" language skills? by luis_a_espinal · · Score: 3, Informative

      That's absurd. Learning time-sensitive ordered tasks, such as in music or dance, or alternative ways to express similar ideas, such as language skills, are invaluable to skilled programmers. The ideas of checklists, logical operations, and revising a program on the basis of alternate events, learning about backup and what you can lose without it, are all useful.

      I'd be more concerned about what happens with _bad_ programming lessons, being taught to manipulate only GUI based patterns in a teacher expected way or be marked down for not doing it the way an uninformed, underpaid coding monkey wrote to mark the checksheet off their daily tasks and pays no attention to encouraging the children to learn how things work. I'm concerned tht the children will be taught only how to fill out a checklist blindly. I've worked with programmers taught that way, and they can become an active obstacle to good computing, good science, or even good politics.

      I'm afraid that a lot of the pre-teen children I've been meeting in public school would be better off, though, with real recess or a daily siesta rather than yet another mandatory lesson that requires sitting in a computer classroom. They're exhausted, and getting their bodies moving is being neglected in conflicting academic policies and goals.

      Finally someone who is paying attention to children's physiology. Their sleeping patterns are different from adults, and they do require additional sleep (and depending on their age, different nutritional content.)

      Also, as you said, it is important to give precedence to more fundamental, cognitive/social skills. Slashdot is infected by too many keyboard warriors that think coding should become a basic, fundamental topic. It is not.

      Don't rush kids into learning to code. Get them to learn the essentials first, math/algebra, natural sciences, language, history, civics and the basics of personal finance. All that, in particular personal finance, are more important that learning to code. We have a lot of shitty coders as it is, and a lot of people who suck at the basics of math, history, civics and logical thinking. What the do people think it's going to happen when we rush/force kids to learn to code?

      Also, who is going to teach coding? A proficient developer, or a we going to repeat the current pattern of forcing a teacher of specialty X to teach specialty Y for which he/she is completely unqualified?

    2. Re:"At the const of" language skills? by Bite+The+Pillow · · Score: 2

      At the cost of clearly refers to scheduling time. Reallocating art and language time to coding. The school day would not be extended, in other words.

    3. Re:"At the const of" language skills? by Prune · · Score: 2

      > Their sleeping patterns are different from adults, and they do require additional sleep

      Looks like we, as adults, also naturally require different sleep patterns than we engage in the last couple centuries: https://en.wikipedia.org/wiki/Segmented_sleep#Segmented_sleep_as_a_historical_norm

      --
      "Politicians and diapers must be changed often, and for the same reason."
  11. Try junior high by SirGarlon · · Score: 2

    In my education, there was a big dead zone called junior high where the state curriculum taught very little new material -- just algebra and a little civics -- and spent most of the time rehashing what had been taught in elementary school. The prevailing wisdom that "raging hormones" made the junior-high kids unreceptive to new learning. Seriously, this is what principals and superintendents said. It's the most insulting thing to the pupils I can imagine.

    Junior high was when some of my friends started taking drugs. I was reading a book a day just to kill the boredom, and I'm convinced I would have been better off skipping class and reading two books a day.

    So you could give the kids something useful to learn during those two years, instead of spending taxpayer money to basically babysit them.

    --
    [Sir Garlon] is the marvellest knight that is now living, for he destroyeth many good knights, for he goeth invisible.
  12. Re:In utero by happy_place · · Score: 5, Funny

    The problem with teaching children in utero is the smarter ones hack mommy's system and that makes for a difficult pregnancy, with her constantly craving hot pockets, bacon flavored snacks and highly caffienated beverages.

    --
    http://www.beanleafpress.com
  13. Robot Turtles by TC+Wilcox · · Score: 3, Insightful
    My only affiliation with this game is that I back it. Today is the last day of the kickstarter..... http://www.kickstarter.com/projects/danshapiro/robot-turtles-the-board-game-for-little-programmer

    Robot Turtles is a board game for kids ages 3-8. It takes seconds to learn, minutes to play, and will keep them learning for hours. Kids won't know it but while they're playing, they're learning the fundamentals of programming.

  14. Re:In utero by Sponge+Bath · · Score: 4, Funny

    Yes, read them the complete works of Donald Knuth while incapable of running.

  15. Re:Early by EuclideanSilence · · Score: 2

    Yeah, I plan to make my kids listen to gcc syntax error messages.

  16. Re:As early as possible by Anonymous Coward · · Score: 4, Funny

    Au contraire. I for one put general literacy above computer literacy. It is mre useful in the real world. Not everyone is going to be a programmer, but everyone needs to read and write.

    Not to be pedantic, but I expected more from you.

  17. LOGO by beaverdownunder · · Score: 2

    When I was 6 (in 1981) my Grade 2 class learned LOGO (at least the turtle graphics part). Of course I had been programming on my TS1000 for a year at that point, and so was mostly helping the other children. But still, pretty much everyone in the class "got it".

    Why they stopped (and they did stop, after all) teaching programming to kids that age, I don't know. It was a stupid move. Really stupid.

  18. Reading, writing math, music and ball sports. by Anonymous Coward · · Score: 5, Interesting

    Programming will be picked up long the way. Many trades nowadays seems to involve some programming in some sort of language - Excel Macros; ask an accountant. But is that really important for a child's future?

    What's is going to help the kid in his future academic career is reading, math, writing, music and ball sports.

    Yes, sports. Sports are a great way for a kid to learn social skills. And playing ball at an early age will help the kid develop "ball sense" which will help him with any sport he chooses later on. That's something that a developing brain is most apt to learn and something that people who don't have the experience as a chile never seem to pick up. It seems to be a skill that gets hardwired in at a very early age and once that window is closed, one can never get that sense. I know , I've tried. My coaches are always asking me if I played ball sports as a child because I don't have that "ball sense". and no matter how many hours playing, I just can't get it. (I spent many hours as a child in front of the Apple ][ programming BASIC)

    And music. Don't force the kid, but music.

    I don't get this fetish for getting children to learn to program. In the grand scheme of things, it's a skill that's not that important as a child.

    Looking back at my life (I'm mid forties), the programming as a child actually harmed me. I missed out on a lot of childhood things and it did me very little good as an adult - especially now when my job of off-shored and getting another programming job is proving to be extremely difficult.

    And another thing too, all the big shots - the ones who get the six figure bonuses when they cut costs by doing things like sending jobs overseas - were all ball players in college. They are the ones with all the personal connections - they get canned, their ball playing buddies gets them another cake job.

    My friends are machines and other socially inept techies.

    1. Re:Reading, writing math, music and ball sports. by arth1 · · Score: 3, Informative

      What's is going to help the kid in his future academic career is reading, math, writing, music and ball sports.

      Yes, sports. Sports are a great way for a kid to learn social skills. And playing ball at an early age will help the kid develop "ball sense" which will help him with any sport he chooses later on. That's something that a developing brain is most apt to learn and something that people who don't have the experience as a chile never seem to pick up. It seems to be a skill that gets hardwired in at a very early age and once that window is closed, one can never get that sense. I know , I've tried. My coaches are always asking me if I played ball sports as a child because I don't have that "ball sense". and no matter how many hours playing, I just can't get it. (I spent many hours as a child in front of the Apple ][ programming BASIC)

      For what it's worth, I spent quite a lot of time on ball sports at school when I grew up, and in retrospect, it was wasted time. It mainly served to build and maintain a class pecking order.
      The time I spent hacking on hobby computers, on the other hand, is why I still have a job I like which pays enough to live on. Ball play? It hasn't landed me any jobs, nor made it easier to handle real life. Imagine if all the money spent on sports facilities and coaches had gone to better libraries, labs and teachers...

    2. Re:Reading, writing math, music and ball sports. by BufferArea · · Score: 4, Informative

      I worked as teaching assistant for the computer science at a college and I have to say that, for most people, programming is *not* something that they will just pick up. I worked the computer lab for the introductory programming course and the majority of the students had to work very hard to learn programming.

      The point at which students initially had difficulty varied too. A surprising number had trouble with concept of a for loop. All of those students did make it past that though. What all of the students that had significant trouble with the course had in common, though, was the ability to generalize. They had problems with coming up with simple algorithms to solve simple problems. They could describe how to solve for very specific circumstances. Indeed, it seemed, most of the students could code a solution to a very specialize specific scenario, but, at least initially, not the general case. Many student improved greatly in this regard by the end, but a decent number still had issues (and I am only considering the ones that put forth effort in the course).

      Most of the students having issues could somewhat understand logical concepts. They could debug simple implementation issues, and they could usually look at other people's working code and explain what the code was doing. These students lacked the ability to think abstractly and apply logic and their learning to new problems where the steps to solve the problem weren't laid out for them. I believe it is the same issue you see in middle/high school math classes where many students can manipulate equations just fine but have problems with solving story problems.

      So, I do believe learning (proper) programming at an early age would benefit people. They would get more practice with thinking abstractly and have a venue for seeing practical and essentially immediate results.

      Also, I don't thinking learning to program would have to supplant other courses. It could be be used in addition to other topics. For example, children could be give a code that performs math on single digits numbers and then modify to handle numbers with multiple digits. Imagine programming long division and handling remainders. I think implementing the code for this would allow children to understand numbers and math at a deeper level.

      Ensuring programming was taught to everyone would have some benefits for employed programmers and to society in general, also. Right now, you see people in forums making comments about the sad state of some particular piece of software and how easy it should to fix an issue or how some problem should be easy to solve with a computer and why don't the programmers just code it up. People would come to realize the difficultly of creating a good program and what trade offs must be made for a program to be made quickly and relatively cheaply and perhaps they would decide for different trade-offs.

    3. Re:Reading, writing math, music and ball sports. by tlhIngan · · Score: 4, Interesting

      The point at which students initially had difficulty varied too. A surprising number had trouble with concept of a for loop. All of those students did make it past that though. What all of the students that had significant trouble with the course had in common, though, was the ability to generalize. They had problems with coming up with simple algorithms to solve simple problems. They could describe how to solve for very specific circumstances. Indeed, it seemed, most of the students could code a solution to a very specialize specific scenario, but, at least initially, not the general case. Many student improved greatly in this regard by the end, but a decent number still had issues (and I am only considering the ones that put forth effort in the course).

      Most of the students having issues could somewhat understand logical concepts. They could debug simple implementation issues, and they could usually look at other people's working code and explain what the code was doing. These students lacked the ability to think abstractly and apply logic and their learning to new problems where the steps to solve the problem weren't laid out for them. I believe it is the same issue you see in middle/high school math classes where many students can manipulate equations just fine but have problems with solving story problems.

      So, I do believe learning (proper) programming at an early age would benefit people. They would get more practice with thinking abstractly and have a venue for seeing practical and essentially immediate results.

      Coding will not help that. It's a big problem everywhere - and has been for years.

      My Feynman recalls his experience teaching science in Brazil. They score very high on tests, but they suffer from the exact same problem - they can answer a very specific question, but when put in a similar situation, fail to realize it.

      The fundamental problem is not coding. It's the way we teach - in this case, it's a form of rote memorization rather than application. Memorization is easy - ask any student who studies for a test and can spew back facts, figures and formulas without skipping a beat.

      The thing is, it's application of the concepts, or realization when situations are very similar.

      It's not limited to science - we often say "history repeats itself" because it's true - but it makes you wonder why we don't see it coming given that similar situations crop up again and again and again. (Heck, the Founding Fathers, in the Declaration of Independence made important observations - remember the part about "light and transient causes"?).

      The thing education lacks is the ability to teach synthesis, because it's very hard, and it's something that's difficult to apply to an entire classroom because everyone is different. (Synthesis is where you take what you know and apply it by synthesizing a solution - basically by seeing generalizations). Sometimes it's called critical thinking though that term is usually only in reference to texts.

    4. Re:Reading, writing math, music and ball sports. by camperdave · · Score: 2

      Ball play? It hasn't landed me any jobs, nor made it easier to handle real life. Imagine if all the money spent on sports facilities and coaches had gone to better libraries, labs and teachers...

      How would you classify your fitness level compared to others in your line of work?

      --
      When our name is on the back of your car, we're behind you all the way!
    5. Re:Reading, writing math, music and ball sports. by arth1 · · Score: 3, Funny

      How would you classify your fitness level compared to others in your line of work?

      Let's see... Rest pulse around 95, getting light headed by walking to the coffee pot - what do you think?

    6. Re:Reading, writing math, music and ball sports. by lightBearer · · Score: 2

      I have to agree with arth1. I had a very similar experience with the ball-playing, PE type activities. I wish I could have those hours back to work on the 2 things I love: Bicycling and System Administration/Amateur Programming.

      In response to your question about fitness levels, there are loads of physical activities that don't require one to submit to the hierarchy of the Jock-enabled elite and get your ass pounded by bullies. Even after having destroyed my right knee, I still came back to bicycling because it provides much needed exercise, convenient transportation, a decompression break between my work and home lives and, finally, a physical activity I can perform while thinking. Overall, for being in my mid 30's and a domestic and generally sedentary person, I'm in damn good shape.

      --
      - No Bounce, No Play -
  19. Re:Do kids actually learn anything in music? by sjames · · Score: 2

    Some blame has to fall on the teachers and the official curriculum that hamstrings them. If they present the subject in a bone dry manner, they will completely fail to capture the interest of any student who isn't already interested. If they are not prepared to take a different approach than the average, there will be kids that will miss out on the initial ah-ha experience that allows them to appreciate the rest.

    I do agree that if a subject has failed to capture their interest, harping on it for the next several years will do more to turn them against changing their minds than anything else.

  20. Re:Rubbish.. we need children to learn social skil by bickerdyke · · Score: 3, Insightful

    Well, not everyone needs to be able to code bubblesort or beyond, right.

    But slomst every profession would profit from a simple understanding of batch or macro programming. Nothing too complicated. function calls, true/false, if/then. put even return values, vars and loops into an advanced version.

    That's the basics really anyone can profit from. From the secretary automating word with a small macro (as simple as inserting a timstamp on pressing a function key) to users of ifttt.com or setting up Llama/Tasker on their phones. And it's the foundation for learning some real coding later. And some basic logical skills and ability to break down requirements into smaller steps can't hurt either.

    --
    bickerdyke
  21. Re:As early as possible by mrsquid0 · · Score: 2

    Don't you love it when grammar nazis make spelling errors?

    --
    Just because you are paranoid does not mean that no-one is out to get you.
  22. easy by Charliemopps · · Score: 2

    How Early Should Kids Learn To Code?
    After they learn Karate.

  23. I think by JustOK · · Score: 4, Funny

    I think 8 am is about the right time to start.

    --
    rewriting history since 2109
  24. Re:teach reasoning, curiosity, specificity in pres by IndustrialComplex · · Score: 4, Interesting

    Right. Because as every parent will tell you, all you have to do is explain the logic to a preschooler and bam! You have instant recognition and the child will follow you request.

    As the parent of a 4 yr old, you just need to know how to do it in a way that 'tricks' them into learning. Preschoolers have tons of urges to do things, they just don't know how yet. That's why they seem holy terrors trying to get your attention. They know there are lots of things to do, but they are currently limited in their ability to actually do those things.

    So if a 4 yr old wants to watch 'Jake and the Neverland Pirates', I don't put it on for them. I sit down with them and ask them what we need to do. I get them to tell me that we need to turn on the television. Ok, then what? "Now we get the 'bemote'." Where is it? "I don't know." Where did you last use it? "On the beanbag chair." OK, should I look for it in the couch? "No, it's over here near the beanbag." Ok, now what do you do with the remote? "I press OK on the red box (netflix icon on Roku)" OK, what now? "I pick 'Jake' and press ok."

    Yeah, that sounds pretty mundane, but even something as simple as putting on a children's show can be used as a process for walking through a problem in a step-by-step manner, and steps like asking where they might have last used the missing remote, and then suggesting we look in the 'wrong' location to get them to understand the deductive process and elimination of impossible options.

    That's how you you start it.

    Then, when you trust them more, get them to help you in the kitchen. Cooking is the ultimate in 'introductory programming'.

    --
    Out of modpoints but really liked a post? 1BDkF6TtmmeZ3yqXbz9yhdYVqRYnwFoXDj
  25. Programming as a board game by oneiros27 · · Score: 2

    There's a project on Kickstarter aimed for ages 3+that ends in a few hours:

    http://www.kickstarter.com/projects/danshapiro/robot-turtles-the-board-game-for-little-programmer?ref=live

    (Robot Turtles: The Board Game for Little Programmers)

    --
    Build it, and they will come^Hplain.
  26. Re: teach reasoning, curiosity, specificity in pre by UnknownSoldier · · Score: 2

    /sarcasm What!? Next you'll be telling me people carved naked statues having sex on the temples for decoration ... :)

  27. Re:In utero by LeadSongDog · · Score: 2

    Yes, read them the complete works of Donald Knuth while incapable of running

    Nah, save that for later, when you need sleep.

    --
    Oh, I'm sorry sir, I thought you were referring to me, Mr. Wensleydale.