Normal Humans Effectively Excluded From Developing Software
theodp (442580) writes Over at Alarming Development, Jonathan Edwards has an interesting rant entitled Developer Inequality and the Technical Debt Crisis. The heated complaints that the culture of programming unfairly excludes some groups, Edwards feels, is a distraction from a bigger issue with far greater importance to society.
"The bigger injustice," Edwards writes, "is that programming has become an elite: a vocation requiring rare talents, grueling training, and total dedication. The way things are today if you want to be a programmer you had best be someone like me on the autism spectrum who has spent their entire life mastering vast realms of arcane knowledge — and enjoys it. Normal humans are effectively excluded from developing software. The real injustice of developer inequality is that it doesn't have to be this way." Edwards concludes with a call to action, "The web triumphalists love to talk about changing the world. Well if you really want to change the world, empower regular people to build web apps. Disrupt web programming! Who's with me?" Ed Finkler, who worries about his own future as a developer in The Developer's Dystopian Future, seconds that emotion. "I think about how I used to fill my time with coding," Finkler writes. "So much coding. I was willing to dive so deep into a library or framework or technology to learn it. My tolerance for learning curves grows smaller every day. New technologies, once exciting for the sake of newness, now seem like hassles. I'm less and less tolerant of hokey marketing filled with superlatives. I value stability and clarity."
"The bigger injustice," Edwards writes, "is that programming has become an elite: a vocation requiring rare talents, grueling training, and total dedication. The way things are today if you want to be a programmer you had best be someone like me on the autism spectrum who has spent their entire life mastering vast realms of arcane knowledge — and enjoys it. Normal humans are effectively excluded from developing software. The real injustice of developer inequality is that it doesn't have to be this way." Edwards concludes with a call to action, "The web triumphalists love to talk about changing the world. Well if you really want to change the world, empower regular people to build web apps. Disrupt web programming! Who's with me?" Ed Finkler, who worries about his own future as a developer in The Developer's Dystopian Future, seconds that emotion. "I think about how I used to fill my time with coding," Finkler writes. "So much coding. I was willing to dive so deep into a library or framework or technology to learn it. My tolerance for learning curves grows smaller every day. New technologies, once exciting for the sake of newness, now seem like hassles. I'm less and less tolerant of hokey marketing filled with superlatives. I value stability and clarity."
Normal humans are excluded from a lot of things.
1. Olympic Gold Medal
2. 5x Jeopardy Champion
3. Professional Concert Pianist
4. Bolshoi Ballet
5. Supermodel
etc.
The idea is to find your niche in life and exploit it. Not call the whaaambulance.
You heard it here first, folks: if you're going to try to not suck at your job, you're autistic. Normal people don't give a fuck about trying.
just about every field above burger flipping requires specialization. Are you going to ask Joe Blow about your corporate tax accounting needs? Or are you just going to drop by Intel and see if you can lend a hand with some microcode? Work is becoming increasingly specialized across all fronts, time to get used to it.
So there is finally a job that focused, socially clueless people can excel at, and some want to take that away from them because it isn't fair for people who could do other jobs anyway.
There's a good reason I'm not a brain surgeon or a professional hockey player. Have you ever tried explaining even a 'hello world' example to someone who can't handle strict logic and math?
Have this guy seen "normal people" use a computer? There are some people so uninterested in the thing (even when is their primary work tool) that they can't be bothered to learn so simple stuff as mouse dragging or keyboard shortcuts.
Hell, I've seen people using Spreadsheet software for 10 years without learning how to use formulas. Don't even try to show them what all that HTML gibberish is.
And Spreadsheet software is a pretty good introduction tool for programming.
"New technologies, once exciting for the sake of newness, now seem like hassles. I'm less and less tolerant of hokey marketing filled with superlatives. I value stability and clarity."
I will mod that one way up.
Seriously, does everyone think programming is a spatial relationships problem or something?
Let's put this on the table right now: Normal humans can build houses. Oh, you might not have any construction knowledge, and you'll build a horrendous little shitheap that falls over when the wind blows, but that's not the point. I can put construction knowledge in your head and, in a few months, you'll be able to properly select foundation for a site, properly frame a house, and properly build out the sheathing and siding and insulation and walls. You won't be a master craftsman, but you'll be able to do it right.
Humans are good with spatial things. Humans can look at a two-by-four and understand what a two-by-four is. The engineering concepts behind building a workable shed are a little different, but easily transferred. Given a little time and guidance, a human can learn to relate building materials spatially, measuring and cutting and nailing or screwing or gluing as needed, planning and building a proper structure.
Humans are terrible at numbers and algorithms.
Humans are so terrible at numbers and algorithms that they become *extremely* proficient at math if you teach them with a soroban--a machine that converts numerical problems into spatial procedures--and can't be taught algorithms without visual diagrams of trees and boxes and other shit to show sorting and transformation algorithms. Have you ever looked at textbooks or Wikipedia pages for stuff like PKI, red-black trees, or AES encryption? There's pictures of the simplest shit! Why? Because HUMANS CAN'T PROCESS ALGORITHMS!
The easiest process for a human programmer implementing an algorithm like a quick sort is to associate variables with objects in the visual diagram, associate their state changes with the movements in the visual diagram, and write code that carries out the analogous behavior. By comparison, BUBBLE SORT IS FUCKING HARD TO IMPLEMENT when your only guidance is: "iterate through each list element. Compare each element to the previous. If the previous element is larger, swap them." You actually have to think about how to do the comparison (greater than, less than? Wait, which am I comparing to which?), and how to swap them--usually with a temporary variable, although "A ^= B; B ^= A; A ^= B;" works. Most people visualize some kind of diagram while trying to understand the algorithm.
The real world requires interaction with space, mainly to avoid hungry tigers, kill tasty deer, and avoid driving your car into trees like you're fucking drunk. It doesn't involve shift accumulator left and XOR with memory at address $FC. It doesn't involve explicit semaphore locking and deadlocks if you fail to unlock the semaphore in a loop with multiple function calls and thread branching during the loop. It requires things you can put your fist through if they don't work right, and then continue with successfully.
We can't all be rocket surgeons.
Support my political activism on Patreon.
"The bigger injustice," Edwards writes, "is that being a doctor or lawyer has become an elite: a vocation requiring rare talents, grueling training, and total dedication. The way things are today if you want to be a lawyer or doctor you had best be someone like me on the autism spectrum who has spent their entire life mastering vast realms of arcane knowledge â" and enjoys it. Normal humans are effectively excluded from performing surgery or arguing cases before a judge. The real injustice of legal or medical inequality is that it doesn't have to be this way." Edwards concludes with a call to action, "The web triumphalists love to talk about changing the world. Well if you really want to change the world, empower regular people to perform open heart surgery and argue cases before the supreme court. Disrupt specialist knowledge and training! Who's with me?"
Don't blame me, I voted for Kodos
I got my first computer in 1986; I was 13, and it was a ZX Spectrum with a build-in BASIC interpreter. When you switched on, you could start away programming. In fact, the computer came with a little book with programming examples and little games. I spend countless hours typing in listings that I found in newspapers. To even load a simple game you had to enter a command.
Since then, I learned C, tcsh, C++, bash, Perl, much later also Python and R. It was a step by step process, and I would never have started it (and became what I am now, that is, computational biologist) if not for this one computer with the BASIC interpreter.
I have kids now, and they have Android tablets. The sheer power, their parameters and their capabilities are overwhelming. I don't know how many instances of a ZX Spectrum emulator I could run on one of these, a thousand?
But even though they run on a system that is related to the system I am using every day, I would not know how to write a program for them to save my life. In theory, I know how I would approach it, I even set up once an Eclipse environment once, but I never got to even start a Hello world program. If I were 13, I would not even know that I can write a program myself.
It is amazing, but I think that actually, my kids will have a much harder time to learn programming than I had, and they will get much less fun in return...
Some people in life find an "unfair advantage". This is very evident in professional athletes. They must start with natural athletic ability and then hone that through practice and training. And then a select few get paid huge dollars to essentially play a game.
People with natural problem solving and logic skills also have an "unfair advantage". It doesn't generate the quick wealth of the professional athlete but can lead to a promising professional career path. It still takes practice and learning to really take advantage of these skills much like the professional athlete learning their sport.
I will not apologize for taking advantage of my abilities any more than a professional athlete will give back the money they earned playing a game.
I only look human.
My mother is a halfling and my dad is an ogre, so that makes me an Ogreling
My tolerance for learning curves grows smaller every day. New technologies, once exciting for the sake of newness, now seem like hassles. I'm less and less tolerant of hokey marketing filled with superlatives. I value stability and clarity.
Yeah that's called growing up.
Those are jobs that involve a vanishingly small percentage of the general population. Programming is not. I couldn't stop laughing after reading this gem - "programming has become an elite: a vocation requiring rare talents, grueling training, and total dedication."
Does this egotistical idiot actually believe that?
Programming is not something that requires grueling training or rare talents. Algebraic topology, cardiothoracic surgery, and competitive chess require those. If you're writing code that requires elite skills, you're doing it wrong - no one is going to be able to understand it, and you will never be able to troubleshoot it. Someone with an IQ of 100 can become a perfectly competent Java or C++ programmer with two years of intensive training. Programming is more akin to a trade skill like plumbing or electrical work, than it is to engineering. And before everyone gets on my case that being a top 1% programmer is incredibly difficult, the same holds for a top 1% electrician.
Support microSD: in a post 9/11 world, it is unwise to carry your data on media that you cannot comfortably swallow.
"I'm less and less tolerant of hokey marketing filled with superlatives. I value stability and clarity."
That's what we've been telling the Dev side for decades now. .
Hate to break it to you but the Autistic ARE normal humans. It's just another way of thinking that's slightly different that what a lot of people are used to.
Also, where the hell are you working? I know plenty of programmers that are just as stupid as everyone else. Vast reams of arcane knowledge? Are you using the Forgotten realms addition of C#?
3D printers are a fundamental game-changing technology. What you're seeing now is basically proof-of-concept stuff, but the technology is developing rapidly and it won't be long before pretty much anything can be built from scratch on demand. 3D printing and associated CNC mills have the potential to revive American manufacturing in a localized, small-batch paradigm rather than wasteful mass production and national/internation distribution chains.
3D printing is as disruptive a technology as the printing press -- that's no hyperbole, I really mean it. If you can't see it, I pity your lack of vision.