>I would tend to believe an effort to improve computer literacy should attempt to point people to the former rather than the latter.
is why? I mean sure. If they want to become programmers, then they need to learn how to use a computer to program but I'm not sure why that's any more about "computer literacy" than lots of other tasks.
I use computers for lots of things on a day to day basis, including many "creative" tasks, and almost none of those involve programming. Programming is a specific way that you can use a computer and it may imply deeper knowledge of the underlying system than making a video, but so what?
For that matter I could equally argue that a pure front-end developer isn't really computer literate because they maybe don't understand kernel schedulers, security model, processes, interrupts, etc. work. Oh, and how about TLBs, cache eviction policies, dynamic resource allocation, etc. at the CPU level?
There's certainly nothing wrong with using a computer for other stuff, also. Or even exclusively, not everyone needs to be a programmer, that's for sure. I would argue, however, that algorithmic thinking/basic scripting is a very important piece of human knowledge, is it really more esoteric than Latin or Greek, which are routinely taught to high-school students?
> For that matter I could equally argue that a pure front-end developer isn't really computer literate...
There are different levels of literacy. A 7-year old and a PhD in English literature are both literate, but not at the same level. Same goes for computer-related knowledge, it's a bottomless pit, like any other interesting field.
The point I'm trying to make is that I percieve a very clear conceptual difference between "using a computer to program" and "using a computer to do other things", and I would tend to believe an effort to improve computer literacy should attempt to point people to the former rather than the latter.
Do you believe those things to be the same? I have a strong intuition that they aren't, but I'm very willing to hear a counterpoint.
Once again, I'm specifically trying to avoid any kind of value judgment.