François Gernelle

Computer users soon learn that the miraculous powers of personal computers are based on the avoidance of error.
Robert Burchfield

François Gernelle in 1973
François Gernelle in 1973

It is a difficult task to define the term personal computer, but one of the popular definitions is containing the following criteria:
• small, stand-alone
• general purpose
• advanced microelectronics technology (microprocessor)
• operated by a single individual, interactively
• no requisite computer training
• affordable by an individual or small group

It appears the first computer, fulfilling the all abovementioned conditions is Micral N. It was introduced in early 1973, powered by Intel’s 8008 chip, and was the first commercial non-kit computer based on a microprocessor. It was conceived in France by François Gernelle (born 20 December 1944), an ex-engineer at Intertechnique (a french high-tech company, specializing in electronic measurement for aviation). The term microcomputer first appeared in print in reference namely to the Micral.

The Micral-N was initially developed for the I.N.R.A. (French National Institute for Agronomic Research) which was looking for a computer for process control in its hygrometric measurements but didn’t have sufficient budget to buy the lowest “mini” at the time (e.g. Digital Equipment PDP-8), so Gernelle proposed to make a computer for them for half the price. The development began in July 1972, in a hut in Chatenay-Malabry (Paris suburbs), with Gernelle and three of his collaborators: Benchetrit (software engineer), Alain Lacombe (electrical technician), and Jean-Claude Beckmann (in charge of the mechanical part).

In 1973-74 François Gernelle applied for patents for different features of Micral in France (patent FR2216883), Germany (patent DE2404886), Netherlands (patent NL7401328), Japan (patent JP50117333), and the USA (patent US3974480 for Data Processing System).

The french Micral N from 1973
The french Micral N from 1973

The first Micral (see the nearby image) was delivered to the INRA in January 1973, and commercialized in February 1973 by the French company Réalisation d’Études Électroniques (founded in 1972 by Gernelle and his ex-colleague Andre Truong), for the amazing price (at the time) of FF 8500 (about $1750).

The 8008 CPU, that powered the Micral was essentially an improvement of Intel’s first microprocessor—4004 and was Intel’s first 8-bit processor. It was available as a DIL chip with 18 pins and was originally intended to be a custom chip for Computer Terminals Corp. of Texas (later known as Datapoint). CTC rejected the 8008 because it was too slow and required too many supporting chips, and when Intel offered it to the open market, it was not quite successful. The Micral’s CPU was working at 500 KHz (period 2µs), running approximately 50000 instructions per second. It was set on a bus and did have MOS memory, parallel and serial I/O cards, and a real-time system. In one word, it had all the characteristics of nowadays computers.

The software was written on an Intertechnique Multi-8 minicomputer, using a cross-assembler. Micral had a back-panel bus, the so-called Pluribus with a 74-pin connector. 14 boards could be plugged into a Pluribus. With two Pluribus, the Micral could support up to 24 boards. R2E developed many boards for Pluribus: a processor board, memory boards, channel boards named “channel-stack”, communications adapters, digital I/O boards, analog I/O boards, floppy disk, hard disk, and magnetic cartridges controllers. The computer used MOS memory instead of core memory. It had eight levels of interrupt and a stack. Micral was programmed with perforated cards and used a teletype as output.

An 8-inch floppy disk reader was added to the Micral in December 1973, following a command of the Commissariat à l’Energie Atomique. This was made possible by the pile-canal, a buffer than could accept one megabyte per second. In 1974, a keyboard and display were fitted to the Micral computers. A hard disk became available in 1975. In 1979, the Micral 8031 D was equipped with a 5″ 1/4 inches hard disk of 5 Megabytes made by Seagate.

Micral C design team in 1977 (Joubert, Beckmann, Gernelle, and Francina)
Micral C design team in 1977 (Joubert, Beckmann, Gernelle, and Francina)

The Micral processor board embarked on the 8088 with its addressing capability of 16 KB (address field 14 bits).

The following Micral computers successively used the Intel 8080 at 1 MHz (Micral G and Micral S), Zilog Z80 (Micral CZ), and Intel 8088 as microprocessors. The Micral M was a multiprocessor. The original SYSMIC operating system was renamed Prologue in 1978. The last Micral designed by François Gernelle was the 9020. In 1981, R2E was bought by Groupe Bull. Starting with the Bull Micral 30, which could use both Prologue and MS-DOS, Groupe Bull transformed the Micral computers into a line of PC compatibles. François Gernelle left Bull in 1983.

The Micral series was a rather successful market product. The company R2E sold about 90000 units of the Micral that were mostly used in vertical applications such as highway toll booths and process control.

The initial software available on Micral was application specific and the Prologue operating system was developed during the late 1970s. It was to be one of the operating systems available to PC compatibles.

Edgar Codd

At the time, Nixon was normalizing relations with China. I figured that if he could normalize relations, then so could I.
Edgar Codd

Edgar Codd (1923-2003)
Edgar Codd (1923-2003)

The English computer scientist Edgar Codd is the creator of the relational databases model, an extremely influential general theory of data management, the foundation of RDBMS (Relational Databases Management Systems), used everywhere nowadays.

In the early 1940s Edgar studied mathematics and chemistry at Exeter College, Oxford, before serving as a pilot in the Royal Air Force during World War II. In 1948, after graduating from Oxford, he moved to New York and was soon hired by IBM as a programmer for the Selective Sequence Electronic Calculator, IBM’s first electronic computer, an experimental machine with 12500 vacuum tubes. He then invented a novel “multiprogramming” method for the pioneering IBM 7040 STRETCH computer. This method enabled STRETCH, the forerunner to modern mainframe computers, to run several programs at the same time. In 1953, disappointed by the USA policy, Codd moved to Ottawa, Canada. A decade later he returned to the USA and received his doctorate in computer science from the University of Michigan. Two years later he moved to San Jose, California, to work at IBM’s San Jose Research Laboratory.

In the 1960s and 1970s, Codd worked out his theories of data arrangement, based on mathematical set theory. He wanted to store data in cross-referenced tables, allowing the information to be presented in multiple permutations. It was a revolutionary approach. In 1969 he published an internal IBM paper, describing his ideas for replacing the hierarchical or navigational structure with simple tables containing rows and columns, but without great success and interest. Codd firmly believed that computer users should be able to work at a more natural-language level and not be concerned about the details of where or how the data was stored. In 1970 Codd published his landmark paper, A Relational Model of Data for Large Shared Data Banks.

Codd’s concept of data arrangement was seen within IBM as an “intellectual curiosity” at best and, at worst, as undermining IBM’s existing products. Codd’s ideas however were picked up by local entrepreneurs and resulted in the formation of firms such as Oracle (today the number two independent software firm after Microsoft), Ingres, Informix, and Sybase.

Let’s see how Don Chamberlin, an IBM colleague of Codd and coinventor of SQL, was acquainted with Codd’s ideas: “…since I’d been studying CODASYL (the language used to query navigational databases), I could imagine how those queries would have been represented in CODASYL by programs that were five pages long, that would navigate through this labyrinth of pointers and stuff. Codd would sort of write them down as one-liners. … They weren’t complicated at all. I said, ‘Wow.’ This was kind of a conversion experience for me. I understood what the relational thing was about after that.”

To Codd’s disappointment, IBM proved slow to exploit his suggestions until commercial rivals started implementing them. Initially, IBM refused to implement the relational model at all for business reasons (to preserve revenue from its current database implementation—IMS/DB.

In 1973 IBM finally included the relational model of Codd in his plans, for the System R subproject, but Codd was not involved in the project. Among the critical technologies developed for System R is the Structured Query Language (SQL), (initially called SEQUEL) developed by Chamberlin and Ray Boyce. Boyce later worked with Codd to develop the Boyce-Codd Normal Form for efficiently designing relational database tables so information was not needlessly duplicated in different tables.

In 1981 IBM released to market its first relational database product, SQL/DS. DB2, initially for large mainframe machines, was announced in 1983. IBM’s DB2 family of databases proved to be one of IBM’s most successful software products and is incorporated in the operating systems of the mainframe and middleware servers of IBM.

Still, in IBM, Codd continued to develop and extend his relational model. As the relational model started to become fashionable in the early 1980s, Codd fought a sometimes bitter campaign to prevent the term from being misused by database vendors who had merely added a relational veneer to older technology. As part of this campaign, he published his famous 12 rules to define what constituted a relational database.

Later he joined up with the British database guru Chris Date, whom Codd had introduced to San Jose in 1971, to form the Codd and Date Consulting Group. The company, which included Codd’s second wife Sharon Weinberg, made a good living from conducting seminars, writing books, and advising major database vendors. Codd never became rich like the entrepreneurs like Larry Ellison, who exploited his ideas. He remained active as a consultant until 1999.

Biography of Ted Codd

Edgar (Ted) Frank Codd (1923-2003)
Edgar (Ted) Frank Codd (1923-2003)

Edgar (Ted) Frank Codd was born on 19 August 1923, in Fortuneswell, on the Isle of Portland in the county of Dorset on the south coast of England. He was the youngest of seven children of Edgar Codd, a leather manufacturer, and Katherine Adcock, a schoolteacher.

During the 1930s Codd attended Poole Grammar School in Dorset. He was awarded a full scholarship to Oxford University (Exeter College), where he initially read chemistry (1941-1942). In 1942, despite the fact that he was eligible for a deferment because of his studies, Codd volunteered for active duty and became a flight lieutenant, then captain, in the Royal Air Force Coastal Command. After the war, in 1945, he returned to Oxford to complete his studies, switching to mathematics and obtaining his degree in 1948.

As part of his service in the RAF, Codd was sent to the United States for aviation training. That experience led to a lifelong love of recreational flying, and also to a recognition that the United States had a great deal to offer for someone of a creative bent like himself. As a consequence, he emigrated to the United States soon after graduating in 1948. After a brief period with Macy’s in New York City, working as a sales clerk in the men’s sportswear department, he found a job as a mathematics lecturer at the University of Tennessee in Knoxville, where he taught for six months.

Codd’s computing career began in June 1949 when he joined IBM in New York City as a programming mathematician. In 1953, Codd left the United States (and IBM) in protest against Senator Joseph McCarthy’s witch-hunting and moved to Ottawa, Canada, where he ran the data processing department for Computing Devices of Canada Limited (which was involved in the development of the Canadian guided missile program). A chance meeting with his old IBM manager led to his return to the U.S. in 1957 when he rejoined IBM in Poughkeepsie, New York. Codd retired from IBM in 1984 at the age of 61, after a serious injury resulting from a fall. Then he established two companies to provide worldwide lecturing and consulting services to vendors and users of database management systems and continues to write technical papers in response to ill-conceived criticisms of the relational model.

At the end of the 1960s, Codd became a U.S. citizen, though he never lost his British accent, his British sense of humor, or his British love for a good cup of tea.

Codd had a long list of honors and elected positions that were conferred on him during his lifetime, including IBM Fellow; Fellow of the Britain Computer Society; member of the National Academy of Engineering; member of the American Academy of Arts and Sciences; a Fellow of the Association for Computing Machinery. In 1981 he received the ACM Turing Award, the most prestigious award in the field of computer science.

Codd was married twice. First, in 1952, in Cambridge, Massachusetts, he married Elizabeth Shannon Forbes, a daughter of George Shannon Forbes, professor emeritus of chemistry at Harvard. They had four children: Katherine, David, Frank, and Ronald. They divorced in 1978 and in 1990 Codd married Sharon Boroff Weinberg.

The genuine computing pioneer Edgar Frank Codd died of heart failure at his home in Williams Island, Florida, on 18 April 2003.

Ole-Johan Dahl and Kristen Nygaard

Object-oriented programming is an exceptionally bad idea that could only have originated in California.
Edsger Dijkstra

Ole-Johan Dahl and Kristen Nygaard
Ole-Johan Dahl (left) and Kristen Nygaard

The first object-oriented programming language was developed in the 1960s at the Norwegian Computing Center in Oslo, by two Norwegian computer scientists—Ole-Johan Dahl (1931-2002) and Kristen Nygaard (1926-2002).

Kristen Nygaard, an MS in mathematics at the University of Oslo, started writing computer simulation programs in 1957. He was seeking a better way to describe the heterogeneity and the operation of a system. To go further with his ideas on a formal computer language for describing a system, Nygaard realized that he needed someone with more computer programming skills than he had, thus he contacted Ole-Johan Dahl, also an MS in mathematics and one of Norway’s foremost computer scientist, who joined him in January 1962.

By May 1962 the main concepts for a simulation language were set. “SIMULA I” was born, a special-purpose programming language (similar to ALGOL 60) for simulating discrete event systems. SIMULA I was fully operational by January 1965 on the UNIVAC 1107 computer of Sperry Rand. In the following years, Dahl and Nygaard spent a lot of time teaching Simula. Simula spread to several countries around the world and was later implemented on Burroughs B5500 computers and the Russian URAL-16 computer.

In 1966 the British computer scientist Tony Hoare introduced the concept of record class construct, which Dahl and Nygaard extended with the concept of prefixing and other features to meet their requirements for a new generalized process concept. The first formal definition of Simula 67 appeared in May 1967. In June 1967 a conference was held to standardize the language and initiate a number of implementations. Dahl proposed to unify the type and the class concept. This led to serious discussions, and the proposal was rejected by the board. SIMULA 67 was formally standardized at the first meeting of the SIMULA Standards Group in February 1968.

Simula 67 contained many of the concepts that are now available in mainstream OO languages such as Java, C++, and C#:
• Class and object. The class concept is a template for creating instances (objects).
• Subclass. Classes may be organized in a classification hierarchy by means of subclasses.
• Virtual methods. A Simula class may define virtual methods that can be redefined in subclasses.
• Active objects. An object in Simula may be the head of an active thread (technically it is a coroutine).
• Action combination. Simula has an inner-construct for combining the action-parts of a class and its subclass.
• Processes and schedulers. It is easy in Simula to write new concurrency abstractions including schedulers.
• Frameworks. Simula provided the first OO framework in form of Class Simulation. The simulation features of Simula I was made available through Class Simulation.
• Automatic memory management. Simula had automatic memory management, including garbage collection.

Rene Pardo and Remy Landau

The global economy is built on two things: the internal combustion engine and Microsoft Excel. Never forget this.
Kevin Hector

Rene K. Pardo (image source: www.torontopubliclibrary.ca)
Rene K. Pardo (image source: www.torontopubliclibrary.ca)

After the pioneering work of Canadian Professor Richard Mattessich (1922-2019), who suggested in 1961 to use budget simulation in form of a computerized spreadsheet, the next key invention in the development of electronic spreadsheets was made in the summer of 1969 by his compatriots Rene Pardo and Remy Landau, who just graduated from Harvard University.

The program, called LANPAR (LANguage for Programming Arrays at Random or LANdau PARdo) was developed by Pardo and Landau in response to the problem that Bell Canada and AT&T had in changing the numerous cells in their budgeting forms. Pardo imagined, that the managers at Bell Canada shouldn’t depend on programmers to program and modify budgeting forms (which took several months), and he thought of letting users type out forms in any order and having an electronic computer calculate results in the right order (“Forward Referencing/Natural Order Calculation”). LANPAR, written for 6 weeks in the middle of 1969, introduced forward referencing and natural order recalculation, which allowed for a complex set of connections to be quickly charted across the array of cells of an electronic ledger. LANPAR was sold to the Plant Budgeting Divisions of Bell Canada, AT&T, and the 18 Operating Telephone Companies across the U.S., in addition to General Motors in Michigan. The program was written in Fortran language, coded on punch tapes, and ran on the General Electric GE-400 Time Sharing Series on several computers in North America and on mainframes Honeywell 6000 series used by Bell Canada, AT&T, and General Motors.

In August 1970 Pardo and Landau filed a U.S. Patent 4,398,249 on a spreadsheet automatic natural order calculation algorithm. While the patent was initially rejected by the patent office as being a purely mathematical invention, following 12 years of appeals, Pardo and Landau won a landmark court case at the Predecessor Court of the Federal Circuit, overturning the Patent Office in 1983 — establishing that “something does not cease to become patentable merely because the point of novelty is in an algorithm.”

Rene Pardo on the cover of ComputerData magazine, July 1982
Rene Pardo on the cover of ComputerData magazine, July 1982

Rene K. Pardo was born in 1947 in Lausanne-Pully, Switzerland, to parents who were residents of Egypt, with ancestry from Spain, Portugal, Italy, and Ukraine. His family emigrated to Canada when he was at the age of 4. In the New World Pardo studied at Westmount High School (1964) in Westmount, Quebec, then got his BSc degree at McGill University (1968) in Montreal, and an M.Ed. degree at Harvard University (1969).

In 1970 Pardo founded LANPAR Technologies Inc. in Markham, Ontario. Until the early 1980s, LANPAR was Canada’s largest independent distributor of computer terminals, between 1982 and 1988, the company was involved in the distribution and manufacturing of personal computers, then shift its corporate focus to sales and service of PC networking products. The company was dissolved in January 2003. Pardo also founded companies for Digital Image Library and Online Communities, advanced hybrid capacitor-battery energy storage technology, advanced membrane technology, providing clean drinking water and electricity for emerging nations with portable solar-wind powered technology, area lighting LED technology, and innovations in the electrical & construction industry, energy management & control.

Besides their seminal work in the area of electronic spreadsheets, Pardo and Landau pioneered also: 1. The educational multimedia game & online computer timesharing-based multiplayer games; 2. Online conference registration and message retrieval system; 3. Artistic computer-assisted animation.

Dan Bricklin

I’m not rich because I invented VisiCalc, but I feel that I’ve made a change in the world. That’s a satisfaction money can’t buy.
Dan Bricklin

Daniel Singer Bricklin
Daniel Singer Bricklin

In the spring of 1978, a Harvard Business School student, Dan Bricklin, came up with the idea for an interactive visible calculator, the program (called VisiCalc), which will be called later the First Killer App of the Computer Era.

Bricklin certainly was not the inventor of the electronic spreadsheet. The first known ideas for such a program were from 1961 when Richard Mattessich (1922-2019), Professor of Accounting at the University of British Columbia, pioneered the development of computerized spreadsheets for use in business accounting. Then in 1969 Rene Pardo and Remy Landau co-invented “LANPAR” LANguage for Programming Arrays at Random, an electronic spreadsheet-type application, which was used for budgeting at Bell Canada, AT&T, Bell operating companies, and General Motors. Mattessich, Pardo, and Landau’s work and that of other developers of spreadsheets on mainframe computers probably had no influence on Bricklin however. Thus, a history of the modern era of microcomputer-based electronic spreadsheets should begin with VisiCalc.

Daniel Singer Bricklin was born on 16 July 1951, in Philadelphia, USA, where he attended Akiba Hebrew Academy during his high school years. Then he received a B.S. in electrical engineering/computer science from MIT (Massachusetts Institute of Technology), before going for an MBA from Harvard University in 1977.

Once sitting in his room, as he remembered …I would daydream. “Imagine if my calculator had a ball in its back, like a mouse…” (I had seen a mouse previously, I think in a demonstration at a conference by Doug Engelbart, and maybe the Alto). And “…imagine if I had a heads-up display, like in a fighter plane, where I could see the virtual image hanging in the air in front of me. I could just move my mouse/keyboard calculator around on the table, punch in a few numbers, circle them to get a sum, do some calculations, and answer ‘10% will be fine!'” (10% was always the answer in those days when we couldn’t do very complicated calculations…).

Later in the summer of 1978, between the first and second year of the MBA program, while riding a bike along a path on Martha’s Vineyard, he decided that he wanted to pursue this idea and create a real product to sell after I graduated.

Dan Bricklin (right) and Bob Frankston (left)
Dan Bricklin (right) and Bob Frankston (left)

So in the spring of 1978, Bricklin tried prototyping the product’s display screen in Basic on a video terminal connected to the Business School’s timesharing system. His hope for using a mouse was replaced in the first personal computer prototype in the early fall of 1978 by the game paddle of the Apple ][. (This was a dial one could turn to move game objects back and forth). One could move the cursor left or right, and then push the “fire” button, and then turning the paddle would move the cursor up and down. The R-C circuit or whatever in the Apple ][ was too sluggish and my pointing too imprecise to accurately position the cursor that way, so I switched to the two arrow keys of the Apple ][ keyboard (it only had 2) and used the space bar instead of the button to switch from horizontal movement to vertical.

The first PC prototype of VisiCalc was created over a weekend on an Apple ][ (using Apple Integer Basic), borrowed for the purpose from a friend, Dan Fylstra, later his publisher. It did not scroll, yet, but it had columns and rows and some arithmetic.

Then Bricklin decided to recruit a more experienced programmer, to do a real, assembler version of the program (first for the MOS Technology 6502 microprocessor used in the Apple ][). Thus he called his MIT colleague Bob Frankston, to build production code (faster speed, better arithmetic, scrolling, etc.). Frankston not only managed to code the program in assembler (using an assembler, which ran on a minicomputer equipped with the Multics operating system) but also expanded the program and packed the code into a mere 20k of machine memory, making it both powerful and practical enough to be run on a microcomputer. Actually, the size of the program was the biggest problem for Frankston, because Apple II had limited memory, and 16 KB of RAM on the low-end Apple II. No matter how hard Frankston tried, however, he could not fit VisiCalc in the 16, that’s why VisiCalc would only be available for the much more expensive 32 KB Apple II.

A screenshot from the first version of VisiCalc
A screenshot from the first version of VisiCalc

Bricklin and Frankston formed Software Arts Corporation in January 1979. In May 1979, the firm Personal Software of Dan Fylstra (later renamed VisiCorp) began marketing VisiCalc with a teaser ad in Byte Magazine (see the nearby image). Initially, Bricklin conceived several names for the program, between them Calcu-ledger and Calcu-paper, but the name “VisiCalc” is an abbreviated form of the phrase “visible calculator” that was chosen by Dan Fylstra.

VisiCalc was one of the key products that helped bring the microcomputer from the hobbyist’s desk into the office. Before the release of this groundbreaking software, microcomputers were thought of as toys; VisiCalc changed that.

VisiCalc went on sale in November of 1979 (see the User’s Guide of VisiCalc 1.1) and became immediately a big hit. It retailed for US$100 and sold so well that many dealers started bundling the Apple II with VisiCalc. The success of VisiCalc was one of the main reasons Apple to be turned into a successful company, selling tens of thousands of the pricey 32 KB Apple IIs to businesses that wanted them only for the spreadsheet.

In 1981, Software Arts made over $12 million in royalties from VisiCalc. It became Personal Software’s flagship product, financing the groundbreaking VisiOn office suite and GUI. Just before the release of VisiOn, Personal Software was renamed VisiCorp.

The success wouldn’t last long, though. Soon, more powerful clones of VisiCalc were released.

In 1983, Lotus 1-2-3 was released. It was available exclusively for the IBM PC and other MS-DOS computers, and it quickly outsold VisiCalc. Lotus worked a lot like VisiCalc, which made migration easy, and it took full advantage of the PC’s 80-column display and vast amounts of memory, which allowed much bigger spreadsheets than the Apple II could handle.

In 1980 Microsoft also released a spreadsheet, MultiPlan, then Excel in 1985. Countless other developers heated up, and tensions developed between VisiCorp and Software Arts. Eventually, VisiCorp sued Software Arts when the company delayed the development of VisiCalc for the IBM PC so they could first finish a version for the Apple IIe and III.

Software Arts’ assets were eventually sold to Lotus, which unsurprisingly stopped the development of VisiCalc.

John Kemeny and Thomas Kurtz

The man ignorant of mathematics will be increasingly limited in his grasp of the main forces of civilization.
John Kemeny

John Kemeny and Thomas Kurtz in the late 1960s
John Kemeny (left) and Thomas Kurtz in the late 1960s

In 1962, John George Kemeny (a Jewish-Hungarian American mathematician, computer scientist, and educator, born as János György Kemény) (1926–1992), chairman of the Dartmouth College Mathematics Department, and his colleague Thomas Eugene Kurtz (b. 1928) submitted a grant to NSF, for the development of a new time-sharing system, with the aim of providing easy access to computing facilities for all members of the college. Its implementation began in 1963 by a student team under the direction of Kemeny and Kurtz. On 1 May 1964, the system, named Dartmouth Time-Sharing System, or DTSS for short, originally implemented to run on a GE-200 series computer (GE-200 series was a family of small mainframe computers of the 1960s, manufactured by General Electric) began operations and remained in operation until the end of 1999!

Having removed one of the main barriers to computer use, Kurtz and Kemeny went on to simplify the user interface, so that a student could essentially learn enough to use the system in no time. But writing programs in the computer languages then in use was a quite challenging task. Kurtz initially tried to simplify certain existing languages, namely Algol and FORTRAN, but eventually decided together with Kemeny that a new, simplified programming language was needed. The resulting programming language was called BASIC (an acronym for Beginner’s All-purpose Symbolic Instruction Code) and has become the most widely used language in the world.

Kemeny teaches BASIC programming to students in Dartmouth College (Photo courtesy of Rauner Special Collections Library)
Kemeny teaches BASIC programming to students in Dartmouth College (Photo courtesy of Rauner Special Collections Library)

The BASIC language was initially based on FORTRAN II, with some influences from ALGOL 60 and with additions to make it suitable for timesharing systems like DTSS. Initially, BASIC concentrated on supporting straightforward mathematical work, with matrix arithmetic support from its initial implementation as a batch language and full string functionality being added by 1965.

The Golden Era of BASIC came with the introduction of the first microcomputers in the mid-1970s. BASIC had the advantage that it was fairly well known to the young designers and computer hobbyists who took an interest in microcomputers.

In 1983, Kemeny, Kurtz along with several others formed True BASIC, Inc., with the intention of creating a personal computer version of BASIC for educational purposes.

BASIC is a very powerful language as tool for novice programmers. BASIC allows for a wide range of applications, and it has many versions. For example to write a program to print the phrase “Hello World” infinitely, one has to enter only two lines of code (which was a rather effective style for programming languages of the 1960s):

10 PRINT "Hello World!"
20 GOTO 10

“Simplicity is the ultimate sophistication”, as Leonardo used to say, although… Notice the use of the GOTO statement, common in BASIC, but cursed with the advent of structured programming languages in the late 1960s and 1970s.

Ken Thompson (Unix)

You can’t trust code that you did not create totally yourself.
Ken Thompson

Kenneth (Ken) Lane Thompson (Source: www.facesofopensource.com)
Kenneth (Ken) Lane Thompson (Source: www.facesofopensource.com)

At the end of the 1960s, the young engineer at AT&T Bell Labs Kenneth (Ken) Lane Thompson (born 4 February 1943) worked on the project of the Multics operating system. Multics (Multiplexing Information and Computer Services) was an experimental operating system for the GE-645 mainframe, developed in the 1960s by the Massachusetts Institute of Technology, Bell Labs, and General Electric. It introduced many innovations but had many problems, and at the end of the 1960s, Bell Labs, frustrated by the slow progress and difficulties, pulled out of the project. Thus Thompson, with the help of his colleagues Dennis Ritchie, Douglas McIlroy, and Joe Ossanna, decided to experiment with some Multics concepts and to redo it on a much smaller scale. Thus in 1969, the idea of the now ubiquitous Unix was born.

While Ken Thompson still had access to the Multics environment, he wrote simulations for the new file and paging system on it. Later the group continued his work on blackboards and scribbled notes. Also in 1969, Thompson developed a very attractive game, Space Travel, first written on Multics, then transliterated into Fortran for GECOS, and finally for a little-used PDP-7 at Bell Labs. The same PDP-7 then he decided to use for the implementation of the first UNIX. On this PDP-7 and using its assembly language, the team of researchers (initially without financial support from Bell Labs) led by Thompson and Ritchie, developed a hierarchical file system, the concepts of computer processes and device files, a command-line interpreter, and some small utility programs.

The name Unics was coined in 1970 by the team member Brian Kernighan, who played on Multics name. Unics (Uniplexed information and computing system) could eventually support multiple simultaneous users and was later shortened to Unix.

Structurally, the file system of PDP-7 Unix was nearly identical to today’s, for example, it had:
1. An i-list: a linear array of i-nodes each describing a file. An i-node contained less than it does now, but the essential information was the same: the protection mode of the file, its type and size, and the list of physical blocks holding the contents.
2. Directories: a special kind of file containing a sequence of names and the associated i-number.
3. Special files describing devices. The device specification was not contained explicitly in the i-node, but was instead encoded in the number: specific i-numbers corresponded to specific files.

In 1970 Thompson and Ritchie wanted to use Unix on a much larger machine than the PDP-7 and traded the promise of adding text processing capabilities to Unix for some financial support from Bell, porting the code for a PDP-11/20 machine. Thus for the first time in 1970, the Unix operating system was officially named and ran on the PDP-11/20. It added a text formatting program called roff and a text editor. All three were written in PDP-11/20 assembly language. Bell Labs used this initial “text processing system”, made up of Unix, roff, and the editor, for text processing of patent applications. Roff soon evolved into troff, the first electronic publishing program with a full typesetting capability.

Ken Thompson and Dennis Ritchie, working on PDP-11 and UNIX in 1972
Ken Thompson and Dennis Ritchie, working on PDP-11 and UNIX in 1972

In 1972, Unix was rewritten in the C programming language, contrary to the general notion at the time “that something as complex as an operating system, which must deal with time-critical events, had to be written exclusively in assembly language” (although Unix was not the first OS, written in a high-level language, it was Burroughs B5000 from 1961). C language was created by Ritchie as an improved version of B language, created by Thompson as a translation of BCPL from Martin Richards. The migration from assembly language to the higher-level language C resulted in much more portable software, requiring only a relatively small amount of machine-dependent code to be replaced when porting Unix to other computing platforms.

AT&T made Unix available to universities and commercial firms, as well as the United States government, under licenses. The licenses included all source code including the machine-dependent parts of the kernel, which were written in PDP-11 assembly code. Copies of the annotated Unix kernel sources circulated widely in the late 1970s in the form of a much-copied book, which led to considerable use of Unix as an educational example. At some point, ARPA (Advanced Research Projects Agency) adopted Unix as a standard language for the Arpanet (the predecessor of the Internet) community.

During the late 1970s and early 1980s, the influence of Unix in academic circles led to the large-scale adoption of Unix (particularly of the BSD version, originating from the University of California, Berkeley) by many commercial startups, for example, Solaris, HP-UX, and AIX. Today, in addition to certified Unix systems such as those already mentioned, Unix-like operating systems such as Linux and BSD descendants (FreeBSD, NetBSD, and OpenBSD) are commonly encountered in a variety of modern servers, workstations, mobile devices, and embedded systems, including macOS computers and Android mobile devices

Justin Bamberger

The Universal Adder of Bamberger, 1903, © Arithmeum
The Universal Adder of Bamberger, 1903, © Arithmeum

In 1901 the young German inventor and businessman Justin Wilhelm Bamberger (born 20 August 1879 in Würzburg) moved from Cologne to Munich, where in 1902 he registered a company for office equipment, under his name, and also started a small repair shop that dealt with used typewriters. Presumably, he also sold the “Locke-Adder”, which he imported from the USA, then he decided to design his own calculating and typewriting devices. Starting in 1903 he brought out four simple calculators and two typewriters, which he produced, although in small quantities, in his factory (Präzisions-Maschinenfabrik Justin Wilhelm Bamberger & Co.).

The Universal Adder of Bamberger (see the nearby photo) was similar to George Fowler‘s Adding Machine from 1863 and to Locke Adder from 1901. It was patented in Germany (D.R.G.M. 195509 of 8 April 1903). Like Locke Adder, the Universal Calculator does not carry tens, it is only used to set amounts. A tens carry must be calculated mentally and also set. The device has dimensions of 38,8 x 11,3 x 1,8 cm, a weight of 530 g, and was in production from 1903 to 1914, with an initial price of 15 Marks.

The Omega calculator of Bamberger, 1905, © Arithmeum
The Omega calculator of Bamberger, 1905, © Arithmeum

In 1905 Bamberger improved the Universal Adder and launched “Omega” (see the nearby photo), with an initial price of 38 Marks. The device has dimensions of 39,2 x 11,5 x 2 cm, and a weight of 730 g. The Omega calculator (see the Usage Instruction of Omega) has hod-shaped number slides with punctiform elevations that the finger can grip. The result is shown under round windows. To the right of the input field, there is a hole for each position, into which a comma pen can be inserted. On the right side of the device, there is a holder for a notepad. On the cover of the box is inscribed a multiplication table with sliding elements. In the right part of the box is a compartment with a lid for storage (pen, etc.) The device does not have tens carry.

The Ideal calculator of Bamberger, 1905, © Arithmeum
The Ideal calculator of Bamberger, 1905, © Arithmeum

In May 1906 Bamberger announced a new portable and cheaper version of Universal Adder called the “Dux” calculator, with a price of 4.5 Marks. In June 1906, he launched a rather different calculating device—Bamberger Ideal (see the nearby photo), with a price of 25 Marks.

The Ideal calculator of Bamberger is a concentric toothed-disc adding machine with dimensions 2 x 11 x 15 cm, and a weight of 240 g. During the setting of the device, one of the six concentrically arranged number disks is moved with the setting pin, whereby one of the six buttons underneath the setting disk (for the digits 1–100000) the respective dial is released from the blockage. The black (outer) numbers apply to addition and the red (inner) numbers apply to subtraction. The device has tens carry, i.e. if “9” is exceeded, the tens are carried over to the next higher number disc (via an internal “carrier” tooth). Above the row of buttons on the left is a reset button, which is pulled to the right to reset, releasing the locks on the six dials; when the setting pin is actuated, all six number discs snap into the “0” position one after the other. The machine, which is very pretty thanks to the two-tone materials, is decorated with floral arabesques and a border.

Bamberger was a holder of quite a few patents in Germany, France, Great Britain, the USA, Switzerland, and Denmark, mainly in the area of typewriters, but also for calculating devices, a fountain pen, a vacuum cleaner, etc.

In late 1909 Bamberger’s last company (D.K.W. “Deutsche Klein Maschinenwerke Justin Wm. Bamberger & Co”), which produced his typewriters Liliput and Helios, went bankrupt, so he left Munich and moved to Berlin, where he founded “Helios-Schreibmaschinen-Gesellschaft” to sell his patented typewriter Helios, now produced by another company. It seems Bamberger was a good engineer, but a poor businessman because Helios had also become an economic failure for him. The last available information for Bamberger is from the middle of 1912 when he was the managing director of the “Allgemeine Spezialmaschinengesellschaft” in Hamburg, which manufactured vacuum cleaning machines (he had patents in this area, e.g. GB191126843).

Harry Pyle and Victor Poor

You don’t have conversations with microprocessors. You tell them what to do, then helplessly watch the disaster when they take you literally!
David Brin

Victor (Vic) Dale Poor (1933-2012)
Victor (Vic) Dale Poor (1933-2012)

It was during the Thanksgiving holiday of 1969 when the engineer Victor Dale Poor (1933-2012) and his fellow amateur radio colleague Harry Starck Pyle (1949-2013) produced the underlying architecture of the modern microprocessor on a living room floor. Several months ago, Pyle, still a student, was hired for a computer-related summer job by his mentor Poor, who was the executive of Maryland-based radio and telegraph equipment manufacturer Frederick Electronics, where developed the idea of adapting radioteletype (RTTY) machines to send data wirelessly.

As Poor and Pyle came up with the idea of a high-density integrated circuit that would be programmable, they offered this circuit design to various IC manufacturers but were turned down by all of them. The reason? The chip was too specialized and would never have enough widespread applicability to be financially worth developing.

Having failed to convince any IC manufacturer, but still believing in the concept Poor and Pyle pressed on and went looking for manufacturers who would have an application for the new chip. They found such a firm Computer Terminal Corporation (CTC), which made a variety of lower-cost computer terminals which were compatible with various computer companies and was involved also in the development of the first microprocessors in another way. CTC was interested in the chip because it presented a way to make one terminal that could be programmed to behave like and handle the protocols of a variety of different computer manufacturers. CTC agreed to pay two different chip makers (Intel and Texas Instruments) to produce the chip. Both chip makers decided to use a new technology, called PMOS, to produce the chip.

Both chip makers have encountered new technology problems with PMOS and have failed to meet the CTC deadline. So the contracts are canceled and CTC builds the chip via discrete TTL logic and puts it into a programmable desktop terminal, called the Datapoint 2200. The original instruction set architecture was developed by Poor and Pyle. The TTL design they ended up using was made by Gary Asbell. Jonathan Schmidt wrote the accompanying communications software.

Datapoint 2200
Datapoint 2200 of CTC (Computer Terminal Corporation)

Datapoint 2200 was unveiled at the beginning of 1970 and was launched to the market in June. It becomes an extremely successful product and was manufactured as long as until 1979. So much so, that CTC changes its name to Datapoint Corporation. They go on to invent another new technology to connect all of their low-cost computers together. While the initial Datapoint 2200 did not have a microprocessor in it, it had the programmable equivalent of an Intel 8008 (built by discrete TTL logic) and it funded the initial development of the first microprocessor.

The Datapoint 2200  was a box with size 9 5/8” in height, 18 1/2” wide, 19 5/8” deep, and weight 47 pounds. It had a small built-in 7” x 3,5” CRT screen, which was of green&black monochrome type, and worked in text mode 12 x 80. It had full stroke keyboard+numeric keypad with an integrated programmable beeper. The external data and program storage were two read-write cassette decks for 130KB of mass storage. The internal memory of the first models was from 2 KB to 16 KB max. There was a run light and two other lights on the keyboard. The I/O ports were—RS 232, LAN connector, and printer (parallel data) connector.

The operating system was Datapoint O/S (cassette/storage drum-based O/S). When the machine halted, you could not tell where in the program it had done so. So you put in the O/S cassette and rebooted. You then did a memory dump and tried to deduce what had gone wrong. Primitive by today’s standards, it was the first computer on a desktop.

There was also an optional disk drive using Shugart 8″ floppies, single-sided, single-density. It was the first commercial computer to include them! A number of peripherals can be connected also: printer, tape device, 2 MB removable cartridge disk, card reader, etc. (see the Reference Manual of Datapoint).

Languages included Databus and Datashare (“COBOL-like” business computer languages, interpreted to allow multiple 80 character by 24-row dumb CRTs to share tiny partitions of RAM memory in the main system unit), a Basic interpreter, and an RPG II compiler (see the Programmers Manual of Datapoint).

The Datapoint 2200 was a real computer and it fits on a desk, but it certainly wasn’t priced for hobbyists, as it was sold for about $5000.

Thomas Ross and Stevenson Smith

We’re fascinated with robots because they are reflections of ourselves.
Ken Goldberg

The brilliant electrochemical expert from the University of Washington, Thomas Ross, certainly was not the first and only man, who can be credited for creating a thinking machine. In fact, Ross got his original inspiration from the works of Clark Leonard Hull (1884-1952), an influential American psychologist, who studied logic and engineering and sought to explain learning and motivation by scientific laws of behavior, and his followers Nicolas Rashevsky (1899-1972), Robert G. Krueger and Harry D. Baernstein. In a 1929 article by Hull and Baernstein can be read:
If it were possible to construct non-living devices, perhaps even of inorganic materials, which would perform the essential functions of the conditioned reflex, we should be able to organize these units into systems, which would show true trial-and-error learning with intelligent selection and the elimination of errors, as well as other behavior ordinarily classed as psychic… Learning and thought are here conceived as by no means necessarily a function of living protoplasm any more than is aerial locomotion…

In the same 1929, Baernstein created a device, which was intended to simulate several features of conditioned reflex training. It was demonstrated at a Psychological Conference in Urbana, Illinois, and attracted wide interest, and the press referred to it as the mysterious mechanical brain.

At some time at the beginning of the 1930s Thomas Neil Ross (10 Aug 1909-12 Jan 2010) of Hoquiam, Washington, a junior student at the University of Washington, started his work on automata, which can be considered the first practical attempt to make a machine that would imitate a living creature in performance. These machines seem to have been suggested by the familiar test of animal intelligence in finding the way out of a maze. By trial and error, his maze-solver could learn to find its way to a correct goal on a system of toy-train tracks.

In 1933 Ross built a mechanical arm powered by an electrical engine that explored five parallel paths in a kind of vertical maze, searching one after the other from the entrance to the exit. The goal was to point out a solution to the maze. Rather complicated electrical circuits constituting the memory cells of this primitive robot were responsible for its performance. This device, as well as other ideas of Ross, were described in the article The Machines that Think for Scientific American from April 1933 (see the article of Thomas Ross in the April 1933 issue of Scientific American).

In early 1935 Ross shared his ideas with one of his professors at the University of Washington, psychologist Stevenson Smith (1883-1950), who used them to construct a robot, the so-called Robot Rat. It was a three-wheeled vehicle about 31 cm long and 22 cm wide, announced in several newspapers, let’s see the Time newspaper, Monday, 16 September 1935:
In Seattle last week Dr. Stevenson Smith, University of Washington psychology professor, delighted colleagues and students by showing them a complicated “mechanical rat” which he and a helper had worked five years to perfect. Living rats, especially white ones, are favorites with animal psychologists who teach them to traverse complex mazes bristling with blind alleys, studying the effect on maze-learning of food, light, electric shock, drugs, blasts of air.
The Stevenson rat is impervious to all such lures and hindrances. Resembling a three-wheeled roller skate loaded with small motors, electromagnets and switches, the robot is set on a track containing twelve forks at each of which a wrong turn leads to a dead-end. The robot is first set to take the turn to the right at every fork. When this proves to be wrong and results in a bump against the dead-end, the “rat” goes into reverse, backs up past the fork, goes forward again, taking the correct left turn. This resets the controls in such a way as to enable the “rat” on the second try to negotiate the maze from start to finish without a single error.
“This machine,” said its inventor, “remembers what it has learned far better than any man or animal. No living organism can be depended upon to make no errors of this type after one trial.”

Let’s see the Ogden Standard Examiner newspaper of 1 September 1935:
HUMANS TAKE BACK SEAT TO MACHINE RATS
Psychology Professor Says Memory of New Devices Exceeds Mankind
SEATTLE, Aug. 31—”Mechanical rat,” described by Dr. Stevenson Smith, University of Washington psychology professor, as “able to remember what it has learned far better than any man or animal can remember,” was demonstrated here today.
“No living organism could be depended upon to make no mistakes after one practice,” Dr. Smith said.
“That is what this ‘rat’ can do”.
Dr. Smith then demonstrated the device, a small foot-long mechanism powered by a small electric motor, on three wheels, which groped its way through a maze of wooden tracks, across a long recitation room.
The first time it “failed,” but by bumping a protruding piece of metal into a bumper at the end of the wrong track, it “learned that it shouldn’t try that switch again. Under its own power after hitting the bumper, it retreated back beyond the switch, and “found” the other track and then proceeded forward.
The second time it was started at the beginning of the 40-foot maze, it moved across the room, making no mistakes.
Dr. Smith gave most of the credit for its development to Thomas Ross of McClips, Wash., a junior student at the university.
Psychologists over the country have been working on the problem trying to develop such a device, Dr. Smith said.
“What is its practical value?” he was asked.
“We hardly know or foresee just now what can be done with it,” he replied.
“I think, however, in studying the problem of learning, it will be useful to teach students some things and I also think it may teach psychologists some, too.”

Stevenson Smith demonstrates the Robot Rat in 1935
Stevenson Smith demonstrates the Robot Rat in 1935

Ross published a description of this robot in a 1937 article in the Psychological Review magazine:
This machine runs through a twelve-unit, multiple-Y maze in which the twelve sections are so arranged that each has one blocked branch and one branch that opens into the stem of the next section. placed at the beginning of this maze and set in motion by connection to an electrical supply, the machine will begin rolling through the maze on its three wheels. Being constructed with a tendency to turn to the right, it will, on coming to the forking of the first Y-section, run down the right-hand passage. If this passage is blocked (by a vertical wall at the end) the machine will back out of that passage and turn to the left upon again starting forward. Since the maze is so arranged that one passage in each section is open, the left-hand passage will now lead directly to the beginning of the next section of the maze, at which point the machine will receive a ‘cue’ that it has entered a new section as it brushes its two metal ‘feelers’ against a pair of blocks set on the sides of the passage.
(…) On being again started through the maze, the machine will go from beginning to end without entering any of the blind passages which it entered on the first trip through, and every time after will repeat the performance without ‘error’.

The memory disk of the Robot Rat
The memory disk of the Robot Rat

The automatic learning feature of the Robot Rat was based on a rotating disk, the so-called Memory Disk, see the nearby image.

The Memory Disk worked in this manner:
Before the robot entered the maze, all 12 tabs on the disk were raised, but the mechanism was designed so that when the robot took the dead-end path to the right, one of the tabs went down and a circuit was activated that prevented the car from turning right again at that particular split in the path. The robot’s successful and unsuccessful “trials”, its turn to the right and then to the left, was registered on the disk in the form of a pattern of 12 depressed and raised tabs. As the robot passed all twelve “Y”-sections of the maze, the disk went through a complete rotation and arrived back at its starting position, but now the 12 tabs were in a pattern, that prevented the robot from turning right. In other words, the correct path was imprinted in the robot’s memory disk, and afterward, the robot never made errors when going through the maze.