Code by Petzold is 100% my choice as well. It is an incredibly good book to describe not just code but computing and ultimately computing machines. I would give my 18 year old self Code and it would've done a very good job of piecing all the college courses that I would end up taking.