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.

369 comments

  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 PvtVoid · · Score: 4, Funny

      "inheritance encapsulation and polymorphism"

      I cannot for the life of me figure out how to get Elsa to do that.

    4. Re: How about by liqu1d · · Score: 4, Funny

      She's a prude

    5. Re:How about by Anonymous Coward · · Score: 0

      Brilliant! I think the same should be applied to piloting and surgery! People who know WTF is going on have no business teaching it! I want my next surgeon to be a specialist at making cakes! The reason for school is to have fun and enjoy yourself not to learn usefull stuff, how the fuck needs actual skills anymore?

    6. Re:How about by Anonymous Coward · · Score: 0

      Globaloria is an organization (cannot tell if it is non-profit or not) that wants to teach coding to K-12 using their own methods which involve:
      "building things that are tangible an [sic] sharable" (http://globaloria.com/about/). I give them a bonus black-eye for the grammar error since they are trying to educate.

      If Code.org were right, it means that the raison d'etre for Globaloria is gone. As such, I doubt that the CEO of Globaloria would ever be willing to say that Code.org was right. The overall stated mission for both Code.org and Globaloria are otherwise in general alignment: provide computing instruction to K-12 with a special concentration on females and minorities.

    7. 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
    8. Re:How about by Hentes · · Score: 1

      And who will teach the teachers?

    9. 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*.

    10. Re:How about by MightyYar · · Score: 1

      How about we leaving the teaching to the teachers

      I would love to do that. Honestly.

      But unlike most professional fields, they do not have a track record that I am comfortable with. From my limited investigations prompted by the whole "common core" movement, it seems that the entire field of education is one of competing philosophies, with very little if any empirical data to back up any position. When they get their act together and realize that we've progressed beyond the 19th century in the applied sciences I will "leave teaching to the teachers". Until then, anything stated as "fact" by the "experts" in education should be met with severe cynicism - they are probably just following the latest fad.

      --
      W..w..W - Willy Waterloo washes Warren Wiggins who is washing Waldo Woo.
    11. Re:How about by CastrTroy · · Score: 0, Offtopic

      You see, when her parents died, she inherited the kingdom, encapsulated herself in her room, and figured out how to get her powers to act differently depending on the type of situation she encountered. The MakeIce() function call no longer just caused death and destruction, it could also be fun or helpful depending on the object being enacted upon.

      --

      Anthropic principle: We see the universe the way it is because if it were different we would not be here to see it.
    12. Re: How about by ninthbit · · Score: 0, Offtopic

      Prude... If anything she's a freak. She probably masturbated incessantly for years in that room. She didn't have a computer, TV, of games to keep her occupied. There wasn't even any books if I recall. It would have been her only form of entertainment. Then when she gets out, the first thing she does is slut up her outfit with that long slit up the leg. The giant ice monster probably had all those spikes because he was her snow version of some kind of multi-penis hentia sex slave. She probably has a back room in that castle full of giant ice dildos.

    13. Re:How about by ShanghaiBill · · Score: 1

      And who will teach the teachers?

      Colleges and universities. Teaching requires a college degree. Not every teacher needs to be able to teach coding. Usually the kids rotate through a computer lab, with a dedicated teacher, while their normal classroom teacher works on lesson plans, or takes a smoking break, or whatever. That is the way it works at my neighborhood school. The younger kids (3rd and 4th grade) learn Scratch, and the older kids (5th and 6th grade) learn Python.

    14. Re: How about by Anonymous Coward · · Score: 3, Funny

      Right... I assume you're here posting because you're not allowed near school playgrounds any more?

    15. Re:How about by XXongo · · Score: 1

      Brilliant! I think the same should be applied to piloting and surgery!

      Actually, it would be really cool if K-12 had taught piloting and surgery. I would have loved that.

      And, in this ever-changing world in which we're living, with drones and MRI scans and 3-D modelling and virtual reality, that's not entirely out of the question...

    16. Re:How about by RogueWarrior65 · · Score: 1

      That's fine as long as the teachers have a wealth of experience in their subjects in the real world before they start teaching. Teachers who teach the textbook aren't teaching. Teachers who cannot go beyond the theoretical to practical applications of what they are teaching aren't preparing the students to go into practical applications. Lastly, teachers who are uninspiring aren't very good at their jobs.

    17. Re:How about by Anonymous Coward · · Score: 0

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

      But I'm an obese American with a 15-second attention span and I'm addicted to instant EVERYTHING. Like losing weight, programming would require using proven methods in a steady effort over time that gradually builds on previous successes and learns to handle setbacks. Clearly if it doesn't come together easily and instantly it's not worth doing!

      Say, why's the country going to shit again?

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

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

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

      Lucky you.

    20. Re:How about by PopeRatzo · · Score: 0

      "inheritance encapsulation and polymorphism"

      These kids are too young for that kind of sex education.

      --
      You are welcome on my lawn.
    21. Re:How about by unixcorn · · Score: 1

      Teachers develop curriculum but, in Missouri at least, it's the State Legislature that defines the educational goals. Teachers have no choice but to follow along and teach what they are told to, the best they can.
      As far as fads go, I am not sure your point is valid. Teachers are trained to use different methodology to reach all kids. What works for one, may not work for another. You may think what they are doing is a "fad" but in reality, it's simply a tool to reach a goal.
      I suggest spending some time in a classroom before dumping on teachers. We should also be looking at parental expectations (or lack of them) as well. No school district operates successfully if parents aren't happy with the education their kids are getting.

    22. Re:How about by AntEater · · Score: 2

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

      Suck all the joy out? "Inheritance encapsulation and polymorphism" is where the fun begins!

      --
      Alex, I'll take keybindings not used by Emacs for $400....
    23. Re: How about by ninthbit · · Score: 2, Interesting

      I'm just calling it as I see it. She's a young women who went threw puberty all alone, trapped in a room. She wasn't taught social norms, or sexual boundaries. She would be hormone driven with no impulse control. To be fair, it's not her fault... Her dad did the exact opposite of what the trolls advised. On a side note: For the AC's replying about child molesting or school playgrounds... learn your characters. Elsa was 21 and Anna was 18.

    24. Re:How about by Anonymous Coward · · Score: 1

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

      Formal computer science education already does that.

      Here are the programming classes from my college education (at an excellent state school) completed before I ever had to really understand "inheritance encapsulation and polymorphism":

      • * First course in programming/programmatic thinking (basically, solving interesting and large but by no means difficult math problems with C++ and Matlab; culminates with a project where you create a program which finds the circle, radius and center point, given three Cartesian coordinates, an excellent illustration of checking for corner cases :)).
      • * Second course in programming (introduction OO concepts, culminates in the creation of a simple card game with command-line UI, don't need to actually understand the OOP concepts beyond memorizing those three words; this class mostly focuses on just creating fun things with C++ and good coding style).
      • * Data structures and algorithms (if you don't like this class, don't bother moving on to true "inheritance encapsulation and polymorphism").

      Finally, that's right, after 3 programming courses, a true programmers course teaches hard core OOP in C++. By that time, you have decided if you are in or out on the topic. If you aren't in at that point, it cannot be forced.

      I think you are completely agreeing with the poster: it takes time to build up an understanding of systematic programming, and the first step is indeed getting people interested in real programming. To continue with the music analogy, we don't give kids a sweet casio keyboard with all sorts of built in routines to get them started in music. We start them with nothing and make them build up from there: sometimes it's a recorder, sometimes a full instrument. But, we start them with "Hot Cross Buns," not playing a few token notes over "Wake Me Up Before You Go Go."

    25. Re:How about by locotx · · Score: 5, Funny

      Let it go

    26. Re:How about by MightyYar · · Score: 2

      As far as fads go, I am not sure your point is valid. Teachers are trained to use different methodology to reach all kids. What works for one, may not work for another. You may think what they are doing is a "fad" but in reality, it's simply a tool to reach a goal.

      I have absolutely no problem with trying to reach kids through different methods. (I do have a problem with trying to teach all kids all methods, but that's another conversation.) But where is the empirical evidence that these methods actually work? Sometimes there will be a limited and flawed study. Usually a case study in a single school district with no control group.

      I suggest spending some time in a classroom before dumping on teachers.

      I am NOT dumping on teachers. Most of the teachers that I have encountered are great. Not all, but most. They work really, really hard and care deeply for the children. They have gone through a lot of training and education - probably more than they need to, but they stuck with it. Because of the silly pay curve, most endure very low salaries until well into their career.

      That makes it all the more frustrating that they are part of a larger dysfunctional system. They are forced to learn and use unproven methods, based on the winds of time. The incentive structure is all screwed up, so they are forced to blow through topics so that they cover everything on a standardized test, rather than spend more time on things when they see a deficit. They are held to unreasonable expectations for results from students who do not have the home support to deliver in the time given. We are lucky that in my district they have so far protected art and music - but most districts aren't willing to take the tax hit that we do.

      All I'm asking is that the academic side of education - the universities - start practicing what they preach and use sound data to test their hypotheses. Education should not still be a philosophy in this day and age. It should be de rigueur to run controlled experiments in large school systems.

      --
      W..w..W - Willy Waterloo washes Warren Wiggins who is washing Waldo Woo.
    27. Re: How about by Anonymous Coward · · Score: 0

      That's just not true. Kids with no boundries, guidance or age-appropriate social interaction grow up perfect! Every respectable psychologist agrees.

    28. 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"

    29. Re: How about by Pumpkin+Tuna · · Score: 1

      Exactly! My entire job is working with teachers to help them integrate technology. The benefit to Code.org and other simplified programming lessons is getting kids to understand problem solving and process thinking. Too much of school is still rote memorization and regurgitation on tests. When you do ANY type of coding, you teach kids real skills.

    30. Re:How about by Anonymous Coward · · Score: 0

      This has been my view of it. Wood working would be just as useful, and nearly all if not all highschools have dropped shop class. I would argue that you use wooden objects much more than you do computers(hell you live in a house full time, it's most likely wooden). If you teach it to the masses, then you will need to dumb it down and it will turn into an intro to programming. Then you will get people who think it doesn't go far enough. You don't need to be able to write an excel like program, in order to use Excel.

      It's just a bunch of computer program zealots who think that their chosen profession is the correct one, and want to push it on to everyone else. It's damn near as bad as religion.

    31. Re: How about by Anonymous Coward · · Score: 0

      This.

      I was handed a silver platter. Smart enough to not have to do anything. For 30 years. Good career, well paid, easy schooling. Rarely worked. Often months without office.

      Only recently learned about hard work. Our school system fails the best. No challenge.

    32. Re:How about by __aaclcg7560 · · Score: 1

      And who will teach the teachers?

      The gym instructor.

      .

    33. Re: How about by javaman235 · · Score: 1

      That's exactly right. The issue is computer skills are the new math literacy. You need to integrate a function for some science? Do it in wolfram alpha, put it in a script you can use, and move on, and you can skip calc 2. But my Dad taught his whole life, and saw scores going down as computers came in to replace problems near the end. There's no substitute for rigorous thinking, once learned in math classes, the same rigor needs to be trained in CS, or the students just become dumb. There's no pain free path to mental or physical fitness.

      --
      -The art of programming is the pursuit of absolute simplicity.
    34. Re:How about by Anonymous Coward · · Score: 0

      Teachers develop curriculum

      Which nation do you live in?
      Here in Texas, the State Board of Education is in charge. The chair is appointed by the governor, the other members are elected. Some of them were teachers, before they went to to be principals, etc. All of them are out-of-touch with the public schools they represent.

    35. 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.
    36. Re:How about by swb · · Score: 2

      Education has been seized by the idea of solving the "achievement gap" and using the public school system as a social welfare delivery service.

      The former only increases the desire for the latter because underachieving demographics are highly correlated with poverty.

      It would make some sense, but the task of social welfare exceeds both the expertise and resources of a school district. When they nevertheless focus on social welfare, they end up biasing the talent pool towards social welfare delivery experts and away from education, in addition to diverting the limited funding pool from education to social welfare delivery.

      Furthering the problem, poverty in and of itself isn't the primary problem of education underachievement, it has much more to do with the social environment of the home, the parents' emphasis on educational obtainment and other factors that can't be bought with social welfare transfers. So the diversion of limited resources has limited return and probably is more corrosive to the larger educational mission than it is beneficial to underachieving students.

      Given the political pressure to "solve" the underachievement problem, racial politics and the left-leaning nature of the educational system I don't see any of this changing.

    37. Re:How about by OrangeTide · · Score: 1

      Well in this case the teachers are teaching something I am an expert in. There are slashdotters here today whose opinion should carry some weight.

      So to your analogy, I'm an actual quarterback with a fist full of superbowl rings, telling the junior high football team what they need to do better on.

      --
      “Common sense is not so common.” — Voltaire
    38. Re:How about by Creepy · · Score: 1

      Um, that says Computers, Mathematics, and Statistics, while Engineers get their own category.

      Number of people with a CSci degree working in some form of computer science or engineering: all of them, unless they're laid off and looking (one person).

      Math majors I know have the following jobs: Accountant. Accountant. Sales and Accounting Senior Manager.

      Statistics majors I know have the following jobs: job Manager non-STEM, looking for a job teaching Statistics (PhD from Ecole Normale Supérieure - US and French citizen) and his wife with the same PhD from the same place (waiting on US paperwork to work, she already has dual citizenship in Romania and France, so I think she's pursuing a green card rather than citizenship).

    39. Re:How about by Moof123 · · Score: 2

      Few teachers come into the system after years in the "real world". If you are even slightly successful at anything above an administrative assistant teaching will be a step down in pay after spending a minimum of 15 months getting a teaching certificate (many schools have a summer through summer accelerated program).

      So anyone coming from industry to teach either couldn't cut it, or is a lucky person who isn't teaching to pay the bills. The latter are very rare critters, and in the couple cases I have seen they don't last long at all.

    40. Re: How about by javaman235 · · Score: 1

      I have a CS degree and I'm not working in the field.

      --
      -The art of programming is the pursuit of absolute simplicity.
    41. Re:How about by luis_a_espinal · · Score: 1

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

      Yes and no. I want armchair quaterbacks to leave teachers the fuck alone so that they do what they do best. OTH, we should not be asking teachers to teach material they are not familiar with. In this case, programming.

      As a matter of fact, I cringe at the notion of teaching programming everywhere. Technology is important, and we will inevitably move into a society where automation and robotics will reign supreme. But the solution is not to teach programming as if it were a silver bullet.

      What we need, first and foremost, is to create a society of autodidacts, focusing early on with general, across-the-board competency in math, reading, logical thinking, personal finance and rudimentary bookkeeping. Teaching programming won't do shit without a solid foundation across the board.

    42. Re:How about by Hentes · · Score: 1

      Problem is, universities don't teach programming either, or at least not very well. They teach the abstract concepts, but any good coder is pretty much self taught. Not to mention computing is a constantly changing field, you can't rely only on stuff you learned 40 years ago to prepare the kids for tomorrow. We need to find a way to keep the teachers in touch.

    43. 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.
    44. Re: How about by laie_techie · · Score: 1

      Watered down CS classes is exactly what most people need.

      My university kind of did that, but not just for computers. We had several IS classes geared towards teaching people how to use computers in their non-computer-related job (how to use MS Word, how to use Outlook, how to use Internet Explorer, etc). Then there were real IS classes for IS majors and CS classes geared towards CS majors.

      The problem is that the current watered down classes in high school arose from a desire to remedy male dominance in CS jobs. People who thrive in these watered down classes have a rude awakening on applying for a job (they rarely lack the skills required in the real world, plus the real world isn't also so polite).

    45. Re:How about by Tablizer · · Score: 1

      I can, but it would get one kicked out of class

    46. Re: How about by Anonymous Coward · · Score: 0

      Wow way to jump to conclusions considering they were 21 and 18. :/

    47. Re: How about by Anonymous Coward · · Score: 3, Interesting

      Yep that was the tip of the iceberg.

      Story time boys and girls gather around.

      I was in my senior year of highschool and was a Visual Basic monster(or so I thought). I was writing progs for AOL exploits when I was 14. I thought I was the shit. Spaghetti code galore as you can imagine.

      First programming class in college was introduction to C++. A whole new world I had yet to explore.

      See at a young age I thought my journey was complete. I had some famous progs and a group of friends with the same interest. I thought ALL programming was Visual Basic style. Wtf was this command line shit? I was just at the tip of the iceberg. These new concepts were laid as the foundation. Some people moaned it was too hard, most dropped the class. I stayed and got an A. That's how they weed out the weak.

      Needless to stay, you are right. These concepts make programming fun, it makes you feel good when you learn and apply these concepts. A sense of accomplishment. I had put the work in, and was able to write good code as a byproduct. All the people who quit didn't get that experience.

    48. Re: How about by Anonymous Coward · · Score: 1

      $30,000/year*

    49. Re: How about by bluefoxlucid · · Score: 1

      I like math literacy, and I think we should fix the math curriculum. I'm largely focused on more effective methods of teaching arithmetic, algebra, and geometry, notably via Soroban and Anzan methods common in Japan. There is no reason we need to drill old, slow, and fanciful mathematics into kids's heads when we can drill old, *fast*, and efficient mathematics in a third of the time. That way they'd be able to rapidly perform basic, trivial computations and interact with the world in general (GEOMETRY, dude, how much cake mix if you're using a 9 inch round pan instead of an 11 x 14 rectangle?) by the time they're out of fourth grade, and we could all move on to something useful.

      Don't get me wrong, Calc 2 is useful; so is integrated systems programming in C#.NET and model-view-controller interfaces using Bootstrap.JS. It's not useful to god damn *everyone*, whereas geometry and adding two numbers *is*; and the path to higher math is considerably shorter and better-founded when you've got strong arithmetic and algebraic skills. We do not need to graduate every high schooler with high-level multi-variable integration and a firm grasp of theoretical quantum physics.

    50. Re:How about by MightyYar · · Score: 1

      Given the political pressure to "solve" the underachievement problem, racial politics and the left-leaning nature of the educational system I don't see any of this changing.

      I don't see it changing either. All I ask is that we use real data to achieve hard goals. If you want to close the achievement gap, then use methods which have been proven to work - don't just throw a bunch of shit at the wall.

      My personal preference would be to stop measuring progress by age and instead measure progress by how students do after they leave a school. Get rid of artificial age thresholds and hold slower students in the school longer than faster students. If some kids go off to college (or whatever proxy you prefer) at 15 and others at 20, that's just fine - so long as the 20-year-olds have the same skill-set as the 15-year-olds.

      --
      W..w..W - Willy Waterloo washes Warren Wiggins who is washing Waldo Woo.
    51. Re:How about by SScorpio · · Score: 1

      Actually, it would be really cool if K-12 had taught piloting and surgery. I would have loved that.

      You didn't have a frog in biology? It's not healing surgery, but it does teach some basics. With 3d printers the kids might be able to start making cyborg frogs.

    52. Re:How about by Anonymous Coward · · Score: 0

      She's a princess meaning she inherited her wealth and position. She was encapsulated in the castle by her fearful parents. And she polymorphs other people into icicles.

    53. Re:How about by TheSync · · Score: 1

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

      Object-oriented programming is just a fad, like IPv6...

    54. Re:How about by TheSync · · Score: 1

      But where is the empirical evidence that these methods actually work?

      BTW there is an attempt by the US Department of Education to try to collect evidence-based educational best practices in the What Works Clearinghousa.

    55. Re:How about by swb · · Score: 1

      I think the "as long as it takes" concept makes sense for higher education, but its complicated by social development issues in lower grades. A 15 year old in 8th grade is a whole bunch of challenges for everyone, as is a 20 year old in 12th grade.

      And the only standard you can really apply is a "minimum standards" -- you can't produce top 20% outcomes for every student, and many of them will never achieve it even if you keep them in high school until they're 25. So all you'd end up doing is exiting smarter students early, dumbing down the process for everyone else.

      Maybe this is a good idea, but my guess is that the top 5% actually end up raising up the entire top 20% just by being there, and that they force the curriculum and teachers to aim slightly higher than the bare minimum.

      I think throwing shit at the wall is largely a byproduct of the teacher education system. I think there was a time where "teacher's colleges" focused on pedagogy. Now it's all caught up in postmodern systemic analysis. In order to gain the essential M.Ed. necessary for the union contract guaranteed raise for just having an M.Ed., education departments have had to churn out masses of Education PhDs to bulk up the faculty.

      These PhDs need to write a dissertation on a unique topic, which ends up being some new theme and variation on whatever the latest system is.So you end up with an education process that churns out teachers over-educated in systems and under-educated in concrete pedagogy, plus an entire Greek Chorus of academics deeply invested in systemic thinking.

      We've been teaching people to read and write en masse for a couple of hundred years now, is it *that* hard? Based on the historical essays written by elementary school students 75-100 years ago that turn up in the paper every so often, I'm guessing we were doing a fine job of it back then -- and that was probably with worse raw material than we have now, more immigrants, more illiterate or uneducated parents, and at least as much poverty as now (certainly more material deprivation).

    56. Re: How about by Anonymous Coward · · Score: 0

      Watered down driving classes is exactly what most people need.

      Even my wife's job takes some significant driving to do.

      The cars the district uses requires the end users to manually advance the timing and operate the transmission while hand cranking a starter.

      "Real" automobile operators need more detailed courses, but the current system geared to make office workers needs to be upgraded to produce road-savvy workers.

      The Mennonites were on to something by only adopting technology when, if and how it would not negatively change their lifestyle and culture.

      Adoption of computerized processes has eliminated huge amounts of human labor required to operate a business, military or government. But the adoption has been at breakneck speed. One of those broken necks has been human interfaces. The car analogies are often spot on. Computers interfaces are currently at the level cars were 100 years ago. But we not yet seen the kind of interface revolution that makes average people into (barely) adequate drivers. And I would expect the human death and suffering toll due to "operator errors" to be about on par once that happens.

      Mostly this has been that the more CPU cycles, storage and bandwith per dollar limits what we can do. CLI on Mainframes are raw steam engines managed by engineers. WIMP GUIs on Micros are early cars with manual timing and various inconsistent joystick/wheel/handlebar combinations. Touch and Voice on Mobile is getting closer to standard Wheel and manual transmission.

      Programmers are like automotive engineers and technicians. Programming as a career is going to require a dedicated learning path and significant time. Yes your average driver should know a car has a battery, needs oil changes and gas. The average driver should know how to drive your car within the framework of laws and rules of the road. But driving is a specialty skill taught outside the normal school curricula.

      One can argue though, that a world full of drivers is different from a world full of computer users in that computing brings a new paradigm. A new way of thinking about everything. From the impact of perfect cheap copies in the digital world to the power of algorithmic thinking an revolution in how you live is happening. In that model there is value in teaching the Elisa-level programming skills. This is not to create a huge cheap and disposable workforce of barely literate programmers. It is instead to expose as many people as possible to a way of thinking that is new and in high demand. Namely, task automation.

      We must be mindful that we are not teaching students for today but for tomorrow. If we just try to teach kids Java they may figure this out on their own. After all, this is how traditional Fine Art classes work - throw massive amounts of poorly directed attempts at it and let the human brain figure it out on its own. But a better approach in my opinion is to expose everyone to the ideas in the field and encourage those who want to go on to pickup programming directly.

      The blue collar worker of yesterday did repetitive manual labor. The white collar worker of today does repetitive mental labor. The gold collar worker of tomorrow will have to figure out tasks on their own and imagine how to make a computer do it. At the least learning "that's not how the force works" for the average Jane/Joe will improve some of the tickets coming into the support queue.

    57. Re: How about by Anonymous Coward · · Score: 0

      Hey now. With our enhanced legal regulations surrounding restroom attendance, the USA is become one of the most safest places on Earth. If any army invades, the proper people will be able to hide out in the restrooms and the army will have no choice but to go home. They won't be allowed to enter and our population will be kept safe.

    58. Re: How about by Anonymous Coward · · Score: 0

      Surely you mean that there's no royal road to geometry.

    59. Re:How about by K.+S.+Kyosuke · · Score: 1

      before we suck the joy out of their lives with "inheritance encapsulation and polymorphism"

      Why would you do such a vile thing to them that at any point in time? Why lead them astray to useless religions and superstitions like the ones you list when they should be actually honing their skills on general patterns of thinking?

      --
      Ezekiel 23:20
    60. Re:How about by Anonymous Coward · · Score: 0

      Ah, anarcho-captialism. The people who think it's okay for people to enter a field of study with no real prospects of finding a job. Especially when the businesses involved are conspiring to replace people with foreigners.

      Christ, I'd want the government to intervene to ensure Americans have a fair chance (and break up Comcast while we're at it).

    61. Re:How about by Darinbob · · Score: 1

      Or just don't teach "coding". We designed software for Apollo and the space shuttle without people learning to "code" in grade school. Personally I think high school is even a bit too early for this. Instead teach mathematics and science. Too many "coders" today don't understand basic concepts, like precision of floating point numbers, why their triply nested loop is running slowly, or even simple graph theory, which are built on top of concepts that should have been learned in high school. We also have a glut of kids assuming that they can be self taught and that college is a waste of time, and they set their highest goals to that of an entry level IT slave.

    62. Re:How about by tibit · · Score: 1

      I agree. I initially learned how to code by writing "apps" that consisted of a few hundred of PRINT statements interspersed by PAUSEs. I doubt very much that this is somehow inherently more effective than, say, making the same animation using Scratch. Ms. Harel has a Ph.D. but is full of it. Making Elsa move forward is a good first step at gaining understanding. At that level, it's no worse than typing up a few PRINTs and finally RUNning it and being happy at making a computer do something according to your commands.

      --
      A successful API design takes a mixture of software design and pedagogy.
    63. Re:How about by R3d+M3rcury · · Score: 1

      I gotta admit, I'd expect that at some point, some school system would start getting complaints about how the school is teaching their kids about polymorphism and how that "just ain't right." "Inheritance? Sounds like Darwinism to me..."

    64. Re:How about by tibit · · Score: 1

      Given that you can use the same computer, and the same environment to make the computer follow your instructions, vs. merely follow the instructions of others, I'd say that knowing how to code, even if at a very basic level, is a must for everyone. By not leveraging the machine you're placing yourself at a disadvantage, as you can only use the code others wrote and that will almost never be exactly what you need. In most areas of life where you're using computer in an office-style job, you'd benefit from being able to write your own macros, or run a greasemonkey script to automate a webpage. Not knowing how to do that makes you functionally illiterate, of sorts. I still lament at how many engineers don't really grasp the basics of coding... just because you're a mechanical or civil engineer doesn't absolve you of responsibility to keep your productivity up by leveraging code to help you out with drudgery.

      The education in operating a computer must include education in how to get the computer to follow your own instructions, vs. merely following instructions of others. You don't need it if you're operating a closed externally-managed point-of-sale system or a car with its complex computer network, but as soon as you're in an office job you're clearly disadvantaged by not knowing coding basics as they apply to office tasks - and here really the macros, shell scripting and javascript basics are of a big advantage.

      --
      A successful API design takes a mixture of software design and pedagogy.
    65. Re: How about by Anonymous Coward · · Score: 0

      learn your characters.

      Contrary to the opinions of sex-offenders and child-molesters, real human beings are not literary characters, nor do literary characters accurately represent the unwritten projections of disturbed readers.

    66. Re:How about by MightyYar · · Score: 1

      A 15 year old in 8th grade is a whole bunch of challenges for everyone, as is a 20 year old in 12th grade.

      I don't actually think that will be the big problem. I think there will be enough students that they can be handled as a group. I think the larger problem is that, in some districts, the average black student will be behind the average white student. This creates problems with both perception - which is easily dismissed but hard to actually deal with - and also makes it difficult to tease out institutional racism. The upshot is that if the system works, after a generation or two the system will be self-healing.

      So all you'd end up doing is exiting smarter students early, dumbing down the process for everyone else.

      I agree that this would occur, but I debate that the status quo is desirable. Is it really beneficial to keep students in high school once they have reached proficiency in college-level courses? And if so, then why do we stop compulsory education at 12th grade? Maybe times have changed and we should stop at an associate's degree?

      Maybe this is a good idea, but my guess is that the top 5% actually end up raising up the entire top 20% just by being there,

      I think in practice the AP kids are more or less walled off from the slower kids. The top 5 or 20% helps the school's scores, but I doubt they are doing much for the other students that aren't also in the AP courses. In my state (PA), the AP kids (well, "gifted"...) are even a protected class of special education.

      I could be way off base, but I'd like to see this at least run as an experiment. You could hardly do any worse than our neighboring Philadelphia School District using the status quo, so I'm not terribly worried about experimenting on the kids.

      I think throwing shit at the wall is largely a byproduct of the teacher education system.

      I completely agree.

      We've been teaching people to read and write en masse for a couple of hundred years now, is it *that* hard? Based on the historical essays written by elementary school students 75-100 years ago that turn up in the paper every so often, I'm guessing we were doing a fine job of it back then -- and that was probably with worse raw material than we have now, more immigrants, more illiterate or uneducated parents, and at least as much poverty as now (certainly more material deprivation).

      One argument that I've heard - and I have to admit that there may be some merit to it - is that women had very few career choices at the time. Since teaching was almost exclusively a woman's job, it represented pretty much the top position that a woman in the workforce could attain. As a result, you had the best and brightest working women doing the teaching. Now, they are doctors and lawyers. I don't know if I buy it and I've never seen data to support or refute the notion.

      --
      W..w..W - Willy Waterloo washes Warren Wiggins who is washing Waldo Woo.
    67. Re:How about by MightyYar · · Score: 1

      I know, that's where I ended up. Open up some of those "studies" and groan along with me. Let me know if you find a good one.

      --
      W..w..W - Willy Waterloo washes Warren Wiggins who is washing Waldo Woo.
    68. Re: How about by tibit · · Score: 1

      I'd argue that if you're leaving high-school without knowing how to automate something basic on a website through greasemonkey, or in an office app through its macro system, you're behind where you should be. There's enough apps both off- and online to automate the calculation of a volume of a platonic solid, and these days everyone carries their programmable pocket calculator with them anyway, except that they call it a "smartphone".

      Of course having some number sense and understanding of algebra helps, but teaching of arithmetic tricks is kinda pointless without concurrent teaching of what properties of numbers and/or algebra make these tricks work. Divisibility tests might have fallen out of a blue sky initially, but we now understand why they work. You might forget the test, but if you know what made it work, you can always re-derive it from scratch if you so with. Or just use the damn calculator. I used to like mental math and such tricks when I was a kid, but I completely lost interest in it.

      For most of us, there are much bigger mental tasks I can occupy myself with. Wasting time on doing mental arithmetic is just that at some point in life. Sure I do it if I have to, but only then, and it's usually faster to do it on the phone anyway.

      --
      A successful API design takes a mixture of software design and pedagogy.
    69. Re:How about by Anonymous Coward · · Score: 0

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

      I happen to enjoy OOP. But thanks.

    70. Re:How about by tibit · · Score: 1

      I don't think you really understand what Common Core is. It is a set of expectations and concepts - it is really a curriculum defined at a fairly abstract level, about as abstracted out from the particular methods of teaching and selection of taught techniques as possible. Anyone blaming bad education on Common Core isn't really paying much attention themselves. Equating Common Core with any particular implementation of it, especially as offered by the almost universally loathed big academic publishers, is making oneself look kinda dumb. Common Core isn't a problem. The quality of materials put out by Pearson and their ilk is, as is the quality of the standardized tests.

      --
      A successful API design takes a mixture of software design and pedagogy.
    71. Re:How about by MightyYar · · Score: 1

      I understand it far more than I would like to now. Please re-read my comment, it was not a criticism of common core.

      --
      W..w..W - Willy Waterloo washes Warren Wiggins who is washing Waldo Woo.
    72. Re: How about by StikyPad · · Score: 1

      Pfft. Standardized testing helped me *a lot*. A test with no rewards or penalties? Yes please. They gave me plenty of time to catch up on my sleep after late-night coding and/or gaming sessions. :)

    73. Re:How about by tibit · · Score: 1

      It almost looks to me like you brought up Common Core as some sort of a strawman. It's not really related muchl to what you're saying. Yes, your observations happen to be concurrent with the implementation of Common Core, but really have nothing to do with Common Core per se. Perhaps there'd be a better wording for the grandparent, or I should pay more attention. :)

      --
      A successful API design takes a mixture of software design and pedagogy.
    74. Re:How about by bluefoxlucid · · Score: 1

      By not leveraging the machine you're placing yourself at a disadvantage, as you can only use the code others wrote and that will almost never be exactly what you need.

      How much time is lost to custom code, learning to make custom code, and maintaining or replacing custom code the next time around? How much use is there in sharing standard processes and procedures, and how much time and, ultimately, cost is saved by outsourcing that to specialists?

      I *can* program, to a limited degree; I still don't bother writing anything more substantial than a grep filter. C and C++ and the like are useless for modern purposes (huge, highly-polymorphic applications), and modern languages like C# actually eliminate half the effort of making your code fit together (reflection is fucking fantastic); and the effort I've put into learning C# and writing my own code... I am legitimately considering just spending half my salary to pay people to do this. I could have a prototype for the game I'm trying to write by now if I just did that--the assets actually cost more than the code.

      All of these things are things I'd be able to do rapidly if I put in the up-front investment. The long-term returns haven't been substantial. My ability to use a simple shell script to break down a pile of text is substantial, and that took me 20 minutes to learn on my own by trial and error.

    75. Re:How about by MightyYar · · Score: 1

      I should know better than to bring it up as it's a lightning rod. I simply meant that when Common Core popped up on the pop radar, I looked into it. While digging around, I was absolutely horrified at the state of education in academia. Common Core's emphasis on data should help this situation, but unfortunately the rot starts at the top and Common Core only addresses the bottom.

      --
      W..w..W - Willy Waterloo washes Warren Wiggins who is washing Waldo Woo.
    76. Re: How about by bluefoxlucid · · Score: 1

      but teaching of arithmetic tricks is kinda pointless without concurrent teaching of what properties of numbers and/or algebra make these tricks work

      Anzan arithmetic isn't a trick; it's arithmetic generalized to single-digit iterative process. The method we learned in school was *counting*: 6 + 7 is 6... 7... 8... 9... 10... 11.. 12... 13! It's 13. I counted. On my fingers. Carry the 1. Anzan bases on Soroban math, where you memorize an addition table {(1,4),(2,3)}{(1,9),(2,8),(3,7),(4,6)} and apply that: 7 gives you 3, 6 - 3 = 3, 13. Two direct additions (subtraction is addition). Similar algorithms are used for multiplication and division using look-up tables.

      This is different than scanning your numbers, trying to combine them to create friendly numbers, blocking off where you can, and generally trying to fit the task into one of several strategies. Friendly-numbers strategy, for example, will take 6 + 7 + 5 + 3 + 9 and say 6 + 3 = 9, so you have 9*2 + 7 + 5, and 7 + 5 is 6 + 6, and you have 9*2 + 6*2, or 15*2, or 30 (using the doubles strategy a lot here). Maybe you noticed 7 + 3 = 10, and then you had 6 + 5 + 9, and things got awkward (unless you caught 6 - 1 = 5 and 9 + 1 = 10 and got 10 + 5 + 5). Maybe you got confused along the way and forgot what numbers you were adding, since you keep wasting time adjusting the numbers and switching strategies instead of just straight adding them.

      Wasting time on doing mental arithmetic is just that at some point in life. Sure I do it if I have to, but only then, and it's usually faster to do it on the phone anyway.

      Once you get out of third grade, you have this shit for life. By the time you can pull out your phone, you already know to-the-penny how much the whopper jr, onion rings, and medium coke you're about to order will cost, because you passively glanced at the numbers up on the big screen with the menu.

      Of course I can teach myself this stuff now, on my own. Waste of my time teaching me bad math in school when they could have used the mandatory fun time to teach good math in much less time. I and all of my classmates would have spent much less time on homework and more time learning to socialize, and we would all have the benefit of being able to prepare a meal without spending 2 minutes punching numbers into a calculator or writing and re-checking our math on paper.

    77. Re: How about by operagost · · Score: 1

      Dumbed-down SQL in end-user created reports? Sounds like the Inner Platform Effect.

      --

      Gamingmuseum.com: Give your 3D accelerator a rest.
    78. 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.

    79. Re: How about by Anonymous Coward · · Score: 0

      Way to trump to conclusions.

    80. Re:How about by tibit · · Score: 1

      I'm looking at engineers who have deliverables produced completely on a computer where the entire process is not scripted and every time they change something major they have to go through the process of clicking for hours, and that assumes they don't fuck up and forget something. Say - running finite element analyses, generating the output files, merging them with the report and producing the final PDF as a deliverable. Fucking pathetic. The gains would be enormous if they learned how to script it all up and then stuck to that process. I know because I started applying that process to grad-level projects in signal analysis, structural and other FEM analysis, and so on. It was very easy to make changes and see what falls out - experimenting is cheap if instead of clicking for hours you can change a couple of constants in a script and re-run the entire simulation and get the figures integrated into your report and have a PDF at the end. You can even generate some text if you wish so, or at least formalize the assertions the text is making to make sure that the text agrees with the numbers and other results it's narrating.

      Same goes with e.g. the task of ordering shit on many a website where you either can't upload the line items or the formats don't mesh (usually they won't). So if there's no upload, you make a little greasemonkey script to automate filling in the line items. Or if an upload is supported, you might need a second lookup to translate your internal product numbers to manufacturer or vendor product numbers, and so on. All of this can be scripted, making the purchase person much more productive.

      I'm sure there's plenty of other office jobs where you would need similar ad-hoc system integration.

      I don't see what's the benefit of reflection other than in leveraging code-generating tools. Of course code generation based on introspection/reflection is great and enables great things, and does make you more productive, but it's not exactly the thing that makes code "fit together". You make the code fit together, and if the fitting/adaptations are stereotypical, you can factor them out and automate them. Thus reflection is super-useful when you're writing what amounts to LISP macros, but on a CLR platform. That's one of LINQ enablers, the other being integrated expression trees so that you don't have to emit text to generate code, and don't have to parse to input code. Alas, any decent IDE for C++ will maintain a full model of the code and provide full reflection capabilities to the developer. You can leverage that for compile-time code generation, if it's a bit kludgy in practice if you can only use it from within the IDE. There are also tools out there that give good C++ expression tree support for code transformation/generation, but the ones that are as easy to use as DLR expression trees are rather expensive and niche - so yeah, DLR (CLR+goodies) is a better platform here.

      --
      A successful API design takes a mixture of software design and pedagogy.
    81. Re:How about by swb · · Score: 1

      One argument that I've heard - and I have to admit that there may be some merit to it - is that women had very few career choices at the time. Since teaching was almost exclusively a woman's job, it represented pretty much the top position that a woman in the workforce could attain. As a result, you had the best and brightest working women doing the teaching. Now, they are doctors and lawyers. I don't know if I buy it and I've never seen data to support or refute the notion.

      An interesting idea, but you have to figure that the best educated and most well off women of the era were married and not working at all. I would still imagine there was a cream of the crop filtering process anyway for the remaining population of unmarried educated women in the workforce to end up in education, at least in less industrialized areas where there wasn't clerical work.

    82. Re:How about by lefticus · · Score: 1

      I've been thinking a lot about how programming used to be fun lately so I decided to start showing some of those old fun things in some YouTube videos: https://youtu.be/pvxPknoVmzs

    83. Re: How about by Shortguy881 · · Score: 1

      So what she really needs is a Logic and Statistics course.

      --
      Brilliance without wisdom, power without conscience. Ours is a world of nuclear giants and ethical infants.
    84. Re: How about by Anonymous Coward · · Score: 0

      sequence, selection and iteration thats all you need to know eveything else is just frosted piss on the top.

    85. Re:How about by Greyfox · · Score: 1

      She won't, but her sister will.

      --

      I'm trying to teach myself to set people on fire with my mind... Is it hot in here?

    86. Re: How about by im_thatoneguy · · Score: 1

      Watered down CS classes is exactly what most people need.

      Yeah I'm really confused by this quote...

      "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,"

      I come from a town where many of my peers went on to be incredibly musicians thanks to a strong music education program. My stand partner in Orchestra played for the Queen of England. But I don't know *anyone* who was a competent improviser or composer.

      Playing an instrument is an art form in of itself. Putting notes to a page is a different art form. Just like we have choreographers and we have dancers and sometimes the two are the same we're looking at two different skillsets not some incomplete look.

      Most people I know with CS degrees are coders, they solve problems. They aren't system architects which is really what she thinks 4th graders should be learning.

    87. Re:How about by exomondo · · Score: 1

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

      It's always the same old story (and in this case the same person submitting it: "theodp"). If the approach of code.org is so wrong then by all means these armchair commentators are free to come up with a superior curriculum. But they won't, they aren't capable, in fact the submitter in question has spent years submitting anti-code.org stories yet proposed no alternative.

    88. Re: How about by Pseudonym · · Score: 1

      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"

      Real programmers don't like hard problems which are hard because the solution is hard. Real programmers like hard problems which are hard because the problem is hard.

      All that object-oriented boilerplate does not write itself, as much as we try with our wizards and our generators and our domain engineering. For the most part, it just gets in the way.

      STL is not object oriented. I think that object orientedness is almost as much of a hoax as Artificial Intelligence. I have yet to see an interesting piece of code that comes from these OO people. In a sense, I am unfair to AI: I learned a lot of stuff from the MIT AI Lab crowd, they have done some really fundamental work: Bill Gosper's Hakmem is one of the best things for a programmer to read. AI might not have had a serious foundation, but it produced Gosper and Stallman (Emacs), Moses (Macsyma) and Sussman (Scheme, together with Guy Steele). I find OOP technically unsound. It attempts to decompose the world in terms of interfaces that vary on a single type. To deal with the real problems you need multisorted algebras - families of interfaces that span multiple types. I find OOP philosophically unsound. It claims that everything is an object. Even if it is true it is not very interesting - saying that everything is an object is saying nothing at all. I find OOP methodologically wrong. It starts with classes. It is as if mathematicians would start with axioms. You do not start with axioms - you start with proofs. Only when you have found a bunch of related proofs, can you come up with axioms. You end with axioms. The same thing is true in programming: you have to start with interesting algorithms. Only when you understand them well, can you come up with an interface that will let them work.
      -- Alex Stepanov, A Real Programer

      --
      sub f{($f)=@_;print"$f(q{$f});";}f(q{sub f{($f)=@_;print"$f(q{$f});";}f});
    89. Re:How about by Pseudonym · · Score: 1

      I happen to enjoy OOP. But thanks.

      I'm glad you do. Each to their own. But the risk is that you'll be stuck solving only easy problems for the rest of your career.

      --
      sub f{($f)=@_;print"$f(q{$f});";}f(q{sub f{($f)=@_;print"$f(q{$f});";}f});
    90. Re:How about by antdude · · Score: 1

      Argh. Frozen's song is stuck in my head now. Thanks a lot. :(

      --
      Ant(Dude) @ Quality Foraged Links (AQFL.net) & The Ant Farm (antfarm.ma.cx / antfarm.home.dhs.org).
    91. Re: How about by Anonymous Coward · · Score: 0

      Vital skills that no school or parent taught me and that I had to acquire by myself years later, years too late: woodworking, soldering, sewing/mending, cooking, basic accounting, dealing with police and bosses, caring for babies/old/sick/crazy people, discussing emotions. Instead they taught me the structure of soil minerals and Beethoven sonatas. Interesting stuff but not terribly practical for most of us. The system is so broken.

    92. Re: How about by johnsnails · · Score: 1

      That's why Ken Ham only uses behaviors to inject functionality into a class. Never inheritance.

    93. Re: How about by brantondaveperson · · Score: 1

      Only when you have found a bunch of related proofs, can you come up with axioms.

      From the "not even wrong" department...

    94. Re:How about by Anonymous Coward · · Score: 0

      Can you see this:

      • Teaching kids to fight: Professional MMA
      • Teaching kids to play basketball: NBA
      • ...

      You clearly don't know what you are talking about

    95. Re:How about by Anonymous Coward · · Score: 0

      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.

      I believe we should do the same thing with math... Why start off easy, when we can hit the students over the head with advanced math immediatly. It's just a waste of time to learn the basics, much better to start off with math that can earn them a Fields Medal as quickly as possible!

    96. Re: How about by Anonymous Coward · · Score: 0

      That doesnt work in usa cos they afd a variety of random taxes to everything afterwards, and then expect a 20% tip also

    97. Re: How about by Archangel+Michael · · Score: 1

      The #1 indicator of how well a kid does in school, is parental value placed on education. If you have parents who care about education, their kids do much better than kids whose parents don't give a rats ass about education.

      All the standardized testing does, is find out what schools have parents that don't give a shit about their kids, but they can never actually say it that way. Political Correctness says that you can't shame parents for being lousy parents, and not caring about their kids, because that means spending more money trying to educate kids whose parents suck will never work. It would be MUCH cheaper to identify those parents early, so that we can break the cycle of bad parenting. But since we can't really say "you suck as a parent", we'll spend stupid amounts of money beating around the bush, in a vain.

      --
      Agent K: A *person* is smart. People are dumb, stupid, panicky animals, and you know it.
    98. Re: How about by Malachias · · Score: 1

      What ever happened to geometry proofs? Or showing how some mangled sine, cosine, tangent expression was equivalent to some other expression? Or solving virtually any math problem past 3rd grade? What ever happened to writing an essay (I was awful at that). Sure there was plenty of stuff that was rote memorization, but there was plenty of stuff that wasn't. I was in high school a long time ago, but you don't need programming to teach problem solving and process thinking unless some well meaning idiot removed all that stuff.

    99. Re: How about by Anonymous Coward · · Score: 0

      Of course practically no one in this country understands history. We try to teach it from one fat text book which is usually taken as gospel. We need to start with four books with different points of view and teach how to evaluate which version is more correct than the others.

    100. Re: How about by Anonymous Coward · · Score: 0

      First programming class in college was introduction to C++. A whole new world I had yet to explore.

      C++ was also new to me in college. Learned ASM when I was 9, preferred C. At no point in my life did I ever think programming was a language. It was immediately evident that computers worked on binary, not the English language, like Basic. I immediately sought after whatever that language was.

      I like programming, not coding. Coding is a means to an end for me. Real programming happens in your head and on a whiteboard. Coding is just the time consuming part of actually building the solution. One thing that I do like about coding is it's like martial arts, practice makes perfect, and code quality can be it's own sub-project challenge.

    101. Re:How about by Anonymous Coward · · Score: 0

      the first step is indeed getting people interested in real programming

      If you have to "get" children interested in programming, you've already lost. Programming is obviously fun. If you have to romanticize it, you're just trying to confuse children into thinking they like it. the industry is already full of people who "learned" that programming is fun. These people are only slightly better than people who are in it for the money.

      People who had to program like it was a spiritual calling are the ones pulling everyone forward, even with everyone else trying to hamstring them. Most of my work is cleaning up after everyone's messes. Pigeon holed into being the janitor because most people are incapable of fixing their own code because it's fundamentally wrong. The few times I actually got to stretch my legs, everyone was astonished about not having to report massive amounts of bugs or performance issues, but during those brief moments other people created more unmanageable code. I get quickly dragged back down to playing janitor again.

      It's difficult to get ahead of the game because there's more and more people cranking out crappy code that needs to get fixed. And don't take this as "messy spaghetti code". No, this is well-factored, clean, easy to read, well unit tested, and documented code. The problem is it's grade A cargo-cult quality nonsense code and design.

    102. Re:How about by Anonymous Coward · · Score: 0

      Why bother they will just end up staring at pieced of glass held in their hands and occasionally carry on a conversation with it. Sometimes they may even use it as a phone, sorta.

    103. Re:How about by Anonymous Coward · · Score: 0

      tl; dr; Some folks just need a small step of seeing it isn't "black magic" and how to get started. The good ones will stick around, the ones who don't care will continue to not care and go smoke weed or something and the wheel in the sky will keep on turning.

      They don't. Just like kids who hate math never reverse course and learn to love it and become theoretical physicists. But unlike math, our area of expertise has a problem of exposure to people, especially at younger ages. If I hadn't of had the option to learn in high school I never would have been able to get into this field on my own due to just not knowing where or how to start and no mentors around to help. That first step is a big one and because we don't help with providing guidance to a larger audience through that first step we are losing potentially good programmers that we didn't even know existed. Just because everyone isn't a natural like you doesn't mean they shouldn't get the chance to explore coding earlier in life before they have to deal with pressure of college and work. Deciding how to learn coding from the ground up when you hit college is just too late in the cycle for most.

    104. Re:How about by Anonymous Coward · · Score: 0

      "leaving the teaching to the teachers"

      Because, in public schools, they're largely incompetent government employees.Teachers are consistently in the bottom-tier of admitted graduate school students.

      If they teacher was half-way good at programming in the first place, they wouldn't be a public school teacher.

      What surprises me is that anyone expected any kind of different outcome from the public school system. No one is going to become a successful programmer out of any of these classes. In fact, it's less likely because these classes distract from and suck resources away from classes that make good programmers, namely math.

    105. Re: How about by funwithBSD · · Score: 1

      No, not really.

      Standard reports, like "Who has perfect attendance this quarter?", "How many times has Suzie been tardy this year?" were not part of the package.

      Attendance clerk is an entry level job. But it required way too much IT to pull it off.

      --
      Never answer an anonymous letter. - Yogi Berra
    106. Re: How about by funwithBSD · · Score: 1

      All analogies break down, but...

      Coders write the music. It does nothing unless someone plays it.

      Architects conduct the orchestra. They need a score to conduct from, then have to co-ordinate the musicians..

      Musicians need a score, and they need someone to coordinate everyone and orchestrate.

      It think it holds up. =)

      --
      Never answer an anonymous letter. - Yogi Berra
    107. Re:How about by datavirtue · · Score: 1

      The last thing we need in IT are more pedants. User advocates and others who understand how to build productivity-enhancing, usable systems while adding value to a business or other organization are far too rare. IT is now just a sea of point-and-clickers and glue code monkeys...you can't build impressive and productive systems like that.

      --
      I object to power without constructive purpose. --Spock
    108. Re: How about by R3d+M3rcury · · Score: 1

      "Inject? You mean like vaccinations? I don't want my kids getting autism!"

    109. Re:How about by brantondaveperson · · Score: 1

      or run a greasemonkey script to automate a webpage.

      I kind of know what this means, but I've been working with my computers my entire adult life, and a good portion of my childhood too, and I've still literally never come across a situation when I've wanted to 'automate a webpage'. Writing brittle scripts, that depend on the internal implementation details of web pages, seems to me of extremely limited value.

    110. Re: How about by Shortguy881 · · Score: 1

      Both of those questions are even simpler than statistics questions. They are both counting question, not IT questions. Can your wife not count?

      --
      Brilliance without wisdom, power without conscience. Ours is a world of nuclear giants and ethical infants.
    111. Re:How about by bluefoxlucid · · Score: 1

      The topic is about "ERMAGEHRD WE SHOULD HAVE ALL 3RD GRADE GIRLS BECOME PROGRAMMARS!!!" Pointing out that software engineering and computer operation are different things and that one of these things is useful in general while the other one is not (as) useful to teach 100% of everyone as baseline knowledge is not pedantry; it's highlighting wrongwise thinking.

    112. Re:How about by tibit · · Score: 1

      My biggest gripe with how grade level "education" is done is that it's a self-fulfilling prophecy. You have career "educators" who "educate", instead of how it's done in almost all other aspects of life where practitioners of a given discipline do the teaching. Kids are taught maths from people who don't do any work in mathematics, are taught science by people who don't do any science, heck - are taught "sports" by people who didn't ever have a sports career... Yet you don't see "medical educators" teaching the doctors - it's the doctors who do it... Crazy, I agree. At least in the U.S., the adorable exception to this rule is music teaching: it's kinda hard to fake being able to play an instrument and understanding music theory, so at least most music/instrument teachers are musicians who can teach from experience and not from edict.

      When I was younger, I had big gripes about the requirement in some European countries for "educators" to have what amounts to 5 year graduate degrees in the discipline they want to teach. E.g. if you want to teach grade school physics, you need an M.Sc. in physics. I thought it an overkill. Now I know better, and ideally I'd like to see these people have at least some research experience in their discipline as well.

      --
      A successful API design takes a mixture of software design and pedagogy.
    113. Re: How about by tibit · · Score: 1

      Frankly said, when I'm done ordering fast food, I'm thinking about bigger things than second-guessing the cash register... As for doing long mental addition, one would suck at it anyway if one couldn't do single-digit additions/subtractions fast, whether you call it by a special name or not :)

      --
      A successful API design takes a mixture of software design and pedagogy.
    114. Re: How about by bluefoxlucid · · Score: 1

      The point is one can trivially learn to do those additions and subtractions rapidly; it's not genetic.

  2. Coder are not computer scientists by Anonymous Coward · · Score: 0

    In industry, we need architecture people and people to code. This is not new.

    The industry is shifting and will continue to shift to a model where there are a few high paid computer science guys and many cheap coders.

    Gov't is doing what big business wants (shocker). Create a bunch of low wage people to do the work based on the specs of a few. If a company doesn't do this, they will be weaker than more cost efficient competitors that are doing this.

    Thinking that this is odd is akin to thinking that you need to be a structural engineer to weld steel.

    1. Re:Coder are not computer scientists by Opportunist · · Score: 2

      No, there won't be "high paid computer science guys". The only way to get a high pay is to have anything to do with finance or management. Anyone who actually creates a product is paid pebbles, only pushing numbers counts!

      --
      We used to have a Bill of Rights. Now, with the rights gone, all we have left is the bill.
    2. Re:Coder are not computer scientists by pastafazou · · Score: 1

      My experience agrees with you. It's management that gets the pay, while the actual gruntwork of producing code gets squat.

    3. Re:Coder are not computer scientists by OzPeter · · Score: 1

      No, there won't be "high paid computer science guys". The only way to get a high pay is to have anything to do with finance or management. Anyone who actually creates a product is paid pebbles, only pushing numbers counts!

      Oh come on now .. you totally left out the big American dream of being a professional athlete! Where else can you be pain millions straight out of college solely based on your physical skills (and also winning the genetics lottery).

      --
      I am Slashdot. Are you Slashdot as well?
    4. Re:Coder are not computer scientists by stealth_finger · · Score: 1

      No, there won't be "high paid computer science guys". The only way to get a high pay is to have anything to do with finance or management. Anyone who actually creates a product is paid pebbles, only pushing numbers counts!

      Oh come on now .. you totally left out the big American dream of being a professional athlete! Where else can you be pain millions straight out of college solely based on your physical skills (and also winning the genetics lottery).

      The physical skills of running and catching really are worth a lot.

      --
      Wanna buy a shirt?
      https://www.redbubble.com/people/stealthfinger/shop?asc=u
    5. Re:Coder are not computer scientists by ranton · · Score: 1

      No, there won't be "high paid computer science guys". The only way to get a high pay is to have anything to do with finance or management. Anyone who actually creates a product is paid pebbles, only pushing numbers counts!

      There will absolutely be highly paid computer science guys, and they will likely be higher paid than they are today. But there almost certainly won't be as many highly paid computer scientists as there are software developers today (calculated as a percentage of population that is).

      There will still be a need for researchers, and they will still be highly paid because their skill sets will always be rare (until genetic engineering can control intelligence and work ethic). And there will still be a need for software architects, although the name of that profession may change. My opinion is individuals who hold software architect-like roles now will be the ones eventually getting a professional engineering license, and everyone else will be low paid programmers akin to CAD operators today.

      I would agree that the position of senior software developer making $150k without any managerial responsibilities will mostly be replaced with $60k programmer positions. There will be many more of these positions and they will not require much training. There will also be more highly paid software architect / software engineer positions that there are today, but they will be the minority in the field. This is just my opinion of where our industry will end up 20 years from now.

      --
      -- All that is necessary for the triumph of evil is that good men do nothing. -- Edmund Burke
    6. Re:Coder are not computer scientists by Opportunist · · Score: 1

      The new American dream is either get hit by someone rich so you can sue the pants off them or participate in some TV show for idiots to be paid for being an idiot (aka "becoming a celebrity").

      --
      We used to have a Bill of Rights. Now, with the rights gone, all we have left is the bill.
    7. Re:Coder are not computer scientists by Opportunist · · Score: 1

      And just like management, in reality they ain't worth jack shit. But in our economy, they make you rich.

      Just in case anyone has ever wondered if our economy has anything to do with reality...

      --
      We used to have a Bill of Rights. Now, with the rights gone, all we have left is the bill.
    8. Re:Coder are not computer scientists by Opportunist · · Score: 1

      Why should they be paid highly? Supply and demand. Yes, they will need to be very skilled and yes, there will be fewer that quality for those jobs than there are now people who qualify as programmers. But as you said, the number needed will even be fewer still.

      If you now have 100 people doing a job and in the future you'll only need 20 of them, wages for them will go down. Even if only half of them could do the job of the future, there would still be more around than you need.

      --
      We used to have a Bill of Rights. Now, with the rights gone, all we have left is the bill.
    9. Re:Coder are not computer scientists by stealth_finger · · Score: 1

      Just in case anyone has ever wondered if our economy has anything to do with reality...

      Oh oh oh oh I know this one........No?

      --
      Wanna buy a shirt?
      https://www.redbubble.com/people/stealthfinger/shop?asc=u
    10. Re:Coder are not computer scientists by ranton · · Score: 1

      We have not come anywhere close to fulfilling our economy's need for workers capable of and willing to architect quality software systems. Developed economies currently employ nearly 100% of these people and push their salaries to a low of $150k to well over $200k per year. This doesn't even count those who go into business for themselves.

      Most companies have to deal with software developers whose skills and abilities top out at a senior software developer level because of the lack of elite employees. Salaries are at or probably even above what the market can bear for software architects (if you believe we are in a bubble), which is mostly constrained by how valuable companies view their software systems. As more companies view their IT systems as a competitive advantage, salaries will continue to go up.

      I seriously doubt our economy will ever reach a point where there is more supply of software architect-level workers than there is demand. Until we have human-level AI that is. This is obviously just an opinion though so who knows?

      --
      -- All that is necessary for the triumph of evil is that good men do nothing. -- Edmund Burke
    11. Re:Coder are not computer scientists by ranton · · Score: 1

      And just like management, in reality they ain't worth jack shit. But in our economy, they make you rich.

      Just in case anyone has ever wondered if our economy has anything to do with reality...

      You should not throw stones in a glass house, since these statements are so divorced from reality you are in no position to insult others.

      (Paraphrasing Dead Poet's Society) Medicine, law, business, engineering, these are noble pursuits and necessary to sustain life. But friendship, love, literature, theater, sport, these are what we stay alive for. Software engineering may be the career I chose, and I believe it adds great value to society. But the entertainment value professional athletes provide to society is worth just as much if not far more. If you think Lebron James is not worth his salary, watch a Cavaliers / Warriors game end then a 76ers / Timberwolves game. There is little comparison when it comes to entertainment value. And everyone playing in these two games are among the top few hundred players in the world, yet the top few dozen players are truly in a different league.

      You need to get over yourself and realize there are plenty of ways to add value to the world above and beyond engineering.

      --
      -- All that is necessary for the triumph of evil is that good men do nothing. -- Edmund Burke
    12. Re: Coder are not computer scientists by Anonymous Coward · · Score: 0

      What ?!?! Every newbie out of college is getting 150k+ these days. Wtf are you tailing about ?

    13. Re:Coder are not computer scientists by luis_a_espinal · · Score: 2

      My experience agrees with you. It's management that gets the pay, while the actual gruntwork of producing code gets squat.

      Unless you get to sit in the C-suite, management pay over grunt pay is marginal once you count the number of hours and responsibility involved (not to mention that middle and above-middle management are the first to go during an acquisition).

      You can be smart about being a grunt and make a good salary not far from base management salary without all the grievance involved in managing people.

    14. Re:Coder are not computer scientists by HornWumpus · · Score: 1

      The shortage is in competent software architects.

      If you are 20-25 and think you are a competent software architect, you are almost certainly wrong. It just takes experience dealing with long term consequences of early design decisions. Then repeat and learn that what you thought at the end of the first project didn't apply universally.

      --
      John McAfee 'It was like that time I hired that Bangkok prostitute; to do my taxes, while I fucked my accountant'
    15. Re:Coder are not computer scientists by Anonymous Coward · · Score: 0

      By what metric will we have enough " workers capable of and willing to architect quality software systems"? When the salary drops to 60k a year as a price function of how many people are going for those particular jobs?

      Even worse, most these types of jobs are expensive cities that demand you make 150-200k a year to live as comfortable as I currently live on 83k with my wife in the burbs of San Diego. Heck, give another year or two and we will have the means to get into a house with land instead of our townhouse with a flowerbed. Can the same be said for someone living 25 minutes from work in the Bay Area or the Tri-state area? In a decent part of town?

      I would say if the world true wants more "workers capable of and willing to architect quality software systems" it needs to offer that 200k+ salary or more and apparently the real problem is there is a shortage of "workers capable of and willing to architect quality software systems" at 60k a year.

    16. Re:Coder are not computer scientists by fluffernutter · · Score: 1

      I don't watch sports and I'm fine.

      --
      Laws are rules for the court, but merely a bottom bar to hit for life. Think beyond laws in your actions always.
    17. Re:Coder are not computer scientists by ranton · · Score: 1

      I would say if the world true wants more "workers capable of and willing to architect quality software systems" it needs to offer that 200k+ salary or more and apparently the real problem is there is a shortage of "workers capable of and willing to architect quality software systems" at 60k a year.

      I completely agree that we need to pay highly skilled software engineers higher salaries to attract more of them. As I said in my two posts, the highly skilled software architects will likely make even more money than they do today, so $200k+ would probably be the norm. But that will be a minority of the software development industry. I believe the vast majority of programmers will eventually be paid salaries closer to CAD operators today. You will have one architect / engineer being paid $250k for each 5-20 programmers being paid $60k. Not that different than the gap between mechanical engineers and CAD operators.

      --
      -- All that is necessary for the triumph of evil is that good men do nothing. -- Edmund Burke
    18. Re:Coder are not computer scientists by ranton · · Score: 1

      I don't watch sports and I'm fine.

      I doubt anyone consumes 100% of all entertainment options available, but that doesn't make any of those options worthless.

      --
      -- All that is necessary for the triumph of evil is that good men do nothing. -- Edmund Burke
  3. Not surprised, teaching to the test by DatbeDank · · Score: 1

    Programming is a multifaceted activity. Most of these teachers are probably not even qualified to teach programming and you end up getting this hard reliance on a textbook. Not knocking them or their abilities, but it's just the nature of what goes into good programming

  4. 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 Maxwell · · Score: 1

      So after a one hour music lesson, I can compose my own works?

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

      Yeah, the world needs more VB programmers... Start the kids of with assembler.

    3. 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.

    4. Re:Sadly, I agree with her! by Anonymous Coward · · Score: 0

      After one hour music lesson in READING MUSIC, you might be able to compose a tune for "do-ray-mi"...

      But nothing more.

    5. Re: Sadly, I agree with her! by Anonymous Coward · · Score: 1

      On a side note can we please drop the"Obama was the first President to write a line of code"? I'm just guessing here but Carter was a nuclear engineer and I assume he was versed in Fortran and COBOL. Even back in the dark ages of the 60's and 70's you didn't do n nuclear engineering completely by hand.

    6. Re:Sadly, I agree with her! by Anonymous Coward · · Score: 0

      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.

      And they and the rest of the world were better off not knowing that. Use a DB, import into excel if you want to go all spreadsheet on the data.

    7. 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).

    8. Re:Sadly, I agree with her! by evolutionary · · Score: 1

      Is VB considered an active language anymore? (mostly VBA these days right?) I Remember VB has having terrible things like being "case-insensitive", and allowing undeclared variables out of nowhere (unless "option explicit" was declared) often causing garbage data to creep in causing debugging nightmares. I thought VB.net was a godsend that required people to code with some "class" (pardon the pun). While VB was a "quick and dirty" the 'dirty' part I've found dominate the finished products afterwards by far over the 'quick' which didn't exactly "make my day".

      I've met so many coders who learned poor coding habits from VB it's funny to me for the language to be mentioned here. No offence intended, but this may be one of the reasons MS dropped VB and moved people to VB.net which is a truly OO language. Most schools teach Python, which does allow a few things that beginners shouldn't be allowed in their first language in my opinion, but at least it is case sensitive. Personally I think new coders should start in C++ or Java. C# is okay too for that purpose but C# has a number of elements from both C++ and Java. Python is a great language, don't get me wrong, I'm just not sure without requiring variable declaration/initialization it's the best way to start a new coder. Scratch (from MIT) is actually a good language to start kids on as it shows the basic foundations of coding without requiring lots of typing. LiveCode isn't bad either, but I don't like the fact it doesn't use '0' based arrays like proper languages do. (Several teachers remarked on this at a conference). Ruby is very readable and could server educating on good programming style quite well. Inform 7 (for making text adventure games), has it's merits in programming design, that is very accessible to young teens as well.

      --
      "Imagination is more important than knowledge" - Einstein
    9. Re:Sadly, I agree with her! by Anonymous Coward · · Score: 0

      Music is a really bad comparison. People make music instinctively, humming or singing from early ages. There's a lot of technique and theory to learn, but at its core it comes back to a VERY primitive "hey, this noise is pretty cool!"

      By contrast, programming a computer is a very artificial skill that requires logical thinking and visualization of cause and effect. There's really no analog of it in early childhood.

    10. Re:Sadly, I agree with her! by judoguy · · Score: 2

      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.

      Shudder.. I've been involved in business software for development since the early 80's. In company after company since Excel was released the 2 most horrible letter combinations have been "MBA" and "VBA".

      My god, the crap I've had to fix when those two come together to make "fully fledged business applications".

      --
      Peace is easy to achieve, just surrender. Liberty is much harder get/keep.
    11. Re:Sadly, I agree with her! by pr0fessor · · Score: 1

      No but I have met a few people who can play just about anything they hear a couple months after buying a guitar with no lessons outside of a basic beginner's book. They are currently playing in fairly good cover bands but have no original music.

    12. Re:Sadly, I agree with her! by Anonymous Coward · · Score: 0

      The majority of music ever made was created by people that can't compose or read music, but can play very well. Your analogy is fucking retarded, as are you. Kill yourself and feel bad.

    13. Re:Sadly, I agree with her! by pr0fessor · · Score: 1

      I have worked with enterprise applications coded in vb that performed much better than I would have thought although the low bar on creating an nice looking interface in the visual designer makes it easy for someone with no skill to code a nice looking piece of junk.

      C# .Net has the same problem but happens to be my current favorite rapid language it can be as simple or as complex as you need it.

    14. Re:Sadly, I agree with her! by locotx · · Score: 1

      Exactly, but those are the exception to the rules. Those who have an inherit passion to do a particular task (coding, playing music, etc...) will do so because of their desire and practice. Now this practice is hidden in the sense that they are constantly perfecting and learning their craft. There are some people who are going to excel and some who aren't. I think the issue is implanting the initial experience and getting them interested first. Just like anything else, it's a marketing and sales strategy. I don't see a problem with it. However, just because they finished Computer Programming 101, it doesn't mean they are not a programmer. Just like a music, just because you can play Little Had a Little Lamb you probably are not going to find people willing to pay you to listen to it. I see both points.

    15. Re: Sadly, I agree with her! by Anonymous Coward · · Score: 1

      Fortran and COBOL are tools of the patriarchy that all men use to prevent women from learning programming. Nuclear technology is rape, and Newton's Principia Mathematica is a rape manual.

      Code.org is turning millions of girls into programmers! How dare you compare an empowering sea change like code.org to rapist languages like Fortran and COBOL!

      Your jargon hegemony seeks to enslave women. Code.org represents liberation for women!

    16. Re: Sadly, I agree with her! by Anonymous Coward · · Score: 0

      Not in my family. Depends on your roots. Song and dance is as foreign to us as possible.

      My dad taught me calculus before I ever saw someone dance or someone sing.

      Not bragging. Leads to a weird life.

    17. Re:Sadly, I agree with her! by fermion · · Score: 1
      What she is talking about is the design process, and it is hard to teach. This is what something like robotics teaches in elementary and middle school. You learn to prototype, refine, and prototype again. It is a good method because it is concrete enough for young minds to understand, but still has some abstract components.

      Coding, though, in it's most general sense, is about translation and abstraction. If you add explicitly teaching the design process, if you make the problem too real world, the student is going to be overwhelmed by the forest and not learn how to build a complete solution using individual trees.

      Here is what I mean. Alice was a graphical tool that taught students to break apart problems, solve the small ones, and then put it back together in a very concrete manner. it reliably taught OO design and the engineering process, but it did not teach anything real about coding. On the other hand, if you ask a kid to sort a list, you can start with a very simple program, then add pieces. Along the way students learn a couple skills at a time, learn how to debug code, and learn what is needed to create and refine interfaces and factoring. In fact this is how a senior level class was taught mainly aimed at seniors who were learning to code. We solved a hydrogen atom, each week adding a new level of complexity.

      The design process is a skill that we must teach students, and there are programs that introduce it in middle school and over years refine it to a high school senior thesis. I don't think it should be taught in isolation or solely in the context of an individual class. It is something that students have to understand is a universal problem solving process.

      --
      "She's a scientist and a lesbian. She's not going to let it slide." Orphan Black
    18. Re: Sadly, I agree with her! by TheRaven64 · · Score: 1

      Fortran and COBOL are tools of the patriarchy

      You heard it here first folks, Admiral Grace Hopper: representative of the patriarchy.

      --
      I am TheRaven on Soylent News
    19. Re:Sadly, I agree with her! by Anonymous Coward · · Score: 0

      Those who have an inherit passion to do a particular task will always be the ones who do most of the work in any field, from engineering to music. Everyone else will ride coattails or pick up the scrap jobs on the periphery.

    20. Re:Sadly, I agree with her! by Maxwell · · Score: 1

      The course she is criticizing is called "one hour of code". Guess what? It's one hour long. It is not meant to teach the full CS curriculum, it is meant to generate interest in computer science. That is all. You can't learn music in one hour (it can take months, per your friend) but you can get interested in it in one hour.

    21. Re:Sadly, I agree with her! by Anonymous Coward · · Score: 0

      ... that's just because just about anything you will hear on guitar was written by people who bought a guitar and took no lessons outside of a basic beginner's book.

    22. Re:Sadly, I agree with her! by ripvlan · · Score: 1

      Thank god finally.... Yes and.... Computer Science and writing Code are not the same thing. Analysis of algorithms, computer architecture, memory management methods, lists, queues, relational calculus, etc.... this is Computer Science. The university I attended made me write an Assembler to learn assembly language - and concepts like Forward referencing etc.

      But coding - I have some English Majors around here doing that. Teach music on an electronic piano that plays sampled beats is not the same as Music theory.

      Granted - you start them young to get them interested. And the early samples need to be easy and fun. But it needs to grow up with age.

      Teaching coding is not teaching Computer Science. Any more than teaching Addition is Mathematics.

      Plus I've heard great arguments of the difference between "Computer Science" vs "Computer Engineering."

      The Scientist move theory and technology forward. Engineering builds practical stuff. Can't wait for my First Grader to learn Scrum !! :-P

    23. Re: Sadly, I agree with her! by Anonymous Coward · · Score: 0

      No no no, she was womaning wrong and internalized sexism.

    24. Re:Sadly, I agree with her! by Anonymous Coward · · Score: 0

      Is VB considered an active language anymore? .... I thought VB.net was a godsend that required people to code with some "class"

      VB.Net is alive and well. Unfortunately, the only enforced change was lack of line numbers. Labels are still ok in methods (but they're also in C#),
      but I've seen plenty of code blindly copied from VB6.

    25. Re: Sadly, I agree with her! by Anonymous Coward · · Score: 0

      The other AC nailed it. Grace Hopper was a traitor to her gender. Ada Lovelace didn't need compilers to be a computer programmer! Grace Hopper invented the compiler for the express purpose of handing a field that women had created over to the patriarchy. Just look at how many computer women were chased out of their jobs because of the compiler.

    26. Re:Sadly, I agree with her! by orgelspieler · · Score: 1

      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.

      And there's nothing wrong with that. Oboists don't need to be composers to be good oboists. I play horn. I like to improvise and compose. Improvising on a Sunday morning with a receptive congregation is very fulfilling. But the other players in the ensemble are fascinated that I can play without anything written down. Improvising is just not as common a skill as Harel is implying.

      If we decide, as a society, that we need more code monkeys than architects, then so be it.

      BTW, the reason you don't "teach" improvising en mass to high schoolers, is that when you have 190 kids in a marching band, if they all decide to do their own thing it will sound like crap. One or two people authorized to do something well, say the lead percussionist and trumpet, will have a nice effect. Too much more than that and you get muddled garbage.

      I imagine there's a similar effect with a large team of programmers, but I'm not going to pretend that I know what it is or how it works.

    27. Re:Sadly, I agree with her! by angel'o'sphere · · Score: 2

      but I don't like the fact it doesn't use '0' based arrays like proper languages do.
      In a proper language you can define the dimensions of an array freely.

      Seems we disagree what a proper language or a proper array is :D

      On the contrary, for kids it is much easier to learn that an array either starts with 1 or with the number they wish, like in Ada or Pascal, or are both not proper languages for you?

      And if other languages would allow that, we had far less off by one errors. How a sane person can defend that an array index starts with 0 is beyond me. Which house in your street has house number 0? Which student in your class is student number 0? Which of your kids is the zerost, kid? The word "zerost" does not even exist, but you want it as in index for an array? And you consider that "proper"?

      The only reason we have 0 as an beginning index is the language C, where someone did not grasp that an array and a pointer are two different things :D

      --
      Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
    28. Re:Sadly, I agree with her! by pr0fessor · · Score: 1

      I got a lot more than an hour of code in high school but even that wasn't enough to make me a programmer any more than my accounting class made me a CPA they just gave me the basics and enough to know if it was something I might want to pursue after high school.

    29. Re:Sadly, I agree with her! by StormReaver · · Score: 1

      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.

      I don't even know where to start on this one. All I can say is that you have no business being around any significant business if this is what you truly believe. Excel and Access are fine for very, very small business cases. But they both explode into insanity rather quickly beyond that.

    30. Re:Sadly, I agree with her! by goose-incarnated · · Score: 1

      No but I have met a few people who can play just about anything they hear a couple months after buying a guitar with no lessons outside of a basic beginner's book. They are currently playing in fairly good cover bands but have no original music.

      That's me, except

      a) I never bought the book, only the guitar on a whim,
      b) I did do original work; after my first divorce my original lyrics were incredibly powerful :-), and finally
      c) I'm not in a band anymore.

      --
      I'm a minority race. Save your vitriol for white people.
    31. Re:Sadly, I agree with her! by pr0fessor · · Score: 1

      I picked up the guitar when I was six and learned some chords from my older sister who was taking lessons. She also taught me some violin and my other sister taught me some flute. I was in choir and learned to read music. I bought an electric guitar when I was 16 and played in a few cover bands in the 80s it was for fun more than anything else.

      When my second son became interested in guitar he was around 16 years old we bought him his first guitar and I taught him everything I knew which he absorbed very quickly so he started taking guitar lessons offered by the college and I decided I wanted to go back part time for applied music. I really enjoyed music theory it was new and exciting to me though it was awkward at moments since I was older than most of my professors and sometimes new students or students outside the music department thought I was faculty.

      My oldest son played guitar also and played with us sometimes but his interests where in computers and I taught him everything I could about programming.

    32. Re:Sadly, I agree with her! by djinn6 · · Score: 1

      In machine code, there's no such thing as arrays or pointers. Everything is just numbers. It's very convenient to say X is the address of an array of things, and X+n*size_of_thing is the address of the n-1th item in the array. If you have an array of integers, you get the value with:

      MOV eax, [ebx+ecx]

      where eax is the destination register, ebx is the address of the array, and ecx is the index. But if the array is 1-based, you must use a separate instruction to subtract 1 from the index first. To do the subtraction, however, you would need a free register, and if there isn't one, you'll need to push things onto the stack. Alternatively, you could subtract 1 from ebx first (which has the same problems), or waste 1 byte at the beginning of the array and allocate 1 more byte initially (which is fine until you want to allocate very large objects or very large number of tiny arrays). But none of these are as efficient as simply using a 0-based array.

    33. Re:Sadly, I agree with her! by Anonymous Coward · · Score: 0

      The reason indexes start with zero is because zero is still a valid value for an unsigned integer, and that gives you another value you can put in your array, in a time where storage was very expensive. Array sizes had to be stored and had to be aligned to a chunk size, say for example's sake one byte. What are the valid values available with 8 bits? 0 through 255. Not 1 through 256. Now that we have 16bit, 32bit, 64bit and up computers, we think it's a trivial problem that should never have existed - but that is simply to ignore history as well as computer engineering.

    34. Re:Sadly, I agree with her! by angel'o'sphere · · Score: 1

      Sorry,
      that is wrong.
      I suggest to read a book about compiler construction and code generation.

      Hint: the base adress of an array does not need to be the adress where the aray starts in memory.
      E.g.: look at the code a Pascal or Ada compiler generates.

      --
      Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
    35. Re:Sadly, I agree with her! by djinn6 · · Score: 1

      If you're not going to explain, why do you even bother replying? Also, I never said anything about it being impossible. It's just less efficient.

    36. Re:Sadly, I agree with her! by angel'o'sphere · · Score: 1

      I explained:

      "the base address of an array does not need to be the address in memory where the array starts"

      You oversaw that?

      Ok, we have an array going from 6 to 10, 5 elements. Lets just use bytes for sake of argument.

      The data is stored at address $10F0. The array is accessed as array[6] to array[10]. So array[6] is $10F0, indices less than 5 and bigger than 10 give an exception or are recognized by the compiler as not happening.

      So, we are not doing something like loading the address register with $10F0 and subtracting 6 from the index register. Instead we load the base register with $10EB and use 6 .. 10 in the index register. A no brainer. So you can easy debug on machine level ...

      Hope that helped.

      And if you had googled for "array base address" you had the answer quicker than I needed to type this.

      --
      Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
    37. Re:Sadly, I agree with her! by djinn6 · · Score: 1

      Thank you for explaining. Doing in that way is better than what I had suggested.

      However, I still believe that doing this will increase the overhead. With 0-based indexing, the result of modulo operations can be directly used as array indexes without adjustment. Memory allocation is also simpler, there's no need do perform arithmetic just for arrays. Let's say you allocated 10 bytes at $10F0, for arrays, you need to return $10EB. Same for freeing memory.

      As for whether a language should allow non-0-based indices, I think there is merit in having that ability, but there's also merit in keeping everyone on the same system because there's significantly less chance of confusion. At least one space mission has failed because of the mixup between metric and English units. Using different bases for each array will lead to the same type of problems.

    38. Re:Sadly, I agree with her! by angel'o'sphere · · Score: 1

      The arithmetic is done by the compiler and hard coded into the binary.

      Most arrays are static and not dynamic allocated anyway.

      --
      Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
    39. Re:Sadly, I agree with her! by brantondaveperson · · Score: 1

      The reason we have zero as the first element is deeper than just C believing that arrays and pointers are the same thing (which it doesn't, as a matter of fact, but that's not important). I will not attempt to put it any more rigorously than Dijkstra.

    40. Re:Sadly, I agree with her! by angel'o'sphere · · Score: 1

      Interesting read but I disagree with Djikstra.

      As he is coming from the programming language Mesa, I doubt he had come to the same conclusion if he had looked at e.g. Pascal.

      Otoh, the question is not 0 or 1, the point is in many languages your index is arbitrarily. E.g. [-3 .. 3][-3 .. 3], for a matrix with 3 elements in each direction around the center element which is x[0][0]. In languages like C and Java you would need to use [7][7], which is bit counter intuitive, don't you think so?

      --
      Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
    41. Re:Sadly, I agree with her! by brantondaveperson · · Score: 1

      Interesting read but I disagree with Djikstra.

      Brave. I like that :)

      Wrong, but brave. His argument is bulletproof. You'd have to counter his argument, starting with "There is a smallest natural number", and going from there.

    42. Re:Sadly, I agree with her! by angel'o'sphere · · Score: 1

      His argument is not about smaller numbers but about him favouring 'less than' relationships over 'less or equal' relationships.

      Side note: zero is not a natural number.

      --
      Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
  5. 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 frnic · · Score: 1

      PLEASE anything but PASCAL.

      Basic, Swift, even Python or PHP is okay. The point is to teach how to solve the problem and the language is just another tool.

      The issue is coders are not what I traditionally called "programmers" - they are two different critters. Back in the day (before I retired) we call coders "code slingers" and hired a bunch to implement all the boring things the programmers and designers and architects spec'd.

    2. Re:Python/PHP: learn it in a weekend... by XxtraLarGe · · Score: 1

      PLEASE anything but PASCAL. Basic, Swift, even Python or PHP is okay. The point is to teach how to solve the problem and the language is just another tool.

      Critical thinking skills really are the key. I usually tell my students to write the problem out in plain English or pseudo-code as comments, then write the code that would implement that problem in between the comments. Of course, few of them do that. Programming courses are just something for them to get through.

      I think for the next course I teach this fall (Web Programming w/Database Integration), I am going to have them watch The Secret Rules of Modern Living Algorithms on the first day after we go over the usual housekeeping stuff. I'm hoping it will inspire them, it is quite good.

      --
      Taking guns away from the 99% gives the 1% 100% of the power.
    3. Re:Python/PHP: learn it in a weekend... by funwithBSD · · Score: 1

      My son is in 7th grade, they are learning straight up C/C++.

      Required for the Robotics class in 8th grade.

      --
      Never answer an anonymous letter. - Yogi Berra
    4. 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

    5. Re:Python/PHP: learn it in a weekend... by Big+Hairy+Ian · · Score: 1, Flamebait

      Whats your beef with Python? I'd take far more issues with Javascript (Especially Node.js) than Python. Also don't have a go at PHP when MS took that bad idea, made it worse and called it ASP.

      --

      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.

    6. Re:Python/PHP: learn it in a weekend... by alvinrod · · Score: 1

      As long as individuals can learn to solve problems, develop algorithms, and the other skills that are more important to programming than just language acquisition it's not really a big deal. If you're targeting really young children, just give them something like Scratch and let them play around with it after teaching them the basic constructs. Give them a few challenging problems to try out on their own that allow them to apply what they've learned to developing simple algorithms

      Not everyone will do it or want to, but those that do find it enjoyable can take more advanced programming classes. Even if they later decide to go into some other field, if you focus the earlier classes on problem solving skills or enhancing abilities that are broadly applicable, it will be beneficial to the students no matter what they do.

    7. Re:Python/PHP: learn it in a weekend... by jonwil · · Score: 1

      When I studied computer programming in high school (this was a private school here in Australia and it would have been mid 90s) they were using Pascal (Turbo Pascal 6) and then later Visual Basic.

      If I was going to teach kids who knew nothing about programming how to program, Scratch would be a good place to start IMO. Its drag and drop and fun and you can do cool stuff with it but the programming underlying it teaches concepts like loops and if statements and variables and boolean operators and mathematical functions and things.

      So you can do all the simple stuff (a gaming TV show aimed at kids/tweens/etc ran a series of tutorials on how to make a game using Scratch) but you can expand it and do some complex things.

      If I was going to go further and teach serious programming beyond what a few lessons of Scratch will get you (i.e. people who actually want to get into programming as a hobby or career), I would either start with FreePascal for teaching procedural programming (since its FOSS and produces binaries for so many targets whilst being just as easy to learn as Turbo Pascal and the other Pascal implementations people like me and others here learned with) or C# for object oriented programming (the Microsoft IDE is one of the best IDEs I have ever used, the Community Edition is free for personal use and for use in education and unlike Java, you dont need to learn "advanced" concepts like exception handling to do simple things like file I/O)

    8. Re: Python/PHP: learn it in a weekend... by Anonymous Coward · · Score: 2, Funny

      Uh, that's not a good thing. Rust is the future of systems programming. I predict that in the future all new software will be written in Rust. Even old software, like the Linux kernel, will be rewritten using Rust. Your kids are learning outdated, obsolete technology if they aren't learning Rust today.

    9. Re: Python/PHP: learn it in a weekend... by Anonymous Coward · · Score: 0

      Most people who hate Python have never actually used it. Many of them also confuse Python with Perl, despite those two languages being very different.

    10. Re:Python/PHP: learn it in a weekend... by Anonymous Coward · · Score: 0

      Impressive. Quite a program

    11. Re: Python/PHP: learn it in a weekend... by Anonymous Coward · · Score: 0

      Yeah, honestly, the white-space is the only real issue with Python. That and that it is slow.

      I liked white-space at first, but the problem is that where I work, we code at 3 spaces and PEP8 says 4; this causes no end of headache when someone codes to the PEP8 spec (either by copy/pasting from the 'net or actually typing, often just using an IDE that defaults to 4). Worse is when people don't set their IDE to replace tabs with spaces.

    12. Re:Python/PHP: learn it in a weekend... by Anonymous Coward · · Score: 0

      And that's why you're not a fucking teacher. That putrid condescending analogy bullshit only fucking works in movies. In reality your average nine year old will wonder why the fuck you're talking about flour when they want to make goddamn Call of Fucking Duty. The fucking part is for your mom.

      If you want to teach a kid something you have to get their attention. You don't do that by fucking around. Kids are literal. They haven't had time for the universe to warp and fuck their minds to the point where an allegory is meaningful. Trying to equate a goddamn cookie recipe with programming just ends up with eggs in your fucking CPU cooler and inquisitive parents wondering why their kid suddenly spends most of their time telling the refrigerator how sexy its mom is.

    13. Re: Python/PHP: learn it in a weekend... by Big+Hairy+Ian · · Score: 1

      Yeah, honestly, the white-space is the only real issue with Python. That and that it is slow.

      Tabs & white space can cause an issue but it's just a habit problem. Slow? Hmmm it compiles to bytecode like Java & all the .net rubbish.

      --

      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.

    14. Re:Python/PHP: learn it in a weekend... by Anonymous Coward · · Score: 0

      That shouldn't be too much of a stretch, I started programming in C when I was 13, the only reason it amazed people then was because most people assumed kids of that age couldn't do it, given that I did it I'm not particularly surprised to hear that it turns out plenty of other kids can too.

      In my experience the ability to teach kids things is limited only by the teacher's ability to make it interesting. I could do it at 13 because frankly I found programming fascinating, not because I was some kind of child prodigy.

      So I think what they're taught or when is fairly irrelevant within reason (okay so most 3 year olds might not be quite ready for example), but it's really a question of how they're taught. If they're taught in a way that captivates their imagination it'll be fine, if they're taught in a way that leaves them piss bored and full of bad memories of the subject it'll go nowhere. You could just as well throw them in to the topic of assembly at that age if you can teach them with sufficient enthusiasm and competence.

      I've done fairly well for myself out of the topic, but it was really just luck - learning the right skill at the right time because I just happened to be fascinated by it to end up at a relatively young age with a skillset that was much in demand. I'm glad to hear now that other kids are being given this opportunity and aren't wasting as much time on subjects that are largely useless for all but an absolutely negligible minority such as English Literature, which was mandatory when I was at school. Unsurprisingly being taught about Wordsworth et. al. has literally conferred neither me nor a single on of my classmates any benefit in life and was just wasted time, and yet many of us now work in software so an education for those who didn't take it on like me as a hobby would've been way more beneficial.

      So good luck to your son, may it do him well, and I hope he finds it enjoyable!

    15. Re: Python/PHP: learn it in a weekend... by Anonymous Coward · · Score: 0

      Your local 3-space coding convention is wrong. Switch to the standard 4-space convention that everyone else uses and the problem goes away.

      It's not Python's fault that your organization goes out of its way to be different for no good reason.

    16. Re: Python/PHP: learn it in a weekend... by TheRaven64 · · Score: 1

      it compiles to bytecode like Java

      And then it interprets that bytecode using a really crappy interpreter, unlike Java which has had millions of dollars invested in optimising the JIT compiler.

      --
      I am TheRaven on Soylent News
    17. Re:Python/PHP: learn it in a weekend... by thinkwaitfast · · Score: 1
      I think I would have gotten bored instantly. I learned programming not as a subject, but on my own as a tool to solve problems that I wanted to solve.

      Maybe find out what each student is interested in, give them a problem from that area and help them figure it out themselves. And none of that crap like cars have four wheels and two doors and motorcycles have two wheels but no doors crap. I've been writing software since '79 or '80 and professionally since about '85 and I still don't get a lot of that. A dog is a type of animal.

    18. Re:Python/PHP: learn it in a weekend... by luis_a_espinal · · Score: 1

      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.

      Thinking what language to use to teach coding and coding fundamentals is still the wrong thing.

      We should not be teaching coding. We should be teaching technology proficiency first and foremost. And before that, we should be ensuring that, across the board, there is proficiency in math, reading, logical thinking, personal finance and rudimentary bookkeeping. And coding or no coding, when a kid gets out of HS, he or she should be coming out with an idea of what to do, or at most a specific trade.

      But that is too difficult, so we pretend we do something meaningful by "teaching coding".

    19. Re:Python/PHP: learn it in a weekend... by thinkwaitfast · · Score: 1
      I think giving each kid a $5 arduino, throw them all in a room together for an hour and see what they can do.

      How semi-literate children in a remote Indian village taught themselves molecular biology

    20. Re:Python/PHP: learn it in a weekend... by mrchaotica · · Score: 1

      I think I would have gotten bored instantly. I learned programming not as a subject, but on my own as a tool to solve problems that I wanted to solve.

      That's fine -- self-starters like you don't really need the teacher's help anyway! (Hopefully the teacher would be decent enough to exempt you from paying attention and let you do your own thing, but I'll concede that not all teachers are decent.) The problem is all the other dumbass kids who don't have the faintest clue about how to think algorithmically, how to break down a complex problem into multiple simple problems, how to reason with propositional logic, etc.

      Your suggestion to "give them a problem from that area and help them figure it out themselves" wouldn't work because (a) they have no programming-related "area of interest" and (b) they have no hope of figuring it out for themselves because they get stumped on basic concepts like assigning to a variable. That's not even an exaggeration: it's literally why "between 30% and 60% of every university computer science department's intake fail the first programming course". (And that's people who have self-selected to become college CS majors! I expect trying to do this with high-school kids to be much, much worse.)

      If you want to have any chance whatsoever of turning those "non-programming goats" into "programming sheep" (to use the paper's terminology) you can't start out teaching the to program; you have to teach them to think first! Even then, I'm not convinced success is possible.

      --

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

    21. Re:Python/PHP: learn it in a weekend... by Anonymous Coward · · Score: 0

      I had robotics type course in middle school or early high school and the teacher asked us to write intructions on how to make a peanut butter and jelly sandwich that a computer would understand.

      Very amusing when the teacher rolled the jar of peanut butter over the bread. The whole point of course was to explain each and every step because that's what was required for a computer. Computers don't think, we need to tell them exactly what to do, what order to do it in and make no assumptions because the computer won't either.

    22. Re:Python/PHP: learn it in a weekend... by Anonymous Coward · · Score: 0

      Forget pencil and paper exercises, just fire up some Apple IIs and let them play around with Rocky's Boots.

    23. Re:Python/PHP: learn it in a weekend... by orgelspieler · · Score: 1

      This is true (except the sexy fridge... you lost me there, buddy). My 9 year old desperately wanted to program a game for his iPad. Before I shelled out the $100 for Apple's stupid developer bullshit, I walked him through the first couple of steps of "hello world" in xCode. He quickly bored of the real work involved in programming. Now he's happy with playing on a breadboard with diodes, resistors and switches.

    24. Re:Python/PHP: learn it in a weekend... by thinkwaitfast · · Score: 1

      "all the other dumbass kids" are not going to do anything with it the rest of their lives, so it's a waste of time and resources for all involved.

    25. Re:Python/PHP: learn it in a weekend... by Anonymous Coward · · Score: 0

      C/C++ is not a language!!!!!!!

    26. Re:Python/PHP: learn it in a weekend... by angel'o'sphere · · Score: 2

      The point is to teach how to solve the problem and the language is just another tool.

      That is nonsense.

      I'm a native german speaker. How would you explain me a scientific subject best? In German or English or in Thai?

      The language makes a huge difference.

      And Pascal is the best language to teach and learn coding in. You may disagree but you would be wrong.


      type
            vector = array [ 1..25] of real;
      var
            velocity: vector;

      Trying this in C is unreadable gibberish for every beginner. And in PHP or Java you can't even do it.

      --
      Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
    27. Re:Python/PHP: learn it in a weekend... by Anonymous Coward · · Score: 0

      The point is to teach how to solve the problem and the language is just another tool.

      That is nonsense.

      I'm a native german speaker. How would you explain me a scientific subject best? In German or English or in Thai?

      The language makes a huge difference.

      And Pascal is the best language to teach and learn coding in. You may disagree but you would be wrong.


      type

            vector = array [ 1..25] of real;
      var

            velocity: vector;

      Trying this in C is unreadable gibberish for every beginner. And in PHP or Java you can't even do it.

      What problem are you actually trying to solve?

    28. Re: Python/PHP: learn it in a weekend... by Anonymous Coward · · Score: 0

      It's not Guido's job to establish coding conventions.

      So fuck python.

    29. Re: Python/PHP: learn it in a weekend... by Bevvegas45gmail.com · · Score: 1

      Let's all get out our Leappads, class!

    30. Re: Python/PHP: learn it in a weekend... by Anonymous Coward · · Score: 0

      Yeah, honestly, the white-space is the only real issue with Python. That and that it is slow.

      Tabs & white space can cause an issue but it's just a habit problem. Slow? Hmmm it compiles to bytecode like Java & all the .net rubbish.

      Bytecode is slightly different than JIT'd VM IL assemblies.

    31. Re:Python/PHP: learn it in a weekend... by Anonymous Coward · · Score: 0

      Yes, the language matters for the implementation, but not the solution.

      For example, as a scientific subject, say electron shells of atoms...
      Make the basic assumption that you already understand electrons to orbit the nucleus of an atom in some way, and that the nucleus is made of positively charged protons, and neutral neutrons.

      How would I teach about electron shells?
      1) For a non-charged atom (i.e. not an ion) the number of electrons is equal to the number of protons.
      2) The electrons live in particular regions, called shells.
      3) Each region can only contain a certain number of electrons.
      4) A region must be full before the next region can begin filling.
      Then I can go into the names given to each shell, how many electrons, their shape etc.

      The exact words, and order of words used depends on the language. But the actual solution is essentially the same.

    32. Re: Python/PHP: learn it in a weekend... by brantondaveperson · · Score: 0

      Amen.

  6. So what? by Wycliffe · · Score: 1

    So they are using gui tools. Who cares? My first experience with programming was randomly modifying Oregon Trail and seeing what broke. It wasn't until I got a programming manual several years later that I discovered that chr(4) actually meant ascii character 4. I knew what it did by trial and error but had no idea what it meant. The point is they are teaching basic logic and problem solving skills. Not everyone is going to be a programmer but everyone can benefit from learning logic, problem solving skills, and collaboration.

    1. Re:So what? by Anonymous Coward · · Score: 0

      Ah... what is usually covered in basic mathematics, though I grant "collaboration" is usually called "cheating".

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

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

  8. 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?

    1. Re:Every subject taught in school is too shallow by Wycliffe · · Score: 1

      By professional standards, everything taught in school is fluffy and watered down. Harel noticed that only now, and she's outraged?

      That's the way school works. In kindergarten you learn that the primary colors are red, yellow, and blue, that there are only 3 phases of matter, that the earth is round, that all living things are either plants or animals (if you're lucky they *might* throw in fungus but don't count on it). Later you find out that green is a primary color, the earth is fatter at the equator, plasma is a phase of matter, and there are actually 6 kingdoms.

      Even in high school physics, you still mostly learn using simplified versions like frictionless planes and spherical cows. I don't see a problem with this. You teach the simplified version and then a few years later create a better model. This is actually very similar to how real science works where we create a model (say newton's laws) and then slowly expand on it as we find stuff that doesn't conform to it 100% of the time in all conditions.

    2. Re:Every subject taught in school is too shallow by bigpat · · Score: 1

      By professional standards, everything taught in school is fluffy and watered down. Harel noticed that only now, and she's outraged?

      That's the way school works. In kindergarten you learn that the primary colors are red, yellow, and blue, that there are only 3 phases of matter, that the earth is round, that all living things are either plants or animals (if you're lucky they *might* throw in fungus but don't count on it). Later you find out that green is a primary color, the earth is fatter at the equator, plasma is a phase of matter, and there are actually 6 kingdoms.

      Even in high school physics, you still mostly learn using simplified versions like frictionless planes and spherical cows. I don't see a problem with this. You teach the simplified version and then a few years later create a better model. This is actually very similar to how real science works where we create a model (say newton's laws) and then slowly expand on it as we find stuff that doesn't conform to it 100% of the time in all conditions.

      Yes, good points all around. Nothing wrong with a bit of simplification, take this history of the world in 5 sentences:

      "Well, let's see. First the earth cooled. And then the dinosaurs came, but they got too big and fat, so they all died and they turned into oil. And then the Arabs came and they bought Mercedes Benzes. And Prince Charles started wearing all of Lady Di's clothes. I couldn't believe it."

    3. Re:Every subject taught in school is too shallow by bill_mcgonigle · · Score: 2

      No mod points, but thank you.

      --
      My God, it's Full of Source!
      OUTSIDE_IP=$(dig +short my.ip @outsideip.net)
    4. Re:Every subject taught in school is too shallow by Anonymous Coward · · Score: 0

      Right - or believing one trip to the Science Museum will suddenly turn your child into a Scientist. The point of these tutorials is to get people interested and help them understand a little more about the basic concepts.

    5. Re:Every subject taught in school is too shallow by thinkwaitfast · · Score: 1
      The vast majority of engineering problems that I've solved, I've done with high school level physics. The problem is that people take classes to pass the class that they are forced to take, not to learn physics.

      This guy wrote a book on energy policy using nothing more complicated than high school physics, yet it's incomprehensible to most people who've supposedly have taken at least a year of physics.

  9. No no no by flopsquad · · Score: 1

    Dammit you're doing this all wrong! Can't you program in a way that costs me less than minimum wage?

    --
    Nothing posted to /. has ever been legal advice, including this.
  10. Not much has changed by freeze128 · · Score: 4, Interesting

    When I was in high school, (25+ years ago) we had computer programming classes. The languages they covered were BASIC, Pascal, and LOGO. Sure, you could drive a little turtle around on the screen and make pretty Spirograph pictures, but nobody used it to play chess or do their taxes. Of course, many of the students in that class went on to take university classes in computer science.

    Lesson: Rudimentary programming classes are not the end-all, be-all of computing. It's just a stepping stone to let you know if you want to continue your education in that field.

    1. Re:Not much has changed by Theaetetus · · Score: 1

      When I was in high school, (25+ years ago) we had computer programming classes. The languages they covered were BASIC, Pascal, and LOGO. Sure, you could drive a little turtle around on the screen and make pretty Spirograph pictures, but nobody used it to play chess or do their taxes. Of course, many of the students in that class went on to take university classes in computer science. Lesson: Rudimentary programming classes are not the end-all, be-all of computing. It's just a stepping stone to let you know if you want to continue your education in that field.

      This. TFA refers to Obama "writing" a line of code with "moveForward(100);". Seems an awful lot like LOGO's "FD 100". It's an easy, intuitive first step to get kids interested in programming, while being accessible to third and fourth graders. No one is suggesting that drag and drop computing be the core of a CS undergraduate programming, but as a "my first application" for kids, it's perfect.

    2. Re:Not much has changed by CronoCloud · · Score: 1

      This. TFA refers to Obama "writing" a line of code with "moveForward(100);". Seems an awful lot like LOGO's "FD 100".

      I'm not a programmer (though I was taught a bit of BASIC back in high school, and a bit of PL/C which I've totally forgot, later on) and ran through the "hour of code" some months back. It basically IS the Turtle graphics part of LOGO.

      What I believe is that " basic scripting", would serve most people better than going whole hog into OOP, pointers, registers and whatnot.

      A lot of people want their computers to do things that can be done relatively easily but they don't know how to do them. "I want my computer to do something at a set time every day", "I want a list of just the jpegs in my user directory", "There is a webpage with a list of files that I want to download without manually clicking on each one" or other things like that.

      Heck I've amazed people with my ability to grep my Second Life chatlogs for information quickly.

  11. Look up 'Infinifactory' by Anonymous Coward · · Score: 0

    If you want to teach kids the problem solving aspect of coding, there are several video games that will exercise those brain muscles.

    Infinifactory is the best example I can think off off the top of my head.
    http://store.steampowered.com/app/300570/

    Though really anything may by Zachtronics would be great.
    http://store.steampowered.com/search/?developer=Zachtronics

    If you haven't heard of these games before, Mark Brown at Game Maker's Toolkit made a lovely video on the subject.
    https://www.youtube.com/watch?v=w1_zmx-wU0U

    Getting kids to try out games like these, compare their results, discussing and collaborating on their ideas, would do worlds more for the next generation of coders and computer scientists alike than that 'pop computing' nonsense.

  12. 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?

    1. Re:Duh. Please shut up by fluffernutter · · Score: 1

      So where is:
      "Hour of plumbing"
      "Hour of auto mechanics"
      "Hour of home renovation"
      "Hour of electrical"

      Each of these is probably more valuable to the child on average.

      --
      Laws are rules for the court, but merely a bottom bar to hit for life. Think beyond laws in your actions always.
    2. Re:Duh. Please shut up by Anonymous Coward · · Score: 0

      It's not a PhD, but have you heard the noise those plastic instruments make?

      You're right, we start kids off playing a simple tune from scratch in music ("Hot Cross Buns" usually, the poor man's "Mary Had a Little Lamb"). We don't give them a casio keyboard with a preprogrammed rendition of "Wake Me Up before You Go-Go" and tell them to play a couple notes over it. Instread of having kids write a few token commands to see big results in some fancy GUI, I would suggest that it would be more rewarding to have them build extremely something from scratch in a real or close to real environment.

    3. Re:Duh. Please shut up by Anonymous Coward · · Score: 1

      That sounds like shop class to me.

    4. Re:Duh. Please shut up by Maxwell · · Score: 1
      Why would code.org, a registered charity with a goal of introducing Computer science to all kids, set up one hour sessions on plumbing?

      If the plumbing industry wants to generate more interest in plumbing they are more than welcome to set up a similar program. Nothing is stopping them. As far as I know they have not done this. Perhaps they see no need.

      Donors to code.org that support this program DO see a need, and they are fulfilling it with this program.

      How hard is this to understand? It's one hour on something kids can't see being done around the house, or when the plumber visits to fix something.

    5. Re:Duh. Please shut up by fluffernutter · · Score: 1

      I think a better question is, why are they allowing an outside organization to influence the school curriculum at all? The organization and their purpose should be irrelevant to the discussion here. If the schools are deciding to do this because it is good for students then they should be doing all things that may be good for students regardless of external influences. So if learning to code is good, then so are the other things.

      --
      Laws are rules for the court, but merely a bottom bar to hit for life. Think beyond laws in your actions always.
    6. Re:Duh. Please shut up by laxguy · · Score: 1

      Parents should be involved in their kids life.

    7. Re:Duh. Please shut up by Anonymous Coward · · Score: 0

      Kids already have exposure to music, they can bang a drum, squawk a plastic recorder from the dollar store.

      Which is also very deceptive, squaking on a recorder or banging a drum is not really making music anymore than banging out random characters on a keyboard is writing software.

      Yet people want to call that music. And art is even worse with paintings that are just random dribbling on canvas not only get called art, but are sold for many millions of dollars.

      I dream of a day when highly skilled artists are selling for millions and the highly skilled marketers of today are relegated to an uninteresting footnote in history books.

    8. Re:Duh. Please shut up by fluffernutter · · Score: 1

      Sure, so perhaps code.org should be going through parents and not the schools at all. Or are we thinking all parents should be home schooling now?

      --
      Laws are rules for the court, but merely a bottom bar to hit for life. Think beyond laws in your actions always.
    9. Re:Duh. Please shut up by orgelspieler · · Score: 1

      We don't give them a casio keyboard with a preprogrammed rendition of "Wake Me Up before You Go-Go" and tell them to play a couple notes over it.

      Actually, that's exactly how I got my son interested in making music. I have a keyboard with a few built in tunes and beats and chords. He needed the framework to really get into it. Without a steady beat he struggles. His music class uses recorders. He's way better doing it with accompaniment than solo. He spent years not wanting to sing or play any kind of instrument (piano, guitar, recorder, psaltry, djembe, clarinet, horn, hell--even the maracas). Now, after a couple of hours on the keyboard with all those built in functions, he's decided he wants to produce pop music. Not write songs or perform them, but tweak the voicing/beat/effects, that sort of thing. Not my bag -- not even close, I'm more of a pipe organ and orchestra guy -- but whatever gets him into music is fine by me.

    10. Re:Duh. Please shut up by fluffernutter · · Score: 1

      My point is, schools should be driven only by what is good for kids. We may not always agree with what they do, but as long as they can point to a well thought out reason why an activity is good for kids then that should be the determining factor. In this case I'm not convinced it is terribly well thought out in an impartial manner since there are a lot better and more realistic employment opportunities than coding right now. Yes, coding uses a type of critical thinking skill, but those skills are just simple logic which aren't necessarily attached to the practice of coding at all. Most of this critical thinking is already covered by mathematics (use of variables). Add a session of logical constructs to mathematics lessons and you have all those critical thinking skills anyway.

      --
      Laws are rules for the court, but merely a bottom bar to hit for life. Think beyond laws in your actions always.
    11. Re:Duh. Please shut up by Anonymous Coward · · Score: 0

      Even more useful:
          "Hour of tax filing"
          "Hour of financial management"

    12. Re:Duh. Please shut up by Anonymous Coward · · Score: 0

      These are all good ideas that merit further educational investment. It's just too bad that nobody has taken responsibility to implement a structured education scheme to promote and implement this kind of education at any level.

    13. Re:Duh. Please shut up by Anonymous Coward · · Score: 0

      You need, or should have a licence to perform any of those things.

  13. 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.

    1. Re:All in or nothing at all! by thinkwaitfast · · Score: 1

      In all my years as a professional engineer (and the occasional job in physics), I can't recall ever having to solve a problem in multivariable calculus.

  14. tech classes instead by Anonymous Coward · · Score: 0

    I'd rather see general tech classes instead.

    An hour a week in elementary school perhaps.

    A quarter class in middle school covering basics such as operating systems, networking, history of the Internet, week-long course of programming, week-long course on keyboarding/typing, office software, hardware, Internet safety, webpage building. I figure 45 school days of 45+ minutes would be sufficient in middle school. Perhaps 6th or 7th grade. It doesn't need to be all-inclusive. It just needs to cover some topics so students know. About the hardware thing... knowing the parts and being able to take and put a computer back together might be useful knowledge for some students.

    In high school, offering more electives probably would be useful. But also throwing in Mathematica and/or Matlab in certain math classes might be something too.

  15. 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.
    1. Re:Overabundance of corporate tie-ins by Anonymous Coward · · Score: 0

      Wouldn't it be better for these corporations to either create boot camps or sponsor kids with proven aptitude to attend boot camps once they graduate high school? They would then get the coders versed in whatever flavor of the month language these corporations are clamoring for. It would only take months instead of years required for traditional university studies.

  16. Programming Jobs by Anonymous Coward · · Score: 0

    It really does not matter anyway. Soon there will not be many programming jobs left in the US. It will always be cheaper to hire overseas where labor can be had for a fifth of US labor cost and have them install it over the intertubes. After all, what could possibly go wrong with the misunderstandings between cultures and no recourse because the programmers live in another country.

  17. Mistake by Anonymous Coward · · Score: 0

    Teaching them coding at all is a mistake, not everyone is cut out to be a coder or engineer, and nothing is ever going to change that. What they should be doing is teaching digital literacy. A large number of millennials don't even know how their devices really work, let alone how things function under the hood. This whole coding initiative is one of the mist ludicrous and fascist ideas we've ever had in America.

  18. Outsourcing by Anonymous Coward · · Score: 0

    Clearly this policy is part of a larger plan to produce incompetent American programmers so that businesses have yet another excuse to request more H-1B approvals.

    Only Trump can fix this problem and Make America Geat Again!!!

    Trump/Palin 2016!!!!!!!!

  19. Coding != Computer Science by Anonymous Coward · · Score: 1

    Can we please stop confusing coding with computer science? While one must necessarily code in order to pursue computer science, one must not necessary be a computer scientist to code.

    It's perfectly okay to write code that does what you want it to do. It may not be the most efficient, most optimized algorithm, but hardware resources like memory and CPU are basically free and infinite.

    Teaching kids to code is not wrong. Expecting high school graduates to be computer scientists is.

    1. Re:Coding != Computer Science by EmagGeek · · Score: 1

      Indeed, if we could just get kids at the high school level to understand the mechanics of coding, and some very basic rules of writing decent code, that is plenty sufficient for those who want to pursue CS to have a foundation. Overall I think a reasonable expectation would be for HS kids to learn mechanically how code works, such as how to use functions, pointers, objects, structures, and so on, to organize data. I don't think it's necessarily a requirement that HS kids be architecture experts, algorithm experts or to know the air speed velocity of an unladen swallow, African OR European.

      It does no good to be an algorithm wonk if you don't know how to implement them in code. However, it does a lot of good to know how to write code that does stuff even if you aren't the best at optimizing your algorithms, when you are beginning to pursue an education in CS.

    2. Re:Coding != Computer Science by K.+S.+Kyosuke · · Score: 1

      Overall I think a reasonable expectation would be for HS kids to learn mechanically how code works, such as how to use functions, pointers, objects, structures, and so on, to organize data

      And the first, last, and second-to-last thing will actually be useful! That's a decent start.

      --
      Ezekiel 23:20
    3. Re:Coding != Computer Science by K.+S.+Kyosuke · · Score: 1

      Oops, an off-by-one error...so make it the first and the last thing in the list. Organizing data in general is something to think about too, though.

      --
      Ezekiel 23:20
  20. learning should be from the ground up by Anonymous Coward · · Score: 0

    In math, you learn arithmetic before algebra, and algebra before calculus for a good reason. Each level is built on the prior and demands an understanding of the foundations before the higher level abstractions which are built upon them.

    Computers are similar, but we are trying to short circuit the whole process and provide, as Harel puts it, the "fluffy" version. If you want a population who understands technology, rather than merely thinks they understand technology, you also need to teach from the ground up. One needs to understand hardware before assembly language, assembly language before high level languages, information theory and algorithms before "drag and drop" style "coding".

    We're going to breed a nation of Dunning Kruger effect people, which may be more dangerous than not teaching anything at all. If nothing else, the population will severely underestimate the difficulty of building real world complex systems, which can lead to "punishing the weatherman for his mis-prediction".

    We're even starting to forgo the ground-up approach in universities for our comp-sci graduates, and it shows. Painfully.

  21. Could help identify gifted CS students by Pedestrianwolf · · Score: 2

    At the very least, these programs could help highlight the children that have natural ability and/or interest early on. This way, once identified, they will have the opportunity to get the deeper education they need to go on and be successful in a CS related field.

  22. No real surprise by Anonymous Coward · · Score: 1

    I'm not sure who is to blame, but public schools (and most private) teach nearly every subject badly.

    Math: obsess over memorization with vague threats of "you'll need this later in life"
    Science: obsess over memorization with vague promises of it leading to better careers
    English: obsess over sentence diagrams, stupid sentence diagrams
    Literature: train the students to hate reading with many of the worst stories available, insist that they are all "classics" and that any cultured person likes them
    History: demand memorization of a finite but excessive collection of date/name/event correlations with as little time as humanly possible spent explaining the significance of any of those events
    Foreign language: how to ask for bathrooms and embassies, no attention to the cultures you can potentially experience with familiarity of the language (as an odd aside, I hate puns in english, but find them fascinating in languages I am much less-than-fluent in)
    Gym: honestly, this one is usually fine unless the teacher is obsessed with a certain sport
    Music, art, and shop varied heavily by the techniques of the day, which is probably why they are usually right after recess in the list of things for schools to drop in favor of hiring more non-teaching staff

    As an aside about that, I've noticed that most of the people who claim the US isn't paying enough to schools are under the impression that somehow another $1,000 per student per year would reduce class sizes and improve the resources available to the teachers. The trend seems to be hiring more "administrative" staff whenever funding rises and cutting back on visible staff and resources whenever funding decreases.

    1. Re:No real surprise by Anonymous Coward · · Score: 0

      "are under the impression that somehow another $1,000 per student per year would reduce class sizes and improve the resources"

      Sounds a lot like whats going on with Detroit Public Schools right now. They have 1 staff for every 3 students (48k students, 15.5k Staff) and they wonder why they're having budget problems.

  23. Sexist Code.org only want to teach girls by Anonymous Coward · · Score: 0

    Of course code.org think it's wrong - they pay teachers to teach girls only.

    The sexist shits.

    http://www.avoiceformen.com/misandry/the-misandry-of-code-org/

  24. We need more ways to get H1B'S in by saying by Joe_Dragon · · Score: 1

    We need more ways to get H1B'S in by saying us workers don't have the right skills.

  25. Grammar by Anonymous Coward · · Score: 0

    "American schools are teaching our kids how to code all wrong." -- perhaps incorrectly, even...

  26. Stating the obvious by Elledan · · Score: 1

    As someone who got started on programming back in the early 90s with QBasic, then moved through a VB and Java phase until ending up at C/C++, it's fairly obvious what has happened over the years. Basically ongoing abstraction and proliferation of scripting languages is making people forget about actual programming.

    Where programming involves the actual manipulation of hardware, drivers and bytes, scripting merely involves being able to use pre-existing APIs proficiently. See for example applications which use C++ at the core and use Lua for automating or customising certain tasks in a dynamic fashion.

    Having used scripting languages like PHP, JavaScript (Vanilla mostly), Perl and Python for well over a decade, and most recently having taught young children to create simple games in Scratch, it's not hard to see what has changed: we stopped teaching how to program.

    When even CS courses at school involve nothing more than being able to glue the right Java libraries together (hello Apache Commons and Spring!), and 'JavaScript development' is basically more of the same, it doesn't take a genius to see that they are no longer writing in system languages (BASIC, QBasic, C/C++, Pascal, etc.) like students of yesteryear.

    Real computer science and programming involves understanding hardware, knowing how to get reasonable performance out of limited hardware, understanding that hardware is not perfect and how to compensate for this, as well as resource management.

    Or more succinctly: programming is being able to write the runtime, scripting is being able to write scripts for said runtime.

    --
    Site & blog: http://www.mayaposch.com
  27. Please don't learn to code... by cjjjer · · Score: 4, Informative
    1. Re:Please don't learn to code... by ljw1004 · · Score: 1

      https://blog.codinghorror.com/please-dont-learn-to-code/

      http://techcrunch.com/2016/05/10/please-dont-learn-to-code/

      What ridiculous arguments.

      "Please don't learn maths. Teaching maths assumes that the world needs more math theorems in the world. It assumes that adding more poorly-trained professional mathematicians to the world is a desirable thing when it's not; we already have enough professional mathematicians. It implies there's a thin easily permeable membrane between those learning Algebra-1 and those who work in Field Theory -- but there's a huge gap."

      (I've copied out the arguments from those blogs but replaced "code" with "maths" to show it's ridiculous. Like learn-maths, the benefit of learn-code isn't to produce professionals, but instead to produce citizens who are empowered by it to live their lives better. How does a small amount of coding know-how help you live better lives? because you no longer have to consume the rubbish that gets thrown at you, and you can instead whip up a small spreadsheet to test how your mortgage payments will work, or a small web-scraper to extract out price information, or you can explain a non-coding task algorithmically to someone.)

    2. Re:Please don't learn to code... by Anonymous Coward · · Score: 0

      I see where you are going with that, but really, just teaching someone MATH instead of coding would do most of your examples. Teaching them Math and how to operate a computer will be the real winning combination for most people.

      Teaching the common person how to code but then skimp heavily on the math is a huge disservice but unfortunately seems to be the direction we are heading.

      I mean, how can they seriously expect people to learn to code but at the same time want to stop math at Algebra because its to hard...

    3. Re:Please don't learn to code... by Anonymous Coward · · Score: 0

      https://blog.codinghorror.com/please-dont-learn-to-code/

      http://techcrunch.com/2016/05/10/please-dont-learn-to-code/

      What ridiculous arguments.

      "Please don't learn maths. Teaching maths assumes that the world needs more math theorems in the world. It assumes that adding more poorly-trained professional mathematicians to the world is a desirable thing when it's not; we already have enough professional mathematicians. It implies there's a thin easily permeable membrane between those learning Algebra-1 and those who work in Field Theory -- but there's a huge gap."

      (I've copied out the arguments from those blogs but replaced "code" with "maths" to show it's ridiculous. Like learn-maths, the benefit of learn-code isn't to produce professionals, but instead to produce citizens who are empowered by it to live their lives better. How does a small amount of coding know-how help you live better lives? because you no longer have to consume the rubbish that gets thrown at you, and you can instead whip up a small spreadsheet to test how your mortgage payments will work, or a small web-scraper to extract out price information, or you can explain a non-coding task algorithmically to someone.)

      What a ridiculous counter-argument.

      Computer Science and Classical Mathematics are competing philosophies of mathematics. Computer Science is rooted in constructivism while Classical Mathematics is not. Coding is to Computer Science like arithmetic is to Classical Mathematics---an abomination. The most beautiful parts of mathematics are the parts that no one can find a use for. Once a use has been found, the beauty is tarnished.

      Now if you want to teach algorithms to children, it should be done as part of maths class, and that would require asking students maths questions that require writing algorithms to solve (such as how many prime numbers are there between 6 and 2**24, or create a multiplication table for base 13). I think that would fulfill the basic need to enrich people's lives without creating the false impression that coding is a skill distinct from saying arithmetic. It is basically learning how to make your calculator work for you instead of working with your calculator. However, it is cruel to teach people at an early age the means by which they are going to lose their job.

  28. Harel has missed one important thing by funwithBSD · · Score: 1

    OTHER classes, such as Science, History and English also teach "doing critical thinking and analysis, and creative collaboration"

    because those skills are not unique to IT, every good job requires that sort of thinking.

    --
    Never answer an anonymous letter. - Yogi Berra
  29. Today's computers are more complex by complete+loony · · Score: 1

    Start with something simpler. Like an old 8-bit computer, or a simulation like core-wars. Some system where *everything* about it is comprehensible with no hidden magic.

    --
    09F91102 no, 455FE104 nope, F190A1E8 uh-uh, 7A5F8A09 that's not it, C87294CE no. Ah! 452F6E403CDF10714E41DFAA257D313F.
  30. Wait, what? by argStyopa · · Score: 3

    So she's suggesting that a discipline that requires an (obsessive) focus on procedure, logic, math, and detail *might* not benefit from being addressed as the "flavor of the month" educational issue and magic-bulleted by an "hour of code" every week using what amounts to dumbed-down simplistic tools taught by general-ed instructors who aren't really familiar with what they're doing anyway?

    Maybe we should just leave it as a profession to people that actually enjoy it and choose to do it, instead of trying to stampede kids (particularly ones with vaginas!) into it with t-shirts, media attention, and shiny prizes?

    I'm going to go way out on a limb here and suggest that the kid attracted to a profession because there's balloons and cake at a few school events, is going to be pretty fucking disappointed when they realize that much of the job involves sitting for HOURS AND HOURS, alone, and thinking really hard about stuff.

    --
    -Styopa
    1. Re:Wait, what? by Anonymous Coward · · Score: 0

      kids [are] going to be pretty fucking disappointed when they realize that much of the job involves sitting for HOURS AND HOURS, alone, and thinking really hard about stuff.

      These are teenagers, right? "Ones with vaginas!", ones without, and ones that can't make up their minds. (I never knew that was an option.)

      Anyway: you got the words slightly mixed up -- let me fix it:

      kids [are] going to be pretty [] disappointed when they realize that much of the job involves sitting for HOURS AND HOURS, alone, and thinking about fucking really hard stuff.

      They're teenagers -- do you really expect them to be paying attention to anything else? And "hours and hours alone" is how you get practice for when you aren't.

    2. Re:Wait, what? by PrescriptionWarning · · Score: 1

      Maybe there's something lost in the message, because the idea should be to make programming an attractive option for more people, because perhaps the stigma has been for some time now that only computer nerds (like me) are interested in that that kind of stuff. Granted they also need to realize there's a long path of learning to becoming an effective programmer, but you do have to start somewhere.

  31. 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.
  32. Re:Not surprised, teaching to the test mentality by djnforce9 · · Score: 1

    This was my grade 10 computer science class in a nutshell although I don't blame the teacher; the curriculum was the issue.

    Instead of learning how the computer actually works and how the different parts fit together, everyone one slapped with a bunch of disjointed terms to memorize without any context surrounding them. If only schools would drop this "one size fits all" approach and understand that there is more to learning than just "memorizing things". I did far better in the practical classes such as mathematics and the later computer science classes as they were purely programming.

    Lastly, I am reminded of this:
    https://pbs.twimg.com/media/Bh...

  33. 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.
    1. Re:coding and CS by gweihir · · Score: 1

      Same experience here. I find that many things I code today need advanced algorithms and data-structures, estimates, and the occasional proof. Coding on advanced difficulty-level cannot really be done unless you also have a solid CS background. And that is where the money is, because you become very hard to replace.

      --
      Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
    2. Re:coding and CS by l3v1 · · Score: 1

      +1

      One example, a few months back I had to write code that needed pretty heavy graph theory knowledge, which was no problem - after a bit of deep concentration :) - but I can't imagine how a "simple" coder could've produced a result nearly as efficient.

      Lots of coders dismiss this these days, saying there are good libs out there that can help you solve (or well, avoid) lots of algorithmic issues, but even so there are lots of occasions where not knowing things will be a real hindrance.

      --
      I am putting myself to the fullest possible use, which is all I can think that any conscious entity can ever hope to do.
  34. R O T F L M A O @ /. 'experts' by Anonymous Coward · · Score: 0

    /. wannabe 'experts' who can't show they've programmed a damn thing themselves on /. = all talk bullshitters. Seriously delusional blowhard bullshitters like raymorris who is stupid enough to think he coded the linux kernel when asked (and all he did was write a 2 line patch hahahaha which any dolt can do) is about the best you'll get for 'expert (not) advice' around this site or "web wallies" who THINK formatting text = programming (while using others' prewritten frameworks too). This is the last place anyone should come for advice on coding. There's very few REAL coders here. This comment does not however count for those who can show successfully done projects or commercially sold code here (not even 1% of this sorry site chock full of menials or wannabes). I'm sure this will be down moderated. Truth's not a big part of the agenda here. Especially truth that hurts the fake it till you make it losers here.

    1. Re: R O T F L M A O @ /. 'experts' by Anonymous Coward · · Score: 0

      Agreed. Hopefully APK will chime in with some thoughts on this story. At least he's actually developed a solid useful product.

      But, even if he does, the 'experts' here will bully and down vote him to -1 as well because he's doesn't always follow the herd mentality here.

    2. Re:R O T F L M A O @ /. 'experts' by sunking2 · · Score: 1

      Stop. You'll upset all the IT workers.

  35. Teach it the hard way by houghi · · Score: 1

    Let them code Perl and each time they make a mistake kit them on the head.
    If you are about 'no kid left behind' hit ALL the kids on the head, except the kid that made the mistake. It works in the military, so why not in schools?

    --
    Don't fight for your country, if your country does not fight for you.
  36. Learn to Encode by Anonymous Coward · · Score: 0

    I've tried to start my kids on encryption w/ simple letter-substitution schemes, intrigue them w/ the idea that they can send secret messages--on paper-- to each other or their friends.

    Later on, I thought we could write a simple program to encrypt and decrypt.

    Trying to get them interested in the underpinnings rather than the fluff.

  37. Except the reality is by bfpierce · · Score: 2

    "Just as would-be musicians become proficient by listening, improvising and composing, and not just by playing other people's compositions."

    That's exactly what introductory musicians DO in the current public school environment. They play other people's compositions. Only those with the means and time actually go further than that into writing their own music, and they do it at home or take additional class work outside of their normal curriculum.

    You aren't a musician because of the High School curriculum, you aren't a mathematician, you aren't a political scientist because of your government class. I think the problem here is that people like this article writer are expecting HS graduates to be able to jump into a profession with no additional learning/training. That's not realistic, and it's not what a HS curriculum is designed to do.

    1. Re:Except the reality is by jasnw · · Score: 1

      I think the problem here is that people like this article writer are expecting HS graduates to be able to jump into a profession with no additional learning/training.

      Close. It's not that people like Ms. Harel "expect" this as much as they "want" this. If you haven't noticed, companies don't want to have to pay to train their people. Training comes off the bottom line, and that irks the most important people: stockholders. CEOs want schools to fully train the next-gen minions for them so they don't have to pay for the training themselves. Of course, they also don't want to pay the taxes necessary for this, but that's another issue.

  38. Coding as education? NOT by Anonymous Coward · · Score: 0

    Introduction to coding is not important as education. Content is less important than motivation to learn, even if on your own. I got that from my 8 years of teaching, including coding. Some [few] students who are exposed to simple coding wind up discovering that it is what they want to get skilled at and do for life. Without such classes, they would miss out on that discover. So it's not all a waste, even though it's wrong to think of it as learning how to really program.

  39. How about: flow charts [Re: How about] by XXongo · · Score: 3, Interesting
    Yeah.

    The one "watered down" CS element that I would like to see taught in elementary schools is the art of drawing flow charts. Now, that's something that can be useful across the board, as a tool for thinking,

    But, as for the rest of it-- let the teachers figure out how to best teach.

    1. Re:How about: flow charts [Re: How about] by Anonymous Coward · · Score: 1

      Yeah.

      The one "watered down" CS element that I would like to see taught in elementary schools is the art of drawing flow charts. Now, that's something that can be useful across the board, as a tool for thinking,

      But, as for the rest of it-- let the teachers figure out how to best teach.

      I always found pseudocode a better vehicle for describing a process at a high-level or at lower levels of abstraction written in terms even a business analyst can understand. Flowcharts might be good for documenting the logic afterwards and as a means to producing the pretty pictures management understands.

    2. Re:How about: flow charts [Re: How about] by funwithBSD · · Score: 2

      You are both right.

      There are many ways to tackle the problem. I am a "thought cloud" kind of guy, putting key elements on the drawing and then figuring out how they are interconnected as we move along.

      What starts out as seemingly unrelated issues tend to gather coherency.

      FWIW, I am an IT Architect, not a coder.

      --
      Never answer an anonymous letter. - Yogi Berra
    3. Re:How about: flow charts [Re: How about] by __aaclcg7560 · · Score: 1

      I would like to see taught in elementary schools is the art of drawing flow charts.

      When I took Introduction to Computers at college in the early 1990's, we had to do flowcharts for our DOS programs. I still have the flowchart template from that semester.

      When I went back to college to learn computer programming in the mid-2000's, flowcharts were no longer being used, and 3.5" floppies were already on their way out.

    4. Re:How about: flow charts [Re: How about] by Anonymous Coward · · Score: 0

      Depends on the schools curriculum. The college I went to in the 2000s had a class called "logic design" which was all about flowcharts and the book we were using for class was conveniently written by the professor. I didn't enjoy the class any, I already knew programming and had been programming since I was young. The class was full of students who had never touched a programming language and they were using this as a way to introduce them to programming with no accompanying programming language, all just done in flow charts. It seemed pretty clear the teacher was one of those cases of "those who can't, teach". I attempted to let them test me out of the class but they wouldn't let me. Guess because colleges these days are more about getting money than about actually caring about teaching. I had the same teacher for a Unix course (which they wouldn't let me test out of either, even though I had been using BSD/Linux for years, on top of using it on a daily basis at work). I ended up having to correct the teacher on multiple instances. Seemed clear the only time the teacher used *nix was while in class and even then he didn't know anything. Students would ask him simple questions and he'd say let me get back to you and you'd see him on google. I'm not faulting google use, I'm glad when people use it to try to learn something, but it just doesn't sit well with me when someone is teaching a subject they know nothing about.

    5. Re: How about: flow charts [Re: How about] by Anonymous Coward · · Score: 0

      What works best for me is pseudocode in a flowchart. Lines of code with boxes around them. Pure pseudocode is too verbose and you have to teach people a language that they can't actually code in, so it's best to reduce the keywords to a minimum by replacing them with graphic elements (lozenges, trapezoids).
      What is also very handy for explaining to non-coders is simple data flow, event/message flow and UML-like database diagrams. Show, don't tell. There should be a tool to animate these.

  40. This is a surprise? by Anonymous Coward · · Score: 0

    American schools teach _everything_ wrong. Why would coding be an exception?

    1. Re:This is a surprise? by thinkwaitfast · · Score: 1

      It's different this time.

  41. Hummm by Anonymous Coward · · Score: 1

    Let me preface this by saying that I taught 8th-10th grade programming for a couple years almost a decade ago. I was qualified to program, employed as a programmer, but not 'qualified' to teach on a full time bases. I was part of a program where they brought in real world people to teach a couple of skill classes for a semester. It was a nice 3-4 hour break in the middle of my day.

    I believe programming and other skills should be taught to young adults. Every kid in the US education system should have access to programming classes if they are smart enough to take them. However, it should not be mandatory, nor should we force it on most students.

    I just quickly glanced at the article and saw no mention of how old these kids are. Drag and drop programming is good for teaching logic skills to young kids. The same could be said with Chess, but drag and drop programming is a stepping stone into a career where as chess is not.

    The problem with teaching young kids (elementary school) and most (50-75%) older kids (Middle/Highschool) programming is actually the same. Lack of reading and math skills. Programming is a job of reading. In my classes we used Small Basic, which has a Logo like object called Turtle. Each functions of Turtle is shown on the side of the IDE with 2-3 sentence descriptions on what does what. Plus this information is printed and taped to the desk.

    If you lack a 5th grade reading level and can not understand that turnRight() turns the turtle 90 degrees to the right. Or that Speed is how fast the turtle goes and can be set between the values of 1 and 10. Where as 1 is the slowest and 10 is the fastest, here are examples: ... Then I'm sorry. You need to be in manual labor skill classes or have reading 6 class hours a day. Not programming.

    Which leads me to the next issue. This one effects even the smart kids. It's how we teach math.

    Leaving aside the kids who can't read, and the next level of kids who can't do algebra (which is pretty much a requirement for programming in a real language.) We have a major issue with how we teach 'smart' kids (by smart I mean B or better in algebra. The bar is set pretty low in education...) They learn to solve math problems. They're never taught how to create math problems to solve their problems. I've seen kids with A's in AP Calc get their minds blown by a simple loop which causes a Turtle to turn 1 degree every iteration... And don't get me started on writing a calculator or something.

    I know this coming off as a bit of an egotistical rant. So I'll cut to the point. 1) Teaching very young kids logic through drag and drop programming is not a bad thing. 2) Teaching every older kid programming is a bad thing. 3) With limited pool of intellectual resources to teach programming, only a small subset of qualified students should be allowed to learn programming at every school. 4) Many more students lacking basic reading and math skills. Easily 50% range in the school I was teaching. Instead of trying to teach them programming, lets teach them to read. 5) Some sort of basic formula generation chapter is needed in advance algebra classes instead of purely focusing on 'solving' math problems. This would probably be a better introduction to compsci instead of making a Turtle spin around in circles.

    1. Re: Hummm by Anonymous Coward · · Score: 0

      I think you're wrong about chess. We had chess clubs. They taught us to think. Appreciate puzzles. Challenges.

      From there it was an easy step into mod ding qbasic games, or whatever. How many posts so far have started with mod ding games ? Because we already liked games.

    2. Re:Hummm by 0100010001010011 · · Score: 1

      "Drag and Drop" programming is being used by engineers every day to write software for cars, planes, etc.

      It's called Simulink.

    3. Re: Hummm by Anonymous Coward · · Score: 0

      Didn't say chess was bad. I said chess teaches logic just like programming. However, unlike programming it is not a real world skill people pay to use. When was the last time you hired someone to play chess? After you learn to play chess and become good with it, what do you do next?

      Chess has benefits, it teaches logic and planning. But it's not a career. It's not a science. It's a game, just like football, basketball, soccer, etc. Yes, Chess Club is awesome. But you could never justify a full year, or even four years, of chess classes (during school hours) in a k-12 school. You could with programming, and still cover logic and planning.

    4. Re:Hummm by Anonymous Coward · · Score: 0

      Learn something new everyday. :)

      I write drivers so my life is pretty low. :(

    5. Re: Hummm by Anonymous Coward · · Score: 0

      Pity you didn't join the reading comprehension club, moron.

  42. 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.
    1. Re:its' about fun by PopeRatzo · · Score: 1, Funny

      edorphin release of grocking a new algorithm

      I'm pretty sure by high school they'll find other more engaging ways to get that endorphin release.

      --
      You are welcome on my lawn.
    2. Re:its' about fun by Archangel+Michael · · Score: 3, Funny

      Is that what you kids are calling it these days.

      Call GetOffMyLawn()

      --
      Agent K: A *person* is smart. People are dumb, stupid, panicky animals, and you know it.
  43. Wimp Lo by stealth_finger · · Score: 1

    This is Wimp Lo, we trained him wrong.....as a joke.

    --
    Wanna buy a shirt?
    https://www.redbubble.com/people/stealthfinger/shop?asc=u
  44. 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
  45. 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
  46. Frogger! by Anonymous Coward · · Score: 0

    Hey, you have to start somewhere. I'm by no means a programmer, but all of those "wrong" teaching methods (That game where you "programmed" a frog to do various tasks, Carnage Heart, etc) did give me at least a semblance of the process and some of the mindset needed to handle a little HTML and VB coding. Its like giving a child a picture book with a few simple phrases on each page, they're not going to be able to read Macbeth right they finish, but it will give them the skills to incrementally improve their understanding if that's where their career/hobby choices take them.

  47. Its not about "Learning to Code" by abelenky17 · · Score: 1

    The current "Learn to Code" movement is not (or at the very least, should not be) about turning everyone into a Professional Developer.

    Rather, I think it is an understanding that most of these students will pursue other professions, but will need to interact with developers.
    They'll need at least a passable understanding of what code is, what debugging is, what testing is, because they'll be associated with it to some degree.

    The goal is to end managers who believe that a "Debugger" is a program that fixes your bug for you.
    Or that "Testing" is "it seems to work, lets ship it!"

    Very few people will end up professional programmers, but everyone else needs to be somewhat familiar with code.
    (In the same way that very few people are mechanics, but everyone should have a vague concept of an engine, gas, oil, gears, etc)

    1. Re:Its not about "Learning to Code" by umghhh · · Score: 1

      Probably true and when one thinks that coding an app and an embedded application with high availability and robustness requirements is not exactly the same even if both were to be written in some version of java, then there one may realize that there is no chance in the world you can make a coder that can do all this within the given limitations. Hence this must be understood as just giving an idea, getting to know a bit and move along or for some dig into it.
      What the world urgently needs is not a wave of 'coders' but a systematic spread of analytical skills and ability to argue and recognize fallacy. This is aiming too high already I guess but what about trying to solve world's problems and try to see that democratic systems get less efficient with size. But that is OT here.

  48. Well, because it's not computer science by tkrotchko · · Score: 1

    "Building an app, for example, can't be done in a couple of hours, it "requires multi-dimensional learning contexts, pathways and projects."

    While this is complete gobbledygook, apparently nobody knows the difference between Computer Science and Software Engineering.

    You can study computer science and not be able to write a line of code.

    Conversely, you can be a software engineer, and know almost nothing of computer science.

    They are separate discipline. And it's not clear of the value of learning either for most student.

    --
    You were mistaken. Which is odd, since memory shouldn't be a problem for you
  49. traitor! by Anonymous Coward · · Score: 0

    What's "Idit" Harel's real name, eh? I'll bet he's one of them transsexuals! He's a misogynist bigot who thinks he can tell women who can make Elsa ice skate that they're not programmers! He just wants everything to be too technical because he thinks women shouldn't program computers!

  50. Concentration, Focus, Adaptation and Learning by justcauseisjustthat · · Score: 1

    We should be teaching kids the very basics such as focus and concentration through meditation, then add on the ability to adapt and learn. We continue to try and "skate to where the puck is, instead of to where it's going to be" (stealing a line). And in order to go to where it's going to be we need a highly adaptable society with the ability to quickly learn as they may have have 4-6 careers in their lives.

    Along with those very basic also teach reading, writing, math, logic, problem solving, art, music and phy ed, then as they get older use personality, aptitude and interest tests to develop more specific skills.

    In 10-15 years coding "may" be a niche job as AI rises.

    1. Re:Concentration, Focus, Adaptation and Learning by Anonymous Coward · · Score: 0

      We should be teaching kids the very basics such as focus and concentration through meditation, then add on the ability to adapt and learn. We continue to try and "skate to where the puck is, instead of to where it's going to be" (stealing a line). And in order to go to where it's going to be we need a highly adaptable society with the ability to quickly learn as they may have have 4-6 careers in their lives.

      Along with those very basic also teach reading, writing, math, logic, problem solving, art, music and phy ed, then as they get older use personality, aptitude and interest tests to develop more specific skills.

      In 10-15 years coding "may" be a niche job as AI rises.

      Coding is already a niche job. Modern programming languages have made "code slinging" unnecessary. The only problem is that it is difficult to find people who are up to the task of being more than a coder. Sometimes we comb through the coders to identify those who are talented and we put them through apprenticeship, but otherwise, maintaining a large staff of coding is bad practice since they are expensive and they produce bug-ridden code.

      Also what self-respecting AI is going to want to code for a living?

  51. American Schools Teaching Grammar All Wrong by Anonymous Coward · · Score: 0

    Evidently

  52. Cannot be taught right by gweihir · · Score: 1

    CS can be taught academically, in worse or better versions. Coding cannot really be taught at this time. We do not know how to do it. Like most advanced skills it needs about 10'000 hours of practice to become reasonably good at it, and most of that time people need to spend in self-directed study by themselves, practicing on a variety of projects, tools and languages. The "learn coding quick" bullshit-meme of today is really "learn some very restricted form of coding very badly" and it harms a lot more than it helps.

    --
    Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
    1. Re:Cannot be taught right by OrangeTide · · Score: 1

      Do you have any examples where it has been harmful in the long run to learn to use some overly simplistic tools, languages, etc?

      Like are there kids who never learned to ride a bicycle because they had training wheels? Is there a CS equivalent to that? I can't image there is one.

      --
      “Common sense is not so common.” — Voltaire
    2. Re:Cannot be taught right by gweihir · · Score: 1

      Do you have any examples where it has been harmful in the long run to learn to use some overly simplistic tools, languages, etc?

      Like are there kids who never learned to ride a bicycle because they had training wheels? Is there a CS equivalent to that? I can't image there is one.

      That is exactly the problem. With training-wheels, you still learn the real thing, and the wheels can eventually be removed for almost all people. The simplistic things being taught in "hour of code" and cretinized programs like that are more like keeping people in a baby-stroller as preparation to learn how to ride a bike. There is no way they will learn anything useful or anything about what the skill really is about that way. The harm comes from both people that select to go into this direction and ones that select to stay away because of a fundamentally wrong impression of what the field is about. You end up with a lot of people that after all do not want to be in this field when they see what is really about and others that would have been good and enjoyed it, but were turned away early.

      --
      Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
    3. Re:Cannot be taught right by OrangeTide · · Score: 1

      As a programmer for the last 25 years, I consider the majority of what I do to amount to editing a text file.

      --
      “Common sense is not so common.” — Voltaire
  53. She's right by TRRosen · · Score: 1

    They don't teach coding or computer science in k-12 schools. They teach scripting. The thing is you can't make coders. You have to be born one, or pretty close. Its not about language or syntax. Its about logic and breaking down complex systems into simple actions. You have to think that way or you will never be a decent coder.

  54. Article severely flawed... by Anonymous Coward · · Score: 0

    ...Elsa isn't a princess, she leveled up and became a queen.

  55. Re:American Schools Teaching Kids To Math All Wron by Anonymous Coward · · Score: 0

    Um, kids are expert at all those things. Notation, there's something they can't do, but theoretically understanding the concepts is a requisite for learning to walk or speak.

  56. Proper way to code & Language doesn't matter by OrangeTide · · Score: 2

    Teach kids how to use about 6-8 instructions for x86 assembly. Give them a template to start with to modify. Then have them build up simple sequences of the handful of instructions that they know to do something basic (like add up a list of numbers).
    My suggestion may seem boring, but it is rewarding to take something that was initially hard and at the end accomplish something that you are now an expert at doing. (expert in adding numbers in assembly language)

    Why assembly? The basics are very easy, it only gets hard if you want to do complex things. Honestly after you taught the kids those few instructions you can stop there and never mention assembler again.

    Repeat with a handful of operations for another language and a good template to start them off. Python, Ruby, JavaScript, etc I don't care. It could be Lisp or Pascal for all it really matters.

    Teaching concepts and trying new things is the whole point. It should never be about training children to be a professional in a particular industry. (which is why I don't think the language matters)

    --
    “Common sense is not so common.” — Voltaire
  57. Coding isn't the problem... by __aaclcg7560 · · Score: 1

    Most school districts will complain that they don't have enough money to buy supplies and/or reduce class sizes. But there's always money for building a new football. After my parents retired to Sacramento in the 1990's, my father drove me around the county and showed me all the new football fields that the schools were building. It was so shameful.

  58. Masterchef by Anonymous Coward · · Score: 0

    So you mean watching Masterchef won't turn me into a kitchen god?

    The whole point of these things is to get people into something, not to teach them everything there is about it...

  59. how I started.... by BlytheBowman · · Score: 1

    ...on a hand me down TI 99/4A connected to a portable black and white television set back in 1986 and looking through the big binder full of Basic examples and type copying/modifying the listings. Just sayin..

    1. Re:how I started.... by OrangeTide · · Score: 1

      The manual for TI Extended BASIC was my bible, and I carried it everywhere I went.

      --
      “Common sense is not so common.” — Voltaire
    2. Re:how I started.... by thinkwaitfast · · Score: 1
  60. I'm not seeing it by sirwired · · Score: 1

    Paraphrasing: "Because kids can't code an OS from scratch after playing around with a computer for an hour, we are teaching them 'all wrong'." Seriously?

    Yes, the general public frequently confuses the writing of code with Computer Science, but that does not mean that schools are doing anything "wrong" by starting out with some simple toyboxes for kids to play with.

  61. What is the objective? by davidwr · · Score: 1

    Is the objective "computer literacy on steroids" where people can cobble together toy programs and they can cobble together really useful programs from a small handful of "large blocks" in the same way you can "build" a PC from a motherboard (pick one of many), a power supply (pick one of many - but make sure it's beefy enough), a case (pick one of many - but make sure it's right for your motherboard and other parts), a keyboard (pick one of many), a mouse or trackball (pick one of many), etc.?

    If that's the objective, then "watered down" is the way to go.

    Is the objective to use programming as a way to teach people to think logically? Well, you'll get some of that with the watered-down approach, but it's not a substitute of 2 years of real computer-science/programming classes that force you to learn logic and teach you to make "deep" choices between various libraries that superficially do the same thing but under the hood have different efficiency- and other trade-offs. On the other hand, you don't *need* to take a computer-science approach to teach logical thinking. We've been teaching kids to think logically (with varying success) since way before the invention of the modern computer.

    Is the goal to make professional programmers out of the kids? Sorry, there's no substitute for doing it the hard way.

    --
    Knowledge is how to play a game, intelligence is how to win, wisdom is knowing what game to play.
  62. Don't Teach Watered-Down CS. Teach IT. by luis_a_espinal · · Score: 2

    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.

    In that case, don't teach watered down CS (whatever the fuck that means). Teach IT. You don't take some crap and call it watered down calculus when all you need to do is teaching the basics of math and, I dunno, understanding the differences between simple and compound interest, do you?

    It is understandable when the general population conflate CS with IT (in the same way they conflate Zoology with Botany.). It is not OK when people who should know better push such an invalid notion.

  63. American Schools Teaching the Wrong Shit by luis_a_espinal · · Score: 1

    American Schools Teaching Kids To Code All Wrong

    Am I the only one that thinks we should be teaching IT and business applications first and foremost. Teach a kid how to use excel (or whatever FOSS spreadsheet) of your choice to compute simple but real world problems with what-if analysis, or how to plot numbers and see how that changes when you change the variables.

    Show how much money you will get in 20 years if you change the interest rate on a referenced cell. Or how much money you need to spend in building a fence if you change the cost of lumber per yard, or the cost of delivery per unit. And so on and so on. Right there you will be teaching kinds important lessons on how to use software realistically.

    Teach a kid how to put a LEGO robot together. Or how to put a computer together, or go even further down into the basics with a focus on shop class.

    The future is not going to be dominated by software developers, but by integrators, machinists and service people for whom custom coding will be a secondary (important, but secondary) activity.

    The approach we are taking is like teaching plumbing apprentices casting and forging metallurgy to create their own plumbing before teaching them actual trade of plumbing.

  64. Checklist-based education by Tablizer · · Score: 1

    My kid is taking a programming class in high school. The curriculum is more geared to covering topic bullet points than in learning via experimentation.

    When I took BASIC in high school way back "then", we got to noodle around with fun graphics. I made a minimalist version of Space Invaders, for example.

    I learned the value of subroutines by seeing the mess made by not using them. That's far more concrete and direct learning than "you should use subroutines because the book says so".

    1. Re:Checklist-based education by K.+S.+Kyosuke · · Score: 1
      --
      Ezekiel 23:20
  65. The Stages of Education by drstevep · · Score: 1
    In a nutshell:

    1. Meet the tools

    2. Learn how to use the tools

    3. Learn how to answer questions

    4. Learn how to ask questions

    Roughly: High school, Bachelor's, Master's, Ph.D. Experience and the right work substitutes and moves you ahead, as well. In music, a nice correspondence is: play the recorder/violin in school, form a/play in a band, compose music for your band/in genre, write compositions that extend/break genres.

    It seems the author is bemoaning the existence of step 1 (and possibly parts of step 2). The author is jumping ahead quite a bit. The initial part of learning a field is learning the basic vocabulary of the field. The initial part of learning the JOY of a field is learning a field in the context of other things that bring you joy.

  66. Teach yourself coding by ChadSmith4920 · · Score: 1

    Sams Teach Yourself C++ in 24 Hours In just 24 lessons of one hour or less, you can learn the basics of programming with C++–one of the most popular and powerful programming languages ever created.

  67. Pascal is preparation for failure by Anonymous Coward · · Score: 0

    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.

    You were doing just fine with Python and PHP, but Pascal is soul sucking in a different way, perhaps more so. You teach kids to program in a language like Pascal saying here's the fundamentals--everything else is syntax. But when they try and do something in a different language, like Java, C#, or C++; they find themselves woefully unprepared to the nuances of those languages and discover that it isn't just syntax. Every language has it's quirks, paradigms and syntactic sugar so teaching students one language with the expectation that learning a different language will be much easier is just setting them up for failure.

  68. Re:American Schools Teaching Kids To Math All Wron by jszpilewski · · Score: 1

    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.

    Who are you quoting here? It sounds to me like a mad scientist. I remember from my elementary school days seeing kids able to calculate surface of a circle given its radius or get radius from diameter when asked for it but not able to use diameter to calculate the surface. Equally not seeing a difference between 22 and half horses on a farm and 22 and half horses per farm. My final point is that smart kids are expected to be able to find smart content on their own (like many games require some sort of exploration) and forcing the stuff through their throats may have the opposite effect. And of course during a software engineer career most of knowledge you have to acquire on your own time.

  69. I have two CS degrees and am not working at all. by Anonymous Coward · · Score: 0

    I have two CS degrees and am not working at all.

    At over age 50 I gave up looking. It's a dead-end career. should have been a lawyer or a nurse. Or just about anything else where you are considered employable after middle-age.

  70. Your misunderestimation of the complexity ... by Anonymous Coward · · Score: 0

    Your misunderestimation of the complexity of human beings and human interactions is so mind-numbingly staggering as to make your bloviating pointless.

    The kind of empirical studies and 'data' based conclusions you demand are impossible. We can barely do something similar in medicine. People are not chemicals or simple physical objects you can subject to formulas and natural laws and expect to get meaningful results.

    1. Re:Your misunderestimation of the complexity ... by MightyYar · · Score: 1

      Measuring the effectiveness of a new method of teaching is fairly straightforward compared to very complex scientific fields. I don't think you are being intellectually honest. If you make the claim that some new method is superior to the existing method, then partner with a large school system and test your thesis on a statistically significant subset of the student population. Even the most basic variables are not controlled for currently: they convert the whole school/school system all at once, they provide training to teachers for the new method but do not train re-train teachers on the existing method, etc. This is not rocket science.

      Furthermore, if you can't measure your method's improvement then it might as well not exist. It's a religion or a philosophy, and we shouldn't be throwing tax dollars at it.

      --
      W..w..W - Willy Waterloo washes Warren Wiggins who is washing Waldo Woo.
    2. Re:Your misunderestimation of the complexity ... by tibit · · Score: 1

      There are quite decent ways of testing all aspects of educational process if you're not dumb about the physiology of the brain. All too many people who deal with education have very little knowledge of neurophysiology and psychophysiology and are completely unequipped to test whether their techniques work, and to design their teaching methods to leverage the physiology of the brain.

      Although my list of peeves would probably fill several chapters, I'll focus on just one, to give an example. Letter/Number Blocks should be fucking nuked from orbit. It doesn't take a genius to understand that the spatial universalism that applies to objects doesn't fucking apply to letters and numbers. They are symbols, not objects, so if you give your kid letters or digits printed on the sides of cubes, they'll naturally learn the wrong thing: that an A is an A no matter which way it points. It is surprisingly hard to unlearn that if it's too deeply ingrained, and is a real obstacle in development of reading skills. Kids don't write mirrored/rotated letters due to God's will, but because they specifically apply the inapplicable object universalism from the 3D world they live in. And so, the label of "dyslexia" is so broad it's almost useless, this is not one disorder, but about a dozen very specific problems that must be diagnosed and counteracted individually; the all-encompassing label doesn't help with that. And so on...

      --
      A successful API design takes a mixture of software design and pedagogy.
  71. Have some pride by Anonymous Coward · · Score: 0

    So many comments, but no one seems to care. Programming is not "coding".

  72. American (public) schools teach everything wrong by Anonymous Coward · · Score: 0

    Federal Dept of Edu combinded with progressive control of most EDU departments has been an unmitigated disaster for America's youts.

  73. Terrible analogy by orgelspieler · · Score: 1

    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.

    Maybe not a terrible analogy, but perhaps the wrong conclusion being drawn from it. You can become an excellent musician even if you only ever play what somebody else has written. You can be a great actor by only ever memorizing the lines somebody else wrote for you. You can be a coder without ever becoming an architect. There are pairs like this all over society: soloist/composer, actor/writer, programmer/architect, fabricator/engineer. You don't necessarily have to be good at one to be good at the other. You can be good at both or bad at both, too. No correlation necessary.

  74. So it reflects the industry? by NetNed · · Score: 1

    Hell, over half the coding community doesn't code all that great but I don't think it's because of what they were taught in high school. A lot of times an artistic people can write cleaner, better functioning code than a person that has just done code all their lives.

  75. coding is not computer science by Anonymous Coward · · Score: 3, Informative

    Its probably true that more people should understand how programs work, but coding is not computer science.

  76. i disagree with this, and your parents... by Anonymous Coward · · Score: 0

    ...parents postings above yours. Hi, i am Anonymous Coward and youve seen me in such popular films as Hydrogen Bonb Suitcase Drmolition Service and Freeway Debris Cleanup and Blaze Orange Fassion.

    No. Seriously guys. Teaching computer codeing has more to do with understanding the jobs of a secretary and a filing cabinette and the remote control commands that commands that secretary. Conputer Science is statistical post-production library alienations that generate results of breaching original code library support to perform and receive offsite results. My point: every CS major is working outside of spec, trying to get access to hardware and subvert privilege to gain results. CS class does more to replace core libraries so they are taught offstandard biased classes lobbied by a hardware architecture company or software firm, suchas Intel vs AMD, IBM vs Apple vs Motorolla. The pillar of coding is actually anti-competitive propriary libs, and bit ordering is what was used to abbrogate CS from deviating from our original File Cabinette and Secretary standards. Who in Hell needs more than 640KB?

  77. does it matter? by Black+Parrot · · Score: 1

    by the time they graduate there won't be any programming jobs in the usa

    --
    Sheesh, evil *and* a jerk. -- Jade
  78. coding is easy! by Anonymous Coward · · Score: 0

    Already this morning I have built 3 fully functional apps for both iPhone and Android. It is so easy. LOL

  79. A degree? by Anonymous Coward · · Score: 0

    >there must be a distinction drawn between "coding tutorials" and learning "computer science."

    Don't you mean, getting a degree? There already is a distinction.

  80. WTF is this article suggesting? by TheSync · · Score: 1

    The only thing I can make out of this article is "We are doing a disservice to kids by assuming that they can't grasp industry-standard languages, complex computer science topics, and applications."

    Yet there is a whole generation of professional programmers who started with BASIC, which is not an industry-standard language (not now anyway), is a very limited subset of computer science, and frankly teaches some fairly bad programming practice.

    What I got out of BASIC was that programming can be enjoyable and fun. I have seen some people taught K&R C as their first language, and it appeared that had far less enjoyment and fun with memory allocation errors, etc.

    BTW "pop computing" isn't really new, remember the educational programming language Logo, designed in 1967 by Daniel G. Bobrow, Wally Feurzeig, Seymour Papert and Cynthia Solomon.

    1. Re:WTF is this article suggesting? by CronoCloud · · Score: 1

      BTW "pop computing" isn't really new, remember the educational programming language Logo,

      If you go do the "Hour of Code" thing using Elsa or whatever you will quickly discover that it is basically Drag n Drop Turtle Graphics.

  81. Okay by Ol+Olsoc · · Score: 1
    So let's make the little bastards use Malbolge, will that suit you Ms Harel?

    GIven that so many of us came up through the "Hello World" Basic route, it's a little difficult to imagine that making children do the less pleasant tasks or very hard ones is a good way to get more kids into coding.

    She might be form Israel, but she has a distinctly Calvinist outlook on things.

    --
    The shepherds did so well protecting the flock that the sheep no longer believed that wolves existed.
  82. How about diversity? by mi · · Score: 1

    How about we leaving the teaching to the teachers

    How about we let parents choose, how and where their children study?

    Whichever approach public schools take, it will be a single one — certainly so per state and, with the increasing power of the Federal Department of Education, for the entire nation.

    At best, it will be the right one for a majority of pupils, but even that's a lot to hope for. And, when the government makes a mistake (such as declaring "fat is evil"), it makes the same one for all of us.

    Slashdot used to be very cautious against monocultures — why are so many people here able to recognize its dangers in technology, but not in education, for example?

    --
    In Soviet Washington the swamp drains you.
  83. Re:I have two CS degrees and am not working at all by fluffernutter · · Score: 1

    I saw a guy pushing a broom in a hospital the other day and I found myself jealous of his job.

    --
    Laws are rules for the court, but merely a bottom bar to hit for life. Think beyond laws in your actions always.
  84. increase need for coders? by Anonymous Coward · · Score: 0

    I was just wondering what the heck that is?
    And what do they code?

  85. Idit is an Idiot by Anonymous Coward · · Score: 0

    Let me get this straight - Idit expects us to start kids out to be masterful programming composers??? Not everyone is geared to be a coder. Great coders won't always start by being gifted overnight maestros and magically crap out golden apps one day.

  86. 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.

    1. Re:Educational first, then engaging by swalve · · Score: 1

      Everything needs to have a payoff. We do our work because we enjoy it, or at least because it allows us to remain employed. Students have no such motivation. So, you make it fun for them to practice fundamentals. Rigor and difficulty do nothing but turn off the non-devoted students. I'd rather a dumb kid have fun with math and learn something, rather than the only other likely alternative, which is that he checks out and doesn't learn anything past second grade.

  87. Re:American Schools Teaching Kids To Math All Wron by jimbolauski · · Score: 1
    I was quoting the article but with my changes. Here is the original quote.

    We are doing a disservice to kids by assuming that they canâ(TM)t grasp industry-standard languages, complex computer science topics, and applications. 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
  88. Re:American Schools Teaching Kids To Math All Wron by Anonymous Coward · · Score: 0

    At the same time, kids can perfectly well have great fun kicking and throwing balls in the air, hitting hoops or scoring goals depending on the situation. All of this can of course be described by differential equations, calculus and linear and nonlinear optimization, but it's not necessary to play football :-)

  89. i do not get the complaint. by pezpunk · · Score: 1

    not everyone who picks up a guitar needs or wants to be a virtuoso. sometimes you just want to sing a ditty for your friends or charm your girlfriend.

    the more the merrier.

    --
    i could live a little longer in this prison
  90. I learned in America! by downright · · Score: 1

    I learned in America!

    10 PLINT "Yo Mama!"
    20 GOTO L
    30 DROP MIC

    Wheres my stock options bit!@#s

  91. Immersion works by dcavanaugh · · Score: 1

    Infants learn language by immersion -- listening to adults. At first, they have no comprehension. After a while, they understand a little. After a year, they understand quite a bit. Pretty soon, they start using the language. Learning by immersion works so well that the CIA uses it to train people in new languages.

    People improve their reading and writing by PRACTICING reading and writing. Coding works the same way. Immersion works well for beginners. They can start with simple algorithms; critical thinking and analysis can wait. Until they have a language to work with, they don't have a foundation to build on. People just have to remember that learning syntax is not the end of the journey, it's the beginning.

  92. Coding vs Programming by Anonymous Coward · · Score: 0

    This is absolutely correct, but the headline writer is a maroon (per Bugs Bunny). There is a huge difference between "coding" and "programming".

    "Coders" are a dime a dozen (and worth exactly that).

    "Programmers" are significantly more rare and good ones are worth their weight in gold and platinum.

    I cannot comprehend why anyone would aspire to be a coder. Being a garbageman pays far better.

  93. Re:American Schools Teaching Kids To Math All Wron by Anonymous Coward · · Score: 0

    Don't forget Deterministic Finite Automata. That class knocked my ass out of the computer science degree path I was on...

  94. Shop class by Anonymous Coward · · Score: 0

    It's no different than making a bird house in shop class. Can you build a skyscraper? No but you learn the basics and it lets you decide if you even like that kind of thing.

  95. Dijkstra and telescopes by Anonymous Coward · · Score: 0

    I think it was Edsgar Dijkstra who said that computer science has as much to do with computer hardware as astronomy has to do with telescopes.

  96. The problem is . . . by rpstrong · · Score: 1

    "You're coding it wrong."
        - Someone Famous

  97. Comment removed by account_deleted · · Score: 1

    Comment removed based on user account deletion

  98. Unfun Education can be Effective by Roger+W+Moore · · Score: 1

    Everything needs to have a payoff.

    The pay off is that you get a better job, can manage you finances more effectively and generally have a better chance at a good standard of living. Part of the education process needs to teach students that although summer jobs somewhere like McDonalds would be an effective, but not fun, way to do that. See you can learn something valuable even while not having fun! ;-)

    I'd rather a dumb kid have fun with math and learn something...

    That's a great ideal but the problem is that the smart kid who would like to learn more maths and science does not because of the song and dance required to entertain the less gifted kid (I assume you actually meant 'dum' and not that he had a disabling speech impediment). The problem with this is that the smart kids are the ones who grow up to be doctors, engineers, scientists etc and are the ones more likely to have amazing ideas and innovations which improve everyone's lives, including the less gifted kid's. They can result in better medical care or even provide nicer, better paid jobs.

    If you insist on treating them to a song and dance routine the smart kids are likely to end up being the ones who tune out and think school is a waste of time. So if you are going to have one lot tuning out of school the question is which one is the least damaging for society? I would argue that it is very clearly the smart kids which you need to teach and keep engaged. The less gifted kids are not likely to end up with jobs that need an education as much as the smart kids, well except for those who become politicians but that's a different discussion.

    It would certainly be beneficial for society to educate everyone as much as possible but that requires streaming and every time I suggest that there are a series of posts declaring how unfair it is....and yet people are still happy to allow streaming for school sports and not insist that the level of sports education is kept low enough that even the most sport-inept student finds it fun. So if streaming is bad lets at least apply it fairly everywhere and when the standards of professional sport teams starts to decline perhaps then we can have a sensible discussion about differing educational needs.