Programming from the Ground Up uses Linux assembly language to teach new programmers the most important concepts in programming. It takes you a step at a time through these concepts: * How the processor views memory * How the processor operates * How programs interact with the operating system * How computers represent data internally * How to do low-level and high-level optimizationMost beginning-level programming books attempt to shield the reader from how their computer really works. Programming from the Ground Up starts by teaching how the computer works under the hood, so that the programmer will have a sufficient background to be successful in all areas of programming.This book has been used by universities as diverse as Princeton and DeVry.
Jonathan Bartlett is the Chief Nerd in Charge at New Medio, where he architects custom software solutions for a variety of companies. Previously he has worked for EDS in their midrange department, and as the Manager of Internet Systems Development for Wolfram Research.
Jonathan has written a variety of books on programming, engineering, philosophy, and politics. He also teaches a variety of homeschool co-op classes in computers, science, philosophy, and mathematics - sometimes all in the same class.