Computing Essentials 2012 by Timothy Oleary