Suggestions to the Ruby community

From: JamesBritt [mailto:james@jamesbritt.com]

[snip lot of good things said]

Documentation needs work, and we need a plan to improve it.
I would be happy to contribute…

Perhaps, as a start, we might get a list of all
classes/modules, and find out who owns each one. See if the
owner is willing and able to write any needed documentation.
If not, start looking for somebody to take over that
documentation, and see if the code owner is at least
available for consultation when questions arise.

We would need a documentation repository (perhaps a wiki),
agreement on what the documentation should contain, and what
formatting is used.

It would be nice, too, if at the end we had documentation in
both Japanese and English.

James, you’ve said it all (kindly and clearly, too). You have the potential
of being the Ruby document leader…

James

kind regards,
-botp

James, you’ve said it all (kindly and clearly, too).
Thank you.

You have the potential of being the Ruby document leader…

I could live with that. :slight_smile:

James

···

James

kind regards,
-botp

I recently gave a presentation at work on Ruby
and overall it was well received. I got a big
reaction when I demonstrated rdoc (something
I didn’t really expect). The ability to have
documentation automatically generated was a big
deal for them. I also showed ri and irb. They liked
the online ri and asked if classes that
we write can be included into ri. (I have heard
talk of this but don’t know the status). I also
showed the 6 or so books that are out on Ruby.

There were no comments about lacking documentation,
not to say that there won’t in the future. My personal
experience is that the documentation is out there,
but it is not as easy to find, as say PHP documentation.(*)
Also, I find that for the real tough questions, I
use ruby-talk. And for the most part it is a very
reliable resource.(**)

After reading others comments on this issue, I have
been able to form a loose collection of requirements
I would like to see.

  1. Ruby libraries and apps should have a standard documentation markup.
  2. The documentation should have a standard location (file or directory)
    and should take into account localization.(***)
  3. Any raa (or raa.succ) submittal should require a minimum
    amount of existing documentation.
  4. A standard documentation tool should be part of the install
    and provide translation of documentation markup into man
    and html formats (don’t know if a std exists on windows/mac).
    A real bonus would be to provide print documentation
    as well.
    Note: this does not limit other docy systems, but establishes
    a minimum doc system which all are guaranteed to have.
  5. A commandline driven online doc system should be part of the
    install (ri or like ri).
  6. A user should be able to add their own generated library documents
    to the online doc system.

(It’s late, so I may have missed a few, so please feel free
to add or modify this list.)

Using ri, rdoc and simple markup, the foundation for these requirements
already exist and have been proven to some extent. If a
standard can be agreed upon, I think that this little bit of structure
can go a long way.

One last point, I find the reactions of some of these companies
quite interesting when they say there is insufficient documentation.
I don’t remember ever reading about a standardized documentation
system for C or C++. And when I was using the stdc++ library,
it was never considered that the couple of books that existed
were insuffient and there should be online docs with cookbook
recipes for me before my company would begin using it.

(*) Using PHP as a contrasting point again (I have nothing
against PHP) I think that the PHP docs are more focused
on a single topic, i.e., web programming. Whereas, Ruby
is such a capable language and can be applied
to so many problems, it is unrealistic to expect all areas
of its application to be fully documented, never-mind the
excessive documentation that exists with PHP and the web.

(**) I realize that a news group is not a legitimate
resource for a company…Hey, maybe we should charge companies
to post questions to ruby-talk. :slight_smile:

(***)It is a bit much to expect developers to provide translation,
but if the documentation can be put in an html format, then
there are plenty of online web page translators.
I think most other languages just assume that you have to know English.

···


Jim Freeze
If only I had something clever to say for my comment…
~

(*) Using PHP as a contrasting point again (I have nothing
against PHP) I think that the PHP docs are more focused
on a single topic, i.e., web programming. Whereas, Ruby
is such a capable language and can be applied
to so many problems, it is unrealistic to expect all areas
of its application to be fully documented, never-mind the
excessive documentation that exists with PHP and the web.

It is realistic to expect that every class and module in the standard
distribution is documented.

I don’t think anyone is looking for cookbook answers before deciding to use
Ruby, but simply the ability to go to one known place and get reasonable,
immediate information about any standard Ruby class or module. One should
be able to wonder, “Gee, what does Tracer do?”, and know exactly where to go
to find out.

(**) I realize that a news group is not a legitimate
resource for a company…Hey, maybe we should charge companies
to post questions to ruby-talk. :slight_smile:

Out of curiosity, I searched ruby-talk, using Google, for tracer, and found
a message asking where to find docs for tracer.rb. There were no replies.
:frowning:

Anyway, we do need a single standard for writing documentation, and a way to
allow any document, once written, to be exported to any
doc-retrieval/reformatting system (e.g., ri, rdoc, rd, web site, a
database, or whatever).

James

Sounds like the result of my calls to Microsoft support…but I had to pay…

···

On Sun, Sep 01, 2002 at 04:47:30PM +0900, JamesBritt wrote:

(**) I realize that a news group is not a legitimate
resource for a company…Hey, maybe we should charge companies
to post questions to ruby-talk. :slight_smile:

Out of curiosity, I searched ruby-talk, using Google, for tracer, and found
a message asking where to find docs for tracer.rb. There were no replies.
:frowning:


Jim Freeze
If only I had something clever to say for my comment…
~

Anyway, we do need a single standard for writing documentation,
and a way to
allow any document, once written, to be exported to any
doc-retrieval/reformatting system (e.g., ri, rdoc, rd, web site, a
database, or whatever).

On a related note, I was wondering if rdtool/rd2 would be returning to the
Windows binary installation available from pragmaticprogrammer.com.

They were included in the packaging of 1.6.5, I think, but do not seem to be
part of the more recent builds.

Are there pure-Ruby tools for parsing RD docs? Seems the ones I’ve dug up
all rely on compiling C code at some point (i.e., “First, install Racc,” or,
“Make sure you have RDtool installed (see previous step)”).

Is there a reason why the standard Ruby distribution itself doesn’t include
rdtool directly, or at least some standard class or module for parsing RD?
It seems odd to suggest that RD is some sort of Ruby Way to mark up embedded
documentation, but not have an out-of-the-box way to use it.

Thanks,

James