Karl Barrett
Reverse Engineering for Education/Entertainment provides an introduction to analysing code, bytecode, and application binaries.