To developers of Ruby: Feeble documentation - weakness of Ruby and the Ruby on Rails (2nd edition)

Directly I apologize for my English - I used the automatic translator.
If there is a possibility, find the person, knowing Russian better, it
will translate you correctly the text.

Address to developers of Ruby and Ruby on Rails:

(If someone has a possibility to communicate directly with developers of
these systems (Ruby and Ruby on Rails), please, hand over them this
information.)

Hi

It would be desirable to express the subjective judgement on a problem
of popularity of Ruby and the Ruby on Rails in particular. It is very
beautiful and laconic language, very powerful language.
I studied it according to the book, it was necessary to read 2 times up
to the end to understand all details. And I not for nothing spent the
time. It is very powerful tool for development. The same it is possible
to tell and about the Ruby on Rails. Agree that it not the simplest
systems that here so from the first everything to understand. I am the
professional programmer with more than 20-year experience, studied many
systems and programming languages - Pascal, C, C ++, Java, Prolog,
Delphi, PHP, developed different systems. Don't think that I am a school
student any. Knowing all this languages, I after all delighted with
Ruby!

And here, by the way, about PHP. I learned it an experimental way, with
site use www.php.net. Here in than all charm of this site - there is ALL
and directly! There is as the language syntax description, and the
description of all functions in case of what if it is function, that is
links to the similar functions accompanying. Everything is easy and
simple - the person gradually learns more and more, plunges into this
environment more and more development. Any puzzles and guesses. For me
the study of PHP was simple and fast.

And so I have a question. Why, possessing so powerful possibilities,
Ruby and Ruby on Rails still possess such feeble documentation? After
all this most important in popularity of ANY system - existence of GOOD
documentation when to the person always is where to address for the
reference information instead of to build own guesses, not to rummage in
source codes. To rummage in source codes is programming for the sake of
programming, and after all people simply want to use the tool.
To receive quickly necessary information on system is already a success
half, in my judgement. Not enough description of functions, is necessary
still that the person could see similar functions that could follow as
on a chain. You look on documentation on the same www.php.net also look
at Ruby and Ruby on Rails documentation. In yours documentation
(http://www.ruby-doc.org/core-1.9.3/), for example, I couldn't find the
description of method_missing, but in other source (http://apidock.com/)
it is. Unless it is impossible to create a normal site with
documentation where there would be all and directly? Why the person
shall guess, rummage about something in source codes? About Ruby on
Rails documentation (http://api.rubyonrails.org/) I generally am silent
- there is no description many methods if there is a description, not
clearly what it can accept parameters and that they mean, there is no
description of
classes, their correlations.

You developed such fine system, a magnificent programming language,
excellent framework, so why you can't develop normal, distinct
documentation? In it popularity of PHP and weakness of Ruby, only in it.
There would be same good documentation, then long ago Ruby would walk
ahead Planet (Earth) at all - ("To be number one"). It seems to me long
ago already it is time to supply team of developers team of developers
of DOCUMENTATION. After all the maturity of any product is characterized
just by convenient and extensive documentation, including.

I think that many are stopped just by this moment in study when people
face that simply can't move easily further in study and use of these
systems - Ruby and the Ruby on Rails.

And once again thanks for so excellent tools!

Yours faithfully, Sergey

···

===

Обращение к разработчикам Ruby и Ruby on Rails:

Здравствуйте

Хочется высказать свое субъективное мнение на проблему популярности Ruby
и Ruby on Rails в частности. Это очень красивый и лаконичный язык, очень
мощный язык. Я его изучил по книге, пришлось прочитать 2 раза, чтобы до
конца уяснить все детали. И я не зря потратил свое время. Это очень
мощный инструмент для разработки. То же самое можно сказать и про Ruby
on Rails. Согласитесь, что это не самые простые системы, чтобы вот так с
первого раза все понять. Я профессиональный программист с более чем
20-летним опытом работы, изучил немало систем и языков программирования
- Pascal, C, C++, Java, Prolog, Delphi, PHP, разрабатывал различные
системы. Не думайте, что я школьник какой-нибудь. Зная все эти языки, я
все-таки в восторге от Ruby!

И вот, кстати, о PHP. Его я выучил экспериментальным путем, с
использованием сайта www.php.net. Вот в чем вся прелесть этого сайта -
там есть ВСЕ и сразу! Там есть как описание синтаксиса языка, так и
описание всех функций, при чем если это функция, то есть ссылки на
похожие функции, сопутствующие. Все легко и просто - человек постепенно
все больше и больше узнает, все больше погружается в эту среду
разработки. Никаких головоломок и догадок. Для меня изучение PHP было
простым и быстрым.

Так вот у меня вопрос. Почему, обладая столь мощными возможностями, Ruby
и Ruby on Rails до сих пор обладают такой слабой документацией? Ведь это
самое главное в популярности ЛЮБОЙ системы - наличие ХОРОШЕЙ
документации, когда человеку всегда есть куда обратиться за справочной
информацией, а не строить собственные догадки, не рыться в исходниках.
Рыться в исходниках - это программирование ради программирования, а ведь
люди просто хотят использовать инструмент. Получить быстро нужную
информацию о системе - это уже половина успеха, я считаю. Мало описания
функций, надо еще чтобы человек мог видеть похожие функции, чтобы мог
следовать как по цепочке.
Вы посмотрите на документацию на том же www.php.net и посмотрите на
документацию Ruby и Ruby on Rails. В вашей документации
(http://www.ruby-doc.org/core-1.9.3/), например, я не смог найти
описание method_missing, зато в другом источнике (http://apidock.com/)
оно есть.
Разве нельзя создать нормальный сайт с документацией, где было бы все и
сразу? Почему человек должен о чем-то догадываться, рыться в исходниках?
Про документацию Ruby on Rails (http://api.rubyonrails.org/) я вообще
молчу - нет описания многих методов, если есть описание, то не понятно
какие он может принимать параметры и что они означают, нет описания
классов, их взаимосвязей.

Вы разработали такую прекрасную систему, великолепный язык
программирования, превосходный фреймворк, так почему вы не можете
разработать нормальную, внятную документацию? В этом популярность PHP и
слабость Ruby, только в этом. Была бы такая же хорошая документация,
тогда давно бы Ruby шагал впереди планеты всей. Мне кажется давно уже
пора снабдить команду разработчиков командой разработчиков ДОКУМЕНТАЦИИ.
Ведь зрелость любого продукта характеризуется как раз удобной и обширной
документацией, в том числе.

Я думаю, что многих останавливает как раз этот момент в изучении, когда
люди сталкиваются с тем, что просто не могут легко двигаться дальше в
изучении и использовании этих систем - Ruby и Ruby on Rails.

И еще раз спасибо за столь превосходные инструменты!

С Уважением, Сергей

---

--
Posted via http://www.ruby-forum.com/.

I think you are a bit confused.

Ruby is a programming language. Rails is a web framework (which just
happens to be written in Ruby). They are two completely separate things.
Complaining about them both together is like complaining about Sendmail
and C together (just because Sendmail happens to be written in C)

If you have suggestions for Rails, please send them to a Rails forum or
mailing list.

As for documentation: there is very good commercial documentation
available for both Ruby and Rails - for a few dollars you can get very
good PDFs. If you don't want to pay this, then the first edition of the
Pickaxe book is still available online for free and remains a good
starting point: http://www.ruby-doc.org/docs/ProgrammingRuby/

I agree with you that the bundled documentation for the ruby language
itself is poor, but I don't think that complaining about it will help.
If you'd like to contribute, I'm sure your efforts would be gratefully
accepted.

···

--
Posted via http://www.ruby-forum.com/.

http://api.rubyonrails.org/ - disgusting documentation! There are no
descriptions of all classes, there are no descriptions of their
correlations, there are no descriptions of many methods, there are no
descriptions of parameters of these methods.

http://guides.rubyonrails.org/ - thhe easy-to-follow tutorial (for
begginers) - here isn't present any detail description of API.

Compare, for example, with a site www.php.net and you will see a big
difference.

I use both PHP and Ruby therefore I know about what I tell.

···

--
Posted via http://www.ruby-forum.com/.

Brian Candler wrote in post #1057913:

I think you are a bit confused.

Ruby is a programming language. Rails is a web framework (which just
happens to be written in Ruby). They are two completely separate things.
Complaining about them both together is like complaining about Sendmail
and C together (just because Sendmail happens to be written in C)

That's just the point that it concerns both environments of development
- Ruby and Ruby on Rails.

If you have suggestions for Rails, please send them to a Rails forum or
mailing list.

I wrote and to the Ruby on Rails forum too.

···

--
Posted via http://www.ruby-forum.com/\.

Hmm, don't have the email you're responding to in my inbox -.^

Anyway, I think the OP is wrong, Rails has really great docs:

http://api.rubyonrails.org/

···

On Mon, Apr 23, 2012 at 5:11 AM, Brian Candler <lists@ruby-forum.com> wrote:

I think you are a bit confused.

Ruby is a programming language. Rails is a web framework (which just
happens to be written in Ruby). They are two completely separate things.
Complaining about them both together is like complaining about Sendmail
and C together (just because Sendmail happens to be written in C)

If you have suggestions for Rails, please send them to a Rails forum or
mailing list.

As for documentation: there is very good commercial documentation
available for both Ruby and Rails - for a few dollars you can get very
good PDFs. If you don't want to pay this, then the first edition of the
Pickaxe book is still available online for free and remains a good
starting point: Programming Ruby: The Pragmatic Programmer's Guide

I agree with you that the bundled documentation for the ruby language
itself is poor, but I don't think that complaining about it will help.
If you'd like to contribute, I'm sure your efforts would be gratefully
accepted.

--
Posted via http://www.ruby-forum.com/\.

Hello,

Since you're into 'serious' development why not try to buy a book? The pickAxe is a good start and there are others...

···

On 23 Απρ 2012, at 15:20 , Sergey Ezhov wrote:

http://api.rubyonrails.org/ - disgusting documentation! There are no
descriptions of all classes, there are no descriptions of their
correlations, there are no descriptions of many methods, there are no
descriptions of parameters of these methods.

http://guides.rubyonrails.org/ - thhe easy-to-follow tutorial (for
begginers) - here isn't present any detail description of API.

Compare, for example, with a site www.php.net and you will see a big
difference.

I use both PHP and Ruby therefore I know about what I tell.

--
Posted via http://www.ruby-forum.com/\.

regards

Panagiotis Atmatzidis
-----------------------------
Pharmacy Student at VFU

email4lists: ml@convalesco.org
More info: http://about.me/atmosx

The wise man said: "Never argue with an idiot, he brings you down to his level and beat you with experience."

You might try http://apidock.com. It's the same information, but I prefer
the interface.

That said, there are 1100 classes in Rails. A list of each of them and what
they do isn't going to be particularly helpful, since there are very few
you actually need to use as an end user of the framework.

Correlations between classes are definitely documented, although as always
the documentation could be better. See the documentation for ActiveRecord,
for example:

http://apidock.com/rails/ActiveRecord/Base

···

On Mon, Apr 23, 2012 at 8:20 AM, Sergey Ezhov <lists@ruby-forum.com> wrote:

http://api.rubyonrails.org/ - disgusting documentation! There are no
descriptions of all classes, there are no descriptions of their
correlations, there are no descriptions of many methods, there are no
descriptions of parameters of these methods.

--
Tony Arcieri

Anyway, I think the OP is wrong, Rails has really great docs:

http://guides.rubyonrails.org/
http://api.rubyonrails.org/

I can't believe the attitude I'm seeing in this thread. Someone writes a very thorough and self-admittedly subjective critique of our beloved ruby (and rails) and all he gets is people jumping down his throat saying he's wrong or confused. He's not. He's totally right.

Really great? I couldn't disagree more. I completely agree with the OP that both ruby and rails have a long way to go before our documentation is "really great". For example, `rdoc -C lib` inside of activerecord:

Files: 144

Classes: 82 ( 28 undocumented)
Modules: 90 ( 63 undocumented)
Constants: 21 ( 20 undocumented)
Attributes: 91 ( 84 undocumented)
Methods: 822 (385 undocumented)

Total: 1106 (580 undocumented)
47.56% documented

That's the oldest and most established subproject in rails... meaning, it has the least excuse to be less than 50% documented.

Ruby has the same problem, but at least Eric Hodel and others are (semi-)actively doing something about it. It still has a long way to go before it is "really great":

Files: 764

Classes: 1293 ( 620 undocumented)
Modules: 302 ( 146 undocumented)
Constants: 2195 ( 828 undocumented)
Attributes: 1013 ( 438 undocumented)
Methods: 9440 (2459 undocumented) ONE IN FOUR!

Total: 14243 (4491 undocumented)
68.47% documented

The numbers speak for themselves, as do the really basic questions on this mailing-list, ruby-forum, stackexchange, etc.

And before anyone starts up on the "great" commercial documentation available... do we really want to have a paywall as our barrier to entry?

···

On Apr 23, 2012, at 06:07 , Josh Cheek wrote:

+1 on apidock. has notes and references to related
classes/functions(and search is fast too)... but unfortunately
apidock does not show a list/links of all the undocumented
methods/classes (so we can add what is immediately missing.. like the
case of missing method_missing. lol :slight_smile: ...

thanks for apidock
kind regards -botp

···

On Tue, Apr 24, 2012 at 4:20 AM, Tony Arcieri <tony.arcieri@gmail.com> wrote:

You might try http://apidock.com. It's the same information, but I prefer
the interface.

For some reason Gmail doesn't show me the origin of this thread. But that
remark seems unfair to me.

For starters, that statistic presented like that, cold, is not very
meaningful. You'd need to add how many of the undocumented methods are
public interface. Because we are talking about end users, to which internal
documentation is not a concern.

The documentation of Ruby on Rails has sure room for improvement, but you
can't deny that since docrails was created the documentation is good. We
get many documentation contribs via docrails, the guides, patches are not
accepted without docs coverage. Could it be better? Always, but this
project has documentation as a first class citizen nowadays.

I wanted to state my point of view. I have interest zero on discussing
whether a certain adjective is appropriate or not.

Ruby has the same problem

No, Ruby has a way worse problem.

I am not complaining (in open source I very rarely complain), but to
express my opinion about this, it is a matter of fact that Ruby
documentation can't be compared with the quantity and quality of Rails
documentation.

···

On Mon, Apr 23, 2012 at 9:17 PM, Ryan Davis <ryand-ruby@zenspider.com>wrote:

Files: 144
>
> Classes: 82 ( 28 undocumented)
> Modules: 90 ( 63 undocumented)
> Constants: 21 ( 20 undocumented)
> Attributes: 91 ( 84 undocumented)
> Methods: 822 (385 undocumented)
>
> Total: 1106 (580 undocumented)
> 47.56% documented

That's the oldest and most established subproject in rails... meaning, it
has the least excuse to be less than 50% documented.

> Anyway, I think the OP is wrong, Rails has really great docs:
>
> http://guides.rubyonrails.org/
> http://api.rubyonrails.org/

I can't believe the attitude I'm seeing in this thread. Someone writes a
very thorough and self-admittedly subjective critique of our beloved ruby
(and rails) and all he gets is people jumping down his throat saying he's
wrong or confused. He's not. He's totally right.

As I said "Hmm, don't have the email you're responding to in my inbox -.^"
so I can't see the "thorough and self-admittedly subjective critique". This
issue has been brought up countless times but looks like it won't ever be
addressed.

Really great? I couldn't disagree more. I completely agree with the OP that

both ruby and rails have a long way to go before our documentation is
"really great". For example, `rdoc -C lib` inside of activerecord:

Okay, but how frequently do you need to know how something works and find
its not documented? For me that's pretty rare. And often the docs would be
redundant as the name is sufficiently descriptive. Worst case, you expand
the code view.

Also, I do think the guides are "really great", they're full of examples,
diagrams, notes, they're well structured, and contain both a breadth and
depth of information. They omit some of the less relevant parts of Rails,
and for those cases, the API usually works for me. It's pretty rare for me
to have to go digging through code.

Might also be worth noting that I live on Pry, and do a large amount of
self-discovery with that.

···

On Mon, Apr 23, 2012 at 2:17 PM, Ryan Davis <ryand-ruby@zenspider.com>wrote:

On Apr 23, 2012, at 06:07 , Josh Cheek wrote:

Wrong. Rdoc -C doesn't count anything marked with :nodoc: nor does it count methods that are private. So there is no reason why this number shouldn't be 100%.

···

On Apr 23, 2012, at 13:05 , Xavier Noria wrote:

On Mon, Apr 23, 2012 at 9:17 PM, Ryan Davis <ryand-ruby@zenspider.com> wrote:

> Files: 144
>
> Classes: 82 ( 28 undocumented)
> Modules: 90 ( 63 undocumented)
> Constants: 21 ( 20 undocumented)
> Attributes: 91 ( 84 undocumented)
> Methods: 822 (385 undocumented)
>
> Total: 1106 (580 undocumented)
> 47.56% documented

That's the oldest and most established subproject in rails... meaning, it has the least excuse to be less than 50% documented.

For some reason Gmail doesn't show me the origin of this thread. But that remark seems unfair to me.

For starters, that statistic presented like that, cold, is not very meaningful. You'd need to add how many of the undocumented methods are public interface. Because we are talking about end users, to which internal documentation is not a concern.

How many of the un(der)documented classes/methods are actually useful to
end-users of the framework though? I'm not excusing the current state of
the documentation, but I'd hope the majority of what end users would
actually use is documented.

···

On Mon, Apr 23, 2012 at 3:30 PM, Ryan Davis <ryand-ruby@zenspider.com>wrote:

Wrong. Rdoc -C doesn't count anything marked with :nodoc: nor does it
count methods that are private. So there is no reason why this number
shouldn't be 100%.

--
Tony Arcieri