1979
During university summer "long vacation" I worked at BAC in Stevenage. One summer I spent working on a computer ground system for Rapier ground-to-air missiles.
I found that the first system control programs were stored in patterns of little magnets stored in grids - perhaps the most primitive storage imaginable.
We were writing an Operating System for a more advanced version of a ground station which the company had built. I believe I wrote some parts of the disk operating system, for instance a command to copy files. I dont remember if it was written in assembler but I expect so as a compiler or cross-compiler was probably not available.
1980
IBM System/370 : APL : PERT
When I returned to work full-time at BAe in Stevenage after Univeristy, the project I spent most time on was a project scheduling package.
At the time project scheduling was traditionally a manual procedure. An approach called PERT (Project Evaluation and Review Technique) allowed you to specify projects as a connected network of tasks and allowed you to identify the "critical path" and work out scheduled dates for project tasks.
A talented Electronics Engineer called Geoff Hoyle, had developed (or acquired) a program to do this analysis for his team and the company wanted to expand it for other departments and link the projects together into a company program. It was a very forward-thinking but hopelessly over-ambitious scheme as most departments didn't have anyone who could use a computer, but I was unlucky enough to be allocated to it.
A big technical drawback was the program was written in an esoteric language called APL (A Programming Language!). APL is a wonderful but completely incomprehensible very high level language which works on vectors and matrices. Here is an example program which works out the determinant of a matrix.
It uses a lot of pwerful single character opoerators and a special typewriter keyboard is required to write programs. It was available to use from terminals on an IBM mainframe.
I was able to make the system functionality work technically. As network analysis was already working I had to add a user interface, suitable for non-computer people to use, allowing them to enter tasks, carry out critical path analysis and provide a report suite.
We had "donors" and "receivers" to link tasks to other projects and these needed careful maintenance.
The system actually needed a Program Office to manage the overall picture but the expectation was that the computer could manage the big picture and the users would just see what effect other projects had on them.
The system was rolled out to one engineering group but failed to make a major improvement to overall scheduling.
IBM 5100 : APL : Laplace Transform
The benefit of working for the defense industry was the amount of leading edge technology available. One such device was the original IBM 5100 PC.
The 5100 could be programmed in Basic or APL. I believe I actually used a
5110 which was released a couple of years later and could have floppy disk drives attached. In fact it was a portable computer, with a self-contained screen, keyboard and tape drive. It weighed about 25Kg so one strong person could carry it around. Our model had a dual floppy disk unit which was the size of a cupboard and took two people to carry. It could store a massive total of 4.8MB. I had this all to myself for a number of months, as no-one else knew how to work it or what to do with it.
My task was to write a program to calculate
Laplace transforms, which are a version of Fourier transforms. APL was ideally suited to this work and my programs were very useful. I could tell the PC how accurate I wanted the results to be and set it off to calculate the answers. If I wanted very accurate results, I could let it run for hours, doing more detailed calculations.
Tektronix 4014 Graphics
One of the expensive toys our department had available was a Tektronix 4010 series graphics terminal. I believe the one we used was a 4014 model which had a beautiful 19" screen.
Steve Cussens, who was a friend / colleague, had a friend in the movie business (perhaps an intern). Steve wrote a program which simulated a space craft (well a simple cuboid shape) coming in to land, approaching the viewer. I think I helped write the program, which required matrix manipulation for 3D graphics calculations. This was soon after Star Wars came out and we were using a computer rather than models to draw the space ship.
1982
Computer Networking
The last project I worked on was to design and build a local area network, linking heterogeneous British Aerospace engineering systems. There were a large number of different computers from a variety of manufacturers in use on site and obvious benefits in linking them together. I believe DECnet would have been available for PDP-11 and Vax machines, but we wanted others to be linked in. We were working with Logica VTS on the project and I remember a trip to their office by Oxford Street to look at at a "grey" market IBM PC. The IBM PC was on sale in America from August 1981 but not introduced in the UK until January 1983.
My recollection of my objective was a little vague. I think I came up with a potential set of user commands for operating over the network, largely based on my knowledge of DEC Digital command language but I am not sure that networking hardware had been agreed so I could only do some superficial programming.
Footnote
I moved on from BAe in August 1982 having worked for them for a total of about four years between 1976 and 1982, whilst studying for my degree. In retrospect I was fortunate to work in a wide variety of environments on some innovative and forward looking systems, which I can look back on fondly. The Undergraduate Apprenticeship was a great programme, it was a shame that recogition and remuneration did not keep pace with our value to the company and marketability.