Slashdot Mirror


Should Everybody Learn To Code?

theodp writes "In July, the Association for Computing Machinery announced it was partnering with Code.org, with ACM contributing funding and its Director of Public Policy to Code.org in a push to 'ensure that every K-12 student in the US has the opportunity to study computer science.' Interestingly, joining others questioning the conventional Presidential wisdom that everybody-must-get-code is the Communications of the ACM, which asks in its February issue, Should Everybody Learn to Code? By the way, Code.org is bringing its Hour of Code show to the UK in March. The new National Curriculum for England that is to be taught in all primary and secondary schools beginning in September includes a new emphasis on Computer Science curricula, said to have been sparked by a speech given by Google Chairman Eric Schmidt in 2011."

250 of 387 comments (clear)

  1. Should Everybody Learn Calculus? by Anonymous Coward · · Score: 2, Insightful

    Sure, why not. They'll never use it anyway.

    1. Re:Should Everybody Learn Calculus? by jones_supa · · Score: 2

      All right, but let's expand that a bit. Should every engineer know calculus?

    2. Re:Should Everybody Learn Calculus? by Anonymous Coward · · Score: 1

      Let's just stick with architects, marine biologists and latex salesmen, m'kay?

    3. Re:Should Everybody Learn Calculus? by Anonymous Coward · · Score: 1

      I don't know about you, but I value my ability to unclog a toilet, fry a potato, and speak clearly. I wouldn't want to rely upon someone else to do these basic tasks for me.

    4. Re:Should Everybody Learn Calculus? by Anonymous Coward · · Score: 4, Insightful

      And therein lies the... I don't want to say problem, but I cannot think of a better word.

      When you see "learn to be a plumber", you think the simple stuff. Others may think more complex stuff, like soldering copper pipes, determining the correct angle of decline for waste pipes, repacking a shutoff valve, and other things that, not being a plumber myself, I do not have the knowledge to even consider as something a plumber would do.

      Likewise, when people see "learn to code", some will think simple things like.. I don't know, how to grep a directory of text files. But others will think things like how to write an OS.

      Or for the car analogy, it's the difference between knowing basic maintenance and being a full-blown mechanic.

    5. Re:Should Everybody Learn Calculus? by Ardyvee · · Score: 5, Insightful

      Thus, we should say basic knowledge or advanced knowledge (basic maintenance vs full-blown mechanic). Everyone would probably benefit from basic knowledge on a number of things in today's world/civilization. Not everyone will benefit from advanced knowledge.

      --
      I don't care if I'm wrong. I only care about everyone obtaining something from the discussion.
    6. Re:Should Everybody Learn Calculus? by plopez · · Score: 1

      I think of coding as doing a mathematical proof.

      --
      putting the 'B' in LGBTQ+
    7. Re: Should Everybody Learn Calculus? by AvitarX · · Score: 1

      I watch people waste lots of tune processing information all the time, I think, they should learn rudimentary programming to help (for example a batch file to convert file formats, nothing too fancy).

      There was a book every day programming that o think demonstrated why everybody should pretty well (the white collar workforce at least).

      I doubt people would have the initiative or the thinking to do it though, just as I watch people baffled by ratios and other basic math, in a field where resizing things to a size happens frequently.

      --
      Wow, sent an e-mail as suggested when clicking on "use classic" banner, and got a fast response that addressed my msg
    8. Re:Should Everybody Learn Calculus? by ultranova · · Score: 1, Insightful

      Everyone would probably benefit from basic knowledge on a number of things in today's world/civilization. Not everyone will benefit from advanced knowledge.

      The question is: is coding basic or advanced knowledge?

      I'd say it's quickly becoming basic knowledge. Information Age is just starting, and everything is getting automated - and programming is really just controlling automation. If you don't know it, you'll be more and more helpless as this age gets into gear.

      Everyone doesn't need to know C++ templates, but everyone needs to know how to throw together a quick script or mobile app, or will soon enough.

      --

      Forget magic. Any technology distinguishable from divine power is insufficiently advanced.

    9. Re:Should Everybody Learn Calculus? by BonThomme · · Score: 1

      many people are taught math

      few learn it

      fewer study it

    10. Re:Should Everybody Learn Calculus? by BonThomme · · Score: 1

      I think that's called being a parent

    11. Re:Should Everybody Learn Calculus? by jones_supa · · Score: 2, Insightful

      Draw the line between basic and advanced at compiled languages.

      Well, C is a basic compiled language and C++ is an advanced compiled language.

    12. Re:Should Everybody Learn Calculus? by Anonymous Coward · · Score: 4, Funny

      C has pointers. They're pointy and dangerous. Someone might get hit by a bus error.

    13. Re:Should Everybody Learn Calculus? by daem0n1x · · Score: 2, Informative

      Simple answer: NO

      Now, my own question: Should all stupid ideas taken out of someone's ass be published and re-published as often as this one???

    14. Re:Should Everybody Learn Calculus? by ShanghaiBill · · Score: 5, Interesting

      All right, but let's expand that a bit. Should every engineer know calculus?

      I was required to take four semesters of calculus in college. During my 30 year career in engineering, I have never, not once, used anything beyond the first semester. When anything else comes up (which is rare), I just look it up in a table of integrals, use a tool like Mathematica, or solve it numerically. The hard part is never "doing the math" but rather figuring out how to construct the mathematical model of physical reality in the first place. Math class doesn't help much there. Knowing how to to integrate an equation doesn't do much good if it is the wrong equation.

      On the other had, programming has been absolutely critical to everything I have done. I have probably spent 20,000 hours doing that. Yet in college, I was just taught how to invoke the Fortran compiler and given a photocopy of the basic syntax. Everything else was self-taught.

      At least for me, there was a vast difference between what I was taught, and the skills that were actually useful.

    15. Re:Should Everybody Learn Calculus? by s.petry · · Score: 4, Insightful

      All right, but let's expand that a bit. Should every engineer know calculus?

      Yes, every Engineer should know Calculus. This is different from what's in the subject "Re:Should Everybody Learn Calculus?".

      Now what someone could ask without such an extreme bias is "Should every student in high school learn what calculus is and what you can use it for?" to which the answer would be "yes".

      Learning "Calculus" requires a lot of precursory work which people in general don't in High School. A person could even ask "Should everyone learn the basics of Algebra, Geometry, and Trig to which that answer would also be "yes".

      I'm not saying you introduced the bias, the AC did.

      --

      -The wise argue that there are few absolutes, the fool argues that there are no probabilities.

    16. Re:Should Everybody Learn Calculus? by ArcadeMan · · Score: 1

      What do you mean latex salesmen? Are we talking about imports or exports?

    17. Re:Should Everybody Learn Calculus? by reikae · · Score: 2

      Could you elaborate on your future vision? In what situation would for example my future granddaughter need to whip up a mobile app?

    18. Re:Should Everybody Learn Calculus? by aaarrrgggh · · Score: 3, Insightful

      I have over the years as an electrical engineer used many brute-force solutions to solve what could have been done more elegantly with a different tool: often Excel becomes the Swiss Army knife.

      But, without being able to use a little shell scripting, Perl and PHP, there are problems that can't be easily solved. If I was any good at C or a more modern language I am sure other things could be options.

      Unfortunately, the opposite is also often true-- Visual Basic created a generation of internal office applications that should have been dealt with differently.

      I like to think the best thing computer programming education teaches people is when they should hire a programmer. I still remember a problem 18 years ago where tens of thousands of files had to be modified, and my boss' approach was just to bring in 20 temps after hours and do it manually for a couple months. Fortunately we were able to hire someone to automate it instead, but that approach wasn't available to him as he had no experience in that area.

    19. Re:Should Everybody Learn Calculus? by gtall · · Score: 1

      Sure, let's only teach kiddies what they'll actually use. So...how to implement this...how, how, how? I have it, we'll test them at 5 years old. That will tell us their aptitude for different stuff then we only need teach them that. What you say? Maybe their aptitude changes with time? Okay, we'll test them again at 10 and at 15. Each time, we'll only teach them what the tests indicate. Of course, if Johnny or Sally becomes interested in physical science at 16, then s/he will be SOL because we didn't teach them the math we were sure they weren't going to use. Oh, I see, we can then start teaching them at 17...except, those formative years for math and logic are critical, so I guess they are SOL anyhow.

      I see you were only taught what you'd use, that must be why you stopped your education at 5.

    20. Re:Should Everybody Learn Calculus? by ClaraBow · · Score: 2

      I agree, but it does teach logic, problem solving, and critical thinking. It will also teaches students to use a set of steps to solve a problem. Kids are not being taught a lot of these types of skills in school today. Most kids are taught Algebra and never use it -- but that's not the point. The underlying problem-sovling skills are what matters.

    21. Re:Should Everybody Learn Calculus? by ShanghaiBill · · Score: 4, Interesting

      "Should every student in high school learn what calculus is and what you can use it for?" to which the answer would be "yes".

      Well, I would say the answer is "no". But either way, that is an answer to the wrong question. The question is not "Should schools teach X?" but rather "What should we remove from the curriculum to make room for X?" There are a lot of things that could be taught, and saying "everything is important" is the same as saying that nothing is important. For instance, at my son's school the kids in grades 4-6 can type their assignments, instead of writing them out with pen or pencil. Several parents asked the school to provide a touch typing class so the kids learn to type correctly. The school said the schedule was full, so if typing was going in, then something had to go out. After some back and forth discussion, the school decided to dump cursive writing, and replace it with classes on touch typing. That seems like a big improvement to me, since most of these kids will never again in their life write a letter or paper with a pen, but will spend much of their lives in front of a kayboard.

    22. Re:Should Everybody Learn Calculus? by sdoca · · Score: 2

      I'd agree that a person that uses a computer often should learn to script, but not to code.

      Again, we're talking degrees of knowledge. My 78 year old mom uses a computer often, daily in fact. She checks email, plays Mahjong and Solitaire and surfs the web. I don't think it would be beneficial for her in any way to know how to script, let alone code. Think about all the people who use computers often/daily in their work, they're in the same situation.

    23. Re:Should Everybody Learn Calculus? by Anonymous Coward · · Score: 3, Insightful

      I think you're putting too large of a separation between the knowledge required to solve a calculus problem by hand, and the knowledge required to model a solution that requires calculus.

      From a practical standpoint, if you are solving engineering problems whose solutions end up using integral calculus, I'm not sure how you could avoid learning calculus. How could you model a solution for a problem in terms of something which you never learned? If I was never exposed to calculus the first time, I would have no concept of what an integral table was or how to use Mathematica/Maple/Matlab/etc. to find a solution. I'm also not sure how you would make it through upper division engineering courses that made heavy use of integral calculus.

      I agree that the lack of programming being taught to students in the sciences is a disservice to the students, but that's a separate issue entirely. Both programming and mathematics courses frequently become student filters, which makes them highly unpopular with students. In the case of engineering, it's easier to justify removing the hard programming courses from the curriculum given the vast amount of information that you need to learn. It's hard to remove the math without jeopardizing the content in the higher level engineering courses.

    24. Re:Should Everybody Learn Calculus? by sjames · · Score: 1

      I can't say I've ever needed to make an announcement on TV, but the other two skills have come in handy.

    25. Re:Should Everybody Learn Calculus? by elashish14 · · Score: 4, Insightful

      Being able to do calculus helps you think critically and serves as a basis for study in many other important fields. There's a pattern of reasoning skills that you develop when you read a book, learn a method, apply it to solve a problem, verify your answer, and return to the problem to identify and correct errors.

      Being able to solve the problem without having to look it up gives you an intuition for solving complex problems without having to resort to such means. If I tell you the derivative of a value is x^{-1}, you shouldn't need to look up that it varies logarithmically. And being able to solve the problem yourself is what gives you the faith in the solution being correct. You could always look up the wrong value from the table, or provide the wrong input to a compute engine (side rant: Mathematica syntax drives me bonkers). You should always have multiple ways of understanding and verifying your solutions because relying solely on existing tools to perform the work for you without understanding where they come from turns this process into a black box which you have to rely on purely out of faith; I would argue that this can be dangerous, especially for mission critical applications. For basic calculus, linear algebra and differential equations, which every college engineer is expected to understand, I don't think this is an unreasonable requirement.

      Even while you yourself may have not been in a situation where you needed to understand these concepts, there are many fields in which being able to manipulate these equations is important: particle advection, comupter graphics and animation engines (manipulating ODEs and PDEs, linear algebra), or scientific and numerical computing and modeling (pretty much anything field of math). So I would say, if I were developing a comprehensive computer science program, I absolutely would have to include this in my curriculum, otherwise I would be shutting our students out of these fields. And if you're a mechanical, electrical, chemical, etc. engineer (or you're any other kind of engineer having to work with them), you need to understand these concepts to have faith in your results.

      The purpose of your college program was not to cater its curriculum directly to you, but to give all the students enrolled a broad set of skills that they could apply in situations that might arise. And understand that your program can only expose you to the skills that you should learn, but it's up to you to find a practical use for them.

      --
      I have left slashdot and am now on Soylent News. FUCK YOU DICE.
    26. Re:Should Everybody Learn Calculus? by narcc · · Score: 1

      a person that uses a computer often should learn to script, but not to code

      WTF is that supposed to mean? You might as well say "a person that uses a computer often should learn to code, but not to program". These terms all mean the exact same thing. There is no distinction between them.

    27. Re:Should Everybody Learn Calculus? by Zontar+The+Mindless · · Score: 1

      What keyboard? I am writing this post by tracing the Ietters on my tablet screen.

      Hey, this handwriting recognition stuff works pretty well these days.

      --
      Il n'y a pas de Planet B.
    28. Re:Should Everybody Learn Calculus? by jader3rd · · Score: 1

      The question is not "Should schools teach X?" but rather "What should we remove from the curriculum to make room for X?"

      Pre-algebra. Whatever gets taught in the first year of math where math uses letters in addition to numbers, can be taught with some simple programs/scripts. So not only will students learn the concepts necessary for the math they'll be getting taught later anyway, there will be less of students claiming that they've never been asked to solve for X. They'll programming and math at the same time!

    29. Re:Should Everybody Learn Calculus? by ShoulderOfOrion · · Score: 1

      Agreed. However, the fundamental problem with most university math departments is that the course work required for engineering is taught by math professors. I remember being taught in my higher level math courses subjects such as formal proof, esoteric derivations, and other arcane minutia that was pertinent to those who wanted to be math majors but totally useless for us engineering majors. Most of what an engineer needs on the job could be easily handled by two semesters of 'Engineering Math' (Calculus I) and 'Advanced Engineering Math' (ODE, matrices).

    30. Re:Should Everybody Learn Calculus? by allaunjsiIverfox2 · · Score: 2

      What they're taught is not math at all.

    31. Re:Should Everybody Learn Calculus? by allaunjsiIverfox2 · · Score: 1

      She wouldn't.

    32. Re:Should Everybody Learn Calculus? by kko · · Score: 1

      So hold on. You would like to see trig replaced by statistics. But recognize calculus as important.

      Allow me to ask how you will do Calculus without reliance on trig. And I do apologize for asking this very dumb question. I am but a mere math major and thus don't know things.

      --
      No, seriously, I just come here for the articles.
    33. Re:Should Everybody Learn Calculus? by Anonymous Coward · · Score: 2, Interesting

      Most states are making CS count as a *choice* among mathematics or science courses. Many states' curricula now require 4 years of mathematics or science. Here's a more relevant question: What's more useful to more people: to take Calculus as a senior in high school, or taking AP CS?

    34. Re:Should Everybody Learn Calculus? by rtb61 · · Score: 1

      Should everyone learn to code, sure, now pick a language. That is the real problem a lack of a universal learning language. Obviously first up it has to be free and open source or it will fail, just as a copyrighted language would fail. Imagine paying a licence fee to speak. So the big challenge is to pick a universal coding language. So far Ruby https://www.ruby-lang.org/en/ seems to be doing a slow but sure climb to the top.

      --
      Chaos - everything, everywhere, everywhen
    35. Re:Should Everybody Learn Calculus? by fractoid · · Score: 1

      When you see "learn to be a plumber", you think the simple stuff. Others may think more complex stuff, like soldering copper pipes, determining the correct angle of decline for waste pipes, repacking a shutoff valve, and other things that, not being a plumber myself, I do not have the knowledge to even consider as something a plumber would do.

      Exactly. But imagine if we all took a semester of "basic plumbing" in high school, and it introduced just a smattering of all of these different tasks, with enough info to at least let us know how much we *don't* know about plumbing. Regardless of how much we used that knowledge in future, we'd at least have a basic appreciation for the depth and breadth of plumbing as a profession.

      I think "teaching everyone to code" would be pointless in terms of everyone acquiring basic programming ability. It's just not something that most people are mentally equipped to do with any degree of fluency. But I think it would be an excellent idea for high school to include a programming course, for two reasons: First, that then the students with an undiscovered aptitude for programming would be able to start learning earlier, and so be able to make more use of their gift. And second, so that the majority of people have enough of an idea what "being good at computer" actually means, and so come away with an appreciation of just exactly how complex software development really IS. I think this would help a lot with the situation where non-technical types (whether clients, managers, shareholders, whatever) know so little about the domain that they just assume it's trivial.

      --
      Rampant carbon sequestration destroyed the Dinosaurs' tropical paradise. I'm here to help repair the damage.
    36. Re:Should Everybody Learn Calculus? by Adam+Jorgensen · · Score: 1

      What an arbitrary distinction. The assumption that because a language is not compiled it is "simple" is stupid.

    37. Re:Should Everybody Learn Calculus? by malvcr · · Score: 1

      This is not true.

      Both have advanced compilers, just that they are based on different principles.

      You can create very complex things with C. An example are the UNIX like operating systems.

    38. Re:Should Everybody Learn Calculus? by malvcr · · Score: 2

      Calculus is important in the sense that Mathematics is the language of science.

      And our computers are based on mathematics. Of course, you can create software without mathematical background, but when you do it with a careful design based on well stablished mathematical principles ... oh, what a difference!!

      The modern Patterns based programming is ... a mathematical model. The object oriented programming follows rules that are crafted according with mathematical practice. How the cycles and conditions work inside the software flow describe mathematical considerations, and it is possible to anticipate how your software will behave using mathematical theory to save you a lot of time and "money".

      The problem is not to learn "Calculus". The problem is to learn when to "apply" Calculus. As an example, I have many years learning english (spanish is my native language) ... my writing is not perfect, but I am improving it every day ... but as I don't use Mandarin for daily communications, my low Mandarin knowledge is rusted and disappearing. But this doesn't mean that to learn Mandarin is not important, talking fluent Mandarin could open me many doors that today are closed.

    39. Re:Should Everybody Learn Calculus? by jones_supa · · Score: 1

      That is true. But the feature set of C++ is explosivelingly more complex than of C's, that's what I meant. For example, one person can know essentially the whole language of C down to every nook and cranny. But one person cannot master the whole language of C++ to every minute detail. I'm not commenting on which one is better and which one is suitable for this or that task. Right tool for the right job.

    40. Re:Should Everybody Learn Calculus? by jones_supa · · Score: 1

      Well, it is a clusterfuck. But the situation can be alleviated by just taking the features you need. For example, only classes, if you want to.

    41. Re:Should Everybody Learn Calculus? by voidphoenix · · Score: 1

      Javascript. Pretty much everybody has a browser, though I'd love to have a non-browser JS interpreter I could write shell scripts in...

    42. Re: Should Everybody Learn Calculus? by leslie.satenstein · · Score: 1

      Are you saying that you can get the bachelor of computer science without knowing grade 12 mathematics? Shouldn't most of the analysts and programmers be classified as a trades person? Without the math and with just some hardware, networking, and programming, I could never hire that level of employee for other than simple algorithmetic development.

    43. Re: Should Everybody Learn Calculus? by leslie.satenstein · · Score: 2

      Quoting you, the knowledge of calculus allowed you to recognize that you needed a standard integral, were able to look it up and apply it to solve your problem.

    44. Re:Should Everybody Learn Calculus? by Hognoxious · · Score: 1

      If I was never exposed to calculus the first time, I would have no concept of what an integral table was or how to use Mathematica/Maple/Matlab/etc. to find a solution.

      You don't need an integral. You need to find the area under a curve. The trapezoidal rule, which is just one of many approximation methods, is pure geometry.

      --
      Confucius say, "Find worm in apple - bad. Find half a worm - worse."
    45. Re:Should Everybody Learn Calculus? by Hognoxious · · Score: 1

      Calculus doesn't use any number base; it's all variables. Programming languages aren't like number bases, they actually work in different ways.

      Your analogy is retarded.

      --
      Confucius say, "Find worm in apple - bad. Find half a worm - worse."
    46. Re:Should Everybody Learn Calculus? by Macgrrl · · Score: 1

      Everybody should learn the basics in how to cook a meal from scratch and basic nutrition.

      There is no reason for everyone to know how to code, anymore than everyone should know how to rebuild an engine or insert an IV line - they are core skills of specific professions. Core life skills like how to feed yourself, change a light bulb or tap washer and how the contraception/safe sex works, how to balance your cheque book (or the modern equivalent of paying your credit card) are far more important.

      --
      Sara
      Designer, Gamer, Macgrrl in an XP World
    47. Re:Should Everybody Learn Calculus? by Macgrrl · · Score: 1

      As someone who studied architecture at University, I can say that it is a great degree to get an all-rounded education. It includes history, law, fine arts, finance, engineering (structural and mechanical), materials science, theory of design, project management, presentation techniques and customer service. It pushed me to develop critical thinking and analytical skills while at the same time explore more creative aesthetic based design decisions.

      --
      Sara
      Designer, Gamer, Macgrrl in an XP World
    48. Re:Should Everybody Learn Calculus? by Macgrrl · · Score: 1

      Everyone doesn't need to know C++ templates, but everyone needs to know how to throw together a quick script or mobile app, or will soon enough.

      I doubt we will ever get to the point where 'everyone' needs to know how to throw together a mobile app. What benefit is there to a NFL linebacker in knowing how to program an app? If he needs one, the team will have someone put one together for him UNLESS he decides for himself that it's something he wants to pursue as an interest and does it in his spare time for his own benefit.

      Just because the majority of people on Slashdot live in a world where IT is a highly valued profession/skillset does not mean it's even closely related to what most people do for a living. Half the people I work with couldn't put together a basic function in Excel let alone basic scripting, and there is no reason for them to ever learn - that's why we build templates for them if they have repeatable tasks requiring functions.

      --
      Sara
      Designer, Gamer, Macgrrl in an XP World
    49. Re: Should Everybody Learn Calculus? by romons · · Score: 2

      As a math and CS major (circa 1983), I can verify what you say. Math classes were designed for learning the rigorous definitions and proofs. They weren't designed to help CS or science majors. On the other hand, neither were the CS courses. They were concerned with analysis of the order of algorithms. There were a few lab classes, but the main thrust was theory, to get ready for graduate school. My first job was a huge shock, since I was prepared for the wrong job. Classes in debugging would have served me better than analysis of sort algorithms, which was interesting but useless.

      --
      Go to Heaven for the climate, Hell for the company -- Mark Twain
    50. Re:Should Everybody Learn Calculus? by malvcr · · Score: 1

      I use C++ every day and I understand you ... but in that case maybe what could be said is that C++ is bigger and, in that sense, more difficult to master.

      In fact, you can do exactly the same you do with C++ with C, even object oriented programming. But ... and this is where things turn out, C becomes more complex tha C++ because you need to figure how to do the things with less language constructors.

      At the end, returning to the original posting about education, what people needs to know is how to use effectively their computer and programming is a good way to have the maximum of such devices. What I don't see is everybody using C or C++ as daily basis because "both" are hard to use well. What the people need is to understand the concepts well and then, to use some language that permits them to have a flexible life with their devices without committing programming sins that later will take their eyes our of their orbits.

    51. Re: Should Everybody Learn Calculus? by elashish14 · · Score: 1

      I'm curious as to whether you were studying CS in a large, public engineering university, or a small liberal arts-type school (or somewhere in between). No doubt, there are lots of programs which cater solely to the theoretical side of work. I attended an engineering school where the math was certainly theoretical, but you could still see the potential for applications of the calculus program in fields like fluid dynamics, or thermodynamics, and the like.

      But CS 101 was the reason I strayed far clear of computer science. I would have never appreciated what it means to be a good computer engineer with the way sorting algorithms and data structures were introduced. Concepts were never really taught from a 'how is this useful to me?' perspective. I can't really describe it better than that. I became a programmer/computer engineer later when my interest in the field developed as a result of real world applications and uses (like understanding how Python or the internet works). I figured that this might happen, hence why I felt comfortable forgoing the study in school ;-)

      That said, there are still great computer engineering programs at large universities where the focus is on engineering and software development as opposed to the pure, theoretical science of software engineering (think Master's of Engineering programs, as opposed to Master's of Science). They dip into some concepts as well such as agile development and systems engineering (which are silly in my opinion) but nevertheless good to know, and helpful in the world of industrial software engineering.

      --
      I have left slashdot and am now on Soylent News. FUCK YOU DICE.
  2. Should Everybody Learn To Code? by Anonymous Coward · · Score: 5, Insightful

    No.

    ensure that every K-12 student in the US has the opportunity to study computer science

    Yes.

    1. Re:Should Everybody Learn To Code? by ebno-10db · · Score: 1

      +5

    2. Re:Should Everybody Learn To Code? by Boronx · · Score: 1

      Mod parent up.

    3. Re:Should Everybody Learn To Code? by Registered+Coward+v2 · · Score: 1

      No.

      ensure that every K-12 student in the US has the opportunity to study computer science

      Yes.

      As well as art, music, history, a foreign language, literature, pays ed, etc. It's called getting a well rounded education.

      --
      I'm a consultant - I convert gibberish into cash-flow.
  3. Reading comprehension first by buchner.johannes · · Score: 4, Insightful

    (1) Reading comprehension
    (2) Household economics
    then Coding.
    Everyone thinks that their profession is the most important in the world. But making everyone a programmer is not the most important task.

    --
    NB: The message above might reflect my opinion right now, but not necessarily tomorrow or next year.
    1. Re:Reading comprehension first by Anonymous Coward · · Score: 1

      Perhaps they like spending weeks doing nice non-mentally-taxing busywork, goofing off, chatting with their coworkers, padding out the time it takes to do undemanding tasks, and getting paid for it. And perhaps they're trying their hardest not to let you find out about it because you'll ruin it all, and they'll be given more work to do instead.

      One of the first unwritten rules of work in the real world, is don't "help" someone unless they ask for it.

    2. Re:Reading comprehension first by eulernet · · Score: 1

      Coding is knowledge, but there are more useful knowledge than learning to code.
      For example, psychology's or negotiation's skills, which will always be useful anywhere.

    3. Re:Reading comprehension first by DoofusOfDeath · · Score: 3, Insightful

      (1) Reading comprehension
      (2) Household economics
      then Coding.
      Everyone thinks that their profession is the most important in the world. But making everyone a programmer is not the most important task.

      This, a million times over. I'm a good computer scientist, but I haven't been careful or thoughtful about household economics. I suspect that if I'd had some instruction in these matters, I would have been more disciplined. Now I find myself only being able to consider jobs which are high-paying, because I've financially boxed myself into a corner. This limits where I can live, on which projects/products I can work, and how much time I can have with my family. It turns out that spending one's mental energy only on computer science isn't always a winning strategy.

      If you're at the beginning or your career or still in college/high school, I implore you to find the knowledge and discipline to create a budget and to live within it. Even though your salary can rise quickly as you gain work experience in software development, it will never outpace your ability to over-spend it.

    4. Re:Reading comprehension first by Bing+Tsher+E · · Score: 1

      (1) Reading comprehension
      (2) Household economics
      then Coding.
      Everyone thinks that their profession is the most important in the world. But making everyone a programmer is not the most important task.

      Perhaps some of the most conceited people think their job (programming) is an important task that only they and a select few can do.

      If everybody knew a little bit of programming, maybe many, many fewer specialists whose sole purpose is to 'write code' would be needed.

    5. Re:Reading comprehension first by BonThomme · · Score: 1

      I don't think you've learned them.

    6. Re:Reading comprehension first by Belial6 · · Score: 1

      Agreed, but I would make it:

      (1) Reading Comprehension
      (2) Arithmetic (Yes, specifically arithmetic. Not the wider subject of math.)
      (3) Household economics
      then coding

    7. Re:Reading comprehension first by CurunirAran · · Score: 1

      I'm entirely fine with that. Trying to commoditize coding is not the way forward. "Everyone can Code", "Coding is easy", etc are all stupid statements being generated by companies so that they can get cheap sources of mass labour.

      I don't see doctors or lawyers playing down the difficulty of their profession in any way. Why should the software industry do the same?

    8. Re:Reading comprehension first by coldsalmon · · Score: 1

      Assuming that most people who comment on Slashdot articles know how to code, it does not follow empirically that learning to code in itself makes a person more logical or intelligent.

  4. Yes by eyepeepackets · · Score: 2

    Yes. but then I think everyone should learn the basics of critical thinking. Fundamentals of programming isn't that different from algebra and geometry, so junior high-schoolers should get a dose. If nothing else, they'll learn that programming isn't rocket science: It's a flexible tool which can be used to do rocket science and make Caturday-related goofiness.

    --
    Everything in the Universe sucks: It's the law!
    1. Re:Yes by jones_supa · · Score: 1

      Yes. but then I think everyone should learn the basics of critical thinking.

      Especially the capability of viewing the issue realistically from a completely opposite perspective is a skill that should be refined. Dialectics, I believe that is called.

    2. Re:Yes by ebno-10db · · Score: 1

      Fundamentals of programming isn't that different from algebra and geometry

      Yes it is. Algebra and geometry are fundamental and foundational subjects that also have endless applications. Computer programming is simply a skill that is useful to some people. There is also some theory associated with it, sometimes inaccurately called computer science, but better called software engineering. But that's not so fundamental that it's particularly useful to non-programmers. To the extent that some people argue it is, what they're really talking about is the math that it's based on, like graph theory.

    3. Re:Yes by Bengie · · Score: 1

      Programming is the application of knowledge and encompasses all sciences. In order to program, you must be able to look at a problem, understand it, and break it down into its atomic pieces, the same type of thinking that must be done for all problems in any system.

    4. Re:Yes by Alain+Williams · · Score: 1

      The key word in your comment is basics. So: yes everyone should learn how to write a few simple programs, I do not expect everyone to be a kernel hacker. They will forget the details but what will remain is the rough idea of loops, conditionals, variables, types (numbers & strings is good enough), .... The long term value is that computing devices will be understood to not be magical devices but dumb machines that follow simple rules (== programs) and do so very quickly.

      How to operate and use a computer is a separate skill, one this is very badly taught today. This involves ideas like: menu systems, file types (PDF, Image, word processing document, ...), file size (something that most people do not seem to have a clue), how to write an email, ...

      In our age programming is a basic concept in in much the same way as is: geography, physics, history, chemistry, art, ... I expect everyone to master the basic skills of the 3 Rs: Reading, wRiting, aRithmetic.

      Oh, by everyone I mean 95%+. I accept that some will never get it just as some never learn to read or to add up.

    5. Re:Yes by rk · · Score: 1

      You've just identified the real skill involved in programming computers. How many of us here can write passable programs in languages we don't really know that well, or just learned? I going to guess a lot of us. The coding is the easy part. Understanding the problem and being able to break it down is where it gets tough. COBOL was designed from the beginning to be readable by anyone with basic English literacy, but that doesn't mean anyone can build systems with it. Seems to me we keep having to relearn this lesson.

    6. Re:Yes by Hognoxious · · Score: 1

      Programming is the application of knowledge and encompasses all sciences

      Really? Which part of sed is biology? Where's the chemistry in C++?

      --
      Confucius say, "Find worm in apple - bad. Find half a worm - worse."
  5. Re:Certainly by Anonymous Coward · · Score: 2

    At the very least, everyone needs to understand that their phones don't run on magic. And maybe fewer people would look for source code by opening an exe in Notepad.

  6. Re:clickbait by Joce640k · · Score: 4, Insightful

    Correct. We should start with learning to read/write before we move on to the advanced stuff.

    --
    No sig today...
  7. Depends on what you define as "learned" by GrumpySteen · · Score: 3, Informative

    Kids need to be exposed to a wide range of subjects (including programming) that they may later choose to pursue. They don't need to be taught to be experts in every subject, but they do need the basic understanding that will allow them to start learning on their own and to know whether it's something that would interest them or not. That basic understanding will help them make good choices about what classes they take, what they major in, etc.

  8. LOGO isn't all that hard by dbIII · · Score: 2

    LOGO isn't all that hard and gives people enough insight into how computers work to cure them of some idea that it's all spooky magic done by scary people.

    1. Re:LOGO isn't all that hard by Anonymous Coward · · Score: 1

      spooky magic done by scary people.

      Oh no, it's not spooky magic. It's just unimportant work done by porn-surfing losers. If they try to leave the basement, lynch the nerds for being uppity.

  9. Re:Certainly by BrokenSoldier · · Score: 2

    THIS. I learned VB.net, C++, C# and a little bit of Python in my Mgt Info Systems courseload as electives because it wasn't offered as required at the time (2008) I have checked back and it is, now. I may not 'be' a coder, but in my current position knowing the basics of it helps me describe bug errors in our software testing to the people that can fix it in a manner that they understand better than "I clicked this button in the web app and it didnt' work....". I talk to my kids freely about my job and my 14 yr old son has an interest in Legos and game level design, and I stress the importance of knowing how to program, along with math, art, and basic graphic design elements so that he has some idea of what goes into making a program and interface work, rather than thinking its all magic smoke. I feel that knowing the use of basic Windows applications like Office, Excel, knowing a bit about Macros, and for g*ds sake knowing how to type are almost essential for most any entry level job now. Many of the managers older than me by about 10 years that I know (im 37) wouldnt be able to re-interview for my job as a mid level support tech with their demonstrated lack of knowledge of basic computing.

    --
    If it's not broken, let's fix it till it is.
  10. I get why it's so valuable, but forcing it.. by Anonymous Coward · · Score: 4, Interesting

    I'm torn on this issue as someone who works in a sales org but has learned how to code/is in a continual process of getting better at it.

    On the positive side of things, it's absolutely amazing how much time can be saved by extremely trivial code. For example, I had a client who needed to check something like 800 URL's for a given result on their page. They were chunking out ranges of the URLs to give to a team of people to do the task before we told them to put down the crack pipe and give us 10 minutes. A quick Python script looking for said element on each URL in the list dealt with that task nicely.

    On the negative side-- the one thing learning code has taught me is that I'll never be that good at it. I had to bash my brains out on a table for many, many weeks, just to understand basic concepts like lists and arrays, and am only NOW really grasping the concepts of classes/why I should care. My code is sloppy, works well only really when run by me, and my ability to read other code/make modifications is limited to say the least. I stuck with learning code ONLY because I truly enjoyed it, and even then, after about 6-7 years of working at it, remain pretty mediocre.

    In short, I'll never be a very good coder. I had to work INSANELY hard to get as good as I am, and I only did so because I genuinely love coding (even if I'll never be a savant with it). Trying to force people to go through that sounds like bad news bears, and I just can't see it working on any level. On the other hand, I get the appeal, because really everyone benefits. I get along great with our engineers because I can genuinely speak with them at a level that is more attuned to what they are thinking, and I can legitimately translate between the two orgs better than they could without me. It should be noted that we also have some rare engineers who can cross over to our world and love them for it.

    So in short, I get why people want this to happen. Forcing it however is a recipe for disaster.

    1. Re:I get why it's so valuable, but forcing it.. by turbidostato · · Score: 1

      "I had to bash my brains out on a table for many, many weeks, just to understand basic concepts like lists and arrays"

      And that's exacly why programing could be a very nice *tool* to develop youngsters' brains.

      You see, "lists" and "arrays" are words from common language because lists and arrays in programing are exactly that: lists and arrays.

      That you had problem understanding that, means that in fact you have problems with such common concepts.

      It's a pitty, but if you have problems grasping basic concepts like iterations (go once and again onto something till you get to your intended result), functions (decompose big tasks into shorter ones), boolean algebra (when a composed assertion is either true or false), etc. what it means is that you are not properly prepared to understand the world around you and your education has made of you a gullible person easier to fool than it should be.

      On the other hand, of course you are better at programing the more you practice and the more fitted your natural abilities are for the task. I'll take your assertion that you work for a sales org as if you are a salesman. Do you think being a salesman is an easy task? Do you think you are not a better salesman a decade into the trade than the day you started?

    2. Re:I get why it's so valuable, but forcing it.. by Bengie · · Score: 1

      Hats off to you, sales person. The only sales people I've worked with have absolutely no understanding of programming. Need a feature added? Sure, our programmers can magically add that and have it ready by tomorrow.

    3. Re:I get why it's so valuable, but forcing it.. by Anonymous Coward · · Score: 2, Insightful

      FYI I'm the OP.

      "You see, "lists" and "arrays" are words from common language because lists and arrays in programing are exactly that: lists and arrays."

      Did this make sense to you when you wrote it? Read it again.

      I realize that lists and arrays make perfect sense to you (and they do to me now too), but in the beginning when I was reading books on how to do all of this stuff, it was NOT intuitive to me. I would propose that it is only intuitive to a small subset of the population.

      " what it means is that you are not properly prepared to understand the world around you and your education has made of you a gullible person easier to fool than it should be."

      You are going to need to provide more evidence of this than you have. I understand all of those concepts NOW-- I do not think they have aided my critical thinking in other areas all that much. I would also argue that you are terrible at making your case, because you basically state your conclusion, then use it as a premise to back up your argument.

      "Do you think being a salesman is an easy task? "

      I was a "nerd" growing up, and am somewhat of a hybrid sales person/tech guy. I used to dismiss sales, but actually your response to me is indicative of why orgs like mine need sales people. You come off brash and insensitive, without even meaning to. You instantly put people on the defensive and even if you're technically correct (which you've also failed to demonstrate it), you lose your chance to demonstrate that with your tone.

      So we're clear you're pretty common in that regard. It's a common trait among engineers/the technically minded.

    4. Re:I get why it's so valuable, but forcing it.. by Bengie · · Score: 1

      I bet the sales person would kick your ass at selling stuff. I'm great at programming, but I don't do around judging people based on how well they can program, just that they're good at something and they probably do that something better than me.

    5. Re:I get why it's so valuable, but forcing it.. by zippthorne · · Score: 1

      In your example, it actually sounds like it would have been beneficial for your client to have had just enough training to know that it was possible to automate that repetitive task. Something that would have made you the first to go to to check whether it was practical then to do the work.

      I see this pretty much every day, too. People will spend hours doing some task on a computer over and over again and it never occurs to them that a computer is a machine designed to automate repetitive tasks.

      --
      Can you be Even More Awesome?!
    6. Re:I get why it's so valuable, but forcing it.. by sjames · · Score: 1

      At a younger age it might have been easier to grasp the concepts (less to unlearn). I do think there's a lot of value to everyone being exposed to the basics of scripting at least. However, I agree that it shouldn't be one of those do or die courses. Instead it should be one of the classes graded more on effort than on results. Some people just don't seem to have whatever quirk of thinking it is that makes programming obvious and natural to others.

    7. Re:I get why it's so valuable, but forcing it.. by brantondaveperson · · Score: 1

      I would propose that it is only intuitive to a small subset of the population.

      I would agree here. The common concept of a 'list', be it shopping or todo, is actually closer to the concept of something like a 'bag' - the strange a rarely-implemented datatype from the equally strange and rarely used formal-logic-vs-programming language 'Z'. A list is generally in no particular order, although one might order one's shopping list in the order in which one expects the items therein to be encountered in the supermarket. And a list may contain duplicate items, but usually only in the sense that I wish to purchase five loaves of bread.

      Similarly there isn't really anything in common usage that would convey the particular semantics of an 'array'. That is, an array is ordered, may contain duplicate elements, is no more expensive to search through than a list (cache-misses notwithstanding), but is more expensive to remove items from. These are advanced concepts, but any understanding of 'lists' and 'arrays' is incomplete without them.

  11. No, but... by Pav · · Score: 1

    ...many important concepts useful to logical and critical thought can be learned this way. I guess it's up to the educators to decide the best way to get students to grok these skills. Coding for codings sake? Wrong reason.

  12. First and foremost, everyone should learn to live. by EzInKy · · Score: 1

    If learning to code accomplishes that goal then yes, everyone should learn how to code. On the other hand, those who can survive without coding should not be forced to learn to code.

    --
    Time is what keeps everything from happening all at once.
  13. Learn to code not necessarily to write code by Urd.Yggdrasil · · Score: 2

    Formal logic: Yes Troubleshooting: Yes Basic computer skills: Yes The fewer people who think computers are magical devil machines and can figure out how to solve technical problems on their own the better, but the vast majority of people will not write programs.

    1. Re:Learn to code not necessarily to write code by DoofusOfDeath · · Score: 1

      To be fair, I've got a phd in cs, and I still think of macs as magical devil machines.

    2. Re:Learn to code not necessarily to write code by Bing+Tsher+E · · Score: 1

      Apple worked hard to cultivate that perception, a long time ago. They sort of ride along on the established myth now, but back in the day they spent a lot of time designing the Mac to be 'hacker proof' with an un-openable case and arcane tools to program it. You were supposed to be a select elite with a registered Developer's account with them, or you were supposed to dabble with a few high level gui thingies.

      They STILL make it hard to do any programming on their hardware unless you're doused in their koolaide. You can code for Android on about any computing system out there. To code for iOS you need to buy a recent Mac.

    3. Re:Learn to code not necessarily to write code by gnasher719 · · Score: 1

      ...but back in the day they spent a lot of time designing the Mac to be 'hacker proof' with an un-openable case and arcane tools to program it.

      The case was easily openable if you had a five inch torx screwdriver and knew where the fifth screw was hidden. The reason why it was designed so that dad wouldn't have the right tool in his toolbox had nothing to do with "hacker-proofing". It had to do with a CRT tube inside that case, which held an extremly nasty voltage for days after the Mac was unplugged.

    4. Re:Learn to code not necessarily to write code by PPH · · Score: 2

      TV sets with vacuum tubes. Dad had already been opening that and testing the tubes at Radio Shack for years before Macs came on the market.

      Now get off my lawn, kid!

      --
      Have gnu, will travel.
    5. Re:Learn to code not necessarily to write code by sjames · · Score: 1

      That was the go-to excuse for anti-consumer plays involving funky tools. However, as PPH pointed out, people have been opening up cabinets with CRTs in them for a long time.

    6. Re:Learn to code not necessarily to write code by kko · · Score: 1

      And here I thought every father sat down at some point with their children to have "the talk" about the flyback.

      --
      No, seriously, I just come here for the articles.
  14. 01101110 01101111 by rmdingler · · Score: 1
    A public education for every child is a marvelous thing, but it has become overly general.

    Every opportunity should be available to each student, but we must learn to admit our children have different strengths, weaknesses, and preferences.

    Though it seems true any child can grow up to be POTUS, not every child can be an astrophysicist.

    --
    Happiness in intelligent people is the rarest thing I know.

    Ernest Hemingway

  15. So very, very dumb. by ip_freely_2000 · · Score: 2

    The Association for Computing Machinery wants everyone to code? I wonder what The Association for Fixing Your Car, Association for Small Repairs Around The Home, The Association for Recognizing and Stopping Child Abuse, The Association for Common Courtesy and The Association for Reasonable Adult Relationships would think. All worthy, imo.

    1. Re:So very, very dumb. by turbidostato · · Score: 1

      Well, they would most probably want NOBODY to learn their secret ways, so their guilds retain their monopolies.

      So, you see, not the same case.

  16. Perhaps not everybody, but many more by mothlos · · Score: 2

    Having worked in office environments, the amount of effort office workers could reserve by having access to a decent scripting language is immense; I once saw someone renaming over three thousand files by hand in order to change a date format. The potential drawbacks are also fairly obvious since businesses tend to do a terrible job of managing their IT tools and anarchistic coding is going to make this worse. However, the potential for productivity enhancements is there and it seems like a challenge which can be largely overcome, particularly if the workforce had these skills which were languishing. If this is the reality we should to push for, then some sort of programming experience which can be linked to useful activities seems like it would be worthwhile for many, from the drones in the office to automated farm equipment and CNC operators.

    1. Re:Perhaps not everybody, but many more by Tom · · Score: 3, Informative

      I once saw someone renaming over three thousand files by hand in order to change a date format

      They don't need to code. They need an IT department that doesn't have its head in its ass and is supplied with enough resources to be able to afford solving user problems like that.

      Sadly, most companies run with a "lean" (read: understaffed) IT. Meaning they don't have time for anything but the essentials. But since most people in accounting, etc. don't make that much less than an IT worker, for a task like this which takes 15 minutes of time for the IT guy but could save a couple hours of work for the account (or whatever) dude, the interest of the company would clearly be that he picks up the phone, calls IT, explains his need and some IT guy does the shell magic for him quick.

      Teaching everyone how to code, even basic skills, however, would cost a lot more than it's worth. Just hire two more IT guys. It's cheaper.

      --
      Assorted stuff I do sometimes: Lemuria.org
    2. Re:Perhaps not everybody, but many more by FailedTheTuringTest · · Score: 3, Insightful

      They don't need to code. They need an IT department that doesn't have its head in its ass and is supplied with enough resources to be able to afford solving user problems like that.

      Yes... but the other piece of the puzzle is that the user has to be computer-savvy enough to know, or at least suspect, that there is a better way to accomplish a task. Users who have very narrow IT training may think there is only one way to do a task, and may not bother to ask for help because they don't even know that an alternative exists. Only people with slightly broader training will even be aware that there are things like scripts that can automate tedious processes.

    3. Re:Perhaps not everybody, but many more by Ateocinico · · Score: 2

      In my own experience, the guy renaming the files by hand prefers that to writing the script. Most people avoid thinking at any cost.

    4. Re:Perhaps not everybody, but many more by BonThomme · · Score: 2

      if you'll just fill out this trouble ticket, we'll put out your house fire. tomorrow.

    5. Re:Perhaps not everybody, but many more by failedlogic · · Score: 1

      This. It is even worse when said employee does this as their full-time job and it is in the government. The government has IT staff that could easily automate some of these jobs and they wouldn't be backlogged all the time.

    6. Re:Perhaps not everybody, but many more by schemanista · · Score: 2

      "We'll fixed that squeaky floor board in one room by tearing down your house and dropping a new, unfinished prefab on the lot. Hope you backed up all your stuff."

      --
      I saw that shot more than a few times back when Starbuck was a man. ~ lucabrasi999
    7. Re:Perhaps not everybody, but many more by schemanista · · Score: 2

      Which government is this? I work in government. A federal government agency. In a G7 country. I had to, on my own time, use a python script, zsh and sed to split and turn several > 150mb ASCII text files (yes you read that right) into a series of CSV files so that the information could be meaningfully used in MS Office, the only software we're allowed to use for anything. I brought my own laptop to work and finished that job in less than half an hour. Our local IT department wanted a budgetary commitment of $15,000 and 3 months to do the same thing. It may just be our agency but government IT seems to be staffed with washouts and supervised by people with absolutely no technical ability. They can keep our infrastructure duct-taped together but that's it.

      --
      I saw that shot more than a few times back when Starbuck was a man. ~ lucabrasi999
    8. Re:Perhaps not everybody, but many more by Areyoukiddingme · · Score: 3, Insightful

      Yes... but the other piece of the puzzle is that the user has to be computer-savvy enough to know, or at least suspect, that there is a better way to accomplish a task.

      At last, the real value in this rather silly education push. No, most people are not going to actually learn how to code, even if they take a class with the ostensible purpose of learning. But they will, at least, get a grasp on what's possible. It's amazing to me, after 20 years of so-called Information Age, exactly how few people have this basic grasp. It's just not there. The possibility that the machine can do repetitious things for them never crosses most people's minds. People think what they want done can't be automated because one part is unique each time, if they even give any consideration to the possibility of automation at all.

      Primary school is about teaching people the basics, numeracy and literacy. Secondary school is as much about about teaching people what's possible as it is teaching any particular thing, and in this day and age, learning what a computer can do is at least as important at learning what chemistry can do.

    9. Re:Perhaps not everybody, but many more by cascadingstylesheet · · Score: 1

      Users who have very narrow IT training may think there is only one way to do a task, and may not bother to ask for help because they don't even know that an alternative exists. Only people with slightly broader training will even be aware that there are things like scripts that can automate tedious processes.

      That's assuming most people even want to simplify their tasks.

      Way back when I was a technical writer, I'll never forget the former coworker who would de-stress by spending mindless time deleting centerlines and such from AutoCAD drawings (in preparation for grabbing simplified drawings as starting points for technical illustrations). Select a centerline. Delete. Repeat hundreds of times.

      He was ... less than pleased ... when I showed him in front of someone else how to turn off layers ...

    10. Re:Perhaps not everybody, but many more by Tom · · Score: 1

      but the other piece of the puzzle is that the user has to be computer-savvy enough to know, or at least suspect, that there is a better way to accomplish a task

      True, but that's easy:

      "If you do the same or a very similar task repeatedly for more than 30 seconds, there is almost always a way to automate it."

      --
      Assorted stuff I do sometimes: Lemuria.org
    11. Re:Perhaps not everybody, but many more by Adam+Jorgensen · · Score: 1

      Stories like this are why I work in the Private sector for small companies only.

      There's simply no room for failure in small companies.

  17. Re:clickbait by Anonymous Coward · · Score: 1

    No kidding. It's high time to put the computers away. Put the phones away. There isn't any electronics required to learn reading, writing, and math. We have students who show up to school after 9 and are gone by 2 with a lunch hour in there as well. We have students "graduating early" not because they are exceptional, got straight A's, or anything else that would set them above the rest. No, they took the bare minimum required. That's right, they don't even have to take basic algebra or geometry or anything beyond 8th grade math now. These are the people that are supposed to be so computer savvy. What we have is millions of idiots who won't make it. Even the pole smokers in the red light district will see their wages decrease because of the influx of these morons.

  18. Define "code" by gmuslera · · Score: 1

    Would coding in visual languages like Scratch qualifies? Everybody should learn how to solve problems and do tasks in a formal way, and see how that solution runs by itself, without their intervention, free will, or common sense. Doing it wriitting text or manipulating diagrams is independent of the core question.

  19. Opportunity: yes. Mandatory: No by Opportunist · · Score: 1

    Everyone should be given the opportunity to learn programming. Unfortunately it is not as simply done as teaching math. To learn basic math, you need paper & pencil. To learn basic programming sensibly, you have to have some sort of computer available. We're talking a very big leap in cost here for those who are not so fortunate to be able to dump a few 100 bucks on something as not immediately survival ensuring as education.

    Yes, I can hear how many here cry out how I dare to say that education is not worth a few 100 bucks. IMO, it is, but then again, I have a few 100 bucks easily every month to spend on whatever I please. There are people out there who are by no means close to that, and for whom, say, 500 bucks for a computer to teach their kids programming is an investment they simply cannot make.

    So yes, I think it should be our responsibility, as a society, to enable kids from these backgrounds to learn programming and offer them the necessary equipment (at their school or at some other place) to study and learn using equipment they need.

    I'm by no means in favor of cramming programming down everyone's throat. I've earned a few bucks as a study aid for pupils who were pressed into "computer courses" by their parents who thought that it's "necessary" to make their kids the next programming generation because "computers are the future" (no, really? I thought they're the present...). It just doesn't work. You cannot force people into the mindset necessary for programming. People who do not want to learn it will not learn it. They will not even understand some basic concept, all they will take away from it is that it's some sort of arcane magic that only geeks and other dweebs can possibly grok, and that it's some scary stuff they don't wanna touch beyond what their GUI lets them.

    If anything, forcing people into programming will drive them away from computers and raise the next generation of luddites.

    --
    We used to have a Bill of Rights. Now, with the rights gone, all we have left is the bill.
    1. Re:Opportunity: yes. Mandatory: No by emj · · Score: 1

      If all phones were unlocked and open sourced this would not be a problem, a phone from 1999 would be pretty ok to code on. That's one reason I really like GPL for consumer products.

    2. Re:Opportunity: yes. Mandatory: No by Bite+The+Pillow · · Score: 1

      Rethink your argument. The computers are already in the schools, with a margin of error, so no cost to anyone. If you are thinking of homework, these courses are not going to have kids writing working code outside of the classroom until at least halfway through, and then so minimally that access won't be an issue.

      Are you going to send kids home with an ide and install instructions? No. Either you get a tablet, or you use what's in the computer lab.

      The rest of your argument assumes that we push students into a course of study rather than a single elective (or core requirement).

      Give it some more consideration now, and see if you change your opinion, or at least more strongly defend it.

    3. Re:Opportunity: yes. Mandatory: No by Opportunist · · Score: 1

      Erh... yes? That's pretty much what I said?

      Or ... what exactly is your argument?

      --
      We used to have a Bill of Rights. Now, with the rights gone, all we have left is the bill.
  20. Re:Certainly by Anonymous Coward · · Score: 2, Interesting

    Ah! that's an interesting point..

    Do Phones run on magic? To a lot of people they do, do you know how each component interacts with the others? Explain how a battery works and how it provides power to the device to allow two way communication on a global scale. I have an older boss (In his late 80's) He truly believes that little gremlins move images on screen, he can't comprehend the hardware and software interaction involved in the modern PC, so to him it is like magic.

    Now we get to the interesting bit, as technology advances more and more people don't understand the base level of "Tech" involved in higher level computing eg, You know how to install a motherboard but few people can troubleshoot/build one as time progresses this will become more and more commonplace.

    I'll use an extreme example of what may happen using an example from the warhammer series, It's 43rd millenium technology has advanced to a point where we have learnt far too much that the fundamentals of our technology are unknown, a cult (the mechaninium) has grown up to dominate higher and lower level technology, simple tasks become a religion and rituals evolve involving the simplest of tasks (eg turning on a switch)

    How many non-technical people do you know that provide corporal punishment to their computers when they fail to work quickly enough, we know it has no effect but they believe that such actions are useful.

    Magic is a dangerous think as it can easily turn into worship.

  21. Re:clickbait by JaredOfEuropa · · Score: 5, Insightful

    The question brought to mind a nice quote by Oscar Wilde: "A gentleman need not know Latin, but he should at least have forgotten some". Coding is not for everyone. Neither are history, poetry, chemistry, or Latin for that matter. But it's important enough to be included in a broad curriculum. Show your children everything, and they'll choose the stuff that is of interest to them.

    --
    If construction was anything like programming, an incorrectly fitted lock would bring down the entire building...
  22. Teach them to use, not code by Thruen · · Score: 1

    Most people will never need to look at any amount of code in their lives, even people who spend every day working on a computer don't need to understand the code behind the software they're using. What needs to be taught are much broader computing skills. During my time in IT, not once did I wish anyone knew how to code, but every day I wished they'd take courses on general usage. What I mean by that is they come out of school knowing how to access the software they expect to need for their profession and an understanding of how they should be able to use it, but no idea what to do when that software fails or falls short of their needs. I watched a company spend two years trying to make their accounting software run their entire business, hiring one expert after another, being told the entire time by said experts the software simply isn't ideal for their needs but refusing to look at anything else because it was what they knew. Switching wouldn't have been difficult, certainly easier than spending years trying to jury-rig software into another purpose, but they knew so little of anything else they refused to consider it.

    This was a small business with less than half a dozen people needing access to this software, not some giant corporation where a switch would cost millions, and they continued to spend more on updating their software than many alternatives would have cost. Their stated reason for not switching was that they didn't want to learn different software. Most of us understand it doesn't take very long to adapt to new software if you put the effort in, the only people I've ever been unable to teach are those that refuse to try to learn. But people come out of school thinking they just spent all that time learning how to use a few things and it'll take just as long to learn anything new, it's a problem that might not sound so bad but it truly handicaps the workforce.

    Don't teach kids how to code, teach them how to use different types of software, teach them how different things on a computer interact, explain the importance of updating software and drivers. Keep the option to learn to code available, but don't make people think it's some necessary skill to use a computer, that's going to make anyone who doesn't take to it feel even less secure in their computer skills.

    1. Re:Teach them to use, not code by turbidostato · · Score: 1

      "Most people will never need to look at any amount of code in their lives"

      Absolutly wrong. Most of people will manage to go through their lives without touching a command prompt. But most first world people would save a lot of hours just with minimal programing abilities (shell level).

      You think otherwise simply because you just don't foresee how many automatable actions you do along your day, from obvious things, like algorithmically renaming your computer-based photo collection, to not so obvious (to you) like a big percentage of what an office drone does along his day.

      "What I mean by that is they come out of school knowing how to access the software they expect to need for their profession"

      Which is a lost proposition but quite aligned to your "most people won't be exposed to code": lack of imagination. If there's anything true is that the software that they are expected to need for their profession when at school won't the the software they'll use when some years in the future are in their professions.

      "explain the importance of updating software and drivers"

      I've spent more than twenty years in the field and I still don't understand what the need to update software and drivers really is, can you explain, please? I, of course, understand the need to replace *faulty* software and drivers, mostly on Windows environment, but that's a different issue.

    2. Re:Teach them to use, not code by gnasher719 · · Score: 1

      Absolutly wrong. Most of people will manage to go through their lives without touching a command prompt. But most first world people would save a lot of hours just with minimal programing abilities (shell level).

      Most of these people would manage to create a major support case once they learn about the "sudo" command. Problem with shell programming is that you reach the level where you are dangerous before you reach the level where you can do useful things.

    3. Re:Teach them to use, not code by Thruen · · Score: 1

      You've shown a thorough misunderstanding of what I was saying, and really just sound like an arrogant dick. I said most people will never need to look at any amount of code, and you said they'd benefit from being able to automate tasks with minimal programming abilities, the two are not exclusive. I'm assuming your twenty years of experience is in some field where you assist people in using their computers, otherwise it might be irrelevant, so you clearly know how many people know what you're talking about when you reference the command prompt? I've only half that time under my belt, but in my experience, not many. You even state yourself most will never touch it. Despite your assumptions otherwise, I've had to get quite creative in the past, you simply can't prepare a small business for ISO certification with no budget unless you use your imagination. I understand the importance of programming as well as you, I simply feel other skills need to come first.

      You lose me a bit the second time you quote me. I'm not sure if you mean to say that students come out of school trained on a wide variety of software or that there's no hope of them learning what they need to because it will be outdated. Maybe if you focused less on attacking me and more on making a point, I would understand more clearly. In my experience, which again is only half of yours, the fresh-out-of-college hires know a specific set of software, namely the MS Office suite or as much of it as they expect to need, and whatever specialty software (most often I deal with accounting) their school chose to teach. In larger companies I've worked for, they hired in batches and opened with paid training so they could teach the software they use to the new hires all at once, a process that typically weeds out upwards of 60% of candidates who are unable to adapt.

      As to understanding the importance of updating software and drivers, you do fully understand you're just being a dick. If you don't, you're not too bright. Software updates often improve stability and performance, can fix potential exploits, at the very least they typically fix some bugs, and sometimes include new features. Driver updates, aside from replacing faulty drivers, can actually improve some hardware capabilities, depending on what you're working with. Combining the two, some software may have special features usable with some hardware, often not usable until hardware or software is up to date. If you're wondering about specifics, look at the graphics design world, I remember one instance where new software was purchased for use with existing drawing tablets looking for extra features, features they searched for but couldn't find until the drivers for their tablets were updated. Graphics cards may see improved rendering times with updates. The list goes on, with your imagination it should be easy to see the importance of updates. Obviously it isn't the end of the world if everything you have isn't 100% up to date, but understanding the importance means just that, understanding how important it is and isn't.

      I'm not sure why you're so hell-bent on attacking me in your post, but it really takes away from your point, and I think even you lost sight of it. I don't believe programming is a useless skill, if everyone could learn to code it would benefit them all, but I don't believe that's what needs to come first. I'd love it if everyone in the accounting department could write their own scripts for running their end of day procedure, but the fact is, they still need me to show them how to run the one I wrote for them.

  23. No by nurb432 · · Score: 2

    While its nice to know what coding is, as it helps make the magic box do things, it wont enrich most of the public to know how to do so.

    Hate to break it, but 99% of the public really don't care how most things work, they just want it to work when its turned on. Knowing how an appliance ( yes, that is what a computer is to most ) works doesn't really make it work any better.

    --
    ---- Booth was a patriot ----
  24. Re:Certainly by nurb432 · · Score: 1

    No, its not a skill required, for most jobs. Math, you use in daily life so its a bad comparison. Besides who said you have to LIKE something to do it?

    --
    ---- Booth was a patriot ----
  25. rule of headlines by Tom · · Score: 1

    no

    next question?

    --
    Assorted stuff I do sometimes: Lemuria.org
  26. Re:clickbait by turbidostato · · Score: 4, Insightful

    "The question brought to mind a nice quote by Oscar Wilde: "A gentleman need not know Latin, but he should at least have forgotten some"."

    Absolutly right and, probably, in the same sense as Wilde tried to transmit.

    Should everybody learn to code? Absolutly not.

    Should everybody learn to think rationaly, not to be fooled by appearances, find the nut of a problem and then be able to decompose it into action items, set a path of action to solve them and finally check the intended result with the obtained one? I think so.

    And it happens tom that learn to code can be a fantastic tool, probably the best, to achieve that goal.

  27. Of course by Idou · · Score: 1

    I am a financial analyst. Knowing how to program allows me to automate boring things and generate analysis that would otherwise be impossible. It also means I am constantly creating tools that threaten the employment of coworkers who do not know how to program.

    When you know programming, you spend most of your time improving the 1st and even 2nd derivative of the productivity function of a given task. When enough people like that are available for a given field, why would employers bother with people who are not capable of that level of productivity?

    --
    Sdelat' Ameriku velikoy Snova!
    1. Re:Of course by DoofusOfDeath · · Score: 1

      Leave it up to a financial analyst to wreck workers' lives using derivatives!

  28. In School You Don't Know What You'll Be Good At by Greyfox · · Score: 1

    So everyone probably should get at least some exposure to it. Some of them will probably like it and go on to be programmers. But I think it's more important to focus on applying the knowledge you've picked up in school to solving problems the students haven't encountered before. School learning seems to be increasingly just memorization and teaching to tests, and a lot of people that I meet don't seem to be particularly good at synthesizing solutions to problems they haven't seen before. There seems to be an aversion to experimentation, even when the experiment would not be terribly expensive to run. I prefer a hands-on approach where we poke at a problem, try a few things, keep the stuff that seems to work well and throw out the stuff that didn't.

    --

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

  29. flamewar of the decade by bzipitidoo · · Score: 5, Insightful

    And it's a lot more fun than MS vs Linux, Java vs .NET, Nvidia vs AMD, or even vi vs emacs. Sorry "gcc or llvm", your grudge match will have to settle for a 3 AM slot on a low budget, obscure science light cable TV channel.

    The big language demolition derby is still hot and furious, like the annual playoffs of old sports that still excite fans, if you can see past all the smoking wrecks like Modula and the entire team of modular programming cluttering the arena. If only the Perl 6 team could sort out their engine troubles and get their car into the arena, replace that sputtering Perl 5 vehicle and challenge that JavaScript/CSS/HTML/AJAX monstrousity that was cobbled together from a dozen different brands of automobiles, and that C++ bug that still works after being run over and rolled over and which just got a fresh set of wheels. OOP sponsors must be wondering which teams are still proud to bear their logos. And where's Haskell? Oh yes, loudly honking their horns from atop the safety of their functional programming pedestal while the LISP car circles round and round as if they expect a ramp to appear at any moment. Python? Dancing around the LAMP pole with PHP's go-kart. In one of the darker corners of the arena are the excruciatingly slow horse drawn wagons of the Fortran and Cobol teams, just trying to hold their ground. Follow the oil slick to find C. Java is struggling to move under the crushing weight of their massive armor, spare parts, and the huge gas tanks needed to feed their too thirsty engine. The kids would still love those Logo toy cars they used to hand out last century.

    If coding is so universal, what language should everyone learn? We're nowhere near sorting that out. Shouldn't we be able to settle and standardize on the essential elements of a programming language? As it is, it's like arguments over mathematical notation. Multiplication works the same whether the symbol used is x or * or a dot or nothing at all because it's the default operation. But it's not so easy to tell what is trivial and what is important in programming languages.

    --
    Intellectual Property is a monopolistic, selfish, and defective concept. It is "tyranny over the mind of man"
  30. Re:The herding impulse by IkeTo · · Score: 1

    (1) is not specific to coding, and for (2) it is simply not true. For a few tasks coding is being automated, for the rest it depends largely on lots of human being doing all the hard stuff. But I think neither address the original question anyway. The original question is whether everybody should learn some coding, and not whether everybody should do professional coding. I think asking everyone do at least a bit of coding is a good idea, because it is (1) an exciting experience, (2) eye-opening to understand that programming involving thinking in all details, and (3) a good weapon for anyone in the works to know what is automation all about.

  31. Re:clickbait by ebno-10db · · Score: 2

    In my day we walked barefoot in the snow to get to school. Five miles - uphill both ways!

    How old are you? Seriously, I'm an old fart and I love to make fun of people younger than me who say "why in my day". Did you have such a vastly better education than what's offered today, or do you just fancy yourself part of some elite? If the former, how do you know what's taught today? Do you at least have kids in high school?

  32. Should everyone learn auto mechanics? by hawguy · · Score: 1

    Surely people should also understand how to repair the cars they drive every day. It's not that hard, they just need to learn how to use basic hand tools and diagnostic tools, and then everything is is a simple step by step process. Sure there are tip and techniques that mechanics develop over time as they have more experience, but hey, anyone fresh out of a 12 week "Become an auto mechanic" boot camp can rebuild an engine.

    And for that matter, everyone should become a plumber, electrician, HVAC engineer, etc. If you don't know how to build and repair the technology you use every day, how can you hope to survive?

    I know, there once was a time when some basic mechanical knowledge was needed, but nowadays one can expect to go years (or decades) without ever opening the hood of their car -- my wife hasn't looked under the hood to her car, ever, after 10+ years of car ownership -- she used to take it in for oil changes every 5000 miles, but her new car tells her when it needs an oil change (every 10,000 miles) -- so just like computers, people can treat them as a "black box" without knowing anything about how to build or repair them.

    1. Re:Should everyone learn auto mechanics? by Shados · · Score: 1

      Coding is becoming more akin to writing now though. As in people would benefit from the basics in their day to day job.

      A project manager writing a quick query on the timesheet system.

      A designer writing a photoshop macro.

      An accountant coding a plugin for his favorite spreadsheet.

      A logistic specialist adding a screen to the ERP system.

      An exec writing his own report real quick.

      And so on. Thus why knowing the basics would help...this isn't a speciality skill anymore. Oh sure, actual software engineering or computer science is still its own field and a specialty. Understanding hardware is very similar to your example with cars. But understanding variables, conditionals and loops, is somewhat different.

    2. Re:Should everyone learn auto mechanics? by jader3rd · · Score: 1

      True, but learning how to code around 7th grade would have helped me in other classes, and particularly would have helped me understand my math classes better. Learning all of the ins and outs of car maintenance.... not so much.

  33. Re:Certainly by Anonymous Coward · · Score: 1

    Explain how a battery works

    Something about electrolytes which plants crave. So a phone must be a plant. If I bury it in the backyard I can grow a phone tree! Press 1 now.

  34. But what about the Diversity? by ZecretZquirrel · · Score: 1

    FWIW, I remember this brilliant (to me) math professor who taught me abstract algebra back in the '80s. She carried around Rubik's cube key chain, and would solve it in moments while explaining the group theory behind it. She was in awe of us in CS, and that programming stuff we did--it was just beyond her. The modern cultural cadres in charge tell us that diversity is A Good Thing, to be sought as an end in itself. So why do we all have to be programmers? I'm glad Bohr and Einstein didn't bother with this shit. Or Cézanne and Picasso.

  35. Sure, but not all the same... by jpellino · · Score: 1

    Some as a pro
    Some as a hobby / interesting thing to know
    Many just enough to know when you're being tweaked by a HW or SW salesperson
    (So does this include USB3? Yup. iEEE1394? Sure. Full LRF support? Absolutely!)
    (We have to have the pro package - this one doesn't do .MID to .OBJ - and it'll be extra two weeks of training.)

    --
    "Win treats sysadmins better than users. Mac treats users better than sysadmins. Linux treats everyone like sysadmins."
  36. Re: No by ebno-10db · · Score: 1

    It's one of the easiest jobs to get provided you're competent.

    If you're not "too old", live in the right part of the country, and can put some stuff on your resume that has nothing to do with basic competence or skills, but is currently trendy.

  37. Re:clickbait by master_kaos · · Score: 1

    yes but you can say that about every field. Chances are kids who are interested in computers will seek it out on your own, same reason they dont teach you how to fix a car, become a sous chef, or how to diagnose a disease. It is too specialized that most of the people have ZERO use for. History is considered general knowledge and you should know that in fact WWII indeed came after WWI. Chemistry wasnt mandatory nor poetry although they were a small subset of the general science and english, and even then chemsitry and poetry was only the basics. Coding isnt a basic, general computing which was part of a course.
    They would be much better off having a mandatory course like parenting

  38. Thought process by Boronx · · Score: 1

    Becoming a serious programmer means changing the way you think. Quite frankly, we need to have people who don't think like a programmer.

    Making everyone learn how to code would be like sending everyone to law school.

  39. Re:The herding impulse by ebno-10db · · Score: 1

    Coding is about to be obsolete. There are no mysteries anymore, and it is being automated.

    They said manufacturing was going to be "automated" too, but in politicalspeak "automated" means sent to cheap labor countries.

  40. Re:clickbait by DoofusOfDeath · · Score: 4, Interesting

    I do have kids in school. The school places decently in national rankings, and I'm often alarmed by the quality of the kids' instruction. I think the GP is somewhat on the mark. For example, I've seen the kids taught to develop powerpoint presentations, where the emphasis was on the visual aspects of the presentation, rather than on the soundness or validity of their arguments. I've seen this even at the highschool level.

    I don't have a good sense as to whether it's better or worse than when I went to school, because I'm not viewing both from the same perspective. But I do see a big gap between the education my kids are getting, and the education I wish they have.

    Perhaps my expectations regarding kids' teachability are unrealistic (e.g., that they have longer attention spans and more interest than they really do). But I am sad that my employment situation hasn't allowed me the time to home-school them. I know they're capable of far more than is being asked of them.

  41. Re:clickbait by emj · · Score: 4, Insightful

    Though for me Logic 101 was a lot better for my thinking than learning to code.

  42. Select individuals should by chill · · Score: 1

    All judges and anyone working in the Patent Office should be required to have taken the equivalent of a college minor in computer science. (Not IT, but real CS). Just the core courses.

    --
    Learning HOW to think is more important than learning WHAT to think.
  43. is coding more important then by cinnamon+colbert · · Score: 1

    there are so many hours in the school day.
    Look at the world: real problems are war, famine, violence, lack of love
    this has nothing to do with coding
    I think that rather then take hours out of the k12 curriculum for coding, we should take hours out for psychology.
    maybe if children learned more about them selves and others, ti would help with the big problems

  44. Re:Impossible by cinnamon+colbert · · Score: 1

    just total BS
    however, if you can post some data to back up your posistion - and not just anecdotal candidate couldn't understand C indirect pointer stuff - I will gladly apologize

    sure, maybe 60% of the population can't become good coders, but they can learn enough to , say use Perl to filter stuff, or at least understand that coding is not magic

  45. Re:No by hacker · · Score: 1

    When computer-based automation and robotics starts taking away 50%+ of the common jobs in the industry, you can bet learning how to code, will be immensely valuable.

    Do we have the capital funds at the government level to re-school and re-skill everyone who is 40+, locked into a career path and now out of work, with nothing available in their own industry sector?

    We're ignoring a very large and looming issue that is about to hit us in 10 years or less. Someone will need to be around, understand and be conversantly expert in the technologies powering that automation (think cloud, drones, home automation, self-driving vehicles, facial recognition, algorithms, etc.).

  46. Have it part of a general discipline by Shados · · Score: 2

    At the end of the day, coding is just a form of applied math. Sure, not 100%, but relational database is just relational algebra, UI programming is geometry and other stuff like matrices, functional programming is...well, yanno. And so on and so forth.

    You probably can squeeze in some programming in math courses so people understand the basics. Not everyone should be expected to become a master programmer, or even a code monkey, but people should know the very basics, just as how they taught me the basics of how to bake a cake or whats the difference between the basic forms of investments in school.

  47. Better learn to be specific ! by burni2 · · Score: 2

    Well coding, is the prime example where things that are not specific engouh, either fail totally or are COMPLETLY INSECURE (Pretty Happy Parsing errors)

    You don't need to learn to code, you just need to learn how to describe something, that it can be reproduced within a certain margin of error. This is the description of a specification.

    And you might say "reproducable yes, but does it work ?"
    Not if the working condition is not specified.

    If you can describe somehting acurate, THEN YOU CAN program!

    Hint:
    Good practice for writting "good"(see upper description) specifications:

    - one page introduction make it 1/4 of a page
    - List interfaces
    - List operating conditions
    - List operating requirements
    - List ordering/delivery conditions
    - List storage conditions
    - List mounting unmounting possibilites and conditions (yes this includes tools and tool sizes)
    - do the D-FMEA as easy as dancing YMCA !

    based on this list collection of data you need to provide, if the data isn't 100% acurate and you know that, take an educated guess, (calculate, use your engineering skills, use previous data set a trigger level of acceptable conditions)

    1. Re:Better learn to be specific ! by The123king · · Score: 1

      If you can write a recipe, you can code. All coding is, is a basic description of how to turn ingredients (aka conditional statements, variables and functions) into a product. Buuuuut, just because anyone can program, doesn't mean everyone should. I can quite easily follow a recipe on how to bake a cake, but that doesn't mean i need to go out and learn how to be a chef.

      --
      If you gave me a choice between a printer and a giraffe with explosive diarrhoea, i'll get my ladder and my raincoat
  48. Re:clickbait by Oligonicella · · Score: 4, Interesting

    And it happens tom that learn to code can be a fantastic tool, probably the best, to achieve that goal.

    Some of the worst logic and most fragmented display of problem solving I have ever seen in my life was produced by people who knew how to code so I disagree, learning to code does nothing by itself.

  49. Like music -- it's training for the mind by davide+marney · · Score: 2

    Coding is training for the mind. It's not strictly necessary for everyone, but it is broadly beneficial to everyone. What it teaches is the practical use of simple abstraction. Like learning music, it's good for you, even if you never get paid.

    --
    "We receive as friendly that which agrees with, we resist with dislike that which opposes us" - Faraday
    1. Re:Like music -- it's training for the mind by TheVelvetFlamebait · · Score: 1

      Coding and music (particularly composition) are excellent for the mind, but not every student has the aptitude. It's not a case of some kids being too dumb, but just that not every mind works that way.

      I do think that students should be given the option though.

      --
      You know, there is a difference between trolling and pointing out the flaws in your reasoning. Just saying.
  50. Betteridges law of Headlines by The123king · · Score: 2

    Should everybody learn to drive?
    Should everybody learn to fish?
    Should everybody learn to use an abacus?
    Should everybody learn to make fire with 2 sticks?
    Should everybody learn how to skin a rabbit with their bare hands?

    The answer is no, and so is the answer to this question. In fact, this article is a perfect example of Betteridges law of headlines which, iirc, was covered here on slashdot a few months ago.

    --
    If you gave me a choice between a printer and a giraffe with explosive diarrhoea, i'll get my ladder and my raincoat
  51. An informed democracy - the role of education by joeaguy · · Score: 1

    I believe the primary purpose of public education is to ensure the functioning of a democracy by having citizens who can make informed decisions about how they are governed. Job training, personal improvement, etc, are incredibly important, but secondary benefits that arise from that main goal.

    If citizens are going to have informed opinions, debates, and votes on issues of government that increasing involve technology, it is important there there be an understanding of technology. When so much of how society is regulated and monitored is mediated by code, and so much of our interactions with each other and government is mediated by code, it becomes imperative to know something about how code works.

    This doesn't mean everyone needs to have a deep or masterful understanding of how to code. What is important, is some understanding of how computers deal with problem solving and information processing, from simple procedural programming, to networks, and varying kinds of abstraction. There are lots of great simple visual programming systems and other tools which provide a view into this. Being able to actually write working code in a particular language is less important than an understanding of how code is written. Just as we read literature and history to understand society and politics, and it does not mean we will all be expected to be writers or politicians, students should be exposed to software design and have an opportunity to do some small amount of it hands on, even though they will not all become programmers.

    So lets get the goals right, and build curricula that move us toward those goals.

    1. Re:An informed democracy - the role of education by bbsalem · · Score: 1

      The primary use of Public Education is to create compliant workers for business and to teach them that they are not smart enough to think for themselves. I know that lots of people, even lots of educators, think otherwise, but if the factory school system as mandated by law from our state legislators and Congress were not really about empowering rather than repressing people, the way things are done would be very different. Oh, I know it is sometimes amazing what some teachers can do with limited resources, and that our schools and culture definitely do turn out creative and achieving people, maybe more so than other societies, but they are not intended to promote critical or independent thinking and indeed given the culture driven by business and politics, I'd say that the people in power fear such a result to the extant that most people are repressed by the classroom.

      Some of this has to do with the average intellectual achievement in people. some of whom teach, and those being taught. It may also be due to the fact that the classroom is now a battle ground between opposing forces, a front line in the Civil Rights movement, and where the most able students have to be ignored to raise the level of everybody, a kind of no win situation. It could be worse for us. People in this culture have enough individuality that it is possible to rise above the external standards and find your own way including both the advantaged and the disadvantaged.

      I want to go further than you did and assert that democratic participation requires more practice than just being taught about it in school, and I repeat my contention that the limited resources turn the opportunity to teach democratic ideals to students into quite the opposite. Rigid curriculum goals and a one-size-fits-all, or its opposite applied to noisy subsets of the population, does quite the opposite. But more than that democracy has to be practiced, people have to exercise freedom, they have to actively think and analyse and agitate for justice and fairness, and they have to debate competing and bitterly opposed priorities in society to be effective citizens.

      One way to do this is to do it on-line. The problem with that at this time is that the business people who dominate the Internet are not really interested in it. The reasons are many but they boil down to a strongly anti-democracy sub plot in business, and to the idea that many citizens have been frightened to voice their thoughts on the Internet for fear of being attacked personally for voicing what is their right to say in public.

      I think that fragmentation of mass media, the emergence of venues like Fox News, which no longer have to be fair or balanced, is one cause. Another, and this may surprise you, is the blog. I think that the blog has done more to repress public opinion and of people learning to express their rights than it has helped. The designers of social media know full well that the linear and unstructured form of a blog does not create useful discussion; people talk past one another or preach to the choir, that disagreement and other distractions are not handled well in a blog and never will be.

      The bellwheather for this was the "Political Correctness" idea that came out of Ronald Reagan's Presidency. This is basically an anti-democratic idea. it says that people have to play at being nice and avoiding contentious topic. it is a conspiracy of silence, exactly the divide and conquer stretegy of a minority elite that wants to limit the rights of others, and it is applied to blogs by the thread owners and some of the participants because of their desire to control conversations and because the blog lacks context features that are useful in handling the challenges of people actively discussing and debating with each other.

      You have in front of you the missing piece for vibrant democracy, the on-line cafe, the Vienanese Coffehouse, but the Google's and Facebooks have tried to take it away from you. We have some of it here on Slashdot, but there needs to be mor

    2. Re:An informed democracy - the role of education by joeaguy · · Score: 1

      Thanks for the long thoughtful response. You took this to a lot of places. The problems of the nation are big complex and connected. Its only with work from many directions at once that there will be progress. Many of these issues are not new, but the sort of things which must be addressed again and again as the times change.

      I thought I had a rather bad history education in high school because it was the one subject where everyone was in the same class, regardless of academic level. There was no honors or AP history, etc. But from talking to people who went to other schools, especially more recently, I now realize I got a pretty good history education. Not only did we cover a lot of topics, there was a much wider range of opinions, questions, and points of view than in my other classes, and it made for much better debate. That bit about public education being to create informed citizens was something I heard in that class. It was something I heard from many teachers, and even some administrators.

      Maybe being part of the "baby lull" (in 76 when I was born, there was a zero birth rate), there were more resources, and smaller classes, for fewer students. We do seem to be coming up on an other "baby lull", and I know some local high schools now have fancy new additions but not the students to fill them.

      Education will always be "broken" because someone will always have something to sell to "fix it". Getting back to some basic principles and building from there will do us more good than chasing after the whims of industry. It seemed like from 2000 on we had this period of reinvention, where anything could be innovated, anything tossed out and tried a different way. it has produced plenty of failures, along with a few things that have worked, but when it comes to education, we are experimenting with people's futures. We are now remembering why things were done as they were, and suffering for it, but I also think we are slowly coming out of our "venture daze".

      So, one little piece of that whole big knot of mess is that kids need to be literate. That includes textual literacy, media literacy, and computer literacy, at a deep enough level, knowing how each is constructed and some practice in building it. If you do not understand how a medium works or is constructed, you can more easily be fooled and controlled by it.

      An yeah, I miss USENET, and I miss FidoNet.

    3. Re:An informed democracy - the role of education by bbsalem · · Score: 1

      I think that the dangers of Facebook have to do with its users barely understanding what technology is and what it does to them. Many Facebook users think they are posting private messages and are largely totally unaware of how thier presence is being manipulated by Facebook and its partners. I have seen friendships and relationships be threatened because of that, because people who think they are intimate don't realize that there is always a third party there. Think of a couple who are in a relationship and the man gets ads for singles sites. His partner doesn't know that he didn't request them but they came because of his profile status and data mining of his page.

      So understanding technology is necessary, yes.

  52. CHESS by johnrpenner · · Score: 1

    before you do algebra, you need to learn to multiply, and before that you need to learn to add and subtract.
    certain higher levels of abstract thinking require prior training in order to be of good use.
    getting a good grounding in the basics gives one better preparation to wield the forces of code.

    for the earlier grades —when they're still learning to add and subtract, and count their ABCs.. up to grade two and three, you cant even really assume that kind of stuff yet — kids grow slow, just like plants, and you cant just stuff it into them like cabbages — give them time to develop basic skills like recognising the 26 letters of the alphabet before giving them the ASCII code 65, 66, and 67 — give them the simplest introductions of a subject area gives them a better ability to start a good core understanding which will help them for a lifetime.

    a lot of what you learn in programming is not the requisite clear training in thought — but the semantics of a language, and the APIs which it is calling.. things which continuously change — distracting from the main thing — learning how to think clearly and logically.

    stripping all the semantics and APIs away — and just left with the six rudiments of logic to contemplate — the motions and interactions of the king and queen — how the rook and bishop move along vectors; how how the knights intersect in circles, and how variables advance and pawn chains interact — these are the kind of things that get children to think in abstract arrays and logical collisions. i would start Chess in Schools in grade 2, and every year the classes play each other.. with as much reward given as they do for other sports activities.

    train the national mind.. train the human mind.
    once they got chess down for a couple years — programming,
    starting in grade 7 and 8 should be a piece of cake.

    2cents from toronto island
    john penner

  53. Re:Certainly by BonThomme · · Score: 1

    well, that explains why the project is always behind schedule and over budget...

  54. Re:HELL NO by TheVelvetFlamebait · · Score: 2

    If you actually have a talent for writing software, you'll find out automatically.

    Bullshit. Kids have no way of recognising that aptitude in themselves. How could they? I find that people who haven't been introduced to computer programming previously have no idea what it entails.

    Also, I'd like to point out that programming in school is mostly about structuring your thoughts logically and a feel for how computers work, not professional coding etiquette.

    --
    You know, there is a difference between trolling and pointing out the flaws in your reasoning. Just saying.
  55. Logic by ZombieBraintrust · · Score: 1

    Everyone should be taught Logic. Code may be a handy way to teach it. But there are many ways to teach logic. If code isn't the best then it shouldn't be used.

    1. Re:Logic by gweihir · · Score: 1

      Well, yes and no. I once was in an lecture on introduction to logic for students of philosophy. I had to severely restrain myself from beating up the utterly incompetent lecturer and taking over his lecture. I had heard before that people had serious trouble with that lecture, and it became clear where fast why: The lecturer did not have a clue what logic was, how it worked, and how to teach it. He had no clue what an abstraction is. Quite funny that such people can get a PhD in Philosophy and a job teaching it. "Taught" that way, this is worse than not having learned logic. This cretin failed to explain basic propositional logic.

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

      Everyone should be taught Logic.

      Amusingly, having been taught too much Logic, I think everyone should be taught Statistics.

      I've studied basic mathematical logic. Digital logic design and optimization. Proof of correctness. Automatic theorem proving. Constructive mathematics. (Boyer-Moore theory, which is quite elegant.) Expert systems. Even "Dr. John's Mystery Hour", John McCarthy's AI course at Stanford. And I've used all that stuff. But not in recent years.

      Statistics, though, is a win for everybody. Everybody needs enough statistics to calculate the expectations on a Lotto ticket. Programmers need enough statistics to get into machine learning.

    3. Re:Logic by bbsalem · · Score: 1

      Everyone should be taught Logic.

      Amusingly, having been taught too much Logic, I think everyone should be taught Statistics.

      What they should be taught is inference and hypothesis testing and that they are different from correlation. The greatest misuse of statistics is to mistake correlation for causation, that is to supply the hypothesis without critically examining the inference.

      A famous case of this is the inference Nobel Prize winner William F. Shockley, then at Stanford, made in the late 1960's about Black people. Based on their scores on the Stanford-Binet Intelligence test he claimed that they were intellectual disadvantaged. He was not very careful about his choice of words of defining the inference he made carefully, and invited lots of criticism. In fact the raw statistics may have shown that Blacks at that time (N.B.) did score lower in intelligence tests. The flaw in that statement is the hypothesis it implies and what may be the errors in making any useful inference at all. Now we know that tests can be culturally biased, so that even words whose meaning is understood by most people, or the population from which the test was defined, may not be used by the minority, or that lack of quality in the educational resources of the time available to most Blacks put them at a disadvantage for having higher scores on that test.

      Shockley, being in physics and then an engineer may not have been as practiced at deciphering test bias as a social scientist usually is.

      I've studied basic mathematical logic. Digital logic design and optimization. Proof of correctness. Automatic theorem proving. Constructive mathematics. (Boyer-Moore theory, which is quite elegant.) Expert systems. Even "Dr. John's Mystery Hour", John McCarthy's AI course at Stanford. And I've used all that stuff. But not in recent years.

      Statistics, though, is a win for everybody. Everybody needs enough statistics to calculate the expectations on a Lotto ticket. Programmers need enough statistics to get into machine learning.

      Are you saying that you have never run across lists and lambdas in modern practice, odd?

      Everyone needs enough critical thinking skills to diagnose the misuse of statistics in places as notable as the houses of Congress, let alone the flood of poorly controlled and intentionally biased medical trials reported almost nightly where the reputation of science is being damaged by pay outs from Big Pharma. The sample sizes should give you a clue quite apart from the Central Limit Theorem.

  56. Yes and no by drolli · · Score: 1

    To a certain rudimentary level, i shoul be subject in the school.

    Like everything which is subject in a school, it can not be more than an opportunity to learn it and get interested in it.

    I am fine if the from the 95% which understand the world less than me 50% understand this fact.

  57. Re:The herding impulse by Bengie · · Score: 1

    Someone has to program the automation and that automation will have limits, and someone will have to program a better version. Anyway, someone needs to be able to describe a problem for a computer to automatically program it, and at that point, that is the new programming.

  58. I had to learn sportsing and to grammar. by Culture20 · · Score: 1

    The balls and sticks of sportsing are unused for me and grammar irrelevant. Don't start me with quadrivium although liking music.

  59. Replace pre-albegra by jader3rd · · Score: 2

    I was good at math in High School. I got a 5 on the Calculus AP test. But I never did understand that whole 'f(x)' thing. Why not just put 'y='. I basically gave up trying to wrap my head around why someone would ever write 'the f of x'. Then one day in University in my Introduction to Computer Science class the professor shorthanded a function declaration on the white board as 'f(x)', and years of middle and high school math all of a sudden made a whole lot more sense. I think that many students would be able to grasp the concepts of variables in math class sooner if they had a chance to use them in a couple of simple programs first. Plus they would enjoy a little bit of programming a lot more than pre-algebra.

    1. Re:Replace pre-albegra by gweihir · · Score: 2

      That is the only scope I can agree to some symbolic coding in: As part of teaching mathematics. That can be done well, in, e.g., Haskell.

      --
      Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
    2. Re:Replace pre-albegra by SerenelyHotPest · · Score: 1

      As an enthusiastic Haskeller, I think the correspondence between elementary algebra and Haskell is weak at best. Haskell would shoot way over the heads of most people taking early algebra. Applicative functors? Monads? Eta reduction? I don't see any analogs in early algebra. It would frankly reek a bit of new mathematics.

      Haskell might have strong utility in teaching the theoretical end of computer science, but I don't think it's developmentally appropriate for middle schoolers or high schoolers. It would interest one kid in a hundred and turn everyone else off of computer science.

    3. Re:Replace pre-albegra by gweihir · · Score: 1

      The thing is with Haskell, you can tech a small subset successfully _and_ you can mostly ignore technology. That is basically impossible with C, Java, etc. I have it seen working well in a CS 101 course focused on algorithms, up to the point that some students claimed this was not programming, but mathematics to explain why it did not give them the problems they were expecting. Another reason is that some of the notation (defining functions with different cases) is very similar the mathematical notation and approach. For example, recursion comes naturally in mathematics, yet most people struggle with it in CS. Why? Because the core of what is going in is difficult to see. Not so with Haskell.

      I agree though that teaching the full Haskell feature-set to beginners would be a big mistake and very likely fail. But there is no need to do that in order to have them do useful and illustrative things and gain insights.

      --
      Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
    4. Re:Replace pre-albegra by bbsalem · · Score: 1

      The factory school, the ones most of us attended, are somewhat inflexible about the different ways people learn and think.There may be too much emphasis on algebra in the middle-school and high school and not enough in geometry. In the history of math many of the problems presented in pre-algebra were fist solved as geometry problems, and can be solved as Cartesian graphs in today's world. So not only is a poly-modal approach better, e.g. draw me a picture, I am too blind to read the exponents of your algebraic expression easily; I can understand a geometric construction better.

  60. Waste of time and effort by gweihir · · Score: 1

    It is just like requiring everybody to play a musical instrument. Coding needs insight, talent and dedication. It is far more than hacking out lines of code in some language. It includes data-structure architecture and design, algorithm design and analysis, interface architecture and design, performance analysis, security, user interfacing, reliability, ...

    Unless a person has reasonable skill in all of these, the produced code will suck badly and be of negative overall worth. We need far less and far better coders, not more of them, or this whole house of cards will come crashing down.

    --
    Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
    1. Re:Waste of time and effort by Culture20 · · Score: 1

      It is just like requiring everybody to play a musical instrument.

      Yep. http://www.news-medical.net/ne...

      Coding needs insight, talent and dedication.

      Coding professionally requires insight, talent and dedication. Learning to code doesn't. All learning to code requires is the instruction of a new way of thinking that a vast majority people currently alive in the computer age haven't touched. I'll never be a professional musician, despite my having been a marching band captain in high school. I had the talent and insight, but not the dedication. Friends of mine went on to have careers in music (either teaching or playing professionally), but that wasn't for me. However, I am better for having learned it.
      Similarly with programming, I coasted through CS. Talent and insight galore. But I only wanted to code what *I* wanted to code, so I used my CS degree in something less programming-related (but I do have to fix scientists' code on occasion). Beyond scripting and fixing others' code, learning to code in procedural, logical, and functional languages helps me in work related tasks and every-day living. When computers become even more integrated into everything, it will be useful for the bulk of society to be aware of the limitations of computers instead of thinking of them as magical black boxes.

    2. Re:Waste of time and effort by gweihir · · Score: 1

      Sorry, but I completely disagree. Most people that can code well do not even understand these limitations. The only thing this will accomplish is making it harder to explain the limitations to people, as you now have to first overcome their misconceptions. It is part of my job to do so, but I regularly fail. Of course, one difference to music is that (unless the thing is showy but low quality), mastering an instrument takes a long time in addition to significant talent and that is generally recognized. In other engineering disciplines, this is also recognized. In CS, any cretin that can write some few thousand lines that sort-of do the job things they are a proficient coder. With very rare exceptions, they are not.

      Incidentally, if you "coasted through CS", you either missed all the important parts, or you had a really low-quality program. Nobody, not even the most talented folks can "coast through CS" if the CS program is done right, just as nobody can pick up a harp and play well without years and years of practice. It is just too far outside of the human skill range.

      --
      Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
    3. Re:Waste of time and effort by jader3rd · · Score: 1

      It is just like requiring everybody to play a musical instrument.

      I don't know about that. While learning to play the Recorder and the Trumpet were nice, I don't see how they ever helped me with any of my other studies. But a year of programming around 7th grade, would have really helped me with my math classes.

    4. Re:Waste of time and effort by bbsalem · · Score: 1

      By analogy, learning to type doesn't mean that you can communicate in writing, Even learning correct semantics in natural language doesn't mean that you said anything significant. You may not cause a compile error, "Sorry, I don't understand what you said.", but even this mastery is far from a high standard. So your program compiles but does not have the intended result. You failed to communicate what you wanted. To achieve this does require greater skill than just learning the mechanics of the task. Coders might have been key punch clerks in the days of card decks, but now the extra steps are not needed and the people who are tasked to make meaningful programs are also coding. The two tasks are not the same. I have poor vision and so cause lots of typos when I write natural language and when I code. I will never be a very productive coder, but given the number of bug fixes per line of code, I could be a more productive programmer, possibly. I have to admit that age has taught me that I am neither a productive coder or programmer. I may be more skilled at writing than programming, as it turns out, but the differences between them do matter.

    5. Re:Waste of time and effort by bbsalem · · Score: 1

      In music, requiring everyone to learn a musical instrument, or maybe to sing, or all the related skills, such as ear-training and sight-reading or singing, is really not the point of teaching music. Some people do not have the neural tools to do any of these tasks, but that doesn't mean that music has no value to them, or that getting them to do musical tasks in a classroom has no value. In fact, doing the simplest task, such as beating in tempo with others has far reaching cognitive value, even more important is counting beats and getting rhythms. The simple task of dividing note values and meters relates directly to mathematical skill. These tasks teach social skills too. The participants have to listen and cooperate. in fact even deafness is not a barrier to this sort of activity which can quickly evolve to very complex patterns used in drumming. Recently I heard a mathematician say that math is really about discovering patterns, period. That is the basic skill involved in any music. Musical form does not exist without remembered patterns weather it is a simple tune or drum beat or the extended structure of a Mahler symphonic movement.

  61. *sigh* by sootman · · Score: 2

    Alternate headline: "Should an article posing this question be posted to Slashdot every month?"

    --
    Dear Slashdot: next time you want to mess with the site, add a rich-text editor for comments.
  62. Re:Certainly by fred911 · · Score: 1

    "How many non-technical people do you know that provide corporal punishment to their computers when they fail to work quickly enough, we know it has no effect but they believe that such actions are useful."

    I do find that at least a daily use of a "three finger salute" is mandatory for most windows users.

    --
    09 F9 11 02 9D 74 E3 5B - D8 41 56 C5 63 56 88 C0 45 5F E1 04 22 CA 29 C4 93 3F 95 05 2B 79 2A B2
  63. Re:More important than coding... by gweihir · · Score: 1

    Actually, this is not more important that coding. It is critical, and good code is critical as well. If you cannot do both well, forget it.

    --
    Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
  64. Not a Priority by Capt.Albatross · · Score: 1

    First we need to ensure that everyone is competent in analytical reasoning and the ability to communicate clearly and accurately in human language.

    1. Re:Not a Priority by Areyoukiddingme · · Score: 1

      First we need to ensure that everyone is competent in analytical reasoning and the ability to communicate clearly and accurately in human language.

      I have bad news for you. Natural languages aren't any good at all for communicating clearly or accurately. Every single natural language is about nuance, and feelings, and innuendo, and multiple layers and multiple audiences and a whole host of dreck. Accurate descriptions of the world are not any part of natural language. Hence, mathematical language and programming language. We had to invent entirely artificial languages to even come close to your desire.

      So what's wrong with teaching programming, again?

    2. Re:Not a Priority by Capt.Albatross · · Score: 1

      First we need to ensure that everyone is competent in analytical reasoning and the ability to communicate clearly and accurately in human language.

      I have bad news for you. Natural languages aren't any good at all for communicating clearly or accurately. Every single natural language is about nuance, and feelings, and innuendo, and multiple layers and multiple audiences and a whole host of dreck. Accurate descriptions of the world are not any part of natural language. Hence, mathematical language and programming language. We had to invent entirely artificial languages to even come close to your desire.

      You are mistaken. Natural languages can be used to communicate clearly and accurately, as is unequivocally demonstrated by the global corpus of scientific papers. Furthermore, the global corpus of mathematical knowledge is by no means entirely, or even predominantly, in formal mathematical notation.

      Natural language can also be used in the other ways you list, because it is much more expressive than mathematical language, which in turn is more expressive than programming languages. This is understood by mathematicians and scientists, and even by a majority of computer scientists, I believe.

      This expressive power inevitably means there is considerable opportunity for abuse, or 'dreck' as you put it. This, combined with natural language's overarching importance, is why teaching how to use it properly is a priority.

      So what's wrong with teaching programming, again?

      Accurate communication depends not only on the sender's ability to state his intent clearly, but also the receiver's ability to understand clearly-expressed information. If you had that ability, you would have realized that my statement about priorities is not predicated on there being anything wrong in teaching programming. On the other hand, perhaps your failing here is in the area of analytical reasoning? This is an indication of why I have grouped the two together as a priority in education.

  65. Re:clickbait by Anonymous Coward · · Score: 1

    same reason they dont teach you how to fix a car, become a sous chef, or how to diagnose a disease. It is too specialized that most of the people have ZERO use for.

    ...

    They would be much better off having a mandatory course like parenting

    On the contrary, I think some basic knowledge of car mechanics, cooking, health, and I agree, parenting, is extremely helpful for a broad segment of the population. I'd even add to that list. I also believe every person should learn at at least an introductory level an instrument, a second language, a sport, and basic finance. Kids are busy, and knowledge of programming is beneficial, but may not be beneficial enough to require. In programming, or any of these other disciplines, there's no need to achieve expert level competence to personally benefit.

  66. Re: by davide+marney · · Score: 1

    Learn to manage money, or it will manage you.

    --
    "We receive as friendly that which agrees with, we resist with dislike that which opposes us" - Faraday
  67. Re:clickbait by turbidostato · · Score: 1

    "learning to code does nothing by itself."

    Of course not. That's why I presented (at least so I thought I did) programing as a tool to an end.

  68. Re:clickbait by Joce640k · · Score: 1

    I've seen the kids taught to develop powerpoint presentations, where the emphasis was on the visual aspects of the presentation, rather than on the soundness or validity of their arguments.

    And that emphasis is incorrect because...?

    --
    No sig today...
  69. Re:clickbait by ShanghaiBill · · Score: 1

    Correct. We should start with learning to read/write before we move on to the advanced stuff.

    So we should make every student learn at the pace of the dumbest kid in the class?

  70. Re:clickbait by Belial6 · · Score: 3, Informative

    I am lucky enough to homeschool. I do it primarily for the reason you would like to homeschool. In theory, public education should be able to offer a better education than homeschooling. Unfortunately, our public education system is so broken on every level, from parent to president. Most kids leave high school with what I would consider about a 7th grade education. Even colleges are spitting out graduates with only an 8th or 9th grade education.

  71. Re: by davide+marney · · Score: 2

    A good point. When I took geometry in HS I didn't like it and resisted learning it. It all seemed like just a bunch of arbitrary axioms that one memorized in order to solve puzzles, to my way of thinking. Later on in my education I ran across Euclid's Elements, and the way he put those axioms together into a logical system was a thing of beauty and elegance that I understood intuitively. Same content, but I only had the aptitude to understand it one way, but not the other.

    --
    "We receive as friendly that which agrees with, we resist with dislike that which opposes us" - Faraday
  72. Knowing how to USE versus Program computers by knorthern+knight · · Score: 1

    > At the very least, everyone needs to understand that their phones don't
    > run on magic. And maybe fewer people would look for source code by opening
    > an exe in Notepad.

    And now for the "Obligatory Car Analogy". Does every driver really need to understand the Carmot Cycle http://en.wikipedia.org/wiki/C... which is the basic theory underlying heat engines, including cars? Answer *NO*. Except for engine designers, most people only need to know how to *USE* their car...
    * If it's a manual transmission, don't push the engine RPM past the red line on the tachometer
    * If the "engine light" comes on, pull over to the side of the road and stop as soon as safely possible
    * etc, etc.

    Similarly, people need to know how to *USE* computers for their jobs, and at home. Just as everybody has "safe driving" pounded into their head, "safe computing" should also be taught.

    Learn the basics of spreadsheets, word processors, email, etc. Scripting languages, spreadsheet macros, etc are nice. But VBA and Visual Basic and C++ for everybody is not necessary, nor possible.

    --

    I'm not repeating myself
    I'm an X window user; I'm an ex-Windows user
  73. 100% Right. by brunes69 · · Score: 1

    Saying that "everybody should learn to code" is like saying "everybody should learn to change the oil in a car".

    As much as I would like that to be true, it never will be, and anyone who actually looks at this critically will see that both of these tautologies are stupid.

    Now, opportunity is a whole other ball game. Yes most definitely, everyone should be given the OPPORTUNITY to learn to code just like everyone should be given the OPPORTUNITY to learn about auto mechanics. That doesn't mean it should be required of anyone. I can't change the oil in my car and honestly I don't care, I pay someone else to do that. Just like my auto mechanic likely does not know how to write code, he pays someone like me to do that for him.

  74. Re:Basic Skills of the 3 Rs by Anonymous Coward · · Score: 1

    Reuse Reduce Recycle

  75. It's like band practice by swm · · Score: 1

    Along about 3rd grade, most schools offer musical instruction for a semester or a year.
    The kids come home one day carrying a flute or a trumpet or a drum kit,
    and they go to band practice once or twice a week and learn to make some noise\b\b\b\b\bmusic.

    Some have no interest and no aptitude and drop it pretty quickly.
    Some have some interest and aptitude and stay with it until they find other interests.
    Some go on to become musicians.

    I'd offer programming instruction on the same basis.
    But I'd put it off until age 12 to 14 (when the capacity for abstract thought develops).

    1. Re:It's like band practice by bbsalem · · Score: 1

      Teaching music in the elementary grades has far more value than just inspiring young kids to play. It is a cognitive exercise that has been shown to enhance concentration and skills general to learning language and math. Students who learn to count for reading and playing music, do better in reasoning tasks, particularly in math.

      It is more important to teach thinking skills, including those they are useful to programmers, especially some of the mathematical foundations to programming, than to how to code, per se. Critical thinking skills, rhetoric, in the classical meaning of the term, and how to speak and write down you ideas and arguments, should come before coding as a life skill. Coding should never be used as a substitute for these more general skills. Problem solving skills can be taught in the context of much more readily available tasks such as math and reading and writing. That includes scientific reasoning, symbolic logic, analysis ( not calculus) or problem decomposition and synthesis. Decomposition is a real life skill quite separate from coding. Learning how to reason to particulars and ignore the extraneous and how to prioritize your effort, especially emotional effort, is a skill not mastered well by most people. That it can be related to programming is nice, but its use is far more general. Teaching it does not require the particulars of a coding discipline, maybe sets are enough. Anyway, it might be more valuable to teach programming from the point of view of the mathematics it is based on, set theory, number theory, Lambda Calculus, at some point in advanced education, and I am not just talking about Computer Science. Even high school math students should get more number theory than just algebra.

  76. Re:clickbait by zippthorne · · Score: 2

    For example, I've seen the kids taught to develop powerpoint presentations, where the emphasis was on the visual aspects of the presentation, rather than on the soundness or validity of their arguments.

    You realize, of course, that this is also a valid skill in addition to having sound arguments or good information. The presentation of the information itself is something that is a valuable skill, and that includes how to insert various graphical features into a powerpoint presentation (or.. better.. some presentation software that doesn't bias toward powerpoint or keynote specifically) as well as when to use those features, and what to avoid.

    It's really easy to become enamored with all the various features and wipes and whatnot and be distracted from the presentation itself by all the visual fluff. A good presentation segment will include that stuff and why to avoid it as well.

    --
    Can you be Even More Awesome?!
  77. Misery Loves Company by stoicio · · Score: 1

    Is there some kind of global investment in hemmorroids that we are all unaware of ?
    What is the point of this ?
    Plant a garden people.

  78. How about getting the foundation corrected first? by 3seas · · Score: 1
  79. Re:In 20 years, nobody will know how to code by Culture20 · · Score: 1

    That's what they said ten years ago about today. It's nowhere near that point. Even with AI on par with a human brain, it won't reach that point. You want to know why? Because people state requirements incorrectly. A great programmer or project manager learns to annoy the client with seemingly repetitious questions trying to understand exactly what the requester means by "I want the program to file my tax return". I hope we never get to the point where the computer gets to decide what the computer gets to decide, because that way lies the madness of a holographic Dr. Moriarty capable of defeating Lt. Commander Data.

  80. Re:Certainly by Belial6 · · Score: 1

    Few jobs require math beyond basic arithmetic. saying "Math" is like saying "Computers".

  81. Just more astroturf lobbying to raise H1b limits by echtertyp · · Score: 1

    Does Dice Holdings take orders directly from Zuckerberg these days?

  82. No, just the principles by FuzzNugget · · Score: 1

    Should they be forced to spend time glued to a screen? Nah, probably not, they'll do enough of that on their own.

    Should programming's fundamental principles of logic, crucial thinking and problem solving be deeply ingrained? Absolutely. But programming is just one of many teaching tools available.

    If the learning process happen to strike oil with a child's interest and aptitude for programming, then by all means encourage it, but don't force anyone into a nonessential activity they don't enjoy.

  83. Re:Certainly by BrokenSoldier · · Score: 1

    It wasn't censored, except by me.

    --
    If it's not broken, let's fix it till it is.
  84. Re:No by nurb432 · · Score: 1

    Keep dreaming. When automation hits that point, the number of programmers needed will actually be reduced due to advances in technology.

    Most people will be out of work at that point.

    --
    ---- Booth was a patriot ----
  85. Re:Certainly by nurb432 · · Score: 1

    That is the math i was speaking of.

    --
    ---- Booth was a patriot ----
  86. Forgot Algebra by jader3rd · · Score: 1
  87. Yes, absolutely by synthespian · · Score: 1

    Yes, absolutely, let's take the "mystique" out of coding.

    Right now, I have software (written in Forth - because it's the ultimate language for DSL, I found), deployed for 6.000 patients that we use everyday, to churn out patient's prescriptions. In our public health system, patients get their free medicines for diabetes, hypertension, depression, hypothyroidism, asthma, etc (whatever is the "continuous" medicines the municipality pays for). They have a legal right to get them renovated. Doctors used to go crazy with renovating them by hand. It's no fun when you care for, say, 900 people with hypertension. Of course, this is not the U.S. (it's Brazil).

    Why did I write in in Forth? Because it was so fast to write a mini-DSL. I could not even believe it. I got that for *free*, in Forth - I got a free "readline", a free parser, strings whatever size they come (Forth strings are better and safer than C's), a database for free, etc. Concatenative stack-oriented programming is very restrictive. If your stack is wrong, the Forth compilers will bork right back at you. Since you' re doing concatenative programming, it's basically like a functional programming paradigm: you fit Lego blocks of code on other Lego blocks. Since you must do a lot of stack-testing, unit testing is immediate and obligatory, instead of a "practice" or "discipline" that you must incorporate to your workflow. If your stack ain't right, you break things now, so you know pretty soon if your code is ok or not. And keeping track of the stack might become burdensome, so you automatically start refactoring code (everybody's heard of Leo Brodie's refactoring masterpiece Thinking Forth, right?). You keep it simple. Basically, everything I read about how awesome Forth is, is true. As a matter of fact, I first got turned on to Forth when I saw a guy who'd written his very own CAD software (which blew my mind). When I asked him what language he'd written it in, he said: "Forth, because you can go from very low level (in his case - graphic primitives directly on the screen - no OpenGL, etc.) to a very abstract high level (Forth words that concatenate in a DSL)". I understand now that it wasn't so much that he was a genius (although he did have a degree from MIT...), but that he got the tools he needed (after all, you can get projective geometry "recipes" from a book).

    Initially, the software was in C (C and Forth can be deployed to any old trashy piece of hardware around, right? - this might actually be relevant, if you're financially constrained - which I don't expect anyone form a rich country to really understand), but then pointer indirection, parsing, data structures, file I/O in C, etc., just bored me out of my mind. Obviously, I understand people feel smart when they can write C-oid code with pointers to pointers but I found that to be stupid. This has to do with the fact that I met better languages (Common Lisp, for instance), before I met C, so I stand largely nonplused whenever I see someone claiming to perform advanced magic in, say, Java. Really? Java is a broken Smalltalk semantics with a C-oid syntax.

    Having no strings attached (meaning: no managers breathing down my neck, me being a physician), I decided to scratch the C code and just go all Forth (because I actually think that Forth, Smalltalk, ML(s) and Lisp(s) are the best languages out there). I used win32forth because it's public-domain, but the price for Forth compilers are very cheap (and just go look at the benchmarks...) and I might change to a proprietary Forth (better documentation would be the reason, and support). The code is ANS-Forth, 99% (and the part that isn't is easily changed) - by which I mean "portable".

    Although we're already deploying it in Real Life, I keep perfecting it (addicted to Forth). Right now, I',m fiddling with the Forth black magic - turn the compiler on, or off, etc. Stuff you really can't do in C/C++/Java without a huge amount of tools. Only in Lisp. But Forth is kinda of easier than Lisp, actually, I foun

    --
    Main difference between the BSD license and the GPL license: one is from California and the other is from Massachusetts
  88. Re:clickbait by Anonymous Coward · · Score: 3, Insightful

    I disagree wholeheartedly that learning to code is too specialized. We're in a transitional period right now where people specializing in computers are the ones writing code, but once society commits to the information economy fully, we'll start to see domain experts writing code for their domain rather than computer experts having to learn the domain (or collaborating with domain experts) to write the code.

    It's analogous to basic literacy. There was a time when specialists in various professions would seek out someone literate to do their reading and writing for them. Now, it's an expected skill for everyone to have. We're in that period for computer literacy. Eventually, everyone will be expected to write enough code to solve the problems they specialize in. There will always be computer specialists...the people who build the tools that everyone uses or people who's jobs require a higher standard of code. But we have that exact same situation today...journalists, writers, lawyers and many other professions are expected to have a higher level of proficiency with reading and writing.

    It's imperative that people understand this. We're entering a period where more and more people aren't able to offer any greater utility than machines, be they robots or simple software. First it was basic arithmetic where computers exceeded humans. Over time, we've added the bulk of our assembly line work. Even advanced tasks like playing chess are now best performed by computers. Google and others proving that human drivers will eventually be replaced. We'll soon realize that almost every job that doesn't involve some degree of creativity is on that list. Learning to code will be the primary defense against being replaced in your work by a machine.

  89. Re:clickbait by narcc · · Score: 1

    rather than on the soundness or validity of their arguments.

    A presentation in the form of a formal deductive argument would be awful dull, don't you think?

    I don't know of any elementary or secondary school that teaches sentential logic anyway. What makes you think a class in basic computer applications is the right place to integrate that subject?

  90. Re: Certainly by BrokenSoldier · · Score: 1

    Why is it relevant? You already know the answer.

    --
    If it's not broken, let's fix it till it is.
  91. Demystifying procedures by Antique+Geekmeister · · Score: 1

    I'd welcome more general instruction in programming, to give a better understanding of _procedure_ and of ordered sets. The idea that complex sets of tasks can be broken down to practical modules, to relatively small sets of less complex decisions, is one that is often lost in modern math and science and even history or language lessons. With that kind of grounding, later lessons in interrupt handling, prioritization, resource management, and error handling all have a foundation that can explain and demystify very complex problems in household planning, economics, and even political debate.

    It's very powerful material, and at the core of modern technology. It deserves early attention in education.

  92. Re:Certainly by Belial6 · · Score: 1

    You really need to be more specific. There are way too many people that lump basic arithmetic in with advanced calculus.

  93. Yes, but not for the job by Casandro · · Score: 1

    Our society gets more and more influenced by computing. Many decisions in society and economy require at least a basic understanding of what computers are.
    I believe that everybody should have at least a basic understanding of what computers are, and teaching how to program is a great way of doing so.

    Obviously you should use sensible languages like old BASIC dialects (with line numbers) or maybe some assembler, maybe also LOGO. More modern languages like C or Java aren't as well suited at teaching computing. Again the point is not to turn them into software developers.

    In fact you could even teach programming without a computer. There are "paper computers" out there which are like board games. There are even books like "Computer Science Unplugged" which show educational activities you can do to teach computer science to childrens.

  94. Teach It With Math by enter+to+exit · · Score: 1

    When teaching algebra, include a coding unit that shows the relationship between the two. This should cover the flow controls and functions. Teach first order logic as well. It will make sharpen their analytic skills and make them better citizens.

    Who's going to teach it though? Over the years the teaching profession has been eroded to mediocrity, with low entry standards and BS union ideological wars

  95. Re: Certainly by Your.Master · · Score: 1

    I bet he doesn't know the answer. Your particular religious convictions on the matter are not well-known.

    To the anonymous coward: this is typically a Jewish thing. There's a description here: http://www.jewfaq.org/name.htm. Basically, when you write "God" in some permanent form on something, you aren't supposed to ever let it be defaced or erased, so if you want to write something down that you aren't keeping forever you should use a euphemism like "the lord" or "G-d". Forum posts aren't permanent, but if any slashdot user hits print then it becomes permanent, so they wrote "g*d" to prevent their words from being eventually made permanent and defaced without their knowledge. It's kind of like how some people, particularly older people, in the US want to burn a flag as a sort of ritual purification if it accidentally touches the ground (although the flag thing actually arises from a misunderstanding).

    If that's *not* why BrokenSoldier did it, then I'm one more person who didn't "already know the answer".

  96. This Again? by SerenelyHotPest · · Score: 1

    I cannot for the life of me understand the reason(s) behind the cris de coeur that we should be teaching all school children / all unemployed / as many as possible computer programming. It's as strange as trying to teach everyone differential/integral calculus with the knowledge that it will provide a foundation for many STEM jobs, or demanding that everyone learn Greek and Latin because it will open doors to a classically styled education. Despite the merits of each, each is time-consuming and specialized enough that in most cases, it won't be worth the time. Seriously: knowing the history of mathematics will be far more useful to most people than learning Weierstrass substitution (assuming, falsely, that everyone could learn Weierstrass substitution).

    Rather than regurgitate the already well-articulated objections of others (read through 3+ rated comments), I'd like to offer that the only useful way I can imagine computer programming being incorporated into a K-12 curriculum is by showing how it can be used to trivially automate useful work and arrive at results in other domains, but I'd again say that the time needed to do so could be better applied to other things.

    Does the industry simply want to drive down wages that badly? There must be some recognition on their part that they'll never turn software creation into a dime-a-dozen job--at least not on the scale they'd like.

    Oh, and for the last time: computer programming != computer science, irrespective of what interest groups have told you. I know because I've done (some of) both.

  97. Let me Reiterate by Slashdotgirl · · Score: 1

    Absolutely Not.

    If you cannot read and comprehend and unable to do mathematics. Then you will not be coding. These two subjects alone are the basis for learning all the rest of the knowledge that us humans have acquired.

    If you are required to learn coding, then you should also learn to Sew and Cook as well, or some other useful skill. These skills are more important than learning to code, in order to survive in this world.

    Regards
    Slashdotgirl

    --
    The more I know, the less I know
    1. Re:Let me Reiterate by buybuydandavis · · Score: 1

      I can sew on buttons, and do. That's about it. I know a lot of grown ups who don't even own a needle. They get by just fine. People interact with computers a lot more than missing buttons.

    2. Re:Let me Reiterate by Slashdotgirl · · Score: 1

      Yes, people interact with computers in all sorts of ways. Obviously you missed the main point of what I was trying to say. That was, 'there are more important things to learn than to code'.

      Regards
      Slashdotgirl

      --
      The more I know, the less I know
  98. Programming is the best foreign language to learn by buybuydandavis · · Score: 1

    Computers are everywhere. Being able to effectively talk to them is important, and powerful.

    This goes back to that oft reproduced cartoon, of an office cube with a sign on it "Go away, or I will replace you with a small shell script." Particularly as robotics takes off, basic programming skills become more and more powerful.

  99. Should I learn ballet? by SpaghettiPattern · · Score: 1

    Should I learn ballet? And gravely insult many cultured souls and minds? I rest my case.

    --

    I hadn't the slightest objection to his spending his time planning massacres for the bourgeoisie... (P.G. Wodehouse)
  100. Re:Certainly by fisted · · Score: 1

    You must be fun at parties.

  101. computers don't help education by bigtreeman · · Score: 1

    Teach the little tikes how to learn, how to communicate and how to build good relationships with others.

    --
    Go well
  102. Every STEM major should learn to code by greggster · · Score: 1

    With computing being more and more ubiquitious, coding would be a good complement/replacement for will-never-be used higher-level calculus.

  103. Wannabes by dilvish_the_damned · · Score: 1

    I too get annoyed at virtuosos trying to play the violin without the proper Fortran running through their head.

    --
    I think you underestimate just how much I just dont care.
  104. Re:Certainly by x0ra · · Score: 1

    Brainy is the new sexy.

  105. Re:clickbait by Joce640k · · Score: 1

    No, we need to go back to separating out the dumbest kids and putting them in rooms with other kids who learn at the same pace.

    --
    No sig today...
  106. While they're at it.. by SuperDre · · Score: 1

    Also learn how to fix cars, how to cook, how to run a big company, how to extract plutonium, how to design buildings, how to fly a 747..

    What nonsense is this, oh wait, it's being promoted by someone who has a background in coding and got filthy rich with doing it..

    let's get back to the real basics, they already need to learn too much junk in schools even though most of it they would learn already in real life outside school..

  107. Re:clickbait by DoofusOfDeath · · Score: 1

    I think you missed my point. I'm not against them learning to use Powerpoint. I'm saying, they're being taught to use Powerpoint, but up through their senior year, I've seen *no* grading done on the quality of their presentation's logic. In any paper or presentation whatsoever.

  108. No by Adam+Jorgensen · · Score: 1

    I don't think everyone should learn to code.

    For one thing, it would probably lead to an increase in the number of grossly incompetent coders out there.

    For another, its debatable whether or not its even a relevant skill for the majority of people.

  109. Re:clickbait by narcc · · Score: 1

    I would assume that that's because it's not an important part of the assessment. You should be able to ask any of your kid's teachers for the rubric. You may find it both surprising and helpful.

  110. Socrates said it best: by coldsalmon · · Score: 1

    "At last I went to the artisans, for I was conscious that I knew nothing at all, as I may say, and I was sure that they knew many fine things; and in this I was not mistaken, for they did know many things of which I was ignorant, and in this they certainly were wiser than I was. But I observed that even the good artisans fell into the same error as the poets; because they were good workmen they thought that they also knew all sorts of high matters, and this defect in them overshadowed their wisdom..."

  111. Re: by tlhIngan · · Score: 1

    Learn to manage money, or it will manage you.

    I would count that under "Home economics" - how to do a budget, how to save, how to manage money, how to do your taxes (even if you still can't do them, at least you'll have the tools and know what to expect and need).

    Just like I would count "basic mathematics" as a skill that is reinforced through Home Ec. as well. If there's anything people need to do more of is to realize when things are a deal, how to adjust recipes and all that, which can be done using just basic arithmetic. With emphasis on how to do rough estimates on taxes and such mentally so you're not constantly reaching for the calculator.

  112. They should learn the basics (if not the BASIC) by Shirley+Marquez · · Score: 1

    The ACM said "ensure that every K-12 student in the US has the opportunity to study computer science". That isn't the same thing as "everybody learn to code" as the headline says; it's making sure that schools offer classes in computing so students can take them if they wish.

    But I would take it further and say that everybody, or at least most people, should learn the basics of coding. Writing computer programs teaches important lessons about logical thought: the importance of including all the necessary steps and including them in the correct order, and of not including steps that don't belong. Students used to learn that kind of thinking from proof geometry, but coding is a better tool because the computer itself provides fast and non-judgmental feedback, and because the actual skill of coding is more likely to be useful to the student.

  113. Coding is not math or a foreign language by bbsalem · · Score: 1

    I think that there is little value in teaching students to code as opposed to learning math, or logic, or a foreign language, all of which have been mistakenly substituted for by coding or programming classes at various levels. When I was in College 45 years ago I got away with not have to learn another modern spoken language because I was taking programming courses, learning FORTRAN. Now, that did get me some useful skill, I made a living for a time off that.

    Looking back on it, I regret not having to learn some French or German, for example, but I regard High School Geometry, learning Euclid, and a later course on Symbolic Math and Logic to be far more valuable. I am not arguing that some exposure be given to a programming language but as an extra, and I would advocate teaching python as opposed to java. Stay away from strongly typed declarative languages for this.

    A course in Critical Thinking and rhetoric or general semantics would be for more valuable. But I am sure that marketers and politicians would oppose that. It is possible that people whose first exposure to programming language was BASIC or Java could transfer those to other languages, but think of the number of people turned off by that.

  114. Re:clickbait by mdielmann · · Score: 1

    I'm no huge fan of powerpoint presentations, but clearly aesthetics are more important in learning how to use a tool to present your message in a visual manner than the logic or rationality of the message. It's almost as silly as teaching algebra in art class, just because ratios, perspectives and pleasing geometries have a mathematical basis.

    Now, why debating, logic, critical thinking, and the scientific method aren't taught to at least a basic level is a good question. It just has nothing to do with powerpoint, or marketing in general. Which is a pity.

    --
    Sure I'm paranoid, but am I paranoid enough?
  115. Re:clickbait by Hognoxious · · Score: 1

    Because the presentation is likely to contain as much useful information as your post?

    --
    Confucius say, "Find worm in apple - bad. Find half a worm - worse."
  116. No subject is vital. by Mars729 · · Score: 1

    No. Learning to code is necessary for only a small part of the population, although I bet most on Slashdot have tried a bit of coding.

    I don't think there is any subject important enough that I would recommend everyone learn it. Although on the other hand, it is easy to come up with arguments why this subject and that subject is useful.

    Unfortunately, the education system is not designed to be ideal environment for learning, far from it. http://www.johntaylorgatto.com...

    The key problem is teaching subjects kids are not interested in at the time it is taught. Very few kids have the option of learning things in school in the order they want. Gobs of time is wasted trying to shove down information kids are not motivated to learn.

  117. Re:Better learn to be specific ! Reciples by bbsalem · · Score: 1

    Object Oriented Programming was meant to provide recipes. Some factory turned out the code to do that task. The problen is that you sill have to learn where the method fits in your universe. It is like asking where to recipes come from in the first place? So we are past the urge to start from scratch every time we solve a problem and now get to use templates or other abstractions to help us, but we still have to understand them and that can be as hard as gong back and using the language primatives.

    I say that you still have to know where recipes come from from and to extend the analogy with cooking you have to know what the ingredients are and what they do and if methods are like ingredients, that can be almost as hard as starting fresh. First because OOP often fails on poor documentation and if your only fix from that is to read the source, the logic for you is turned entirely on its head. You see the objects first and the bewildering set of methods the dev has chosen to define, which are often not complete or orthogonal, so practically it can be next to impossible to use a package effectively. Real life is not as simple as you suggest because people are lazy and stupid, the Universal Human Condition, by "stupid" I mean unaware, so some very intelligent people can be stupid, in fact very intelligent people are often more stupid than people of average intelligence. That shows up when you look at their code and it doen't really help that they have used OOP unless they have mastered orthagonally, which many have not. I know that code patterns are supposed to address this lack, but there is no way to enforce it except by proving programs have symmetry.

  118. oh, definitely by NAFV_P · · Score: 1

    They should teach all kids some nasty language x86-assembly. 99% of them will have forgotten all of it by the time they become adults, but they will never forget how frustrating it is to perform simple operations on a machine. As a result, far less people will complain about computers and coders, especially that annoying boss of yours who constantly repeats "just get it done".

  119. Much More Useful by eyendall5185 · · Score: 1

    Learning to cook would be a much more valuable life-skill.

  120. I'd say by NewYork · · Score: 1

    YES. Some simple language like HTML will do,

  121. In today's world - yes by shagie · · Score: 1

    When you go to the car mechanic to get your car fixed, you've got some idea of what it will cost. It may bot be a good one, but its an estimate that you've got in your head. Maybe a $300 part and two hours labor at $100/hour or whatever insane rate they charge, so $400 to $600.

    Today's world is becoming more and more with someone working with a programmer.

    It may be as programmer themselves (and anyone who been on the searching for a good applicant side of an interview knows its hard to find good programmers) - we need more programmers more than we need another person working at Mc Donald's. Certainly, not everyone can be a professional programmer, but I'm sure there's a lot falling through the cracks of society never realizing that they want to be a professional programmer (or for that matter, can).

    It may also be someone hiring someone to do a job. A small business person hiring someone to write a front end to a database for a CRM, or website, or whatever. Look on eLance some time and glance at the estimates that people have - "I want a Facebook clone in 2 weeks for $500." Try not to laugh too hard. They are out there asking for such absurdities. Thats almost like going to the mechanic and expecting that part to cost $0.50 and the person to work at $5/h... um, no.

    By having an idea of what can be done, and an inkling of an idea we get clients and managers that aren't going to want *everything* done today. Well, they will still want it, but when you tell them the actual price and timeline, they'll maybe not think that we're trying to rip them off (while we sit back and click on webcomics and write our own Facebook clone all day... or at least thats what they think we do).

    There's also the aspect of people becoming a bit more literate in computing itself. They'll hopefully have an idea of what a computer can and can't do. No, cookies aren't stealing your information - the key logger that you installed with that game you downloaded is. The cloud is not affected by the weather. So on and so forth...

    Looking at the number of people who have interactions with computers today compared to 20 years ago, I suspect that more people work with computers in one way shape or form than their own oven... unless its a microwave oven, with an embedded... oh yea. Computer literacy and basic ability to write a program is almost as important as regular literacy and being able to write an essay. It doesn't mean everyone will do it every day, but its becoming basic life skills in today's world.

  122. No — all coders should learn to dance by gig · · Score: 1

    No, everybody should not learn to code. Instead, all coders should learn to dance. That will be more productive. Also, it will teach the coders to STFU about everybody else learning to code.

  123. Use with Caution by Tablizer · · Score: 1

    Production coding is something that is not practical to half do, otherwise you'll create more problems than you solve. Amateur coders often write difficult-to-maintain code, creating longer-term headaches. If it's a small personal project, that's fine. But if it grows into a production-dependent application, then it's best to make sure it's engineered with maintenance in mind. Otherwise, staff will be married to a big tangled ball of twine.

  124. Re:clickbait by Hognoxious · · Score: 1

    once society commits to the information economy fully we'll start to see domain experts writing code for their domain

    We've been in the automobile age for over half a century, and how many people can do basic maintenance and simple repairs on their cars, let alone make one?

    Before that hardly anyone made their own horseshoes.

    There was a time when specialists in various professions would seek out someone literate to do their reading and writing for them. Now, it's an expected skill for everyone to have.

    Computer literacy doesn't involve programming any more than normal literacy involves knowing how to make paper and ink.

    --
    Confucius say, "Find worm in apple - bad. Find half a worm - worse."