Title: Comprehensible computer
Author: Andrew Lucas
Text: Comprehensible computer
Many computer installations fail to fulfil what is expected of them, perhaps because the people who understand them are still very scarce. Andrew Lucas looks at a new IBM computer which is designed for easy use by unspecialised staff of a small to medium sized company.
It would seem very peculiar if no one but a skilled operator could dial a telephone; armed with a code of 10 or 15 numerals anybody can control the whole of the international telephone switching network. By comparison computers are puny. The very largest has only ten "exchanges," yet they need skilled operators versed in elaborate artificial languages. If computers become as omnipresent in the seventies as is predicted many more people are going to have to learn how to use them for jobs quite separate from computing. The machines themselves, and the way they are used, will have to shed much of the mystique which still surrounds them.
The latest IBM computer, System/3, is likely to pioneer this kind of approach. It is aimed at a new slot in the market, the small-to-middling business for which computers have previously been too large and too inaccessible. System/3 is small and cheap (about £500 a month to rent); and though there are many small computers for scientific calculations, System/3 is the first scaled-down data processing computer. It is designed for the man who wants to turn his accountant into chief programmer and his computometer girl into chief operator. It is one of the first computers to come outside the computing fraternity and seems very much a pointer for the years ahead.
In designing System/3 IBM have courageously thrown out a number of the traditional computer standards; they have been able to do this because System/3 is going into a new market so it does not have to be compatible with anything already installed This sort of initiative is essential if anomalies like the 80 column punched card, devised al the end of the last century for prodding mechanical fingers, are not to be with us al the beginning of the next.
System/3 consists of three separate machines. One is the computer itself with care reader, processing electronics, disk store and line printer all built around a single "desk." The other two are a card punch and a card sorter for the new 96 column punched cards used by System/3. These are one third the size of the conventional 80 column cards and: carry 20 per cent more information. They make the card handling machinery smaller ant faster, are easier to move and take up much less storage space. The card punch has a built-in memory of its own which tabulate: data automatically according to preset programs. It can also be used to verify the data after punching. The card sorting machine has five pockets instead of the conventional ten: This makes operating it a sit down job, and in two passes it can sort cards into tens numerically and into 26 alphabetically (using a matrix sort).
The central unit does not have to be places in the same room as the other two machines, or even in the same building. It does not need extra air conditioning, as this is built in, and has no cables apart from a 13 amp mains lead, so no false floor is required. It occupies 150 sqft of ordinary office space. On the desk stands an ordinary keyboard, used for typing in last minute instructions and answering cries for help. A red, blue or yellow "cooling tower" behind the desk holds all the electronics, and the disk stores are in the desk drawers. A unit called in IBM jargon the MFCU (multi-function card unit) sits on one end of the desk and takes cards from one of two hoppers. It reads or punches or prints them and stacks them into one of four hoppers. The line printer, which can have two carriages and print two reports at once, stands at the other end of the desk.
Ergonomically this arrangement is far superior to present day computers where programs have to wait while operators walk about the computer room to push buttons and load machines. System/3 operators can do most things sitting on a castored chair. The computer controls have been made simpler than those of a lift, for instance; the rows of twinkling lights (which never meant anything anyway most of the time) are banished to science fiction films. System/3 has three buttons and an off/on switch on a panel in the corner of the cooling tower. An alphabetic
The three units which make up IBM System/3 are arranged, 1, so that an operator can reach them all from a mobile chair. From left to right they are the card puncher and verifier, the central computer with line printer, centre l processor, operator's keyboard and a reader/ printer/punch unit for 96 column cards (new to this system) - and a card sorter. Basic controls, grouped in the lower left hand corner of the processor, 2, are start, stop, and a mains switch. Other controls, 3, are mainly for engineers. Cards stacked in the output hoppers, 4, take up one third the space of conventional punched cards.
Magnetic disc drives are one of the main options on the machine. The operator, 1, is changing disc in a removable cassette. The programmer can use conventional languages or a specially developed code called R PG 2. Forms like the one shown, 2, control the format of programming and help avoid omissions by listing al l possibilities. The mechanical system that moves cards through the computer, 3, is simple and fast. Card handling has been redesigned; the card punch, 4, has its own magnetic store and computing circuits programmed to control the card format, count columns punched and detect errors. The card sorter, 5, sorts into alphabetical order and edits. Industrial design was by Eliot Noyes, WAlderman, Edward R Wiener and Frank Wilkcy Jnr of IBM America; the disk drive was developed at IBM's Hursley laboratories, near Winchester.
indicator above them produces cryptic messages like EJ for End of Job.
These are all logical developments; System/3 is a small computer using small punched cards; IBM have made full use of the potential this offered. Their abandonment of punched paper tape and magnetic tape for this computer is also logical. Paper tape is fine for tickertape parades, but it cannot be altered or corrected or added to without re-punching the entire tape; it has to be rewound every time it is used; and it breaks. System/3 punched cards are about a third more bulky than paper tape, but this third contains a print out of the content of the card - so mistakes can be quickly located and only single cards need to be replaced. Cards have also the advantage that they can be used as order forms or job cards etc. The adoption of magnetic tape for computers was a mixed blessing; moving heavy reels of tape at the required speed is a mechanical nightmare and one of the reasons why computers normally need special air conditioning. System/3 uses up to 80 removable magnetic disk cartridges instead; the disk drives incorporate their own air conditioning.
However, System/3's real breakthrough is in software, in particular its programming language RPG 2. There have been new languages before, hundreds of them, mostly very short lived, and even the successful ones like Fortran and Cobol have many variations. RPG is a development of the IBM Report Program Generator developed for System/360 and it operates quite differently to conventional programming languages. It uses about 24 special words (like ADD, SORT and MOVE); the rest of the vocabulary and all the syntax of the language is provided by the forms on which it is written, on a "Tick here if you are working in sterling" basis.
The reason why computers cannot be told what to do in English is that English is ambiguous, illogical and incompatible with the precise mathematical workings of a computer. To take a simple example: "add seven to three divided by four" can either mean (7+3)/4= 2 1/2 or 7+4 =7 1/4. So an artificial logical language has to be devised, and the programmer has to learn it and get it right down to the last comma. In some languages he has to do seemingly illogical things like leave six spaces at the beginning of every line and remember that "2000." means something very different from "2000,".
In practice a programmer draws an algorithm or flowchart for his problem' often assisted by a systems analyst, and then he writes out the chart as a list of instructions. For a simple problem this could be: Read a punched card. Look in the computer store to see if what is on the card is different from what is in the store. If it is, change the store and print out a notice. If it is not read the next card and do the same again. If there are no more cards, stop.
This wording is far too imprecise for the computer; when the programmer writes it out in programming language he has to include information about which holes in the punched card are the required data, which machine the cards are in, where in the store the corresponding numbers are and which correspond to which - and what to do if they all get muddled. He also has to specify exactly what the printed notice should look like.
This process is complicated and requires training and experience. Finding the mistakes in a program once its written, debugging, as it is called, can take as long as writing it in the first place. A computer can help with debugging but it cannot stop a programmer putting bugs in. Consequently computer programmers are difficult to find and expensive to keep.
System/3 is intended to be used without programmers or rather to be programmed by the person who understands what is required of the computer directly, instead of through an intermediary who is a frequent cause of computers not doing what they were supposed to. It is unfortunate that there is still a lot of computerese in RPG 2; words like Field, File and Format acquire special definitions and fly round singly and in pairs in a very confusing manner. Two adjacent columns on one of the RPG 2 forms are marked "File Type" and "File Designation" reasonable synonyms in everyday English, but antonyms for RPG. Every file must be a file type and certain flies types must have file designations but certain types cannot have certain designations. Fortunately the reference manual gives a huge list of every possible combination. However, compared with the atrocities of other programming languages, this is nothing. The computer looks kindly on its programmers and a blank is the right answer in most places. If you forget to call your program anything the computer, curiously, christens it RPGOBJ.
RPG 2 has five forms. The first names the program, and lists the names (chosen by the programmer) of all the files he wants to use to keep his information in during the program. A second specifies what his tables (for PAYE etc) look like, and what the forms he is printing on look like. A third form shows exactly what is in each space on each card coming in - where on the punched cards a man's name and works number are written, for instance. A fourth form specifies the calculations that are to be done on any particular item. The final form states the way in which the results are to be set out on the line printer or if they are to be added to the punched card, or what. The forms are linked by specifying names, and by selecting indicating numbers which are "switched on" when particular things happen and control other operations in the program.
This system represents a radical approach to programming; IBM claim it is much easier to learn than other languages and that non-professional programmers will be able to use it after a few days training.
First deliveries of System/3 are due later this year and IBM have already sold a considerable number. There are many competitors for this particular market, ranging from time sharing services on large machines to electronic developments of a comptometer called the visible record computer. System/3 could well be the answer for a firm that is prepared to take a little trouble to learn how it works and get the best out of it. Computers are all too frequently heralded as the universal panacea. They are not, but they can do wonders if they are used with enthusiasm and creativity. Any ordinary manager could write his own program and run it on System/3, which is not bad to be going on with.