Fork me on GitHub

I read a lot of programming literature and sometimes sci-fi. Here's a few of the items in my bookshelf.

Programming & Technology

  • 97 Things Every Programmer Should Now
    Various
  • 97 Things Every Software Architect Should Know
    Various
  • Advanced MacOS X Programming
    Mark Dalrymple & Aaron Hillegass
  • Advanced Palm Programming
    Steve Mann, Ray Rischpater
  • Advanced Programming in the Unix Environment
    Richard Stevens, Stephen A. Rago
  • AI For Game Developers
    David M. Bourg & Glenn Seemann
  • Algorithms in a Nutshell
    George T. Heineman, Gary Pollice & Stanley Selkow
  • AppleScript The Definite Guide
    Matt Neuburg
  • Beautiful Architecture
    Various
  • Beautiful Code
    Various
  • Beautiful Visualization
    Various
  • BSD Hacks
    Dru Lavigne
  • Building Cocoa Applications
    Simon Garfinkel & Michael K. Mahoney
  • C Pocket Rerference
    Peter Prinz & Ulla Kirch-Prinz
  • C# In a Nutshell
    Peter Drayton, Ben Albahari & Ted Neward
  • C# Language Pocket Reference
    Peter Drayton, Ben Albahari & Ted Neward
  • C++ Pocket Reference
    Kyle Loudon
  • Clean Code
    Robert C. Martin
  • Cocoa in a Nutshell
    Michael Beam & James Duncan Davidson
  • Cocoa Programming For Mac OS X
    Aaron Hillegass
  • CODE
    Charles Petzold
  • Code Complete 2
    Steve McConnell
  • Codemetrics
    Jonathan Alexander
  • Compilers - Principles, Techniques, & Tools (The Dragon Book)
    Alfred V. Aho, Monica S. Lam, Ravi Sethi, Jeffrey D. Ullman
  • Core Animation for Mac OS X and the iPhone
    Bill Dudney
  • CSS Pocket Reference
    Eric A. Meyer
  • Data Structures and Algorithms for Game Developers
    Allen Sherrod
  • Data Structures and Algorithms in Java
    Robert Lafore
  • Design Patterns - Elements of Reusable Object-Oriented Software (GOF)
    Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides
  • Designing Interfaces
    Jenifer Tidwell
  • Developing Feeds with RSS and Atom
    Ben Hammersley
  • DocBook
    Norman Walsh & Leonard Muellner
  • Dreaming In Code
    Scott Rosenberg
  • Extending and Embedding Perl
    Tim Jenness, Simon Cozens
  • Extreme Programming Pocket Guide
    chromatic
  • GAME Architecture and Design
    Andrew Rollings, Dave Morris
  • GDB Pocket Reference
    Arnold Robbins
  • Getting Started with Arduino
    Massimo Banzi
  • GNU Emacs Pocket Reference
    ebra Cameron
  • Haskell - The Craft of Functional Programming
    Simon Thompson
  • Higher-Order Perl: Transforming Programs with Programs
    Mark Jason Dominus
  • HTML Pocket Reference
    Jennifer Niederst
  • In The Beginning Was The Command Line
    Neal Stephenson
  • Information Dashboard Design
    Stephen Few
  • iPhone 3D Programming
    Philip Rideout
  • Java Cookbook
    Ian F. Darwin
  • Java in a Nutshell
    David Flanagan
  • Java RMI
    William Grosso
  • JavaScript Pocket Reference
    David Flanagan
  • Kerberos The Definite Guide
    Jason Garman
  • Language Implementation Patterns
    Terence Parr
  • Learning UML
    Sinan Si Albir
  • lex & yacc
    John R. Levine, Tony Mason & Doug Brown
  • Just for Fun
    The Story of an Accidental Revolutionary
  • MacOS X For Unix Geeks
    Brian Jepson & Ernest E. Rothman
  • MacOS X Hacks
    Rael Dornfest & Kevin Hemenway
  • Mastering Algorithms In C
    Kyle Loudon
  • Object Oriented Perl
    Damian Conway
  • Objective-C Pocket Reference
    Andrew M. Duncan
  • OpenGL ES 2.0 Programming Guide
    Aaftab Munshi, Dan Ginsburg, Dave Shreiner
  • OpenGL Programming Guide
    OpenGL Architecture Review Board
  • OpenGL Reference Manual
    OpenGL Architecture Review Board
  • OpenGL SuperBible
    Richard S. Wright Jr, Michael Sweet
  • Optimizing PowerPC Code
    Gary Kacmarcik
  • Perl 6 and Parrot Essentials
    Allison Randal, Dan Sugalski & Leopold Tötsch
  • Perl Best Practices
    Damian Conway
  • Perl Hacks
    chromatic with Damian Conway and Curtis "Ovid" Poe
  • Perl Medic : Transforming Legacy Code
    Peter J. Scott
  • Practical Development Environments
    Matthew B. Doar
  • Pragmatic Guide to Git
    Travis Swicegood
  • Prefactoring
    Ken Pugh
  • Pro Perl Debugging
    Richard Foley with Andy Lester
  • Programming C#
    Jesse Libery
  • Programming Clojure
    Stuart Halloway
  • Programming Concurrency on the JVM
    Venkat Subramaniam
  • Programming Erlang
    Joe Armstrong
  • Programming in Scala
    Martin Odersky, Lex Spoon, Bill Venners
  • Programming Scala
    Venkat Subramaniam
  • Programming the iPhone User Experience
    Toby Boudreaux
  • Python Pocket Reference
    Mark Lutz
  • Refactoring to Patterns
    Joshua Kerievsky
  • Regular Expression Pocket Reference
    Tony Stubblebine
  • sed & awk Pocket Reference
    Arnold Robbins
  • Smart Home Hacks
    Gordon Meyer
  • Snort Cookbook
    Angela Orebaugh, Simon Biles & Jacob Babbit
  • SQL In a Nutshell
    Kevin E. Kline with Daniel Kline & Brand Hunt
  • SQL Pocket Guide
    Jonathan Gennick
  • Statistics in a Nutshell
    Sarah Boslaugh & Paul Andrew Watters
  • Steve Jobs
    Walter Isaacson
  • The Agile Samuari
    Jonathan Rasmunsson
  • The Art of Concurrency
    Clay Breshears
  • The Art of SQL
    Stéphane Faroult with Peter Robson
  • The Art of Strategic Planning for Information Systems
    Bernard Boar
  • The Berkeley DB Book
    Himanshu Yadava
  • The Clean Coder
    Robert C. Martin
  • The Definite ANTLR Reference
    Terence Parr
  • The Passionate Programmer
    Chad Fowler
  • The Pragmatic Programmer
    Andrew Hunt, David Thomas
  • The Twofish Encryption Algorithm
    Bruce Schneier, John Kelsey, Doug Whiting, David Wagner, Chris Hall, Niels Ferguson
  • Tick My Boxes
    Léon Brocard, Jake Brumby
  • Types and Programming Languages
    Benjamin C. Pierce
  • UML Pocket Reference
    Din Pilone
  • Visualizing Data
    Ben Fry
  • XML Pocket Reference
    Robert Eckstein with Michael Casabianca