Slashdot Mirror


American Schools Teaching Kids To Code All Wrong (qz.com)

theodp writes: Over at Quartz, Globaloria CEO Idit Harel argues that American schools are teaching our kids how to code all wrong. She writes, "The light and fluffy version of computer science -- which is proliferating as a superficial response to the increased need for coders in the workplace -- is a phenomenon I refer to as 'pop computing.' While calling all policy makers and education leaders to consider 'computer science education for all' is a good thing, the coding culture promoted by Code.org and its library of movie-branded coding apps provide quick experiences of drag-and-drop code entertainment. This accessible attraction can be catchy, it may not lead to harder projects that deepen understanding." You mean the "first President to write a line of computer code" may not have progressed much beyond moving Disney Princess Elsa forward? Harel says there must be a distinction drawn between "coding tutorials" and learning "computer science." Building an app, for example, can't be done in a couple of hours, it "requires multi-dimensional learning contexts, pathways and projects." "Just as would-be musicians become proficient by listening, improvising and composing, and not just by playing other people's compositions, so would-be programmers become proficient by designing prototypes and models that work for solving real problems, doing critical thinking and analysis, and creative collaboration -- none of which can be accomplished in one hour of coding," she writes.

27 of 369 comments (clear)

  1. How about by geek · · Score: 5, Insightful

    How about we leaving the teaching to the teachers and the armchair quarterbacks can go fuck themselves? I like that approach.

    1. Re:How about by Big+Hairy+Ian · · Score: 3, Insightful

      Yep lets teach kids to enjoy coding before we suck the joy out of their lives with "inheritance encapsulation and polymorphism"

      --

      Build a Man a Fire, and He'll Be Warm for a Day. Set a Man on Fire, and He'll Be Warm for the Rest of His Life.

    2. Re: How about by fuzzyfuzzyfungus · · Score: 4, Insightful

      The trouble in this case is that it is frequently the armchair quarterbacks who are pushing the curriculum, and the teachers trying to pick up the pieces within that context. Letting that sort of thing pass without comment or challenge is allowing the armchair quarterbacks to mess with the teachers. There is obviously a case to be made that "so kids, let's do some proofs about computability!" may not exactly draw the middle schoolers in; but it's also the case that "everybody learns to code because the app entrepreneurs future!!!" creates a strong incentive toward 'CS' watered down until everyone can be shoved through it without too much hassle.

    3. Re: How about by funwithBSD · · Score: 4, Insightful

      Watered down CS classes is exactly what most people need.

      Even my wife's job, an attendance clerk for a elementary school, takes some significant IT understanding to do.

      The software the district uses requires the end users to create their own reports, in dumb downed version of SQL.

      "Real" IT people need more detailed courses, but the current system geared to make office workers needs to be upgraded to produce IT savvy workers.

      --
      Never answer an anonymous letter. - Yogi Berra
    4. Re:How about by bluefoxlucid · · Score: 4, Insightful

      How about we get out of this stupid fascination with our favorite pet topic.

      While calling all policy makers and education leaders to consider 'computer science education for all' is a good thing

      Begging the question: why is it a good thing? Half of the current CompSci grads don't even get CompSci jobs.

      I could claim teaching everyone agricultural management is a good idea, and I would be wrong; of course a huge flock of neo-conservative anarchocapitalists would get behind me on that one, citing that we should all be able to independently make our own food, so a mandatory master's in farming is a good thing.

      People don't need computer science education; they need education in operating a computer, and, as much as you want it to be true, programming is *not* operating, in the same way that *engineering a car* is not *driving*.

    5. Re: How about by liqu1d · · Score: 3, Insightful

      And that's the most disturbing thing I'll read today...

    6. Re: How about by Anonymous Coward · · Score: 1, Insightful

      Lucky you.

    7. Re: How about by Anonymous Coward · · Score: 4, Insightful

      Maybe joking maybe not. But this is why most people will never be real programmers. Real programmmers enjoy that shit.

      I was just in a meeting where client said "no one likes to do hard problem " - and I said, " sorry, you have the wrong people"

    8. Re: How about by javaman235 · · Score: 3, Insightful

      That's a tough sell: 12 years experience as a master programmer? Come teach obnoxious kids for $45,000 a year!

      --
      -The art of programming is the pursuit of absolute simplicity.
    9. Re: How about by Archangel+Michael · · Score: 3, Insightful

      The trouble in this case is that it is frequently the armchair quarterbacks who are pushing the curriculum, and the teachers trying to pick up the pieces within that context.

      IT guy working in Education here

      First off IMHO we have people in far away places (DC, State Capital etc) who see "trends" in education, and have to implement them without really understanding the whys and more importantly, the why nots of current theories and trends. These are the people that have decided that testing three weeks a year to gather data that doesn't help a single child is a "good thing" and don't understand why it sucks for everyone except those people in far away places.

      Meanwhile, you have people in college who don't know anything about history (See Mark Dice YouTube) . And if you know your history, people who Do Not Learn from history are doomed to repeat it.

      So, while we are teaching our kids about "sociological issues" and filling their heads with information that is truly irrelevant, we are neglecting the basics of reading, writing, and math. No wonder the US is so far down the chain of education in first world countries, our schools are a cesspool of political correctness. Nobody is crying for our illiterate kids, but instead are warring over who can use a fucking bathroom. And thus, our nation's collapse is nearly complete.

      --
      Agent K: A *person* is smart. People are dumb, stupid, panicky animals, and you know it.
    10. Re:How about by StormReaver · · Score: 4, Insightful

      Yep lets teach kids to enjoy coding before we suck the joy out of their lives with "inheritance encapsulation and polymorphism"

      At what point does a person who doesn't like, or even have an aptitude for, programming suddenly reverse course and start becoming proficient in it and start liking it? You are doing a student a grave disservice by presenting programming as a simplistic endeavor at the beginning, and then hitting them with the reality of it later. That makes you out to be untrustworthy to the prospective student, and is a waste of everyone's time.

      People who do not find the underlying principles interesting on their own merit are poorly suited for a career in programming. They may eventually slog through it, but they will be miserable.

      Not everyone can be programmer. I find programming to be so intuitive that it boggles my mind how difficult it is for most people. But the reality is that relatively few people are good at it.

  2. Sadly, I agree with her! by bogaboga · · Score: 4, Insightful

    "...would-be programmers become proficient by designing prototypes and models that work for solving real problems, doing critical thinking and analysis, and creative collaboration -- none of which can be accomplished in one hour of coding..."

    That's why the same approach she criticizes, if applied music, produces students that can play a paticular piece or pieces of "hard" music very well, but cannot meaningfully compose or even read music.

    When it comes to coding, I prefer being introduced to the basics, then letting the student discover on their own why things work the way they do. I learned this way using Visual Basic.

    I now have coded several applications in VB for people who had no idea Excel for example, could be run fully fledged business applications beyond simply adding up numbers.

    1. Re:Sadly, I agree with her! by Viol8 · · Score: 3, Insightful

      "That's why the same approach she criticizes, if applied music, produces students that can play a paticular piece or pieces of "hard" music very well, but cannot meaningfully compose or even read music."

      To be fair, while both composers and players may be labelling "musicians", the skills required are quite different. Playing a piece of music well is a rote activity learned over time like riding a bicycle. Composing OTOH is a creative activity that can't really be taught much beyond the "these chords sound nice in sequence" level. You either have the creative gene or you don't.

      Similarly, most people can cut and paste together some pre-existing functional modules to create some mickey mouse app. However to come up with an algorithm and logic from scratch to solve a complex problem is an entirely different kettle of fish.

    2. Re:Sadly, I agree with her! by Anonymous Coward · · Score: 2, Insightful

      There are many symphonic-caliber musicians who, while being superb players and teachers of the instrument, cannot compose or improvise (at least very well).

  3. Python/PHP: learn it in a weekend... by goose-incarnated · · Score: 4, Insightful

    Of course, the advantages of using a language that non-programmers can "pick up in a weekend" are mostly lost because you'll be working with programmers who learned to program in a weekend.

    Exhibit A: Python. Exhibit B: PHP.

    You want to teach coding? How about do it holistically - teach CS, and use a language like Pascal and/or Basic to teach the CS. For teens, perhaps teach from SICP.

    --
    I'm a minority race. Save your vitriol for white people.
    1. Re:Python/PHP: learn it in a weekend... by mrchaotica · · Score: 4, Insightful

      You want to teach coding? How about do it holistically - teach CS

      Exactly. If I were teaching computing to kids, I probably wouldn't even give them a computer for the first couple of months! Instead, we'd be doing things like cooking and writing recipes to learn how algorithms work (e.g. student: "Why did you pour the flour on the table?" teacher: "because your instructions didn't specify where to pour it. If I'm a computer, I don't know how to assume it goes in the mixing bowl." student: "Oh, I get it now..."), playing with logic puzzles, learning about Boolean logic and computer architecture with pencil-and-paper exercises, etc.

      --

      "[Regarding the 'cloud,'] ownership was what made America different than Russia." -- Woz

  4. they dont want skilled coders by Anonymous Coward · · Score: 2, Insightful

    They want cheap, easily replaced and just barely adequate coders.

  5. Every subject taught in school is too shallow by Dr.+Spork · · Score: 4, Insightful

    Of course one computer science class is not sufficient to turn students into programmers. Their history class is also not going to make them into historians. After all, there is nobody forcing kids to search archives for original documents! By professional standards, everything taught in school is fluffy and watered down. Harel noticed that only now, and she's outraged?

  6. Duh. Please shut up by Maxwell · · Score: 4, Insightful

    It's called "hour of code" and the idea is to get kids interested in computer coding. Kids already have exposure to music, they can bang a drum, squawk a plastic recorder from the dollar store. They have exposure to sports, they can throw a ball around easily. They don't have exposure to coding in the same way. So give them an hour. It's not a PhD, but have you heard the noise those plastic instruments make?

  7. All in or nothing at all! by Anonymous Coward · · Score: 2, Insightful

    Learning multiplication tables doesn't teach kids how to solve the REAL problems they'll face in multivariable calculus. Kids don't learn REAL chemistry by following lab exercises in their science books.

    Kids don't need to learn how to make apps in third grade any more than they need how to build graphene. But I would like to see them learning things such as conditional execution, recursion, and abstraction of problems. Unless you've programmed in your spare time, when you get to college, you are going into computer science completely blind. Having exposure to these concepts in a structured way at an early age allows you to make a better assessment of if that career will be good for you since you'll have said "I really enjoyed that class where I programmed Elsa to walk in a spiral using a for loop with an increasing counter, maybe there's something real I can do with that".

    Maybe they won't be successful! That's OK! I wouldn't be successful in real life at all the things I did well in elementary school. The important thing is giving them a chance to learn skills that might be useful and determine what it is they enjoy at an intrinsic level in order to encourage them to study it in their spare time, in college, and in their careers.

    Also, bullshit on that "musicians don't learn by playing other people's music". Yes they do.

  8. Overabundance of corporate tie-ins by Xeth · · Score: 3, Insightful

    Why is it that these tight corporate tie-ins are permitted for education? I certainly would hope that the schools wouldn't allow "Luke Skywalker and Belle teach American History", so why is the equivalent permitted for CS? Is it the fact that this is a "new" educational subject, where they're seizing the uncharted void of curriculum to get us warmed up to the idea?

    --
    If your theory is different from practice, then your theory is wrong.
  9. Snooze fest by lucm · · Score: 2, Insightful

    Most of these teachers are probably not even qualified to teach programming and you end up getting this hard reliance on a textbook.

    That's the kind of teacher that made it possible for me to learn how to perform a DDOS. It was highly motivating to see her wonder why her computer had severe network problems during class, while nobody else seemed to be affected. And when they upgraded her computer to a (omg) multimedia machine and I figured out how to eject her cdrom remotely, I was hooked. And those were dos and Netware years, mind you, none of this fancy linux thing.

    I don't think I'd have become interested in computers if instead of her my teacher had been an elegant coder who really jnew the importance of design patterns and DRY and was talking about multifaceted this and polymorphism that.

    So what I'm saying is, keep this kind of thing going on and let the horse figure out by himself if he wants to drink. If coding becomes a dull school subject it will attract the wrong crowd, and god knows we don't need any more dullards in this industry.

    --
    lucm, indeed.
  10. coding and CS by l3v1 · · Score: 3, Insightful

    I don't think there's really a wrong way to show kids how to code. The only wrong way would be not to show anything. (Well, it might be a bit wrong to over-complicate things, since we don't want to make them uninterested or scare them away.)

    I know you're mostly not interested in some john doe's life story, nevertheless, I'll give you my example, since I also was taught coding before knowing anything about CS or higher level math.

    The first ever line of code I wrote was about 25 years ago in 6th grade. There was a computer club or something at our school, after classes in the afternoon, where we - a group of ~6 - were shown/taught coding in some sort of Basic on some really junk machines. I started learning CS when I started high school (in a math+CS-specialized class - meaning we had extra classes of math, phys, CS, and extra coding labs) and I never felt it a problem that I only started to know things deeper at that time. On the contrary, when we started the more "boring" part :) I was already interested enough to care about it :)

    I know some people who started this way and turned out quite OK :)

    Point is, start early, start at a level that makes kids interested, and continue to teach them deeper stuff according to their age, gathered knowledge, and of course, interest (if there's any, not everyone has to be a CS+coder guru).

    However, after a while CS needs to kreep in, since even if most companies need "normal" coders more, my unsurprising experience is that more knowledge really produces better results.

    --
    I am putting myself to the fullest possible use, which is all I can think that any conscious entity can ever hope to do.
  11. its' about fun by goombah99 · · Score: 3, Insightful

    running else into walls is really fun and you can get kids to spend hours learning stuff with a pay off like that. It's about setting the hook. Later on programming becomes fun for other reasons like the feeling of a flow state or the accomplishment of a product or the edorphin release of grocking a new algorithm that does something you thought was impossible. But you can't get to those in one step. We let kids read captain underpants before we expect them to find reading Arthur C Clark any fun. It's about progression and self motivation at an appropriate level. Not all kids will be coders but letting the ones that are find out they are is fine.

    --
    Some drink at the fountain of knowledge. Others just gargle.
  12. A logical argument except.. by evolutionary · · Score: 3, Insightful

    There ARE musicians that are considered proficient who in fact did nothing but learn other people's music. Pavarotti did nothing but learn other people's music and in fact did it by ear because apparently he never learned to ear music (at least not in the beginning of his career). The great pianist Glen Gould never really became proficient in composition (he had a SINGLE work, which wasn't really a great accomplishment shortly before he died). Now are there rounded musicians, certainly. Leonard Bernstein would be a great example. Point is, the analogy given to us is flawed. Also, in programming, although we have many generically labelled "Developers" there are low level coders (generally juniors starting out who just do simple assigned tasks), UI Designers, Software Architects, Database Modellers, Data Architects, DBA's, Network Administrators, and many in between. Most start-ups have general "Developers" who are basically expected to be "Jack-of-all-trades" with the experience and rounded exposure to handle "whatever is needed at the time", but few people with less than 5 years of experience can handle that well so generally these are intermediate-senior level experienced people. While I agree to do software (or music) professionals SHOULD have a wide rounded set of skills to see the big picture and accomplish more, not every successful IT person is well rounded and these will be limited to small scope roles (although the real world doesn't always meet this idea). So I wouldn't say kids in school taught the bare basics of coding aren't taught to code "wrong" as much as in a way that will limit their advancement.

    --
    "Imagination is more important than knowledge" - Einstein
  13. American Schools Teaching Kids To Math All Wrong by jimbolauski · · Score: 4, Insightful
    Just substitute programming buzzwords for college math courses and the insanity sticks out like sore thumb.

    We are doing a disservice to kids by assuming that they can't grasp Differential Equations, Calculus, and Linear and Nonlinear Optimization. By limiting them, we undermine their capabilities and stifle their creative and inventive potential.

    --
    Knowledge = Power
    P= W/t
    t=Money
    Money = Work/Knowledge so the less you know the more you make
  14. Educational first, then engaging by Roger+W+Moore · · Score: 3, Insightful

    It's about progression and self motivation at an appropriate level.

    True but it must also be educational at an appropriate level of rigour. The problem with a lot of school education today is that making it fun becomes the primary goal and maintaining educational standards comes in second. This leads to the erosion of educational standards very rapidly - just look at the appalling level of maths education in schools in the UK, Canada and the US today. The correct order of priority is to determine what needs to be taught and after that determine how to teach it in the most engaging way possible: this last part is where the teachers are the experts. If you can't come up with an engaging way to teach it then you just do the best you can.