The content on this page is the work of Professor Glenn Blank.
Be advised that Professor Blank is no longer on the active faculty at Lehigh.
This content continues to be available as a courtesy, but it may not be maintained or current.

Link to contents for The Universal Machine

The Universal Machine:
A Multimedia Introduction to Computing

Link to multimedia for The Universal Machine

Glenn D. Blank and Robert F. Barnes, Lehigh University

576 pgs/ISBN 0-256-21140-X/1998
Version 1.3 of multimedia CDROM available
New web-based multimedia for The Universal Computer available


This book has been significantly revised since its publication. The new working title is The Universal Computer: Introducing Computer Science with Multimedia. A third author, Edwin J. Kay, has been added to our team. The preface and chapter 1 of the latest draft (August 2002) are available in PDF form. The multimedia is also new: check out a prototype on the web.
Contact the lead author if you would are a faculty member or teacher interested in reviewing the complete manuscript.

Both the original and new book, with accompanying multimedia, have three major goals:

(1) Explore the breadth of computing as a discipline, following the recommendations of Computing Curricula 1991: Report of the ACM/IEEE-CS Joint Curriculum Task Force, by introducing a breadth of the field, from architecture to artificial intelligence. Computing Curricula 2001 acknowledges that "even though the Computing Curricula 1991 report argued strongly for a broader introduction to the discipline, the majority of institutions continue to focus on programming in their introductory sequence." Nevertheless, the new report notes that a "breadth-first" approach can "provide a more holistic view of the discipline, many computer science educators have argued for a "breadth-first" approach in which the first course considers a much broader range of topics."

(2) Encourage students to practice programming as systematic problem solving. Very early on, the text and multimedia examines alternative approaches to problem solving, then lets students practice these approaches using a relatively simple, graphical programming environment called Knobby's World. Later chapters introduce the object-oriented approach to problem solving and software development.

(3) Provide an introduction to computer programming in a subset of C++. (The new book introduces Java instead.) Since C++ was not intended as an instructional language, it can be rather daunting for beginners. We therefore concentrate on a subset of this rich and complicated language, which we dub C++--. The LOOKOUT programming environment focuses on this subset, providing more detailed descriptions of common errors and how to fix them. It also sends valid programs on to DJGPP C++ compiler, integrated in the environment, and automatically links in a small, easy to use class library designed to encourage beginners to use classes early.


Interactive multimedia software complementing 16 chapters in textbook.
Six chapters devoted to breadth of computing as a discipline.
Three chapters devoted to problem solving and object-oriented software engineering. The programming as problem solving theme is developed throughout, in C++ sections working on different aspects of a real world problem.
Six chapters devoted to programming in C++, focusing on the C++-- subset.
Beyond C++-- sections near the end of C++ chapters provide more coverage of C++, for instructors or students who want to go beyond the subset.
Common bugs sections at the end of each C++ chapter.
A small, relatively easy to learn class library introduced early and used throughout the C++ chapters.
Over 700 conceptual and programming exercises embedded in text.
Social, ethical and professional issues, raised in questions throughout the book, then in a chapter, which encourages students to apply problem solving techniques again.
Possible term project ideas introduced early, in chapter 2.
Review questions at the end of every chapter (over 300 total).
Multimedia includes its own Web pages, with links to relevant pages both local to the CD and on the WWW.


A sample syllabus using this book (Fall 1999)
A sample syllabus using the new book (Fall 2002)
A multimedia CD-ROM (screen shots and examples)
Answers to chapter review questions
Errata for The Universal Machine
Web links for The Universal Machine (organized by chapter)
Sample exams, assignments and hints for a CS1 course at Lehigh
Materials for instructors (E-mail for password)
A paper detailing development and significant results using The Universal Machine (Word format)


Both text and multimedia are customizable, for different possible uses: CS0, CS1, advanced high school, or independent study. You do not have to cover all this material!
Multimedia facilitates self-learning, so instructors can hope to cover more content in an introductory course.
CS0 courses (non-majors) can use just breadth of computing and problem solving chapters.
CS1 courses (majors) can put more emphasis on C++, covering selected Beyond C++-- material. Integrated LOOKOUT environment will facilitate coverage of C++ programming. (The Universal Computer integrates BlueJ and JavaEdit for Java.)
CS0.5 courses (combining both majors and non-majors) can use book as is, sticking with C++--. (At Lehigh University, we devote one lecture per breadth and problem solving chapter, two or three per C++ chapter, and rely heavily on multimedia laboratory and self-study to supplement lectures.)
Multimedia can be used independently of the text, to supplement other textbooks.
Multimedia delivered via CD-ROM. Schools can also make arrangements with the lead author to install multimedia in university or high school computer laboratories.

Send feedback to lead author (or ask for version 1.3 of multimedia CDROM)
Lead's author's home page

Contact Us