| >Programming is like that. No it's not. Making YouTube videos is like that. Knowing how to do social is like that. Being able to look stuff up on Google is like that. Graphic design is like that. (I'm often amazed by the quality of the graphic design and motion graphics on amateur YouTube channels.) Knowing how to tell when politicians are lying should be like that, but isn't. Programming is engineering. Not everyone is an engineer. Not everyone can be an engineer, because a lot of people's minds don't work in an engineery kind of way. I think it's fine to teach kids Scratch and maybe some Python. But I don't think it has anything to do with effective communication - it's just useful practice for basic logical thinking and problem solving. The kids who are good at it (maybe 10-15%) and enjoy it (maybe 25-50%) can specialise and do the harder stuff. In any case I don't expect the Web of 2035 to look much like the Web of today, so there should be no expectation that learning any specific language or system is going to be useful later - any more than it made sense to expect everyone would be using BASIC and CP/M in 2000 when we started seeing computers in schools around 1980. |
But getting the basics of Graphical Design can still help both appreciate a good design and "understand" why "that stuff" feels ugly, and being able to discuss with a graphic designer and talk the "same language"
Same thing with "Programming". No one claims that 100% of the population should understand Rust borrow checker or functional purity
But everyone should understand (and be able to copy-paste some code and "fix" it until it works) the concept of a sequence of instruction, a loop to generate repetitive stuff, the concept of variable (and therefore template and mail merge), a if (and therefore be able to do basic stuff in Excel). So they can talk to engineer and get what they way. And maybe everyone should be able to do FizzBuzz or display the number from 50 to 1 with a loop going from 0 to 49. At least in pseudo-code.