A history of modern computing - Ceruzzi, Paul E. (MIT Press, 1998)