Slashdot Mirror


Ready CEO: Coding Snobs Are Not Helping Our Children Prepare For The Future (qz.com)

jader3rd writes: Quartz has an article written by the CEO of Ready, David S. Bennahum, about how public education should be embracing computer science, and how existing programmers don't like these efforts because they feel that doing so will result in kids being exposed to programming in a manner different then how they were introduced to it. Bennahum writes: "Writing software today is eerily similar to what it was like in the late 1950s, when people sat at terminals and wrote COBOL programs. And like the late 1950s, the stereotype of the coder is largely unchanged: mostly white guys with deep math skills, and minimal extroversion. Back in the Sputnik-era, people thought of programmers as a priesthood in lab coats: the sole keepers of knowledge that ran these exotic, and mysterious room-sized machines. Today the priesthood is a little hipper -- lab coats have long given way to a countercultural vibe -- but it's still a priesthood, perhaps more druidic than Jesuitic, but a priesthood nonetheless, largely comprised of white men." "Instead of attempting to lure code-literate teachers away from Silicon Valley, we need to revolutionize the way coding is done. Rather than fit the person to the tool, let's fit the tool to the person. Pop computing can help us get there, offering a gloriously diverse array of tools to match our gloriously diverse species. It's only a matter of time before the process of making software itself is transformed, from one that requires a mastery of syntax -- the precise stringing of sentences needed to command a computer -- to the mastery of logic. Logic is the essence of software creation, and the second step after mastering syntax.'

22 of 342 comments (clear)

  1. Terminals in the 1950s? by ClickOnThis · · Score: 4, Insightful

    Writing software today is eerily similar to what it was like in the late 1950s, when people sat at keypunch machines and wrote COBOL programs.

    Not to mention that the person doing the keypunching was not necessarily the person who wrote the code.

    --
    If it weren't for deadlines, nothing would be late.
  2. I want to physically wound "the CEO of Ready". by Anonymous Coward · · Score: 2, Insightful

    Whenever I hear antiwhites spouting their retarded PC BS, I want to physically wound them. This is the only healthy reaction to all these buzzwords and this revolting idea that "everyone is the same". No. They're not. People of different races and the two genders are very different. This is not something bad. This is, ironically, *diversity*. Each race has its pros and cons. Females and males excel at different things. There will naturally always be a few exceptions. Having to point these obvious facts over and over (usually to deaf ears) is really tiresome.

    Now fuck off, David S. Bennahum, and the rest of you psychopaths who are trying to bend biology to fit your retarded misconceptions of the world.

    1. Re:I want to physically wound "the CEO of Ready". by Anonymous Coward · · Score: 4, Insightful

      "When I see high school freshman creating their own apps, and they absolutely love doing it, I see the future of cheap and exploitable labor for the corporation."- David S. Bennahum

  3. Mastery of logic? by TimTucker · · Score: 2, Insightful

    Seems quite odd that he says that coding shouldbts require deep math skills, but then goes on to say that it requires mastery of logic. Did someone not enough math classes to realize that logic is a branch of math?

  4. "White Men" by Anonymous Coward · · Score: 5, Insightful

    Hate the way race and gender keep getting snuck into articles like this, just stop it already, it's not important.

  5. The priesthood is benevolent by jdavidb · · Score: 3, Insightful

    existing programmers don't like these efforts because they feel that doing so will result in kids being exposed to programming in a manner different then how they were introduced to it

    Right, we don't like it when you do it in a way that is unlikely to be effective in helping more people learn to program and learn to enjoy programming. Because most of us like nothing more than the joy of spreading the love of programming.

    white guys ... largely comprised of white men

    Oh, baloney. My university UTA was nicknamed the "University of TenThousand Asians." I'd go to the computer lab and come out with an accent. I once commented that a coworker who was flying back to Boston didn't sound like he was from Boston because he had a "normal midwestern accent" and a startled colleague said "jdavidb - he has a thick Indian accent! What are you talking about?" I didn't even notice because that was just normal to me.

    Most programmers I know at least online have a leftist or multicultural bent, and nearly all of them love to help new programmers who show an aptitude.

    My kids are homeschooled and are learning to program, and we're quite multicultural with weekly attendance at a bilingual church. I don't think more institutionalized schooling is the solution here, and it's not that I want to reserve programming to a priesthood of white men.

  6. Uh, no. by Anonymous Coward · · Score: 2, Insightful

    While we're at it, let's revolutionize medicine, too. I'm sure the doctors will appreciate not having to know how the human body works, because someone built a fancy tool that's supposed to do it all for them while they still call themselves Doctors.

    Meanwhile, I like being alive, so I'll keep my current well-trained doctor, thanks.

  7. Re:IQ 135+ by Darinbob · · Score: 5, Insightful

    The idea that the old style was bad because it required "deep math skills" is wrong headed. Computer science *requires* deep math skills; computer science is a branch of mathematics essentially. The writer wants us to focus on logic, but logic is mathematics!

    If we lower the bar and say that we just talking about 9-to-5 programming for a basic salary with no leadership or design expectations, then maybe you don't need any math or engineering or domain knowledge. But that's not aiming high, that's aiming for an entry level job that lasts 40 years.

    We're not trying to keep people out by being snobs, instead we're trying to stop the long slow decline of computer science and computing. There are applications of computers that require absolutely top notch people, especially as the uses of computers become more common you want computers to be designed, built, and programmed by very smart people. Do you really want to fly on a plane programmed by someone who skipped college because it was too time consuming?

    Look at the math this way..
    Student: I don't need to learn boring calculus because computers can do that for us. I'm a cool programmer dammit, not a math nerd.
    Teacher: Ok, write a program to take the derivative of this equation.
    Student, one week later: This is too hard... Don't they have experts for this sort of thing?
    Teacher: Never mind. Just give me the burger and small fries.

  8. CEO should spend time shadowing a programmer by Anonymous Coward · · Score: 5, Insightful

    Hey CEO Asshat;

    Please go follow around a programmer for a week, a la "dirty jobs".

    Why is it this guy seems to think that "programming" is going to become building blocks that you slap together?

    Someone still needs to build those blocks. A brickmaker isn't a Mason, but a programmer needs to be both.

    It scares me that these Executive types think making software can be reduced to the simplicity of making Big Macs on an assembly line.

  9. diaf by phantomfive · · Score: 3, Insightful

    "Writing software today is eerily similar to what it was like in the late 1950s, when people sat at terminals and wrote COBOL programs. And like the late 1950s, the stereotype of the coder is largely unchanged: mostly white guys with deep math skills, and minimal extroversion

    The guy who wants to change the world, can't keep from relying on stereotypes to understand the world.

    Also programmers don't tend to have 'deep math skills' (including myself). It's just that compared to this CEO, understanding basic algebra counts as deep math skills.

    --
    "First they came for the slanderers and i said nothing."
  10. Re:Tab users are subhuman by OrangeTide · · Score: 3, Insightful

    spaces for indent is bloat!

    --
    “Common sense is not so common.” — Voltaire
  11. What the hell? by CaseCrash · · Score: 4, Insightful

    We're not opposed to all this bullshit "everyone should code" crap because we're anti-social curmudgeons; it's because we all understand that it's just meant to try to flood the job market with cheap labor.

    --
    No, that link you posted to a web comic we've all seen a hundred times is not "obligatory."
  12. Re:Sorry, but you will still need to work for it. by Darinbob · · Score: 3, Insightful

    Intuition is not logic. Logic is necessary, but as the original author seems to not understand, logic is a part of mathematics.
    Analyzing an algorithm is mathematics. Proving that the sort algorithm has a minimum of n*log(n) is mathematics. Math is everywhere in computer science.

    Vector calculus is everywhere in computers. You need it to graphics, so even the kiddies who only want to write games need to know that. You need it to solve equations. You need it to know how to multiply matrices (no fair using a library, because you are the one assigned to write the library, in assembler).

    Statistics is everywhere in computers too. You think people do stats long form on paper? Big data crunching needs stats, little data crunching needs stats, scientific computing needs stats, even social media web apps need stats. Forget computers, that's a red herring here, you need statistics for every day life as well!

  13. More like writing vs being a writer by UnderCoverPenguin · · Score: 5, Insightful

    Most people have enough writing skill to write messages and/or email (or even letter via postal mail), but very very few have the aptitude needed to be a professional writer.

    Similarly, you can teach programming to a lot of people, but very very few will have the aptitude to become real software developers.

    I'm all for teaching kids programming. Probably will find a few more who do have the aptitude than would come forward on their own.

    Just don't expect a new "army" of software developers. We already teach kids writing, but very very few ever become real writers. No different for software developers.

    --
    Don't try to out wierd me, three-eyes. I get stranger things than you, free with my breakfast cereal. --Zaphod Beeblebr
    1. Re:More like writing vs being a writer by Bengie · · Score: 3, Insightful

      I would extend 'Just don't expect a new "army" of software developers' to also include to not push kids into programming or give them a false hope by dumbing it down then telling them how much money they can make.

  14. Whatta dope by Anonymous Coward · · Score: 5, Insightful

    I'd like to force guys who think like this to fly in a jet plane designed by a generation of aviation engineers who didn't need to do all that dopey math and science stuff the the current priesthood forces on its members, or drive across big bridges designed by civil engineers who didn't fall for the idea that they needed to learn about the minutia of stresses and strains and building materials and soil types.

  15. 1990 wants its 4 GL back by avandesande · · Score: 3, Insightful

    Seriously? Programming is the trivial part. The further I have gotten in my career the less coding I do- figuring out requirements and how to make business workflows work is the hard part and don't require coding.

    --
    love is just extroverted narcissism
  16. Re:Misanthropy by Anonymous Coward · · Score: 3, Insightful

    Having dealt with human beings occationally throughout my career, my professional advice is to avoid interacting with them when possible, and bear it as best as you can when there is no other option.

    I would have loved to be a "people person". At a young age I saw how self-centered, narrow-minded and generally stupid (not people who are genuinely retarded, but worse - they refuse to think) most people really are. They can't even comprehend that it's rude as hell to needlessly block doorways, let alone understand the finer points of etiquette. Whatever they want, they feel entitled to it. When someone else wants the same, they're "wrong" somehow. They lie to themselves and each other at an astonishing rate, without realizing (or caring) how transparent they really are.

    They pour tremendous energy into TV and shallow social media, treating these things as if the drama and minutia of people they don't know and probably haven't met are really important, while the mystery and wonder of life happens right in front of them, unnoticed. They take things like tech for granted, never gaining any skill over time, never having the slightest curiosity about how something might work. They call tech support and wait on hold for 30-45 minutes to ask questions that are in the first pages of the FAQ, the help file, the README, the web site, etc. They ask the store clerk where something is when they're standing in front of it and they do it routinely - ask anyone who owns a store. They just generally hate lifting a finger to do anything on their own. Nothing is ever their fault including their poor lifestyle choices.

    They like vague reasoning when it supports what they already do, and get upset anytime it doesn't. Yes, interaction with these people is generally to your own detriment. Avoiding them is best. You're not going to successfully change them. I would love to be a "people person" but not in such an unenlightened culture. Not in a culture that thinks being a self-centered douchebag (ironically, in the same manner as many others) is the same thing as being an individual.

    I wasn't always a misanthrope, but contact with these people has made me into one. The best you can do is find a good man/woman to settle down with, and carefully select a few friends who don't fit the general social pattern. Carve out your own little niche of people who aren't like this, be grateful that you could, and enjoy what you have.

  17. Re:IQ 135+ by dgatwood · · Score: 5, Insightful

    The idea that the old style was bad because it required "deep math skills" is wrong headed. Computer science *requires* deep math skills; computer science is a branch of mathematics essentially. The writer wants us to focus on logic, but logic is mathematics!

    You're both wrong. I started writing software before I knew what multiplication meant. Computer science, with the sole exception of the statistics-heavy research that you do at grad school level, doesn't require even the most basic math skills. They're completely and totally orthogonal. The fact that the computer is doing lots of math under the hood doesn't mean the programmer needs to know or care. In fact, the fallacious belief that CS uses lots of math and thus must be hard is the primary reason that so few people take an interest in CS, even though far more people are capable of understanding CS than, for example, trig.

    The reality is that writing software is nothing more than telling computers what to do, then figuring out why your instructions didn't have the desired effect. To write software, you have to be able to understand the syntax, and you have to be able to simultaneously look at small details (e.g. the code in a particular function) while putting them in the context of a larger whole (the program). You have to be able to understand how small changes in one place can have huge effects on the opposite side of the app by being able to visualize data flow from point A to point B. None of these things involve math; it's all spatial relationships and abstract thinking.

    Incidentally, the student in your example is right. 99.999% of programmers won't ever need calculus. In seventeen years in the industry, I haven't used calculus even once. The highest math I've dealt with was a bit of matrix math and various transforms (e.g. DCT, FFT) between time domain and frequency domain. And even then, I can count the number of times that I did that on one hand. And not once did I ever have to actually implement the transform, because there are already implementations for such things that you can bring in as libraries. Most of the hard math is already done for you. This does, of course, mean that there must always be a few math nerds involved in writing computer software, because somebody has to create and maintain those libraries, but the vast majority of programmers just need to understand what it does at a very high level.

    By contrast, every programmer needs to get good at architecting software properly. Of course, you can somewhat learn that as you go along, so long as you're exposed to good code and can use it as an example (or bad code, and can use it as a cautionary tale).

    We're not trying to keep people out by being snobs, instead we're trying to stop the long slow decline of computer science and computing. There are applications of computers that require absolutely top notch people, especially as the uses of computers become more common you want computers to be designed, built, and programmed by very smart people. Do you really want to fly on a plane programmed by someone who skipped college because it was too time consuming?

    Now let me turn that around. Do you really want apps on your phone written by people who are used to writing software for the avionics systems on aircraft? Those folks churn out code at a rate that is orders of magnitude too slow. Different types of software require different types of programmers. There will always be a few people who need to do mission-critical, low-level coding. The rest of the software world can then import their framework and design apps to use it, and there's nothing wrong with that.

    If we lower the bar and say that we just talking about 9-to-5 programming for a basic salary with no leadership or design expectations, then maybe you don't need any math or engineering or domain knowledge. But that's not aiming high, that's aiming for an entry level job th

    --

    Check out my sci-fi/humor trilogy at PatriotsBooks.

  18. Since when was syntax considered the hard part? by istartedi · · Score: 4, Insightful

    Since when was syntax considered the hard part? Most people in introductory courses grasp it quickly, except for maybe a few tricky things like * in C being overloaded for pointers and multiplication. Otherwise, the logic has always been the hard part.

    --
    For all intensive purposes, "whom" is no longer a word. That begs the question, "who cares"?
  19. Re:IQ 135+ by dgatwood · · Score: 3, Insightful

    Unless you want to spend your life doing academic research, if you're learning CS, you're learning it with the intent to use it writing software. So in practical terms, yes, computer science and programming are basically the same thing the moment you step off that platform with your degree in hand.

    With that said, computer science includes a number of related fields. Programming is just one aspect of CS as a whole. Many of the others fields use even less math, and a few of them use more. For example:

    • Computational complexity involves math, but it barely even resembles traditional math.
    • Design methodologies (OO versus procedural versus data flow versus...) has minimal math.
    • Software engineering methodologies (waterfall versus scrum versus....) has minimal math (though you might want to know statistics).
    • Computer graphics may or may not involve lots of math, depending on what layer you're working at.
    • Computer security has very little math, with the exception of the crypto subspecialty, which is math-heavy.
    • Networking has very little math unless you're working in certain subspecialties such as routing, where you might need to know graph theory.
    • Databases involve very little math.

    And so on.

    --

    Check out my sci-fi/humor trilogy at PatriotsBooks.

  20. O(nlogn) vs O(n^2) by hsthompson69 · · Score: 4, Insightful

    Understanding the difference between finding duplicate records by walking through a million record database and comparing each record against all other records, and doing a quicksort and just looking for duplicates as you step through the list in order, is real math. It ain't calculus, but if you don't understand the deep math behind efficient algorithms, you can't be a great programmer.