The Anti-Buzz: Nobody knows everything about computers.
Adam and Stephanie meet for the first time and engage in conversation; as they can get to know each other Stephanie tells Adam that she is an architect. Adam immediately responds, “Oh, really? I have a leaky pipe underneath my kitchen. Do you think you could find it?”
Does this make sense?
Stephanie, the architect, given her knowledge of how plumbing is laid out in a home, can in fact probably find the leaky pipe and, what’s more, replace it for you. So why is the question inappropriate? Setting aside arguments of pay and education level, the simple fact is that replacing bad pipes is not an architect’s job. A savvy architect will know how to do it anyway, and might go so far as to lay out home plumbing in a manner that is easier to find and repair. In this way knowledge of home repair might be valuable to an architect, but it’s still not what they do, and, most important, it’s still not the best use of their expertise.
Yet this conversation happens all the time when computers are involved. I tell people that I study Computer Science and they ask me why their router doesn’t work, or if their computer is running slow because they have a virus. These are questions better saved for your plumber, and not because they are “beneath me” but because your computer plumber is actually the more valuable expert on this one, just as your real plumber is more valuable than the person who designed your home when it comes time to fix a leak.
Computing technology is so widespread, its practical benefits so obvious, yet most people have no clue how it works. Most people do not know much about architecture either, but they aren’t mystified by how some carefully arranged construction materials can form a sturdy home. People understand, more or less, what an architect’s job is. But computers feel like magic most of the time and it becomes easy to conflate things you don’t understand; In fact computers seem so magical that I often tell people that studying Computer Science is a lot like attending Hogwart’s.
When Microsoft goes to college campi to recruit, they hand out black t-shirts with the sort of carefully calculated psuedo-ironic jokes that the fifteen-to-thirty set just love to brand themselves with. One of these shirts says, plainly, “I am good with computers.” One of my students wore this shirt regularly, and yet he flunked right out of my introductory programming course. He might help his mom figure out to use Word, hook up his sister’s XBOX, have strong opinions about Facebook’s user interface, or even build computers from scratch with his friends. He’s “good with computers,” but he doesn’t have the knack for coding.
Good-with-computers: What does it actually mean?
Good-with-computers: What does it actually mean?
We will explore this in three parts. Next week I will examine “technophobia”, and I will follow that up with explaining “types” of computer people: from IT Support to engineers to “kids today”.
This week? I will, in a delightfully vague and general way, try to put a concrete definition on what good-with-computers really means, in a way that accounts for everybody.
So what are computers?
Speaking abstractly, computers are, well, abstraction made concrete; they are in fact delightfully vague and general.
Throughout history machines have been designed to automate some specific task. Catapults launch rocks, clocks keep time, looms weave. The notion of automation is not hard for most people to understand. On the other hand it is the ability to generalize that is important to computing. One type of machine can automate anything.
Pretend it is 1811 and you are tasked with designing a calculating machine with the following requirements:
It must have two buckets. In the first bucket you will place some number of rocks, and in the second bucket you will place some number of rocks. The machine must have a dial that can be set to four settings: addition, subtraction, multiplication, and division. You insert the rocks, set the dial, push a button, and the appropriate number of rocks will fall out the end of the machine.
Forget electric circuits and modern manufacturing technology. With pulleys and levers and gears and cogs and springs, go about making a calculator. Just think your way through how you might do it…Hard, right?
Solving this problem answers important questions; such as how to create a machine that reacts to infinite possible inputs, (the rocks), and how to create a machine that reacts to logical truths (the dial setting), and how to read and write information (the rocks that fall out). In other words, solving the problem of building a basic calculator generalizes to making a machine that can follow instructions. And once you have that, well …
All the things computers do for us boil down to two things: abstract thinking, and problem solving. It is these two things that make one “good-with-computers”.
“Have you ever done that before?”
“Then how did you know how to do it?”
Abstraction is everywhere; it is the ability to apply knowledge from one event to another. If you can sort the books in your home by author, then you can sort them by title, or by publisher. You can also sort another person’s books. You could also sort a basket of oranges by size. You abstractly understand what sorting is and how to do it, and you can generalize that knowledge to many situations, including ones you haven’t encountered yet. Likely you haven’t sorted oranges by size before, but I’m pretty confident you could.
Similarly, your punk teenager might understand how to hook up an XBOX, DVD player, Playstaion, and Wii through an RCA splitter to a single television. Punk teenagers aren’t magic. One day they learned how to hook up a DVD player to the screen and they realized by extension that they had just learned how to hook up everything to everything; just like you learned how to sort oranges by size on the same day you learned how to sort books by author.
Some of the “magic” of that computer knack is simply the realization that a learned skill is applicable elsewhere. People who are good with computers know how to generalize the skills they learn into things they haven’t done yet. If you are fluent in English, you know how to say all the things you haven’t said yet.
Knowing how to use Word will help you learn Dentrix. You learn that the box with X closes the window, that the tab key switches fields, and that a double click opens the program. Someone who fails to recognize that what works in one application typically works in others is often the one who self-identifies as bad-with-computers.
Computers are meant to solve problems that we have abstractly devised solutions for. Adding numbers is the same for every number, so it’s possible to build a machine that can do it, just like it’s possible to build a machine that can crack nuts. Mechanizing even simple arithmetic like addition is hard enough, but the attitude of wanting to solve problems is what lies at the core of computing.
Fear of failure is what holds back the technophobes, (Something I will expand on next week). Problem solving, as an attitude, might quite simply be explained as tenacity. “That didn’t work. I’m going to try something else.” and “Oh, this works better than what I tried before.” It is both the ability to try try again until you figure it out, and the ability to unselfishly acknowledge superior solutions, (ostensibly offered by other people), rather than let pride hold on to your old approach.
Problem solving is realizing something needs to happen, and, through sleet, snow or gloom of night, making sure that it happens. If you take this quality, and couple it with the ability to apply what you’ve learned to any situation, you exhibit that magical good-with-computers quality.
Next week I will expand on these ideas so that we can explain what it means to be bad-with-computers. The following weeks I will make good on the promise of this article’s opening: that there are many kinds of computer people – and for your amusement I will argue that those who lack abstract thinking and problem solving skills are still found in the ranks of computer programmers and other alleged experts.
Until then, try try again.