You are very wrong about this - people who know how to "search for code samples" know what programming looks like, but they are far from the majority.
I, for one, wish more people understood what programming "looks like", so that I could actually talk to people about what I do without them being completely confused. People can visualize what nearly every other profession does day-to-day, but what programmers do is a complete mystery to most people. I tell people that I'm a writer for a language with a very structured grammar, but that's only part of the story.
> People can visualize what nearly every other profession does day-to-day
No they don't. They know an architect draws pictures of buildings. An engineer draws pictures of a bridge and hammers away at a calculator (actually the first thing most people think of with engineer is probably either boats or trains or Star Trek). A banker sits and acts like a total dick. What architects, engineers and bankers really do is a complete mystery to people.
When someone asks what you do and they do not have any domain specific knowledge, you say you write applications, you're a programmer. That's all they want to know, they don't care what the details of what you write are. They don't want to know the differences between languages. They don't want to know what a structured grammar is and why you care about it. Those are details of your job, that's not what they were asking.
"I'm a system administrator. I keep computers working." That is the maximum extent people want to know about what I do. They're being polite in asking, they don't really want to know details. And at the end of the day they still think that all I do is sit on my ass and look at a computer screen. Just like the way they visualize a programmer, and a banker and a ...
I don't buy it. An architect designs structures - most people don't know what the actual work of designing a structure looks like, but they know what a design of a structure looks like. An engineer figures out how to make a structure stand - most people don't know what the process of making a structure stand is, but they know what a standing structure looks like. A banker moves money around, people don't know how that is accomplished, but they know what a loan looks like. Most people I've met don't have any idea what a computer program looks like, not even that it involves text. I didn't say anything about the differences between languages, and I think you misunderstood my comment about "structured grammar". I didn't mean it as a specific feature of what I do, but as a generic feature of what a computer program is. I only meant that the closest analogy I've found to programming that most people can relate to is writing.
"I keep computers working" and "I write computer programs" are on opposite sides of a conceptual understanding chasm - most people have tried keeping computers working, even if they hated it and failed miserably, but most people haven't tried programming, and don't really know what the concept means.
I, for one, wish more people understood what programming "looks like", so that I could actually talk to people about what I do without them being completely confused. People can visualize what nearly every other profession does day-to-day, but what programmers do is a complete mystery to most people. I tell people that I'm a writer for a language with a very structured grammar, but that's only part of the story.