COMPSCI 093 History of Computing, Cryptography, and Robotic Devices

Lectures - Teaching Assistants 


Sakai Website



None. If you feel that you may not have sufficient background, please talk with an instructor.


Lectures and Recitations by John Reif:

Lectures               Room: LSRC A247

Times: Tuesday & Thursday 3:05 PM – 4:20 PM


RECITATIONS by TA (Discussion):        Room: LSRC A247

Times: Monday 3:05 PM – 4:20 PM





Professor John Reif






D223 LSRC Building







reif at


Web page:


Office hours:


Tues & Thurs: 3:00PM – 4:00 PM via Zoom by  prior appointment




TA: Rajiv Nagipogu, PhD Student




Office:  Biosci 042



Phone: 984-377-9214






Web page:



Office hours: Monday &  Wednesday  2:00pm – 3:00pm



Course materials:

·       Lectures: Various lecture notes and research papers (downloadable).


[Williams]: Michael R. Williams, A History of Computing Technology, Wiley-IEEE Computer Society, 2nd Edition (1997), ISBN-10: ‎ 0818677392, ISBN-13: ‎ 978-0818677397

[O’Regan]: Gerard O'Regan, A Brief History of Computing, Springer Publishing, 3rd Edition (2021), ebook: ISBN 978-3-030-66599-9, hardcover: ISBN 978-3-030-66598-2

(Free download via Duke Library:

Optional auxiliary reading (other good reference books):

Course Topics:

This is an undergraduate-level course providing an introduction to the extensive history of computing, cryptography, and robotics through the ages.  The course will cover historical computing devices beginning from their first discovery, in some cases from the classical Greek and Roman periods, progressing through the Middle Ages and the Renaissance period in Western Europe, through to the modern period.  The course covers, in their order of discovery, many diverse technologies and devices for computation, cryptography, and robotics. These technologies include a wide variety of ingenious devices, including purely mechanical devices, hybrid electrical/mechanical devices, as well as purely electrical devices. The history of purely mechanical devices for computing, cryptography, and robotics dates at least to the classical Greek and Roman periods, where ingenious mechanical devices and techniques were developed: these include:

·      Calculating devices for predicting astronomical positions and eclipses (e.g., the famous and mysterious Antikythera mechanism, dating to the first century BC),

·      Devices for encrypting messages (e.g., Caesar’s cypher), and

·      Mechanical robotic devices known as automata (e.g., the owl automata of Ktesibios of Alexandria and the mechanical singing birds of Hero of Alexandria).

These classic mechanical technologies were preserved and improved in the early Middle Ages primarily in the Islamic Middle East at the House of Wisdom in Baghdad by al-Khwarizmi (for whom “algorithm” was named) and the Banu Musa brothers (who wrote the Book of Ingenious Devices, describing automata and other devices).  These mechanical technologies were subsequently rediscovered and further improved in Europe the latter part of the Middle Ages and the Renaissance period in Western Europe, when many sophisticated mechanical devices were developed for arithmetic calculation:

·      Naper’s bones for doing multiplication via conversion to logs,

·      The ingenious arithmometer calculating machines of Schickard, Pascal, and Colmar,

·      Devices for encryption (e.g., cipher wheels), as well as

·      Devices for timing and robotic movement (e.g., bell-tower clocks augmented with automata).

The industrial revolution provided many further ingenious innovations, for example:

·      Maxwell’s planimeter (an analog device for measuring area),

·      Sir William Thomson (Lord Kelvin)’s harmonic analyzer (an analog computer used for tide and weather predictions),

·      Babbage’s Difference Machines (a digital mechanical computer used for mathematical tables), 

·      Babbage’s Analytical Machine (a digital mechanical computer envisioned by Ada Lovelace to be used for general computing), and

·      Pierce’s Logical Inference Machine (a digital mechanical computer that was the first AI machine).

 The need for ever more rapid computation and cryptography capabilities just prior to and during WW II led to rapid further developments:

·      Sophisticated analog navigation and guidance systems,

·      The Enigma electromechanical cypher machine, and

·      Turing’s deciphering device (named the “Bomb” resembling a Turing Machine) for decoding German cyphers). 

The course will further cover the modern history of history of computing, cryptography, and robotics from just after WW II to modern times. This includes the history of electronic computers, and the transitions from Tube-based computers to the use of transiters and microprocessors. Finally, the course will include an overview of the modern history of emerging technologies for computing and cryptography, including quantum computing and molecular computing.

By use of models and simulators, students will also learn the basics of the operation and programming of various historical mechanical computers, mechanical automata and cryptographic devices. The history of computer memory storage will also be covered, including mechanical gear positions, punched cards, paper tape, magnetic delay lines, magnetic tape, magnetic disk, silicon chip, DNA molecular storage, etc.  In addition to the operation of these devices, the course will also cover the device’s societal impact (in their historical period of use), as well as the lives of the device’s inventors (where known). The course will particularly highlight individuals which made major contributions to computation devices, including:

·      Archimedes,

·      al-Khwarizmi,

·      Schickard,

·      Pascal,

·      Colmar,

·      Babbage,

·      Lady Lovelace,

·      Hollerith,

·      Turing,

·      Zuse,

·      Mauchly & Eckert and

·      many others.  

By use of models and simulators, students will learn the basics of the operation and programming of various historical mechanical computers, robots and cryptographic devices. Students will do projects on historical devices and/or device inventors.

Summary of topics covered and lecture notes:

Consult the schedule of Lectures for a list of topics and a copy of lecture notes for the lectures to date.

Homework assignments:

All assignments will be released to Students on the course Sakai webpage, and all solutions should similarly be submitted on the course Sakai webpage. No credit is given for late solutions. You should turn in what you have on time for partial credit rather than receive a 0. For exceptional circumstances, see the instructor in advance, rather than after the due time. Our policy is that one (and only one) homework during the entire term is allowed not to be handed in, at no loss of credit. Furthermore, if you hand in all the homework, then we will drop the lowest graded homework.    

Students will be asked to design algorithms for classic problems and provide mathematical analysis of correctness and asymptotic efficiency. Students will turn in a written set of solutions. It is recommended but not required that LaTeX be used for typesetting homework problems. If handwritten solutions are illegible, they will not be graded. Details about proper style for writing up homework solutions and some guidelines for grading are available.

Homeworks are due roughly every second week and must be turned in before class on Wednesday of the week they're due. No credit is given for late solutions. For exceptional circumstances, see John Reif in advance, rather than after the due time.

Honor code for homework problems: discussion among students is permitted, but students must write up solutions independently on their own. discussion among students is permitted, but students must write up solutions independently on their own. No materials or sources from prior years' classes or from the Internet can be consulted.



20% of the grade will be Multiple Choice Quizzes. There will be No Final Exam.  Honor code for Quizzes: During every quiz: all calculators, computers, cell phones, wireless or bluetooth-connected devices, and all other electronic devices must be identified and handed over to the person proctoring the exam. Breaking the rules can result in expulsion. 


Term Paper: Students will have the opportunity to do individual or group projects on historical devices: the projects may be short papers, prototype devices, and/or simulations of historical computing, cryptography, and robotic devices, or papers on the device inventors. At the end of the course, there will also be opportunities for the students to present their projects. The Term Paper/Project will be 35% of the grade.  Honor code for Term Papers: Term papers must be written by the student and not copied from text written by other authors (or from the web) or computer generated. Plagiarism of any sort, for example paraphrasing without proper attribution, is not allowed. Computer generated term papers are also a violation of the honor code. Breaking the rules can result in expulsion. 



There will be no make-ups for missed quizzes. Missing one of the quizzes will result in the remaining quiz grades being re-weighted appropriately. The grades will be curved when calculating the final letter grade.

Anonymous course feedback: Anonymous comments