To elaborate on the sibling comments, coding is generative work instead of passive consumption like reading. This split becomes easier to see when looking at a bunch of domains.
Most of people can learn to read a book but very few can write a good book. Similarly, it's easier to re-tell someone else's funny joke than be creative and write original comedy.
Many people can learn basic physics equations like "f=ma" is "force equals mass times acceleration" but fewer are able to be generative and discover new physics equations that are accepted by the science community.
Most people can listen to music and appreciate it, but a smaller percentage can play instruments. And then within the set of musicians, an even smaller percentage can compose new original music. There must be something more to it than "training and practice" to explain why a 19-year old Chopin can compose sophisticated piano compositions while most 70-year old professional concert pianists that have performed for decades with more repertoire than Chopin have written no notable original music.
Coding may not be as hard as creating "Theory of General Relativity" but it's not the same as reading literacy.
Likewise, a lot more emails and discussion comments and school reports are written, per volume, than masterpiece books.
{people who can look at a real world problem, choose an appropriate physics model, and apply the right equations, correctly}
and
{people who can look at a real world problem, choose an appropriate logical model, and apply the right language/frameworks/code, correctly}
are probably really quite similar sets.
Most people can read in that they can translate text into sounds. However most people cannot read if require that they can accurately comprehend what the text says, just look at the results of reading comprehension tests, a majority scores horribly on them.
> Why is coding different?
You can get by just fine in life without accurately understanding text, but you can't get by just fine as a programmer without accurately understanding what code does.
Most people can modify a recipe, if the modification is natural or easily comprehended. For example, adding extra ingredients to flavour a food. But to invent one from scratch would be akin to creating a new type of food, or new way to cook, or a new way to combine cooking methods.
The same holds true for literature, I think. Surely, there are many people how can read and write a piece of text. However, there surely is a qualitatively difference between a gossip article from the magazine and Shakespeare's Hamlet.
Yes. Lack of reading is observable even inside code bases themselves.
Some contributors are more prone than others to not read the codebase they're working on and break patterns, use different file naming and folder structures, disregard currently existing code and re-implementing things from scratch, use a completely different code style, use tabs instead of spaces.
I don't think it's fair to assume that those people are doing this out of malice, or even to push their own style, because as soon as you mention that to them, they admit they were just not paying attention.
I do not think parent poster is referring to junior developers or just people on the streets.
Even though they work as developers and have experience they still don't get it. Just like people who mechanically read symbols and put it into words but don't get the meaning behind paragraphs or whole stories.
Remember that most people require extensive schooling for the better part of a decade in order to learn how to read.
I think you're probably right, but in a strictly semantic way: I think it's feasible that nearly everybody (excluding, say, the severely mentally handicapped) could learn to program to a reasonable level of proficiency, with enough effort. However, most people won't, so it ends up being the same as if most people can't.
https://www.oecd.org/skills/piaac/Country%20note%20-%20Unite...
It seems a bit too similar to the idea that "most people simply cannot read".
We all accept that nobody can read without instruction, practice, and feedback. Why is coding somehow different? If anything, I think reading is more foreign/difficult, because coding is explicit thinking, and we all think. Whereas reading is a completely synthetic act that starts with arbitrary symbols that must be memorized by rote before you can even take the next step of using them.
None of us start out life being literate, but few people lack the ability to become literate. Why is coding different?