San Jose State University : Site Name


Main Content

Working in Mars Mission Control, JPL

Ronald Mak

Department of Computer Science
Fall Semester 2011

Office hours: M: 5:30-6:00 PM and 8:45-9:30 PM
W: 8:45-10:00 PM
Office location: MacQuarrie Hall, room 413
Mission Control, Jet Propulsion Laboratory (JPL)
NASA Mars Exploration Rover Mission

CS 185C-01/CS 286-03: The History of Computing

MW 6:00-7:15 pm MacQuarrie Hall 225 [3 units]

Student research projects

Each student's historical research project has a topic page at the IEEE Global History Network website.

Philip Gebhardt
"The encryption war of WWII: the Enigma encryption machine"
A Java simulation of the encryption machine used in World War II by the Nazi military.
Stefan Gloutnikov
"History of Memory and Storage Systems"
Research and trace history of the memory and storage subsystems. Note correct and failed paths.
Michael Haney
"A Brief History of Apple (2000-Present)"
The history of Apple after the return of Steve Jobs.
Youn Kim
"Past programming languages and their influences on today's languages and programming paradigms"
There are many different computer architectures. But the most prevalent architecture is Von Neumann architecture.
Yulian Kynchev
"Internet and Social's Influence on Programming Evolution"
How the internet and the influence of social media and social websites have influenced the growth, changes, and paradigm shifts in Programming.
Ryan Lichtig
"The History of Natural Language Processing"
It is a very interesting topic to me and I have plans to go to the SRI with in the next two weeks or so and I will be posting more information as I go!
Weili Liu
"Evolution of Social Networking"
The history of social networking, and what the next generation's of social networks might be.
Patrick O'Connell
"PDP-1 GUI Emulator"
A GUI-based simulator of the PDP-1 and program development environment that will run on a laptop.
Michael Riha
"History of Lossless Data Compression Algorithms"
The evolution of Lempel-Ziv compression algorithms, as well as other alternative formats such as DEFLATE and DEFLATE64. Depending on the scope of my research I may also include such information as how these algorithms were implemented on early computers.
Steven Terpe
"Why Instruction Sets No Longer Matter"
How we arrived where we are: a place where instruction sets no longer matter.
Stephen Voglewede
"Biology and Computers: A lesson in what is possible"
How computation has changed the face of biology and created a new field in Bioinformatics. A history of Bioinformatics, beginning with algorithms like the Needleman-Wunsch, and ending with the tools available today and the current state of the Human Genome Project.

Prof. Edward Feigenbaum of Stanford University, one of the leading pioneers of the field of Artificial Intelligence (AI), will speak to the class in MacQuarrie Hall 225 on Monday, Sepetember 12, 6:00-7:15 PM on The History of AI. This meeting will not be open to the public.

Lectures and talks

Except as noted, talks by the guest speakers will be in the Engineering Auditorium ENGR 189 from 6:00-7:00 PM. See the Speaker Series Schedule. Each talk will be preceded by a reception starting at 5:00 PM in ENGR 294 for students and faculty to meet with the speaker in an informal setting. Most of the talks will be recorded.

After each guest lecture, please e-mail to a short essay (3 or 4 paragraphs) due by the end of the Friday following the talk. Describe
Date Location Content
Aug 24 MH 225 Slides: Introduction; field trip; project ideas; punched card data processing
Aug 29 MH 225 Slides: Project ideas; IEEE accounts; Gordon Bell; Digital Equipment Corporation (DEC)

By Gordon Bell:
Aug 31 ENGR 189 Guest lecture: Gordon Bell, Microsoft Corporation
The Birth and Death of the Minicomputer Industry from a Bell's Law and Digital Equipment Corporation (DEC) Perspective
Sept 7 ENGR 189 Guest lecture: James Gosling, Liquid Robotics
The Prehistory of Java
Sept 12 MH 225 Guest lecture: Edward Feigenbaum, Stanford University
"The History of Artificial Intelligence (AI)"

Please browse before the lecture for a basic understanding of AI and its history: "Artificial Intelligence" documentary that Prof. Feigenbaum showed in class
Sept 14 MH 225 Slides: Projects; Don Knuth

Some papers and articles by or related to Don Knuth:
Sept 19 ENGR 189 Guest lecture: Donald Knuth, Stanford University
All Questions about the History of Computer Science Answered
Sept 21 MH 225 Slides: Konrad Zuse and Plankalkuel; Enigma and Colossus; Moore School lectures; von Neumann architecture; brief history of computer architecture; UNIVAC; IBM 650, 7090, 1401, 360; microprogramming; minicomputers; microprocessors; CISC vs. RISC

"The First Draft Report on the EDVAC" , John von Neumann
Sept 26 MH 225 Slides: Create topics for IEEE GHN; Computer History Museumm archives; Greek Antikythera mechanism; abacus; slide rule; Curta
Sept 28 ENGR 189 Guest lecture: Randall Neff
Yes, the HP-35 Fits into Your Pocket
Oct 3 MH 225 Slides: Oral presentations; history of computer video games
Oct 5 ENGR 189 Guest lecture: Allan Alcorn
Video Games as a Driver of Computing Technology
Oct 10 MH 225 Film: Triumph of the Nerds, Volume 1: "Impressing Their Friends"
Oct 12 ENGR 189 Guest lecture: Stephen Kwan
Computer Science and Enterprise Computing from Punched Cards and FORTRAN to Information Systems and Mobile Apps
Oct 17 MH 225 Slides: IEEE GHN topics; oral presentations content and schedule
Film: Triumph of the Nerds, Volume 2: "Riding the Bear"
Oct 19 ENGR 189 Guest lecture: Shomit Ghose
An Examination of the Brief but Successful Life of a Silicon Valley Start-up
Oct 24 MH 225 Project status reports:
Oct 26 MH 225 Project status reports:
Oct 31 MH 225 Project status reports: Slides: Introduction to databases; DBMS; relational databases; normalization; SQL; XQuery
Nov 2 ENGR 189 Guest lecture: Don Chamberlin
Fifty Years of Data:
How Advances in Database Management Have Helped to Shape Our World
Nov 7 MH 225 Slides: IBM CPC, 701, 7090
Film: Triumph of the Nerds, Volume 3: "Great Artists Steal"
Nov 9 ENGR 189 Guest lecture: Bob Patrick
Software is What the Hardware Designers Left Out:
Programming the Early Computers
Nov 14 MH 225 Slides: Brief history of object-oriented programming; Smalltalk; graphical user interfaces through history
Nov 16 ENGR 189 Guest lecture: Alan Kay
The Dynabook
Nov 21 ENGR 189 Guest lecture: Ted Kahn
The Central Role of "Kids of All Ages" in the Design, Development, and Growth of Interactive Computing and Digital Media Over the Past 50 Years:
A Personal History of Using Computers for and in Education
Nov 28 MH 225 Slides: The "Semi-Automatic Ground Environment" (SAGE) computer system; the IBM 7030 Stretch computer system
Nov 30 ENGR 189 Guest lecture: Dan Greiner
Legacy of the IBM System/360 Architecture
Dec 7 ENGR 189 Guest lecture: Robert Garner
Tales of CISC and RISC from Xerox PARC and Sun

Work with computing pioneers

Students enrolled in this class will have the rare and unique opportunity to work with computing pioneers. The following tables list pioneers who have already agreed to be project advisors or to give guest lectures (or both). These lists are in alphabetical order and subject to change, and specific dates for the guest lectures and their topics are to be announced.

Guest Lecturer Possible Topics
Allan Alcorn Co-founder of Atari, creator of Pong, developed the MPEG standard and Apple Quicktime; the early history of video games
Dennis Allison The People's Computer Company and the early history of personal computing
Gordon Bell Digital Equipment Corporation (DEC)
Computer Structures textbook
Don Chamberlin Co-inventor of SQL, System R, and XQuery
Evolution of information storage and database systems
Edward Feigenbaum History of artificial intelligence (AI)
Robert Garner RISC architectures and Sun SPARC; Xerox Star
Shomit Ghose Contributions of venture capital to Silicon Valley
James Gosling Java programming language
Dan Greiner Systems architecture from the IBM System/360 to the IBM System Z
Alan Kay Object-oriented programming and Smalltalk, graphical user interfaces, Dynabook
Donald Knuth "All Questions about the History of Computer Science Answered"
The Art of Computer Programming
Stephen Kwan Information technology (IT), business data processing, service science
Ike Nassi SAP (global enterprise software company)
Randall Neff Early Hewlett-Packard calculators
Robert Patrick Mainframe systems software, systems analysis
Taxonomy of application systems
David Pease Instructor of the History of Computing class at U.C. Santa Cruz
Mark Seaman Naval Tactical Data System (NTDS), UNIVAC CP-642B
CMS-2Q programming language (U.S. Navy)
Steve "Woz" Wozniak Co-founder of Apple Computer

Project Advisor Possible Topics
Michael Albaugh IBM 1401, 1440, 1620, 1130; CDC 6600; UNIVAC SS 90; Atari
Dennis Allison (see Guest Lecturer table above)
Gordon Bell (see Guest Lecturer table above)
Grady Booch Unified Modeling Language (UML)
Software engineering tools and methodologies
Peter Capek Evolution of hardware sytems and software applications
Evolution and standards of floating point, storage, I/O control systems, virtual machines, programming languages
Ward Cunningham Techniques for displaying old computer programs in the most comprehensible way on the Web
Rick Dill Active for 50 years in computer technology and management from processes to chips to displays to computer applications
John Dobyns Management, economics, methods, etc. of software product development
James Gosling (see Guest Lecturer table above)
Randall Hansen Techniques for displaying old computer programs in the most comprehensible way on the Web
Alan Kay (see Guest Lecturer table above)
Christophe Lecuyer Zilog
Semiconductor technology
David Macklin IBM CPC, 650 RAMAC and SOAP, 1401, APL, FORTRAN
Jud McCarthy IBM PC & PC-XT
Robert Patrick (see Guest Lecturer table above)
Bernard Peuto History of Zilog
History of computing at Rice University
John Pokoski Comparisons of computer architectures; machine instructions for variable-length data
Ken Ross Computer timesharing
Oscar Salmassy Experiences from the IBM 2311 Direct Access Storage Facility for the IBM System/360 to microprocessor development for the IBM ATM attachment
Dick Sites DEC Alpha, IBM Stretch, Burroughs B6700
Van Snyder FORTRAN and scientific computing
IBM 1401 Autocoder
Jim Warren West Coast Computer Faire
Intelligent Machines Journal (IMJ)
Dr. Dobb's Journal of Computer Calisthenics & Orthodontia
Computer privacy and freedom

Publish with the IEEE

The IEEE Global History Network will host your project reports from early drafts to final form. This will expose your works-in-progress to a worldwide network of exports who will be able to comment and offer research guidance. This is an opportunity to publish with a well-known and respected professional organization, and you will be able to link to your articles (such as from your resumes).

The Computer History Museum

To conduct your research, students enrolled in this class will have limited access to the historical archives of the Computer History Museum in Mt. View, which includes harware and software artifacts and original documentation. The museum's new Revolution exhibit will be a source of inpiration and project ideas.

There will be an unofficial field trip to the museum on Saturday, August 27, starting at 10:30 AM with free passes for students enrolled in this classs. Besides a self-guided tour of the exhibits, you can see a live demo of the Babbage Difference Engine and experience a fully restored 50-years-old IBM 1401 computer system in operation. (Of course, you can always visit the museum on your own anytime it's normally open to view the exhibits or to conduct research.)

Besides the Computer History Museum, you will have access to other historical repositories, many of which are on the Web.


How did computer architectures, software applications, and programming languages evolve to their present state? Why were certain paths taken but others abandoned throughout the history of computing? By learning the lessons of how past architects and designers overcame the technological, economic, and societal constraints of their day, we can become better architects and designers in our present day.

You will work in small project teams to research the history of computing. Based on the team members' interests and with the instructor's consent, each team will devise a project that investigates some historic hardware or software artifact or methodology, a legendary computing pioneer or company, or the evolving impact of computing on work and society. All projects will rely on original sources.

Example projects include

Each project team will present oral progress reports of its activities during the semester to the rest of the class. Final deliverables will be research results that can be submitted to the Computer History Museum or posted to websites devoted to computing history such as the IEEE Global History Network described above.


At least one of the following:

CS 46B Introduction to Data Structures grade C- or better,
or equivalent knowledge of computer software
CS 47 Introduction to Computer Organization grade C- or better,
or equivalent knowledge of computer hardware
Instructor consent

Required books

A History of Modern Computing, 2nd edition
Paul E. Ceruzzi
The MIT Press, 2003
ISBN: 978-0262532037

Recommended book

There are many books about the history of computing. But since you will be writing about history, the following book will be extremely useful.

Writing History: A Guide for Students, 3rd edition
William Kelleher Storey
Oxford University Press, 2008
ISBN: 978-0195337556