A history of modern Computing - Ceruzzi, Paul E. (MIT press,, 2003)