Discovering Computers by Gary B. Shelly & Thomas J. Cashman