Programming Languages Are Not Our Friends – 4

Non-Programming Languages

EngDrawingAlthough Engineers use emails and other written documents, when they want to precisely describe a component or an assembly or a system, they don’t use language at all; they use engineering drawings or models. If a picture is worth 1,000 words, an engineering drawing is worth at least 5,000. Engineering drawings precisely describe things as large as the Golden Gate Bridge or the International Space Station all the way down to something as small as a few microns.

Not only do the drawings or models provide precise information, it does it unambiguously in a language independent way. Out on the factory floor it’s common to have people who speak completely different languages come to an understanding by bringing out the engineering drawing and pointing and gesturing at the part on the drawing and then pointing at the same spot on the part.

Can you imagine how long it would take Engineers to write out precise and unambiguous descriptions of components if they couldn’t use drawings? Not only would it take many many pages of text to describe even the simplest items, it would be very slow and error-prone, meaning a full time staff of proof-readers and editors would be required to support any engineering effort.

And even simple changes to the item would result in slow and time consuming changes to the text describing the item. Worse, the change process could easily miss correcting some text affected by the change, leading to contradictory information in the item description. It’s pretty easy to see why text descriptions aren’t used and engineering drawings are used instead.

Another interesting advantage of engineering drawing is that our eyes can jump almost instantly to the item of interest, like Random Access Memory. Written documentation is read serially, from beginning to end, just like the old tape drives. The information is there, it just takes a long time to go from the beginning of the document to the desired location.

Finally, humans are built for visual processing. A significant portion of the human brain (the occipital lobe) is dedicated to processing visual images. One of the arguments for using visual passwords is that we can pick out the right images on screen months later, even if we haven’t seen them or used them during that time. Even images that are shown to us for just fractions of a second can be identified as having been previously seen hours or days later. We wouldn’t be able to recall the image of the cat on the bicycle, but when it was shown to us later, we’d recognize it.

I’m not advocating that program development should be done with engineering drawings (at least not in this blog), but I’m pointing out how visual methods have successfully been used by other development groups for a long time to create extremely complicated systems. Maybe it’s time for computer program development to take advantage of some of the useful tools available to other developers.

Leave a Reply

Your email address will not be published. Required fields are marked *