Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!

 



Forgot your password?
typodupeerror
×
Programming Communications

'Programming Is Hard' Considered Harmful (acm.org) 526

theodp writes: The commonly held belief that programming is inherently hard lacks sufficient evidence," begins CS Prof Brett Becker in [an article published in the journal Communications of the ACM]. "Stating this belief can send influential messages that can have serious unintended consequences including inequitable practices. [...] Language is a powerful tool. Stating that programming is hard should raise several questions but rarely does. Why does it seem routinely acceptable -- arguably fashionable -- to make such a general and definitive statement? Why are these statements often not accompanied by supporting evidence? What is the empirical evidence that programming, broadly speaking, is inherently hard, or harder than possible analogs such as calculus in mathematics? Even if that evidence exists, what does it mean in practice? In what contexts does it hold? To whom does it, and does it not, apply?"

Becker concludes: "Blanket messages that 'programming is hard' seem outdated, unproductive, and likely unhelpful at best. At worst they could be truly harmful. We need to stop blaming programming for being hard and focus on making programming more accessible and enjoyable, for everyone.

This discussion has been archived. No new comments can be posted.

'Programming Is Hard' Considered Harmful

Comments Filter:
  • The Actual Danger. (Score:4, Insightful)

    by geekmux ( 1040042 ) on Wednesday July 28, 2021 @05:08AM (#61628923)

    You're right. Programming isn't hard. Any child can Learn to Code. So can barely-competent adults, which is why we have so much shit code out there.

    Secure Programming, IS hard. And the actual dangerous mentality, is dismissing it.

    The end result, is the hyper-hacked world we live in now.

    Stop assuming anyone can do this "educators", and learn that much like the rest of IT, doing it right really means most aren't cut out for it.

    • by spikesahead ( 111032 ) on Wednesday July 28, 2021 @05:10AM (#61628925)

      Wages don't lower themselves, you need a lot of hopeful fodder to fill out the bottom ranks.

      • Wages don't lower themselves, you need a lot of hopeful fodder to fill out the bottom ranks.

        What is the cost, of a bad ransomware attack that you cannot easily recover from?

        What will be the ongoing cost, of cybersecurity insurance premiums because you've failed to meet their "premium rate" standards, or even their "basic" standards?

        When it comes to CMMC, what is the cost, of a NO-GO government contract with a Prime?

        One day we'll learn. Budget shit. Expect shit results.

        • by TWX ( 665546 )

          The actual costs aren't realized because no one is suing the companies whose products lead to the hacks into bankruptcy.

          In my humble opinion this needs to happen.

          • The actual costs aren't realized because no one is suing the companies whose products lead to the hacks into bankruptcy.

            In my humble opinion this needs to happen.

            Have you read an EULA recently? You accepted that their software isn't fit for use in any environment and you agreed to hold them harmless no matter what happens due to use of their software.

            Don't like it? You're free to use something else.

            • by JonnyCalcutta ( 524825 ) on Wednesday July 28, 2021 @08:14AM (#61629533)

              A bad EULA is only enforceable because it is allowed to be enforceable. In most jurisdictions you cannot override actual legislation with a contract or EULA, so in principle we can legislate that software must be fit for expected use and that the supplier can be held liable for repercussions from use of software.

              I mean, Hasbro could put an EULA on dolls stating that they cannot be held liable for any damage from the doll, but if they make the insides from broken glass and razor sharp spikes that EULA will be worthless. Why is it different for software?

        • by Kokuyo ( 549451 ) on Wednesday July 28, 2021 @07:22AM (#61629277) Journal

          Why do you think ransomware attacks happen in companies with incompetent IT?

          I work for a provider... We host virtual environments with varying degrees of customer autonomy.

          We've jsut helped recover 200 VMs and 180 databases (about 15 TB) from a crypto hack...

          Let me tell you, the security holes in this company were astounding in their degree of obviousness. This company did EVERYTHING wrong.

          The IT staff knew about it and had informed management YEARS ago.

          One thinks the real problem is lack of accountability for C-level managers no longer with the company when their labor bears fruit.

          • A lot of problems in the world like insecure software, dangerous products and like would go away if executives were personally held responsible and got jail time for it. Instead they hold all the power and none of the responsibility. Tell everyone to cut corners to maximize returns and you are financially rewarded. When it eventually blows up and ruins people's lives you get away with a golden parachute when you should be held criminally liable. The ongoing Ebay case is a good example. They are jailing unde

        • by znrt ( 2424692 )

          What is the cost, of a bad ransomware attack that you cannot easily recover from?

          how could programming skills save you from a ransomware attack? you know that most of them use social engineering?

          i get your point, there is a world between the crappy but useful visual basic app and a well designed and efficient library which follows good practices, but you are overhyping security quite a bit. actually, that's not the main responsibility of programmers anymore but of a whole lot of experts working around them, form qa engineers to cryptoanalists. if your security depends on your programmin

      • They need to be doing the system testing, writing test scripts and manuals that are the jobs the decently competent hate, and do badly.

    • by allcoolnameswheretak ( 1102727 ) on Wednesday July 28, 2021 @05:29AM (#61628965)

      You're right. Programming isn't hard. Any child can Learn to Code. So can barely-competent adults, which is why we have so much shit code out there.
      Secure Programming, IS hard. And the actual dangerous mentality, is dismissing it.

      Not just secure programming. Talking about generalized "programming" without being more specific doesn't give it justice. It's like talking about "construction" or "painting".
      Is construction hard? My toddler can build a decent skyscraper out of building blocks. But if you're talking about building the next Burj Khalifa you can bet it's hard.
      Is painting hard? Anybody can paint anything. But if you want to paint the ceiling of the Sistine Chapel you better have Michelangelo level painting skills.

      So is programming hard? It depends on the level of what you're programming. Security, like you mentioned, is hard, but so is programming in a well-designed and structured manner that favors modularity and extendibility. Programming modern 3D graphics is hard, and dynamic systems... programming a Hello World application is not so hard.

      But it's probably safe to say that programming as a whole requires much more ramp-up and training than construction or painting, because there is no human intuition or motor aktivity for programming. It's a completely abstract thing of the mind.

      • by arglebargle_xiv ( 2212710 ) on Wednesday July 28, 2021 @05:53AM (#61629033)
        It's not just programming, it's just about everything. Brain surgery isn't hard, you just need a really big hammer and perhaps a chisel. However, successful brain surgery is a lot harder. As you point out, building a skyscraper isn't hard, but building one that won't fall down is. Building one that won't fall down and is pleasant to live in is even harder. Driving isn't hard, in fact someone who's never driven before can get around quite well after a few minutes' instruction if they're in a BMP3 and it doesn't matter what they destroy in the process. Driving well is really hard, as anyone who's been on the road with others will know. etc.
    • Secure Programming, IS hard.

      To be fair, one of the most important patterns of secure programming is "don't roll your own security / string / date / younameit-handling" which is less work as you are expected to use existing libraries in favor of writing your own code. Less work, more secure.

    • by gtall ( 79522 )

      Secure programming is hard. More generally, quality programming is hard in the engineering sense of adequately covering the requirements, pointing out defects in requirements and helping to close those defects, knowing what tools exist and how to use them effectively. In this sense, engineering concentrates on context as well as technical problem solving. The reasons we get crappy code are the usual reasons for failing to invest in nailing the context down properly (for whatever reasons: cost, efficiency of

    • by Opportunist ( 166417 ) on Wednesday July 28, 2021 @05:53AM (#61629031)

      It's not hard. It just requires understanding what you're doing. Why you write it this or that way. Why you test for an edge case. Why you use parameters instead of just stuffing unsanitized user input into your code.

      If you don't understand why you do that, you will again just cargo-cult program your way through it. Use parameters in your SQL queries because "that's best practice" without even knowing why. Which leads to a whole load of new security issues, and when you point them out to those idiots you are met with blank stares and a drooled "but I parameterized it".

      • It's not hard. It just requires understanding what you're doing.

        Programming is not hard for people whom programming is not hard for.

        We often look at everyone as possessing the same skillsets/outlook/termperament as ourselves. CS Prof Brett Becker is looking at his own talents and assigning them to everyone. Or if it was actually as easy as he claims, he needs a visit to the Deans office, then replaced with a code monkey.

        If code is easy for a person - that's good. If they have the temperament for it - that's great.

        • I'm sure the good professor has some unique insight toward successfully educating people in the (universally accessible?) art of programing. /eyeroll
    • by Pimpy ( 143938 ) on Wednesday July 28, 2021 @06:14AM (#61629093)

      It also used to be incredibly difficult to find competent programmers that were capable of writing performant, scalable, and asynchronous code for multiprocessor and massively parallel systems. Perhaps it's changed now, but at least ~20 years ago CS programs were not preparing students for programming these sorts of systems and it was less work to take fresh EE grads and teach them how to code than it was to try and get CS grads to do effective systems programming.

      • It also used to be incredibly difficult to find competent programmers that were capable of writing performant, scalable, and asynchronous code for multiprocessor and massively parallel systems. Perhaps it's changed now, but at least ~20 years ago CS programs were not preparing students for programming these sorts of systems and it was less work to take fresh EE grads and teach them how to code than it was to try and get CS grads to do effective systems programming.

        Let's get you modded up. Informative or insightful will work.

      • I got paired in college with a EE guy in a C class once, the guy was a whiz with hardware but he just was not getting the hang of writing code. I tried to walk him through it but I ended up doing all the work myself. So he ended up passing without learning much of anything.
    • I watched a youtube video today, now I can be a plumber, mechanic, electrician, doctor and a programmer.
    • Actually writing code isn't hard. But it should be treated like an art. You give a 4 year old a paint bush and paint they can paint. Painting isn't hard, but we value the paintings done by artists who have honed a lifetime of practice to the craft. You can hand a child a musical instrument they can normally get it to make a noise. (with perhaps some training on some instruments like the flute and trumpet which needs a particular skill to get them to play a sound) but we value those who have played and r

  • by Anonymous Coward on Wednesday July 28, 2021 @05:12AM (#61628929)
    Harmful to whom? Web designer monkeys who claim that they can become full stack developers easily after a week because they already know HTML? Programming is hard if we are talking about proper software engineering and not slapping together a shitty WordPress theme.
  • He's wrong (Score:5, Insightful)

    by nagora ( 177841 ) on Wednesday July 28, 2021 @05:12AM (#61628933)

    Programming in its essentials consists of solving a problem, breaking that solution down into logical steps, and then explaining it to a computer. Anyone with experience of real people know that the first two steps are hard. The actual typing of the solution into a specific language is the easier part, but it's still tricky.

    In conclusion: Prof Brett Becker spends too much time with people who are good at these things and not enough with ordinary people who find the idea of a "website" too difficult and ask me why X can't just be on Facebook instead. Because that's not a website, apparently.

    Those people are not going to invent the A* algorithm any day soon.

  • Unless you're autistic or using drag & drop "coding". Computer science these days is like modern pop music.
    • Too expensive and doing the same crap over and over?

    • I've been hearing this "it's all the same" criticism of "modern pop music" for 20 years now.

      • Perhaps coming from people who grew up in the 80s, when we had music that was both diverse, and awesome.

        But, then, older generations critiquing the music of younger generations goes back at least to classical antiquity.

  • by blahplusplus ( 757119 ) on Wednesday July 28, 2021 @05:16AM (#61628943)

    ... because code is just a tool you use to solve problems. Programming is literally your mental models of the world translated into something a computer can handle. The problem is not that anyone can code, it's that programs are only as good and intelligent as their creators.

    Not only that that the space is so vast because it's literally taking human thoughts and approaches to problem solving and trying to automate and compute them. So it's infinitely deep.

    This is why people who want to really learn how to code usually force themselves to take all the hard classes either during their early adulthood or later in life because they come to understand that programming is problem solving and for that you'll need mathematics and backgrounds in subjects like algorithms, etc. You can do useful things on your own without advanced education but that usually only applies to people with drive, curiosity and work ethic. Since coding downloads a lot of mental effort onto the programmer when doing things that are non-routine and non trivial.

    It's part of the reason most software sucks, because they are only as good as our knowledge and inventions surrounding computing. There are plenty of computing revolutions we won't be around for we're at the beginning of computing historically as a species.

  • Programming is hard, and it's a fact. It's not a belief. You can use other emotion-soothing words, and that changes nothing. You can promise all the visual editing and "reads-your-mind AI" which makes things easier and that again won't change much, because then you're a user (of shitty software), not a programmer. Programming is challenging, requires effort and is more suitable for analytical brains. Analysis is better suitable for analytical brains. Not impossible for others, but it's challenging. Don't b
    • "reads-your-mind AI"

      That won't help when even you don't know what you want to achieve :)

      • Well, the users (oh,sorry, programmers!) and the businesses happy to drink that kool-aid will find out the hard way
        • To be fair, I don't think either of them know what they really want. Business certainly doesn't, and because they're the ones formulating the specs (if you can call them that, they are usually not at all formal) which are then turned into programs, programmers don't know either.

    • Programming is hard, and it's a fact. It's not a belief. You can use other emotion-soothing words, and that changes nothing. You can promise all the visual editing and "reads-your-mind AI" which makes things easier and that again won't change much, because then you're a user (of shitty software), not a programmer.

      As soon as you are using anything as simple as cout() you are using libraries. Learning how to find and use the proper tools for what you want to achieve is the majority of bread-and-butter programming.

      • Sure, but that promotes the idea of "With the existence of SO, programming is a solved problem". I'm not saying drill down to assembly, but, as I've read it somewhere by somebody more eloquent than me, it's good to know and understand a couple layers below the one you're typically programming on.
  • There I've fixed for him.

    Anyone can be taught to program. Primary school children have learnt for years.

    Understanding the problem and producing high quality, bug free, efficient code is a different matter.

    • by Erioll ( 229536 )
      A recent story [thedailywtf.com] from The Daily WTF summed this up well: "It's ironic that the biggest obstacle to automating programmers out of a job is that we are terrible at our jobs."
  • Programming is hard not because of the language, the mathematics of it, or similar factors (though these do contribute); programming is hard because you're talking to a machine, not a fellow human, and unlike a person, the machine won't assume you meant one thing when you said ~your mother~ another, nor will it ask for clarification, so you need to be super precise in telling it what to do, which leads to the difficulties in algorithmics, which is commonly touted as the reason programming is hard. Programming requires you to be exacting and precise to a fault, something that's not demanded of you in everyday conversation, so it naturally feels taxing and hard to do, forcing you to expend additional brain cycles just to formulate a sentence.

    Simply put, if you tell the machine via the command prompt to eat its own disk, it won't question you, it will dutifully eat its own disk.

    What language you use has very little bearing on how "hard" you'll find programming, I think. Some may be more conducive by virtue of their syntax, but it's not a "make or break" thing.

    • the machine won't assume you meant one thing when you said ~your mother~ another, nor will it ask for clarification, so you need to be super precise in telling it what to do

      The exact point of linters, strong type systems, and if one wants to go hardcore, automated theorem proving on code, is to have the machine "ask for clarification". The problem is that lazy programmers prefer to just tell the machine to "do what it thinks" instead of "asking for clarification", that's how you get weak typing and all sorts of strange assumptions. People prefer something that is quick to develop and wrong over something that is slow to develop and right.

  • I'll agree that creating a program that compiles and works in a particular circumstance, has become easier over time.
    But creating a system that fulfills all its written and unwritten!!! requirements is really hard, and despite all the libraries out there, not getting easier.
  • by jimbobxxx ( 1019396 ) on Wednesday July 28, 2021 @05:36AM (#61628983)

    What is the empirical evidence that programming, broadly speaking, is inherently hard, or harder than possible analogs such as calculus in mathematics?

    So for something to be 'hard' it has to be harder than calculus. Or brain surgery, or finite element analysis, or mapping the human genome. (Or learning a foreign language perhaps)

    Not harder than 'tying shoelaces', or 'opening a door'.

    Seems that programming is not hard, for sufficiently difficult values of "hard"

  • TFA says:
    > Hollywood typecasts embodying the hacker stereotype, staring at screens while 1s and 0s quickly stream by, present programming as a mystical, supernatural ability.

    He's not wrong, programming is a lot like magic:

    1. You use an arcane tongue, incomprehensible to outsiders
    2. You manipulate forces infinitely your greater
    3. And then a daemon comes and ruins everything...
  • Arithmetic is taxing for many. Variables just stumps them outright.

  • Programming is just a tool you can learn by training. Just beeing able to use an electric drill and a saw you still won't be able to construct a wooden bridge without lots of other skills. These other skills incluce communications, understanding real-world processes, modelling and selecting useful abstractions, and lots of others, depending on the field of business you are programming in. Some of those skills will be harder for some, others easier for some. Programming itself is probably one of the smalle
  • Copy/pasting stuff from stackexchange without having the foggiest clue what's going on and tweaking it until it kinda-sorta-maybe works, at least under most circumstances, isn't hard.

    It's that understanding bit that is.

    But hey, keep telling people that cargo cult programming is ok. I'm in IT security, I call that practice job security. As long as you convince people that they can program because they know how to google their problem, find a snippet of code that does what they want to do and they frankenstei

    • Nowadays, that is what recruiters want. 10+ years of experience in React, Angular, Vue, and 15 other frameworks, most of which haven't even been around for 10+ years. But NO requirement to actually understand what these frameworks do, or even of basic HTML, CSS and Javascript.

      Making it VERY hard for those of us who do understand to differentiate ourselves.

      I do that in part by simply declining opportunities where the framework-of-the-week is listed as a necessary qualification, whereas the core technologie

  • by e**(i pi)-1 ( 462311 ) on Wednesday July 28, 2021 @05:55AM (#61629037) Homepage Journal
    Mathematics is hard. who says otherwise has not proven a new theorem or tried to understand a substantial proof. It is not called a 'hard science' for nothing. Of course there are parts of mathematics which are easy and accessible but the entire field is hard. Programming is hard. who says otherwise has not programmed something substantial. Yes, there are parts of programming which are easy (copy paste code from somebody else for example), but writing new code from scratch requires mathematical skills as well as experience. writing elegant new code is even an art. Yes, it is a language, but programming requires to understand every detail, every possible turn. Here is a way to organize levels of understanding and each subsequent one is substantially harder than the previous one: a) being able to read it. b) being able to write about it c) being able to work with it d) being able to question or extend it e) being able to teach it f) being able to program it. I'm a mathematician who does lots of programming, mostly doing experiments. It happens almost daily that I believe to understand something, I program it and it does not work and finally, after some time, when things are working on the computer, I also start to understand where my misconceptions were. The statement "programming is easy" is pure propaganda.
    • by MrKaos ( 858439 )

      Whitespace is hard.

    • "Hard science" means having clear and well-defined answers, like a hard surface, unlike a soft surface that is flexible and twistable, like "soft sciences" (psychology etc.) where there is often no one testable right answer.

      "Hard science" doesn't mean that it's difficult compared to non-hard sciences. Many people out there find hard sciences more difficult than psychology. But many others find the reverse. How many therapists can write a sorting algorithm? How many programmers can talk a suicidal person off

  • by Arnonyrnous Covvard ( 7286638 ) on Wednesday July 28, 2021 @05:57AM (#61629045)
    If I say it's easy, I'm condescending or discouraging, because the learning curve hits harder if they believed it's easy. If I say it's hard, I'm sending a harmful message and discouraging, because they won't even try to learn.
  • by davide marney ( 231845 ) on Wednesday July 28, 2021 @05:59AM (#61629049) Journal

    The challenge of programming is that the language is too elemental to be easily used by human language writers. An analogy I sometimes use to explain this to my non-coding friends is that programming is like painting the Mona Lisa using a box of 64 Crayola crayons: to get that specific shade of blueish greenish red on the edge of her veil, it's 3 medium strokes of Sea Green, 2 hard strokes of Brick Red, 1 light pass of Sky Blue followed by a gentle rubbing of Black then Euro Grey.

    So, is painting the Mona Lisa with crayons "hard"? Well, it's complicated -- many small, precise steps that must be combined together exactly in order -- but no, it's not complex -- that is, inherently difficult to understand.

    I do think the author is making a valid point about using the term "hard" too loosely. If that scares away people from exploring coding, that's not a good outcome. Instead, we should invite people to give it a go. Who knows, it might be just their cup of tea.

  • such as for electricians. Telling young aspiring electricians that a 460V/3P 600 Amp circuit is dangerous is definitely "harmful".

    I don't know about you,,, but in college I personally found Donald Knuth's Art of Computer Programming to be easy. Anyone can code the next Google or autonomous driving system!

    While we are at it, why don't we say building anti-gravity machines is easy, and it will suddenly become easy. We can finally be free from the constraints of reality!

  • Someone with zero programming experience can sit down and learn the basics of many beginner languages in hours to a few days. They'll be able to program, but it will still take them years to understand the ins and outs of the language, determining which language is the best fit for a given problem, being able to break down that problem in a logical way and address it effectively, etc. there is also no guarantee that the person will be able to break down and structure a problem in such a way, particularly if

  • I don't understand how people who are so intelligent miss the mark on stuff like this.

    We we say an activity is 'hard' its a short hand way of saying that its an acquired skill. "Programming" can mean a lot of things. A shell script with a handful of if statements might be programming. I would not say its hard. Just like wood working. Framing a wall, its simple like the shell script you can teach a habitat crew that has never swung a hammer before to do it in a few hours, they won't compete on speed with

  • Programming is Hard or rather complex. Not unlike football, plumbing, welding, heart surgery or the person's job at the DMV. Can anyone program? Sure just like anyone can attempt just about anything with enough effort. Even then there will be some folks whose skills, talents and knowledge rise above their peers. These are the experts... idk I think handing out goldstars to everyone and reinforcing the fact that everyone is special has caused some huge disunity in much of society.
  • Most people don't have the specific imagination and critical thinking required to be proficient in advanced math - and most people don't need it !

    We should treat coding skills the same.

  • Most programming today is done by 18-34 year olds, many self-taught. By 34(ish) most people have burned out of the modern software development world and/or been pushed out by age discrimination. The problem is one needs 30 years of experience in both life and software development, and then to take the time to read Dijkstra's full set of essays (all that have been published anyway), to start to understand what he is getting at. Was/is he right about everything? No. But I see software failure and dysfunction

  • by Gonoff ( 88518 ) on Wednesday July 28, 2021 @06:45AM (#61629149)

    I have heard people say say that mathematics is hard and only strange people are good at it. This is more of a fashion statement. Children are then pressured by their peers to be poor at maths. This is just the same thing. The outstandingly dim for some strange reason are trendsetters and seek to persuade others down to their level.

  • by RobinH ( 124750 ) on Wednesday July 28, 2021 @06:46AM (#61629157) Homepage

    We need to stop blaming programming for being hard and focus on making programming more accessible and enjoyable, for everyone.

    That is literally what the industry has been doing since the birth of the computer, and is why we constantly invent new (and sometimes even better) programming languages, higher level languages, new language constructs, better tools, etc. We do this because, you know... programming is hard!

    What do you call BASIC, Pascal, Visual Basic, VBA, and Python? All of those were ostensibly aimed at making programming easier and more accessible to the masses. What about Logo? What about fluent interfaces? What about domain specific languages? What about Scratch? What about all the no-code stuff? Those are all attempts at making programming easier.

    Besides, the difficulty I face every day isn't the syntax or the structure. It's the disconnect between what the user expects a system to do, and what a rational system actually can do. "No, I can't give you a report of cost per kilogram until you tell me how you want to handle the SKUs that we order by the meter."

    I'm more concerned about what the author is insinuating. How would "programming is hard" be inequitable? Is the author insinuating that only cisgender white males are capable of doing hard things? Because that's absolute bullshit of the tallest order!

  • then it's shit. Trying to create a generation based on dumbing down, instant gratification, and self-entitlement is not gonna end well. If you want it done well, you work hard. Then, some day, you reach an age when you don't have to work very hard as often as you did when you were younger. You may choose to continue to work hard, if getting very good results is what you're really into in life. This is how the world works. The shoulders on giants on which we stand did not belong to people who were afraid of
  • ...It's just a figure of speech?

    Personally, I suspect that if someone is turned off from doing programming by the simple phrase "programming is hard" then yeah, they really shouldn't consider dedicating their life to writing code?

  • by ScentCone ( 795499 ) on Wednesday July 28, 2021 @07:07AM (#61629203)
    Gosh, telling people it's hard might result in "inequity!" Break that down: he means that when you tell EVERYONE that programming is hard, some checkbox people are inherently - by way of what, skin pigment? chromosomes? - more likely to retreat nervously into their safe, incurious, intellectually underpowered spaces. This sort of Coddling In The Name Of Equity is pure poison.
  • Some people have the knack, others don't. Programming is like giving an autistic child very clear instructions and realizing that you made a huge fuckup when "clean the dishes" was interpreted as "Wash every single plate in the house". Downplaying the difficulty of a valuable skill in constant demand is harmful, as those without the knack will think far less of their ability to do it.

    How many of you had a parent or teacher yelling at you for not being able to do something that's "easy" but you couldn't unde

  • People are lazy, thinking is hard. That's why computers were invented, so people could think less.

    For anyone who likes thinking, programming is fun.

  • His premise seems to be that everyone agrees "Programming is hard", with no further qualifications. I've rarely heard anyone made such a claim. So it seems like he's fighting against a strawman. It should be obvious to everyone it's often not the programming as such that is hard, but all the things that surround the programming. This is also the reason why the silver-bullet tools that let everyone be a programmer don't work out - because they only address the actual programming, and not the stuff that is ac
  • Looking only at the HARD aspect of programming makes limited sense. Many kids consider programming to be "hard and boring." Notice, this is not a trade off. When you watch kids play certain video games you realize that "hard" alone is NOT a reason NOT to engage in activities. But if there is no clear return on investment then you have a serious problem. Why should I write a program to compute "boring" prime numbers?

    It should not be surprising that there is a gigantic leap from the way, say, "programming" is

  • by mveloso ( 325617 ) on Wednesday July 28, 2021 @07:18AM (#61629257)

    Programming (or software development) is a dynamic multidimensional problem. It's not hard if you know how to do it.

    All you have to be able to do is model a few thousand (or occasionally tens of thousands or more) of things in your head at a time. Simple!

  • We've been developing software for 70+ years and the historical record shows that it is, indeed, hard to do well.

    For what it's worth, my own conjecture is that it's partly due to something akin to the Peter Principle: software requirements (functional and non-functional) converge to a level of difficulty such that developers are marginally capable of delivering them.

  • Everything is easy, to someone who has the aptitude and the determination to acquire the skill and interest in utilizing it.

    In my college CS-1 was held in a 700 seat amphitheater. CS-8 was held in a 25 seat classroom.
    The students who dropped from CS lacked one or all of those traits

  • If someone wants to learn, they will. All this talk about getting everyone involved in programming is getting old. Getting into programming is very accessible. Buy a computer, get on the net and learn. If you canâ(TM)t afford to buy a computer or access one there are other challenges more pressing beyond the scope of trying to interest people in coding that you or your community need to address. A powerful rig is not required to learn basic to advanced coding. I started when I was very young. The
  • I don't know what people are going on about. Anyone can cook. Just the other day, I cooked a 12 course meal in 30 minutes. I mean, sure, everybody died after eating it (I forgot that raw chicken and pork should be heated, and not left outside for 3 days), but it was super easy to make.

    There's not even any evidence that cooking is hard; after all, there's a million cooking TV shows out there! I saw this one, Molto Mario, where the guy makes fresh pasta in a few minutes while talking to Michael Stipe! He just

  • Accessibility caused this in the first place by allowing mediocre talent near it.

    Like saying we can fix civil engineering failures such as bridges collapsing by making the work more accessible to more common people.

  • In days past, I had to write the text system for a paint application.
    Read the Adobe Type 1 font file, find the glyph, parse the data, write the spline routine,
    write the flood fill, write one again that worked.. push them pixels... all in assembly.

    Now it is just: Display(attributes,"text")

  • by noodler ( 724788 ) on Wednesday July 28, 2021 @08:11AM (#61629519)

    From the article:

    More studies need to include a greater diversity of all kinds including but not limited to ability, ethnicity, geographic region, gender identity, native language, race, and socioeconomic background.

    Why would any of these properties change the difficulty of programming? The author for sure doesn't give good reasons for why these aspects of diverse humans would make a difference. Yet he calls the idea that coding is hard outdated. What an idiot.

Someday somebody has got to decide whether the typewriter is the machine, or the person who operates it.

Working...