Programming Ruby: Improvements, copyright issues

I've been learning Ruby with the help of version 1 of the introductory
book Programming Ruby, which has been released by the publisher under
the Open Publication License. Of course, there are newer books
available, but I've found the Pickaxe is convenient because it's free
and available as HTML files.

I've noticed a couple issues with the online version of the book, and
I'm interesting in working on them. In particular, I'd like to:

- Add code samples and images not extracted from the paper text
- Add more hyperlinks, and anchors within each chapter for more
precise links
- Expand the table of contents to include subsections of each chapter
- Add an index
- Make the library reference pages more consistent

I haven't seen all these changes implemented elsewhere, but several
folks have done some work on them. For instance, Gavin Kistner has
made a version available at phrogz.net/ProgrammingRuby with a more
detailed TOC and an index.

I'd just build on the existing versions, but there's some copyright
issues too. Newer versions of the book, such as the one hosted at
RubyCentral, aren't so free. The license is more restrictive, banning
"substantively modified versions", which would seem to preclude the
changes I'm talking about. The changelog for the Debian package
(http://packages.debian.org/stable/doc/rubybook) discusses the license
change - a previous version of the online version was licensed under
the OPL alone, with no additional conditions. (I can't even find the
XML versions Dave refers to in the README - I'd be interested to see
what others have cooked up with those.)

So, I'm asking for a little backstory and advice. Why was the license
changed? Would it be sensible to do some work on the old version of
the book, even though it's dated?

Thanks,
Jesse

The license changed? Maybe I did that, but I can't remember doing it, and I don't think anyone else _can_ change the license, as the copyright was originally held by Addison Wesley and is now held by us.

Can you show me where the license changed?

Regards

Dave

···

On Apr 26, 2007, at 3:10 AM, twinxor@gmail.com wrote:

So, I'm asking for a little backstory and advice. Why was the license
changed? Would it be sensible to do some work on the old version of
the book, even though it's dated?

I've been learning Ruby with the help of version 1 of the introductory
book Programming Ruby, which has been released by the publisher under
the Open Publication License. Of course, there are newer books
available, but I've found the Pickaxe is convenient because it's free
and available as HTML files.

I've noticed a couple issues with the online version of the book, and
I'm interesting in working on them. In particular, I'd like to:

- Add code samples and images not extracted from the paper text
- Add more hyperlinks, and anchors within each chapter for more
precise links
- Expand the table of contents to include subsections of each chapter
- Add an index

There *is* an index. See Programming Ruby: The Pragmatic Programmer's Guide

- Make the library reference pages more consistent

That effort rather goes into the original code IMHO so everybody can benefit via ri.

I haven't seen all these changes implemented elsewhere, but several
folks have done some work on them. For instance, Gavin Kistner has
made a version available at phrogz.net/ProgrammingRuby with a more
detailed TOC and an index.

I'd just build on the existing versions, but there's some copyright
issues too. Newer versions of the book, such as the one hosted at
RubyCentral, aren't so free. The license is more restrictive, banning
"substantively modified versions", which would seem to preclude the
changes I'm talking about. The changelog for the Debian package
(http://packages.debian.org/stable/doc/rubybook\) discusses the license
change - a previous version of the online version was licensed under
the OPL alone, with no additional conditions. (I can't even find the
XML versions Dave refers to in the README - I'd be interested to see
what others have cooked up with those.)

So, I'm asking for a little backstory and advice. Why was the license
changed? Would it be sensible to do some work on the old version of
the book, even though it's dated?

I would not. Rather talk to Dave and Andy and see where you can lend a hand, maybe for 3rd edition. I think it's a great book and it deserves to be bought.

Kind regards

  robert

···

On 26.04.2007 10:05, twinxor@gmail.com wrote:

The footnote on the pages in the Ubuntu "rubybook" package reads:

"Copyright © 2000 Addison Wesley Longman, Inc. Released under the
terms of the Open Publication License V1.0.
This reference is available for download."

While the version at RubyCentral (a newer version, I think) is more
restrictive:

"Copyright © 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 http://www.opencontent.org/openpub/\)).

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."

In addition, the maintainer of the Debian package, Oliver M. Bolzer,
mentions the change in the README.Debian file:

"This package contains revision 0.2 of the online edition of the book.
Newer revisions are available for download above, but the license has
tightened to not allow "Substantive modification" and distribution in
"any standard (paper) book form" is prohibited, making the work "non-
free" in the context of the Debian Free Software Guideline. For this
reason, newer revisions will not be packaged, but the substance of the
book has not changed and this revision can still be considered useful."

···

On Apr 26, 7:08 am, Dave Thomas <d...@pragprog.com> wrote:

The license changed? Maybe I did that, but I can't remember doing it,
and I don't think anyone else _can_ change the license, as the
copyright was originally held by Addison Wesley and is now held by us.

Can you show me where the license changed?

Regards

Dave

That's a good point. ri is designed to be updated, while this is an
old version of the Ruby text, and ri is distributed with Ruby already.

···

On Apr 26, 9:48 pm, Robert Klemme <shortcut...@googlemail.com> wrote:

That effort rather goes into the original code IMHO so everybody can
benefit via ri.

# Distribution of substantively modified versions of this document is
# prohibited without the explicit permission of the copyright holder.

i think, to be really certain, you just have to ask the authors Dave/Andy.
And besides, courtesy and goodwill could go a long long way.

kind regards -botp

···

From: twinxor@gmail.com [mailto:twinxor@gmail.com] :

I honestly don't remember making the change, but I don't see what impact that will have. Andy and I now own the copyright, and we're generally known as fairly helpful folk. So just ask us about the modifications you'd want to make, and see what we say.

However, if you're talking about the reference part of the book, be aware of something.

I originally write the PickAxe by reverse engineering the source code of Ruby. Soon after we published the book, we released the HTML version for free.

When it came time to do the second edition, I went through the source code again, looking for changes and documenting them. However, this struck me as being a silly thing to do, so when the second edition was finished, some volunteers and I spent a couple of weeks taking the documentation from the book and adding it back into the source code. To make this work, I wrote the first version of RDoc. The intent was that from now on, the source code would _be_ the master copy of the documentation: when anyone changed the source they'd also update the corresponding comment. Should there be a third edition, it's reference section will come directly from the source.

So, it you want to update this documentation, the best place to do it is in the source code of Ruby itself.

If you want to change the output, my recommendation would be to take RDoc's XML output and transform it. (Yes, the distributed RDoc has broken XML generation. I have a patch that fixes it, but I've lost track of who's maintaining RDoc)

Dave

···

On Apr 27, 2007, at 3:10 AM, twinxor@gmail.com wrote:

While the version at RubyCentral (a newer version, I think) is more
restrictive:

"Copyright � 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 http://www.opencontent.org/openpub/\)).

Distribution of substantively modified versions of this document is
prohibited without the explicit permission of the copyright holder.