As it says in the Bible (the real one, not the Pickaxe Book): "Wisdom is more precious than rubies" (Prov 3:13). Many of the important truths we have learned in the computing world in the last few decades are language-independent. We've listed here a number of books not strictly related to Ruby that may still be of immense value to the Ruby programmer.
• Refactoring, Martin Fowler. Addison-Wesley, 1999.This is one of those modern classics. The author in this book offers a set of mental tools for untangling spaghetti code and making incremental improvements in program logic and structure. Any programmer can benefit from this book.
• Design Patterns, Erich, Gamma, et al. Addison-Wesley, 1995. This is the book by the "Gang of Four" that everyone has been talking about. Programmers have tended in the past to strive for code reusability more than design reusability; but this book has helped change that trend by taking a new look at program design at a high level of abstraction.
• The Pragmatic Programmer, Andy Hunt and Dave Thomas. Addison-Wesley, 2000.This is one of the more practical and thought-provoking books of the last few years, offering keen insights and useful advice relating to the design, coding, and testing of software. The authors also wrote the Pickaxe Book.
• Object-Oriented Software Construction 2nd Ed., Bertrand Meyer. Prentice Hall, 2000.This book was written by the creator of the Eiffel language, and the code in the examples is Eiffel. However, the explanation and discussion of OOP is of the very highest quality, and the principles that are taught are applicable to any OOP language. This book also explores the concept of Design by Contract (DBC), which is a powerful technique for improving code reliability.
• Extreme Programming Explained, Kent Beck. Addison-Wesley, 1999.The XP movement (unrelated, we stress, to Microsoft's forthcoming product) continues to gain momentum. This is one of a series of books outlining the philosophy of Extreme Programming and its no-nonsense test-first approach.
• Learning Perl/Tk, Nancy Walsh and Linda Mui. O'Reilly and Assoc., 1999.We mention this book because the Perl interface to Tk is similar to Ruby's. Until there is a real Ruby/Tk book, this is probably the closest you can get to one.
• The Art of Computer Programming, Donald Knuth. Addison-Wesley, 1998.This multi-volume work may have passed from "classic" into "legend" status by now. Much of it you will never use, but if you are a programmer, you should certainly own it. It will pay for itself.
• Mastering Regular Expressions, Jeffrey Friedl. O'Reilly and Assoc., 1997. This is probably the definitive work on regular expressions. If you want to gain a deeper understanding, get more practice, and understand some of the underlying theory, get this book.
• The Tao of Programming, Geoffrey James. Info Books, 1986.This book is priceless. It's intended to be a humorous look at programmers and computing, couched in the language of Eastern mysticism. However, you may find that some of the humor falls a little too close to home; and you may even gain some insight into your fellow programmers (or yourself).
• The New Hacker's Dictionary, Eric S. Raymond. MIT Press, 1996.This is more light reading, and yet it's deeper than that. Far from being just the work of one man, this book draws on multiple traditions of computing history, culture, and folklore. You won't learn any programming here, but you will be enlightened, entertained, and inspired. If you consider yourself a hacker in the classic sense of the word, you need this book.