Did the spread of smartphones increase or decrease general computer literacy?
If somebody has some statistics, that would make a great answer, but in the meantime I'll offer some thoughts.

First off, I think it depends on what you mean by "general computer literacy". I can think of a few interpretations:


If you pick a random person, how computer-literate are they?
If you pick a random person who owns a computer, how computer-literate are they?
If you assign a score to "computer literacy" and then calculate that score for every person and then take the average, what would that number be?
If you assign a score to "computer literacy" and then calculate that score for every person who owns a computer and then take the average, what would that number be?


Are we asking about everybody, or are we only asking about the people who own a computer?

According to the US census, ~60% of American households had a computer in 2003, compared to ~80% in 2015. So if we're asking about everybody, then I would guess that general computer literacy has gone up, because more people have access to computers.

In other words: if you don't have access to a computer, you have a computer literacy "score" of 0. If you have access to a computer, even if you aren't an expert in computer science, your "score" is above zero. So if we're asking about everybody, then the literacy increases as more people own computers.

If we're only asking about people who own a computer, then I think it's fairly obvious that "computer literacy" has gone down, but I don't think that's necessarily a bad thing. Until recently, you had to know what you were doing in order to work with a computer, like you've outlined in your question. Since then, hardware and software companies have done a great job of making their products more accessible, i.e. easier to use even if you aren't an expert. The previously-required expertise has not been necessary, so "computer literacy" has gone down.

However, I don't think all of this hinges on smartphone usage. People have been complaining about the new generation of non-tech-savvy users since the internet began. Eternal September happened in 1993.

Anecdotally, I started college in 2004, before smartphones were popular (the iPhone was released during my junior year). Plenty of my classmates chose the Computer Science department because they were "good at computers". Many of these students struggled when they found out that being "good at computers" meant more than playing video games.

This phenomenon is more general than computer science. I don't have any numbers to back this up, but I've often observed that anytime something becomes more accessible to the general public, many of the previous "experts" see the craft as becoming "watered down" rather than celebrating the fact that more people are participating.

To come up with a specific example: thanks to the internet, now anybody can record themselves playing music, and put that out in the world. Compare that to how music was shared in 1980, and it's easy to see that more people are sharing their music now. But because it's so easy, many of these people are not professional musicians. Many of them are not good at music (yet). So because more people are playing music, does that mean music literacy has increased? Or because more novices are playing music, does that mean music literacy has decreased?

More total people are using computers, but of the people using computers, more of them are novices. Does that mean computer literacy has increased or decreased?

You can ask the same question about anything that has been made more accessible or shareable. Has art literacy decreased because more people are posting their doodles online? There are more novices participating, but does that mean "general literacy" is increasing or decreasing?

Another thing to consider is that "computer literacy" is very broad. If I'm an expert in ethics in AI, but I've never touched a command line, am I computer-illiterate? If I'm an expert in Linux but I don't know how to use a web browser, am I computer-literate? I would argue that we're trading some kinds of expertise (like navigating the file system) for other kinds of expertise (like navigating social media). One isn't inherently better or "more computer-y" than the other.

I also think it's easy to forget how it feels to be a novice. Being new to a subject is really hard, and as experts we tend to forget that feeling. So when we work with a novice, we can be dismissive or frustrated- "it's just a for loop, what don't you understand?" But we're forgetting that it took us a year to figure for loops out. A little empathy goes a long way.

I'll end this with a conversation I had a few years ago that stuck with me. I had a coworker, who went to college back when they used punch cards, where they had to walk to the only mainframe on campus (uphill, both ways) at midnight to run their code. I asked him: do you get frustrated by this new generation of coders who don't know how anything works under the hood?

He responded: "No way! The new generation can do things I never dreamed of doing!"