The Pragmatic Programmer's Guide
Man is driven to create; I know I really love to create things.
And while I'm not good at painting, drawing, or music, I can write
Shortly after I was introduced to computers, I became interested in
programming languages. I believed that an ideal programming language
must be attainable, and I wanted to be the designer of it. Later, after
gaining some experience, I realized that this kind of ideal,
all-purpose language might be more difficult than I had thought. But I
was still hoping to design a language that would work for most of the
jobs I did everyday. That was my dream as a student.
Years later I talked with colleagues about scripting languages, about their
power and possibility. As an object-oriented fan for more than fifteen
years, it seemed to me that OO programming was very suitable for
scripting too. I did some research on the 'net for a while, but the
candidates I found, Perl and Python, were not exactly what I was
looking for. I wanted a language more powerful than Perl, and more
object-oriented than Python.
Then, I remembered my old dream, and decided to design my own
language. At first I was just toying around with it at work. But
gradually it grew to be a tool good enough to replace Perl. I named
it Ruby---after the precious red stone---and released it to the
public in 1995.
Since then a lot of people have become interested in Ruby. Believe it
or not, Ruby is actually more popular than Python in Japan right now. I
hope that eventually it will be just as well received all over the world.
I believe that the purpose of life is, at least in part, to be happy.
Based on this belief, Ruby is designed to make programming not only easy,
but also fun. It allows you to concentrate on the creative side of
programming, with less stress. If you don't believe me, read this book
and try Ruby. I'm sure you'll find out for yourself.
I'm very thankful to the people who have joined the Ruby community; they
have helped me a lot. I almost feel like Ruby is one of my children, but
in fact, it is the result of the combined efforts of many people. Without
their help, Ruby could never have become what it is.
I am especially thankful to the authors of this book, Dave Thomas and
Andy Hunt. Ruby has never been a well-documented language. Because
I have always preferred writing programs
over writing documents, the Ruby manuals tend to be less thorough than
they should be. You had to read the source to know the exact behavior of the
language. But now Dave and Andy have done the work for you.
They became interested in a lesser-known language from the Far East.
They researched it, read thousands of lines of source code, wrote
uncountable test scripts and e-mails, clarified the ambiguous behavior
of the language, found bugs (and even fixed some of them), and finally
compiled this great book. Ruby is certainly well documented now!
Their work on this book has not been trivial. While they were
writing it, I was modifying the language itself. But we worked
together on the updates, and this book is as accurate as possible.
It is my hope that both Ruby and this book will serve to make your
programming easy and enjoyable. Have fun!
Yukihiro Matsumoto, a.k.a. ``Matz''
Japan, October 2000
Extracted from the book "Programming Ruby -
The Pragmatic Programmer's Guide"
2001 by Addison Wesley Longman, Inc. This material may
be distributed only subject to the terms and conditions set forth in
the Open Publication License, v1.0 or later (the latest version is
presently available at
Distribution of substantively modified versions of this document is
prohibited without the explicit permission of the copyright holder.
Distribution of the work or derivative of the work in any standard
(paper) book form is prohibited unless prior permission is obtained
from the copyright holder.