One weekend, my dad needed to learn CORBA for work. My mother drove the family to the Barnes & Noble on Stevens Creek Blvd. Three hours later, when we returned to pick him up, my dad had bought, and mostly read, Client/Server Programming with Java and CORBA. The cover showed two cartoon aliens drinking coffee at a diner.
That book found its home in our living room bookcase alongside many other programming books. C++ 98 and Java 1.1 had just been released, and everyone was trying to understand this new object-oriented thing. In the garage was an older, dustier bookcase. There, I found a copy of Inside Macintosh, which documented the entire Macintosh API circa 1992. On a higher shelf was a small hardcover about the Lambda Calculus, its pages filled with Greek symbols I didn’t understand.
Later, I would make my own contributions to the bookshelves. The OpenGL Programming Guide, known as “The Red Book”, whose cover displayed an Earth made from Lego blocks, rendered in 3D. Isometric Programming with DirectX 7.0, by an author whose posts I had read on gamedev.net; his alias was TANSTAAFL (“there ain’t no such thing as a free lunch”). Object Oriented Design & Patterns by San Jose State professor Cay S. Hostmann, where I learned that serious programmers use getters and setters and draw UML diagrams.
My senior year of high school, the librarian organized a book drive. I selected a pile of books to donate and loaded them into the trunk of the Nissan Maxima. It took several trips from the house to the car because the books were heavy and there were a lot of them.
After school, I opened the trunk to show the librarian what I had brought.
There was a moment of bewildered silence.
“What am I supposed to do with these?”