I'll explain it with following example:
You know how sometimes if you're "good with computers" your relatives or friends might ask you to help with some application? That's where "Understanding of Computer Behavior" helps. You don't have to know every single application - and you can't, but by knowing fundamentals of computer behavior you can deduce what you need to do to accomplish required task.
Maybe that's not even a separate ability, but good old logic?
I think everyone should spend more time making things they can love. If you think software is a thing you can love, then sure. I also understand a lot of people are too tired after working three shifts at minimum wage jobs to make things they love, and I think thats a problem.
I sometimes see "Everyone should learn to code" proposed as a solution to unemployment/decrease is skilled labor, but its not a very intelligent solution. The labor market only needs people who love coding. A large group of people who are doing it because they 'should' can't be supported by the current market.
That said, I still think, that for some types of children learning to code is a nice way to learn logic and mathematics, because it can be applied and is not some school stuff in their mind you have to learn for the sake of learning it.
For college education, my view is a bit different: These students are going to work in an environment where more and more parts are automated by software. I often had clients, who had not even a basic understanding of how an application is structured.
Just recently a client of mine let his "computer guy" talk to me, who designed a web form in dreamweaver and therefore thought most of the job was done. I think many people have this UI centric view and it seems highly beneficial for them to understand some basics of validating, processing, saving and securing data if they have to deal with software in the future.
Why? Because i am an average mediocre programmer, i work 9-5 read on hacker news, have 3 small and crappy side projects and i suck monkey balls on design and css/html. Most of my skills are about fetching and massaging data from a database.
If everybody knew how to code my skills would not be a novelty anymore and my salary would not as high as it is now, also in my country being a programmer is seen as an advanced job among common people i would loose the little social status i currently have.
My paranoid mind already thinks that there are way too many smart people graduating with cs degrees and i sometimes wish that i was a programmer in the early 90s when people who wanted to learn to code were few in numbers and people with economics degrees where not able to learn rails in 3months.
I also strongly believe that in a nearby future programmers within my skill set and capacity will be replaced or just function as simple configuration admins with lower salary, as engineers makes implementing software easier by every year.
Should everyone learn how to code? It would be nice/cool if everyone did, but it is probably not plausible.
Everybody in my highschool class learned how to program but I'm the only one who ended up being a programmer. I'm really not concerned about competition. Learning a thing and than doing a thing for the rest of your life are two different pair of shoes.
If more people had insights in what programming entails, we would have less stupid requests by clients who have not even the faintest idea how things work, how long they take, and that programming can be quite complex or complicated.