Slashdot Mirror


'Coding Is Not Fun, It's Technically and Ethically Complex' (qz.com)

An anonymous reader shares an article: For starters, the profile of a programmer's mind is pretty uncommon. As well as being highly analytical and creative, software developers need almost superhuman focus to manage the complexity of their tasks. Manic attention to detail is a must; slovenliness is verboten. Coding isn't the only job that demands intense focus. But you'd never hear someone say that brain surgery is "fun," or that structural engineering is "easy." When it comes to programming, why do policymakers and technologists pretend otherwise? For one, it helps lure people to the field at a time when software (in the words of the venture capitalist Marc Andreessen) is "eating the world" -- and so, by expanding the labor pool, keeps industry ticking over and wages under control. Another reason is that the very word "coding" sounds routine and repetitive, as though there's some sort of key that developers apply by rote to crack any given problem. It doesn't help that Hollywood has cast the "coder" as a socially challenged, type-first-think-later hacker, inevitably white and male, with the power to thwart the Nazis or penetrate the CIA. Insisting on the glamor and fun of coding is the wrong way to acquaint kids with computer science. It insults their intelligence and plants the pernicious notion in their heads that you don't need discipline in order to progress. As anyone with even minimal exposure to making software knows, behind a minute of typing lies an hour of study. It's better to admit that coding is complicated, technically and ethically. Computers, at the moment, can only execute orders, to varying degrees of sophistication. So it's up to the developer to be clear: the machine does what you say, not what you mean. More and more "decisions" are being entrusted to software, including life-or-death ones: think self-driving cars; think semi-autonomous weapons; think Facebook and Google making inferences about your marital, psychological, or physical status, before selling it to the highest bidder. Yet it's rarely in the interests of companies and governments to encourage us to probe what's going on beneath these processes.

30 of 359 comments (clear)

  1. So is life by Geoffrey.landis · · Score: 4, Insightful

    "It's Technically and Ethically Complex"

    You could say the same about living.

    --
    http://www.geoffreylandis.com
    1. Re:So is life by Anonymous Coward · · Score: 3, Insightful

      Yeah. Also, I think coding is fun. I did hobby coding ever since I was a child. For fun. Still do.

      Maintaining a real-world product brings all the non-fun that comes with any job...but the coding in-and-of-itself is fun.

      I don't think that makes me a freak. Maybe I am wrong...and I will admit to a few of the stereotypical social challenges, but even so....coding is fun.

    2. Re:So is life by zieroh · · Score: 3, Insightful

      Yeah. Also, I think coding is fun. I did hobby coding ever since I was a child. For fun. Still do.

      Agreed. Programming is an enjoyable experience for me. Hard, yes. But also creative and satisfying. And I'm not alone -- the best programmers I know were drawn to programming because it was something they enjoyed.

      So I call bullshit on the "coding isn't fun" theme.

      --
      People who say "sheeple" have about as much sophistication as an AOL user, and in fact are probably actually AOL users.
    3. Re:So is life by DuroSoft · · Score: 5, Insightful

      I also call bullshit. Coding is fun. Product management, dev ops, and putting out fires and meeting customer needs is a lot less fun. But this unfunness can also be present even in small open source projects. All it takes is tons of users writing in wanting feature changes or experiencing/reporting bugs (or asking if you could please re-write the project in Rust), and you'll start feeling just like any fledgling startup. So I revise my statement -- coding is fun when done for oneself as a creative and intellectual exercise. Share that code, however, and you will be on a pathway to unfunness, but on the other hand people will reward you for that unfunness, so it's really a matter of balancing the rewards with the inherent unfunness of the activity.

    4. Re:So is life by ghoul · · Score: 5, Funny

      Surgery is fun. Cutting is FUN!!! .Its keeping the patient alive, making sure that sterile environments are maintained, making sure the nurses dont leave instruments inside the patient and closing up which is unfun.
      In order to reduce the cost of medical care in the US we need to attract more kids to surgery.

      I propose holding an hour of Surgery event in every elementary school where you do surgery on a frog and prescribe laxatives to guinea pigs.

      Also 7 days surgery bootcamps where anyone without any science background is taught to operate on dogs.

      Also automation. Robots do surgery much better than humans

      Alas none of this is going to happen as the American Medical Association has basically bought both parties. Wish the ACM was as good as the AMA at protecting the privileges of programmers

      --
      **Life is too short to be serious**
    5. Re:So is life by TheRaven64 · · Score: 2

      The other thing TFA seems to be missing is that we're not trying to teach everyone some programming because we expect that they will become programmers, we are teaching them programming because it is going to be as relevant to any job as writing was a hundred years ago. Sure, there are some jobs that don't require it and more where you can get away without doing it or doing it badly, but they're increasingly few.

      Even if the only programming that you do is a little bit of VBA to automate some common task in Word or Excel, it will probably save you a lot of time overall. Even people who don't work in offices end up having to do some programming. Before he retired, my stepfather was head groundskeeper on a golf course, a job about as far from computers as you'd hope to find, yet he was responsible for an irrigation system that was configured using a domain-specific (graphical) programming language.

      --
      I am TheRaven on Soylent News
    6. Re: So is life by HornWumpus · · Score: 2

      Under marxism, everybody who works is a sucker...

      --
      John McAfee 'It was like that time I hired that Bangkok prostitute; to do my taxes, while I fucked my accountant'
  2. It's only typing by rudy_wayne · · Score: 2

    The number one problem is that programming involves typing on a keyboard. And so, to politicians and all the other clueless, computer-illiterate masses, programming is nothing more than a simple, routine function that can be handled by any low-level clerk or secretary.

  3. because it is fun by phantomfive · · Score: 4, Insightful

    If you don't think programming is fun, then you're really missing out. The reason so many people work on open source code for free is exactly because it is fun, and we can see that the quality of code from people doing things for fun can be quite high.

    If programming isn't fun for you, then something's wrong. Maybe you have a manager who completely stifles you, or maybe you only glue together libraries other people wrote. I can see how that wouldn't be much fun. Or maybe you have a manager who writes code, gives it to you, and says, "here, debug this." That would be hell. Either way, if your job is programming change stuff around until you can really see what is so much fun about it, otherwise you're in for a miserable career.

    --
    "First they came for the slanderers and i said nothing."
    1. Re:because it is fun by mujadaddy · · Score: 5, Insightful

      If you don't think programming is fun, then you're really ---

      --- not a programmer?

      --
      Populus vult decipi, ergo decipiatur...
      "Force shits upon Reason's back." - Poor Richard's Almanac
    2. Re:because it is fun by phantomfive · · Score: 3, Insightful

      Not only that, these people coming in saying "programming is not fun" are making it worse for the rest of us. Because they don't know how to self-manage, crappy processes (like 'agile' from people who never read the manifesto) get imposed to make sure we keep working. Bad designs get built by people who don't enjoy it, and then the rest of us have to work in that code.

      Fixing other people's bugs is indeed not fun. If you don't like programming, I suggest you stay out and not make things worse for other people. Or learn why it's fun.

      --
      "First they came for the slanderers and i said nothing."
    3. Re:because it is fun by mujadaddy · · Score: 2

      Sure: I put up with the rest of it because I get to program.

      --
      Populus vult decipi, ergo decipiatur...
      "Force shits upon Reason's back." - Poor Richard's Almanac
  4. THose two things aren't exclusive by AuMatar · · Score: 5, Insightful

    Its complex. And its fun. Part of the reason its fun is that it is complex- if it was easy there'd be no challenge to it. If you don't find the challenge fun, you're in the wrong profession and will be happier elsewhere.

    --
    I still have more fans than freaks. WTF is wrong with you people?
    1. Re:THose two things aren't exclusive by Luthair · · Score: 2, Interesting

      Lets be honest though, if you aren't working in algorithms most of the work doesn't have a whole lot of complexity. Its usually a small part problem solving then a lot of time implementing & testing.

  5. yeah right by phantomfive · · Score: 3, Insightful

    As well as being highly analytical and creative, software developers need almost superhuman focus to manage the complexity of their tasks. Manic attention to detail is a must; slovenliness is verboten.

    Attention to detail? Slovenliness? These people must not have looked at much corporate code, there's a world of kludges out there.

    --
    "First they came for the slanderers and i said nothing."
  6. What is ethically complex? by 140Mandak262Jamuna · · Score: 5, Insightful
    What do you mean by ethically complex I don't know.

    Not all of us writing code to throw the switch of a railroad track with an unstoppable locomotive barrelling down towards a group of three deaf people who could not hear it coming, while there is an invalid in a wheelchair on the side track who could not get out even if he could hear it coming. Most of our coding examples are considerably less ethically complicated.

    --
    sed -e 's/Chuck Norris/Rajnikant/g' joke > fact
  7. The point of this article eludes me by El+Cubano · · Score: 3

    So, I read the article and the point completely eludes me. There is no news here. There are no facts. It reads like it is trying to be a think-piece, but contains no actual information. Even a think piece, with a primary purpose of expressing an opinion, needs to have some sort of basis in facts or information.

    This "article" reads more like the introduction to a manifest, or some sort of random pontification.

    Don't get me wrong, it is sure to prompt a robust discussion here on /., but the piece itself is not really that exciting.

    That said, my perspective is that programming (analysis, coding, testing, etc.) is enjoyable, possibly even "fun," for the simple reason that I enjoy solving complex problems. When I was younger I spent lots of time playing videogames. As I got older and more experienced as a software engineer I began to realize that playing video games (good ones) and developing software are actually the same activity. Except that the former rarely results in a lasting benefit, while the latter is easier to get paid to do.

    So, to me, it is the functional equivalent of getting paid to play videogames all day. I can count on one hand the number of days I have not looked forward to going to work in the last few years. So, yes it is complex and has an ethical dimension, but is also lots of fun.

    1. Re:The point of this article eludes me by 110010001000 · · Score: 2, Insightful

      Articles like these are just hipsters trying to avoid getting jobs and writing inane stuff for these sites. We used to call them bloggers.

    2. Re:The point of this article eludes me by thinkwaitfast · · Score: 2
      Videogames always bored me because they weren't complex enough. I bought my first computer to play video games, but had more fun dissecting the computer, learning the silicon and programming my own simulations.

      IOW, writing a software to accurately model the space shuttle was more fun than flying a space shuttle game.

  8. Programming is FUN!! by Anonymous Coward · · Score: 2, Insightful

    I Had to say it, it just seemed required.

    From my perspective, Programming is fun. Programming is like painting, with words and symbols, but when the canvas is completed, you have a moving piece of art capable of doing tasks.
    The part that the article is missing, is that "Working" is not fun. Take a child to the beach, and what will they likely do for fun? Dig holes and make sand-castles. Even many adults will enjoy doing this right along with them. Now, fast forward to when they are adults - do they enjoy digging ditches for a living? No, they don't. Once you add the stigma of a job to the activity is when you pull the fun out of it.

    Programming for it's own sake is fun. Having to answer for what the program does to your boss is not.

  9. Re:"Verboten"? by computational+super · · Score: 2

    Well, I'll give you mosquito, because I'm not aware of any other way to say that in English, but if you start saying "c'est la vie" or "que sera sera" or "je ne sais quoi", I'm going to start answering you in French, because you're either switching languages or acting like a pretentious try-hard.

    --
    Proud neuron in the Slashdot hivemind since 2002.
  10. I'm having fun... by chad.koehler · · Score: 2

    I'm having fun. Should I not be? Dang.

  11. Re:...and like life it varies by cayenne8 · · Score: 2

    Not every programming job is either technically or ethically complex.

    I"m still trying to wrap my head around the tern "ethically" and coding/programming in the same sentence...?!?!

    I mean you code for 1 or 2 reasons:

    1. Interest/Fun

    2. You get paid for it.

    WTF does "ethically" come into play here?

    Geez, I see more and more people try to interject morals or ethics into things that have never had that connotation before. I see people equate paying taxes to morality....really?

    And now, you have supreme ethical decisions to make before writing a piece of code? Seriously? How does this apply.

    I mean, most things in your life, your fun, how you act, making a living, etc...do not warrant great time and deep thinking devoted to the morality of it, your ethics behind the decisions, and how it affect mankind....it is simply LIFE.

    It's been done before for ages, and it didn't need to be analyzed....just do it for goodness sakes....

    --
    Light travels faster than sound. This is why some people appear bright until you hear them speak.........
  12. Re:Can we please stop with the BS SJW posts?! by liquid_schwartz · · Score: 2

    Never let the facts get in the way of a good SJW rant. They're still pushing that women make $.70 for every dollar a man makes and that engineering in general is full of bro's with nothing better to do than make women feel uncomfortable. The notion of fake news didn't arise in a vacuum. While Trump may have popularized the phrase "fake news" people have long since noticed that half truths and opinions are presented as "news" far more than actual, unbiased, both sides of the story facts.

  13. Truth in Advertising by jasnw · · Score: 4, Insightful

    The “learn to code for fun and profit” narrative is designed to support the claim that all the people who are losing good jobs to automation and offshore mania only need to take a short course in programming to be making the big bucks. The truth that not everyone is suited to be a programmer, and that the “big bucks” programming jobs are becoming as endangered by offshoring as factory jobs, kills that narrative and forces those who are supposed to be running this country to come up with real solutions to the very real employment problems of large numbers of people in the Rust Belt, Coal Belt, You Name It Belt. Those solution are difficult to find, and cost money to implement, which means no tax cuts for the one percenters. Can’t have that, so everyone must become a programmer because that’s the job of the future. Rinse and repeat.

  14. Coding is like writing novels not neurosurgery by netsavior · · Score: 3, Insightful

    Programming is fun. If it isn't fun to you, then you won't be successful as a programmer, and you will be as unhappy in your job as the average worker.

    The comparison to a neurosurgeon is hyperbole, but I would compare it more to a novelist. Writing a novel is hard, so hard that people who don't enjoy it don't do it; yet the only evident work in a novel is simply typing.

    The main difference between coders and novelists is that shitty coders can still make bank. Because of that, people who hate coding and people who are terrible at it (a venn diagram of almost entirely overlapping circles) sometimes stick with it.

    Noveling and Coding have one other awful terrible truth in common: Everybody thinks they can do it.

  15. Re:...and like life it varies by cayenne8 · · Score: 2

    Really, you don't see where ethics comes in to it? So you see no problem with the people who write various types of malware?

    I was answering under the assumption of legal activity, not things that are codified as criminal by law.

    What Google and Facebook do, they have enormous amounts of data about their users. There's all sorts of ethical concerns with that. Literally every time you write something to a persistent log file, there should be an ethical question asked. It may be trivial to say there aren't any ethical concerns for logging how long it took for an algorithm to run, but what if the log has a memory snapshot?

    That would just be part of the job working at Google or FB.

    Gathering data is not inherently a bad thing as you seem to allude.

    What is done with it, is another thing, but that's a human/business decision....not "coding ethics".

    For the people that code, it is just a job, the decisions on what the company does which possibly could have ethical or moral connotations, is already done at management levels, not at a coding level.

    Hell, in cases, the coder may not even know what the whole program does, they only code parts of it per specs given to them, maybe only a module, so they don't even know what the whole program does....no ethics or morals there.

    But I posit...coding itself has not ethics or morality....decision making at management level on what a company does may have those type questions...but a person decides if they want to work for a company or not...that's not ethics or morals at the level of coding, but on the level of what type employment you seek or hold.

    Personally, if it ain't illegal, and they pay me enough, I"m good to go with just about anything.

    But, hey, whatever floats your boat.

    --
    Light travels faster than sound. This is why some people appear bright until you hear them speak.........
  16. Re:Lots of folks do things that aren't fun by phantomfive · · Score: 2

    The days when tech was dominated by people who wanted to be there are long gone.

    Which is unfortunate. Those people make things bad for the rest of us. If they figured out how to enjoy it, things would be better.

    --
    "First they came for the slanderers and i said nothing."
  17. Re:...and like life it varies by apoc.famine · · Score: 2

    I no longer code for a living, haven't done that for a very long time. But I write code just about every day. Now my tasks are to analyze large data sets and to help formulate policy decisions and improve businesses processes.
     
    A lot of my colleagues do this work without coding. They do all sorts of insane and stupid shit with Excel and Access, and spend a lot of time doing tedious shit by hand. I spend a lot of time automating that shit, in the hopes that the next time I have to do it, it's close enough that I save myself a boatload of time. Sometimes works out, sometimes doesn't.
     
    But that's fun for me. Data handling is awesome, and I love coding to pull in shitty data, massage it, and output nice clean data sets. I love writing code to do rough analysis on those data sets to see if there might be some really important information in there.
     
    I've got the luxury of doing essentially personal coding for a living. That's amazing. Very glad to no longer have to code with others. Sometimes that's fun, but a lot of time it turns into a real grind.
     
    As for ethically complex, the decisions that come out of my analyses do indeed impact human beings, in a number of different ways and settings. However, I'm much happier trusting clear, well-commented code for that than a bunch of Excel macros, linked sheets, and pivot tables. I shudder to think what's buried in my co-workers' analyses.

    --
    Velociraptor = Distiraptor / Timeraptor
  18. Re:Complex is what makes it fun! by UnknownSoldier · · Score: 2

    Mod parent +1 informative / insightful.

    I've been programming since the early 80's and this is **exactly** what programming is: You are solving a puzzle.

    A programmer is no different from a mathematician, scientist, engineer, musician, etc. The mathematician is fascinated about patterns, operations, and the relationship between the two. The Scientist takes delight in learning how the physical universe works. The engineer enjoys building things from the microscopic to the macroscopic. The musician expresses their emotions in a music form ands takes delight that their fans find their creatively resonating with them.

    The fact that you can make money at it is just a bonus.

    * Some puzzles are hard real-time likes banking software.
    * Some puzzles are soft real-time (like game development).
    * Some are pseudo real-time (like OS development)
    * Some are offline, like "Machine Learning".

    At the end day though it is about software solving a problem. If you don't find solving puzzles fun, then find another job. Because doing it for the money will show in your work.

    If programming is not fun then you're are doing it wrong -- of the corporate monoculture has sucked the soul out of it. In either case, change jobs, or change careers.

    Life is too short to spend the majority of time doing something you hate.