THE BEGINNER'S PAGE
Richard Mansfield, Senior Editor
Myths About Programming
Whenever someone says that they are "not the type" or they "weren't good in math" as a reason for not learning to program in BASIC, I like to compare learning BASIC to learning how to drive a car. A few people never learn to drive, but most of us do. What's more, it takes a few weeks at most to catch on to either driving or BASIC. You improve over the years, but the essentials can be grasped pretty quickly. And in the coming Age of Information, not knowing how to program could well be as inconvenient as not having a driver's license is today.
After all, there are only some 50 BASIC words to learn. Several of them are very rarely needed (you can look through hundreds of programs and never find WAIT, POS, or TAN). Also, many BASIC words mean exactly what they say: STOP stops a program, RUN runs, END ends.
If someone is still doubtful, the most convincing argument is a demonstration. You can say: "Let's try something complex. How about printing your name 1,000 times on the screen?" Then type: 10 ? "Alan"; : GOTO 10.
Could It Explode?
Another factor which causes hesitation about learning programming is a fear of the unknown. It's not hard to see where this nervousness comes from. There is a category in movies which changes each generation, but could be called the Frankenstein Slot. A scientist gets too big for his britches, tampers with unknown forces, and his creation runs amok while the villagers, in their ancient wisdom, ineffectually stone the laboratory.
During the fifties there were dozens of films in which atomic radiation filled this slot. It caused moths and ants to grow to enormous size, rampaging through cities. When people learned that radiation, dangerous as it can be, could not cause insect giantism, popular entertainment found a new monster. Dozens of movies in the sixties (some of them excellent, like 2001, The Forbin Project, and more recently, The Demon Seed) portrayed the computer as Frankenstein.
When people buy their first personal computer, they are not generally worried that it might destroy their house, but they often worry about the computer getting out of their control and damaging itself. They sense, correctly, that a computer is a powerful machine.
You'll see this hesitancy when people look up, their first time in front of the keyboard, and ask, "What should I be careful of? Can I hurt it?" We get letters from beginners wanting to know if they should use POKE, the BASIC word that changes what's in the computer's memory. They have a perfectly understandable fear that, as one New Yorker recently wrote, "I might damage the BASIC ROM chips."
Your computer watches out for most kinds of errors. It simply won't allow you to POKE into BASIC ROM chips. If you try to send a POKE to an address that's in ROM (Read Only Memory), it will just bounce off. Nothing happens. These addresses can only be read, not written (POKEd) to.
We always used to say that nothing you could type into the computer could hurt it in any way. If it doesn't understand what you write, or can't carry out your instructions, it will stop and tell you where it stopped and, in general terms, why. The worst that could happen would be an "endless loop," and you would have to turn power off and back on to get control. None of this, however, would start the computer smoldering.
This advice, unfortunately, is not 100 percent correct. It was discovered that there was one POKE to PETs with Original or Upgrade BASIC versions which would make the video display about six times faster. It's POKE 59458,62. PET/CBMs with the most recent 4.0 BASIC chips, however, can be damaged by this POKE if left running without turning off the power. Since there are about 17 million combinations of POKEs you can make into your computer, the odds are clearly against your accidentally making this error. Nevertheless, it does make it impossible to tell someone that nothing you type into any computer could hurt it.
The Math Myth
When autos were first becoming popular, there were doubtless many people who refused to try driving, saying, "That's one thing that I will never try to learn. I could never control our horse." A weakness in math is often given as the reason for not trying programming. In fact, the two activities are hardly related. Mathematical words are available in BASIC, but programming does not need to involve much math beyond simple arithmetic unless you choose to solve mathematical problems. You will need to search a long time to find any use of the word SIN in the dozens of BASIC programs published each month in COMPUTE!.
Personal computers are general-purpose tools. They can be used to solve complex equations, but to call programming "mathematical" would be too narrow it down to only one of its countless applications. And it would also mislead people into thinking that they need a special talent in math to become competent programmers.
Several years ago one of America's largest corporations undertook a study to find out what its best programmers had studied in college. To nearly everyone's surprise, English and music were the most common majors among the top computerists. Perhaps this is because these disciplines stress creativity and attention to detail. Perhaps they combine logical thinking with imagination. No one has yet given a satisfactory explanation.
In any case, you don't need to become an ace programmer any more than you need to drive at the Indianapolis 500. To get where you want to go, ordinary driving or programming knowledge will suffice. There are very few people who can't learn the necessary skills.
If there is a topic that you would like to see discussed in this column, send a card or letter to: The Beginner's Page, COMPUTE! Magazine, P.O. Box 5406, Greensboro, NC 27403.