Are they the same thing? Short answer: yes. So why is it that most folks can grab a cookbook and stumble through a recipe, get a reasonable output (even me!), but wouldn’t even consider tackling a computer program?
The simple answer is that most folks can read English. Doubt that I could get it done if the cookbook were in Chinese, or any foreign language. In short, it works if they understand the “lingo” . If you don’t know the difference between salt and sugar in the command, “Salt to taste”, you’re in trouble.
BUT, it’s more than just the formal language — it’s the slang. You read, “simmer”. You look it up and see, “of water or food) stay just below the boiling point while being heated.” Cool, I can do that! — and so it goes.
Again, if it were in Chinese, you’d not only not know any of the nouns, verbs, but the explanations would be useless to you. Even if you had a Chinese/English dictionary, you’d starve, before getting the job done.
“Programming is so difficult”. Really, have you tried? “Uh, no, but I have no idea how to even start”. And there’s the rub. Most folks have never even tried. Why? because they don’t know the computer’s language. Most folks assume that it is as hard as learning French, or Russian. “And there is all that math, and I’m no good at math.” (hate to burst that bubble, but there is zero math in programming unless you count logical thinking as “math”)
Computer programs are logical steps that the computer can execute to accomplish a given task. No more, no less.
However, there are two HUGE problems:
- The computer has zero intelligence. Has to be told everything—in super detail. It only can follow very specific commands that you give it — not what you “meant”. If you’ve never programmed, you have no idea.
- The language that the computer understands is (almost) unintelligible to humans.
But the neat thing is that the computer can take several million of these steps in a second. Hard to imagine. You MUST have accurate, precise programs — else, disaster!.
What to do? Over time folks have invented so-called higher level languages (e.g., C, C++, C#, Java, Python, Swift, etc.) that are (more) readable to humans — and, have also provided a critical step, translators to the actual computer’s own language. It’s a big industry. (Lots of job opportunities here, too.)
So how hard is it, really, to learn one of these higher-level languages? Well, How long to learn to read music? In one hour I can explain the notation (staffs, notes, values, sharps flats, etc) and how that translates to keys on a piano. About the same time for any computer language — to explain it’s basic methods and syntax. But, can you then “play” the piano, or write a useful program. I think not.
However, to get somewhat fluent in a computer language is much, much simpler than getting to the same level in a foreign language or playing piano. Heck, it’s easier than cooking! (still have my wife to convince, though)
One other very important item to know. Once you learn any high-level language, you can learn another very quickly. All languages have their “slang” but that’s not necessary to know at first. Once you use a language, you’ll pick up the slang, probably very quickly. Why? Because any of these languages have to be translated into a computer’s own language. The end result is that all higher level languages have many common elements. Makes it very straightforward to move from one to another.
That’s why programming shops will tell you, “Learn one of the general purpose languages — care less which one — We’ll teach you what we use and need.”
That’s why all of the SuperSOLVRS will become fluent in one of the textual and one of the graphic languages. (Not secret, it will be Python and Scratch.)
Get going. Join SuperSOLVRS. It’s a start.