What We’re Reading: IT
I’m a big fan of scattering great books around the office. Recently I mentioned a couple favorite web design books. Here are three outstanding books to toss into the IT bat-cave: Software Engineering For Internet Applications, Joel on Software, and Hackers and Painters. Many of the chapters in these three books are available online, but still quite worth buying the print editions.
The most pragmatic of the three is Software Engineering For Internet Applications by Eve Andersson, Philip Greenspun, Andrew Grumet. For background, Philip and Eve founded Ars Digita. Philip also wrote a great-but-now-outdated web tech book. His current book, Software Engineering For Internet Applications, is the course textbook for MIT’s 6.916 seminar. The book sets high goals: it aims to teach the reader “what they need to build Amazon.com”. Senior developers should have 90% of this book down cold already, but will appreciate the sections on scalability and architecture. Junior IT folks will benefit greatly from the breadth and scope of this book. If I had to pick one overview book for constructing modern web apps, this would be it.
Joel on Software by Joel Spolsky, has this wonderful subtitle: On Diverse and Occasionally Related Matters That Will Prove of Interest to Software Developers, Designers, and Managers, and to Those Who, Whether by Good Fortune or Ill Luck, Work with Them in Some Capacity. Whew! Spolsky — former Israeli paratrooper, Microsoft developer, and current president of Fog Creek Software — has great insight on running a software shop, IT hiring, managing a startup, languages, and of course Microsoft. His essay on Ben & Jerry’s vs. Amazon is a classic, as is his take on IT hiring. Yep, all of this book is available for free at JoelOnSoftware. Buy it anyway. It is worth having a bound copy.
Hackers and Painters: Big Ideas from the Computer Age, by Paul Graham, is the most philosophical on these three. Graham founded ViaWeb, which was acquired by Yahoo in 1998 and became Yahoo Stores. ViaWeb is notable for pioneering browser-based apps, and for using LISP as a strategic advantage. Graham thinks deeply and writes well. This book will appeal to your most cerebral developers, the select wizards who consider software design an art, not just a job.
While on the topic of IT, two neat links worth checking out: Google’s code search engine is a fantastic tool to search open-source source; and Daily WTF‘s tales of IT misery offers cheering perspective — whatever your IT situation, it could be worse!