comp.lang.ruby FAQ

Discussion in 'Ruby' started by Hal Fulton, May 15, 2005.

  1. Hal Fulton

    Hal Fulton Guest

    Sorry-- I have a technical problem I forgot to fix.

    The preceding email, without a subject line, was the
    c.l.r FAQ, quoted again below.


    Hal Fulton



    wrote:
    > RUBY NEWSGROUP FAQ -- Welcome to comp.lang.ruby! (Revised 2005-4-14)
    >
    > This FAQ contains information for those who want to:
    >
    > 1) learn more about Ruby, and want to
    > 2) post to comp.lang.ruby or to the ruby-lang mail list, or want to
    > 3) provide anonymous feedback to help us improve Ruby.
    >
    > This FAQ will be posted monthly. If you are reading this material
    > via the mailing list or the newsgroup, note that you can find it on
    > the web at: http://rubyhacker.com/clrFAQ.html
    >
    > A German version of this FAQ is maintained by Josef "Jupp" Schugt. It can be
    > found at: http://oss.erdfunkstelle.de/ruby/
    >
    > Note that this is *not* the Ruby language FAQ! This can be found at:
    > http://www.rubygarden.org/iowa/faqtotum/
    >
    > TABLE OF CONTENTS
    >
    > 1 About Ruby
    > 1.1 What is Ruby?
    > 1.2 Where can I find out more about Ruby?
    > 2 About comp.lang.ruby.
    > 2.1 Tell me about comp.lang.ruby.
    > 2.2 Tell me the posting guidelines for comp.lang.ruby.
    > 2.3 Tell me about the prolific Matz poster.
    > 2.4 How do the mailing list and newsgroup interrelate?
    > 2.5 What are these 6-digit message numbers?
    > 2.6 What is "POLS"?
    > 3 Anything else?
    >
    > 1 About Ruby
    >
    > 1.1 What is Ruby?
    >
    > Ruby is a very high level, fully OO programming language. Indeed,
    > Ruby is one of the relatively few pure OO languages. Yet despite
    > its conceptual simplicity, Ruby is still a powerful and practical
    > "industrial strength" development language.
    >
    > Ruby selectively integrates many good ideas taken from Perl,
    > Python, Smalltalk, Eiffel, ADA, CLU, and LISP. Ruby combines
    > these ideas in a natural, well-coordinated system that embodies
    > the principles of least effort and least surprise to a
    > substantially greater extent than most comparable languages --
    > i.e., you get more bang for your buck, and what you write is more
    > likely to give you what you expected to get. Ruby is thus a
    > relatively easy to learn, easy to read, and easy to maintain
    > language; yet it is very powerful and sophisticated.
    >
    > In addition to common OO features, Ruby also has threads,
    > singleton methods, mixins, fully integrated closures and
    > iterators, plus proper meta-classes. Ruby has a true
    > mark-and-sweep garbage collector, which makes code more reliable
    > and simplifies writing extensions. In summary, Ruby provides a
    > very powerful and very easy to deploy "standing on the shoulders
    > of giants" OO scaffolding/framework so that you can more quickly
    > and easily build what you want to build, to do what you want to
    > do.
    >
    > You will find many former (and current) Perl, Python, Java, and
    > C++ users on comp.lang.ruby that can help you get up to speed in
    > Ruby.
    >
    > Finally, Ruby is an "open source" development programming
    > language.
    >
    > 1.2 Where can I find out more about Ruby?
    >
    > If you're into IRC, check out #ruby-lang on FreeNode. There are
    > also other channels -- see http://rubygarden.org/ruby?RubyOnIRC.
    >
    > There are also many web and print resources listed below:
    >
    >
    > Ruby's home web site:
    >
    > http://www.ruby-lang.org/en/ (Ruby home page)
    >
    > Follow the links to documentation, downloads, the Ruby
    > Application Archive, the Ruby mail list archives, and
    > lots of other interesting information.
    >
    > RubyForge (A major repository with hundreds of Ruby projects)
    >
    > http://rubyforge.org
    >
    > Ruby-Doc.org (A large source of Ruby documentation)
    >
    > RubyCentral.COM (Ruby's other major on-line docs and links site):
    >
    > http://www.rubycentral.com/
    >
    > RubyCentral.ORG (Home of RubyCentral, Inc.)
    >
    > http://www.rubycentral.org/
    >
    > RubyGarden (An important wiki site, very content-rich)
    >
    > http://rubygarden.org/
    >
    > Ruby FAQ:
    >
    > http://www.rubygarden.org/iowa/faqtotum/
    >
    > Ruby User's Guide (introductory tutorial):
    >
    > http://www.rubyist.net/~slagell/ruby/index.html
    >
    > _Why's Poignant Guide to Ruby (A Ruby tutorial on acid, featuring
    > cartoon foxes)
    >
    > http://poignantguide.net/ruby/
    >
    > Note: The list of books below is now frozen. I don't
    > want to maintain this forever. We all hope the number
    > of Ruby books increases, of course.
    >
    > English language Ruby books (recent publication order):
    >
    > Programming Ruby: A Pragmatic Programmers Guide
    > 2nd edition. See below.
    >
    > Making Use of Ruby
    > by Suresh Mahadevan
    > Wiley; ISBN 0-471-21972-X (2002)
    >
    > Teach Yourself Ruby in 21 Days
    > by Mark Slagell
    > Sams; ISBN: 0672322528 (March, 2002)
    >
    > Ruby Developer's Guide
    > by Michael Neumann, Robert Feldt, Lyle Johnson
    > Publishers Group West; ISBN: 1928994644 (February, 2002)
    >
    > The Ruby Way
    > by Hal Fulton
    > Sams; ISBN: 0672320835 (December, 2001)
    >
    > Ruby In A Nutshell
    > by Yukihiro Matsumoto
    > O'Reilly & Associates; ISBN: 0596002149 (November, 2001)
    >
    > Programming Ruby: A Pragmatic Programmers Guide
    > by Dave Thomas and Andrew Hunt
    > Addison Wesley; ISBN: 0201710897 (2000)
    > (As of Sept 2004, there is a second edition also. It is
    > not open-sourced at this time.)
    > Online version: http://www.rubycentral.com/book/
    > (Note that this is a *legal* first edition.)
    > Download:
    > http://www.pragmaticprogrammer.com/downloads/book.html
    > Errata:
    > http://www.pragmaticprogrammer.com/ruby/errata/errata.html
    >
    > German language Ruby books (author alpha order):
    >
    > Das Einsteigerseminar Ruby. Der methodische und
    > ausführliche Einstieg.
    > by Dirk Engel and Klaus Spreckelsen
    > ISBN: 3826672429
    >
    > Programmieren mit Ruby
    > by Armin Roehrl, Stefan Schmiedl, Clemens Wyss, et al.
    > dpunkt.de; ISBN 3898641511 (February, 2002)
    > Online: http://www.approximity.com/rubybuch2/node1_main.html
    >
    > Programmieren mit Ruby. Handbuch für den pragmatischen
    > Programmierer.
    > Dave Thomas & Andy Hunt
    > Addison-Wesley, 2002; ISBN: 382731965X.
    > A German translation of the "Pickaxe" (Programming Ruby).
    >
    > Pickaxe translation by Juergen Katins:
    > http://home.vr-web.de/juergen.katins/ruby/buch/
    >
    > Search past postings to comp.lang.ruby or the ruby-lang mail list
    > (which have been mirrored to each other since mid-2000):
    >
    > http://groups.google.com/groups?q=comp.lang.ruby
    > http://blade.nagaokaut.ac.jp/ruby/ruby-talk/index.shtml
    >
    > Local Ruby users and groups in your area:
    >
    > http://www.pragprog.com/ruby?RubyUserGroups
    >
    > 2 About comp.lang.ruby
    >
    > 2.1 Tell me about comp.lang.ruby
    >
    > comp.lang.ruby was officially approved in early May, 2000.
    > (Conrad Schneiker, the former maintainer of this FAQ, was
    > responsible for the "net paperwork" of creating this group.)
    > Here is the official charter:
    >
    > CHARTER: comp.lang.ruby
    >
    > The comp.lang.ruby newsgroup is devoted to discussions of the
    > Ruby programming language and related issues.
    >
    > Examples of relevant postings include, but are not limited
    > to, the following subjects:
    >
    > - Bug reports
    > - Announcements of software written with Ruby
    > - Examples of Ruby code
    > - Suggestions for Ruby developers
    > - Requests for help from new Ruby programmers
    >
    > The newsgroup is not moderated. Binaries are prohibited
    > (except the small PGP type). Advertising is prohibited (except
    > for announcements of new Ruby-related products).
    >
    > END CHARTER.
    >
    > 2.2 Tell me the posting guidelines for comp.lang.ruby.
    >
    > (You should also follow these guidelines for the ruby-list mail
    > list, since it is mirrored to comp.lang.ruby.)
    >
    > (1) ALWAYS be friendly, considerate, tactful, and tasteful. We
    > want to keep this forum hospitable to the growing ranks of
    > newbies, very young people, and their teachers, as well as
    > cater to fire breathing wizards.
    >
    > (2) Keep your content relevant and easy to follow. Try to keep
    > your content brief and to the point, but also try to include
    > all relevant information.
    >
    > (a) The general format guidelines (aka USENET Netiquette) are
    > matters of common sense and common courtesy that make life
    > easier for 3rd parties to follow along (in real time or
    > when perusing archives):
    >
    > - PLEASE NOTE! Include quoted text from previous posts
    > *BEFORE* your responses. And *selectively* quote as much
    > as is relevant.
    > - Use *plain* text; don't use HTML, RTF, or Word. Most
    > mail or newsreader programs have an option for this; if
    > yours doesn't, get a (freeware) program or use a
    > web-based service that does.
    > - Include examples from files as *in-line* text; don't
    > use attachments.
    >
    > (b) If reporting a problem, give *all* the relevant
    > information the first time; this isn't the psychic friends
    > newsgroup. When appropriate, include:
    >
    > - The version of Ruby. ("ruby -v")
    > - The compiler name and version used to build Ruby.
    > - The OS type and level. ("uname -a")
    > - The actual error messages.
    > - An example (preferably simple) that produces the
    > problem.
    >
    > (3) Make the subject line maximally informative, so that people
    > who should be interested will read your post and so that people
    > who wouldn't be interested can easily avoid it.
    >
    > *Usefully* describe the contents of your post:
    >
    > This is OK:
    >
    > "How can I do x with y on z?"
    > "Problem: did x, expected y, got z."
    > "BUG: doing x with module y crashed z."
    >
    > This is *NOT* OK:
    >
    > "Please help!!!"
    > "Newbie question"
    > "Need Ruby guru to tell me what's wrong"
    >
    > These prefixes have become common for subject lines:
    >
    > ANN: (for announcements)
    > BUG: (for bug reports)
    > OT: (for off-topic, if you must post off-topic)
    >
    > (4) Finally, be considerate: don't be too lazy. If you are
    > seeking information, first make a reasonable effort to look it
    > up. As appropriate, check the Ruby home page, check the Ruby
    > FAQ and other documentation, use google.com to search past
    > comp.lang.ruby postings, and so on.
    >
    > 2.3 Tell me about the prolific Matz poster.
    >
    > Matz (aka Yukihiro Matsumoto) is the wizard who created Ruby for
    > us, so be nice to him. He is very busy, so be patient when asking
    > questions. See the Ruby home page to find out more about him and
    > his work. I (Conrad Schneiker) founded comp.lang.ruby at his
    > suggestion. Contrary to lots of skepticism, it was approved on
    > the first attempt, with 200 yes votes.
    >
    > 2.4 How do the mailing list and newsgroup interrelate?
    >
    > The mailing list is older. When the newsgroup was created, they
    > diverged. In mid-2001, Dave Thomas created a two-way gateway
    > that would "mirror" the newsgroup to the list and vice versa.
    > (This was accomplished in 200 lines of Ruby code.) It is not
    > perfect; because of variability in the news feed, sometimes
    > messages are dropped or duplicated.
    >
    > The online archive of the mailing list therefore includes most
    > of the traffic on the newsgroup, excluding the posts that were
    > made before the creation of the gateway.
    >
    > Note: Spam or other inappropriate messages are NOT the
    > responsibility of Dave Thomas, who maintains the gateway. He
    > does everything in his power to deal with this issue. Do NOT
    > report spam to his ISP merely because the messages come from
    > his server.
    >
    > 2.5 What are these 6-digit message numbers?
    >
    > Historically, every item on the mailing list had a subject
    > starting with a string like: [ruby-talk:99999]
    >
    > The message numbers were convenient since they were strictly
    > serial and formed a good way to refer to a past message. But
    > they interfered with threading; Matz removed them after the
    > matter was put to a vote in early 2002.
    >
    > The news header still refers to this number, should anyone
    > wish to retrieve it. On the mailing list this number can
    > now be found in the X-Mail-Count: header.
    >
    > You can point to a specific message by appending it onto the
    > ruby-talk.com URL; i.e. http://ruby-talk.com/12345 will refer
    > to message 12345. (NOTE: The above was true, but is not
    > currently working.)
    >
    > 2.6 What is "POLS"?
    >
    > POLS is an abbreviation for "Principle of Least Surprise" (also
    > called the Law of Least Astonishment).
    >
    > This term certainly did not originate in the Ruby community, but
    > it has been frequently used there -- even overused or abused at
    > times. After all, *every* language or software system seeks at
    > some level to adhere to this principle. Is any system designed
    > to be unintuitive?
    >
    > It is inappropriate to invoke POLS as a "magic word" when one's
    > individual expectations are not met. Ruby continues to evolve,
    > and Matz often makes changes based on people wishes, needs, or
    > suggestions. But he cannot be bribed or threatened. Make
    > suggestions if you wish, but think twice before mentioning POLS.
    >
    >
    > 3. Anything else?
    >
    > If you are new to Ruby (or haven't previously taken the Ruby User
    > Survey), please take a moment to anonymously tell us about your
    > programming background and about your Ruby-related interests. The
    > results will be reported back to the Ruby community from time to
    > time. This helps us do a better job of helping each other, and to
    > more effectively expand the Ruby community for our mutual benefit.
    > The survey is at:
    >
    > http://dev.rubycentral.com/survey.html
    >
    > This FAQ was originally produced by Conrad Schneiker.
    > It is now maintained by Hal Fulton ().
    > I'm interested in corrections and suggestions, but remember that
    > the purpose of this FAQ is to be a brief and simple introduction
    > for new comp.lang.ruby readers.
    >
    > In closing, one of the reasons that Ruby was designed to be
    > relatively simple, uniform, yet very powerful was to make serious
    > programming (among other kinds) fun. We hope you will help us
    > keep comp.lang.ruby fun as well. Enjoy.
    >
    >
     
    Hal Fulton, May 15, 2005
    #1
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.

Share This Page