Best ways to accelerate Ruby's popularity

D

David A. Black

Hi --

Ok, maybe not "trustworthiness", but maybe "officialishness", or
"officialocity" or some other similar word that my english teacher would
faint if she heard me using?

I'll tell you where I'm coming from. Say I'm new to the language and want
some documentation on something in the standard library, say "webrick".
Although it's part of the standard library, when I search around on the
official ruby site, I can't find out anything about it, so I go to Google and
search for it, and find a site... only that site doesn't seem to be a very
official Ruby site...

I can maybe trust the documentation there, but how do I know that I'm not
going to be bombarded by popups on that site, or that the site isn't some
historical thing from before webrick became part of the official
distribution, or what?

(of course, I'm not picking on webrick now, I'm just trying to show the
problem with random, open, enthusiast-driven sites).

I think it would really help if, when something is adopted into the standard
library, there were an effort made to adopt the website and documentation as
well, so that it was clear to everybody that this is no longer just some ruby
hacker's pet project, but an official part of Ruby.

The same basic concept applies to ruby-doc.org. Is this just some fan's
attempt to document Ruby, which may be incomplete or out of date, or is this
the actively maintained Ruby documentation?

See my concerns?

Yes, but I see them differently :)

When it comes to the miscellaneous fan/hacker/enthusiast sites, the
Ruby community at large has no control over their existence. (This is
the Web, after all.) So rather than worry about the problems they
create, I'd like to see energy go into thinking of ways for the
community to encourage and support the efforts of people who want to
create their own Ruby sites. I can't help thinking that a
proliferation of Ruby sites -- especially if the community embraces
them and helps them out when necessary -- is part of the solution to
raising people's knowledge about Ruby, not the problem.

(I know this sounds a bit Utopian, but as a first approximation I'd
rather try to flow with the nature of the Web than swim against it.)

There's certainly evidence that non-official sites -- that is, sites
that are not DNS-connected to ruby-lang.org, nor maintained by the
ruby-lang.org admins -- can be of tremendous, sometimes immeasurable
value. The online Pickaxe, ruby-doc.org, why's Poignant Guide, and
the RubyConf presentation archives at Zenspider.com spring to mind.

As for the official site(s) -- I'm personally not a big fan of trying
to bring about a consistent look or "branding", partly because I don't
think it's meaningful in a situation where non-official sites can be
so important (and we, the community, really are not in a position to
decide up front that they are not important). Certainly re-designing
ruby-lang.org is a possibility, though I'd like to hear from its
admins and maintainers before making a lot of plans on their
behalf.


David
 
J

James Britt

David said:
Hi --




Yes, but I see them differently :)

When it comes to the miscellaneous fan/hacker/enthusiast sites, the
Ruby community at large has no control over their existence. (This is
the Web, after all.) So rather than worry about the problems they
create, I'd like to see energy go into thinking of ways for the
community to encourage and support the efforts of people who want to
create their own Ruby sites. I can't help thinking that a
proliferation of Ruby sites -- especially if the community embraces
them and helps them out when necessary -- is part of the solution to
raising people's knowledge about Ruby, not the problem.

(I know this sounds a bit Utopian, but as a first approximation I'd
rather try to flow with the nature of the Web than swim against it.)

I don't see this as Utopian at all. Most of the discussion on site
authenticity reminds me of the arguments for static typing. There seem
to be big concerns over an imagined problem that likely does not occur
all that often in real life.

For example, the very first paragraph on ruby-doc says, "The
ruby-doc.org Ruby documentation project is an effort by the Ruby
community to provide complete and accurate documentation for the Ruby
programming language."

But, of course, how can you really *know* this is true? Maybe it's a
lie. Ah! What's needed is some sort of "static typing" of the site, a
demonstrable, fool-proof way to assert that the site is really part of
the ruby-lang Web hierarchy.

As with static typing in general, I don't buy it. I'm more for duck
typing sites (though I admit that one can often find a bit of monkey
typing out there too. )

Various Ruby sites have been in a process of redesign for a while;
sometimes the changes are small and slow, other times a whole new site
seems to appear. I've been working on major changes to ruby-doc for,
well, too long now. Recent discussions have been prompting me to at
least roll out some minor changes I'd been holding off, and finish up
getting the larger changes in place.

(And I want to thank those who have taken the time to contact me and
offer cogent criticism and thoughtful, concrete suggestions on improving
the site. The current problems with ruby-doc are fairly obvious, so
enumerating them is not the tough task; coming up with specific
alternatives, with supporting arguments based on tangible user goals, is
more of a challenge.)

I also want to extended my thanks to all those who have put up and/or
maintain Ruby Web sites, official or not. Your time and effort is well
appreciated.

James Britt
 
T

Tom Copeland

Well I guess it's my turn to throw down on this subject. I am what
many of you have declared needs to be the new "target market". I've
been working with Ruby for only a couple of weeks now, and I've
gathered a few tidbits of information some of you might find relevant.

Good times!
I still cannot
tell you the difference between a project posted at RAA and one posted
at Rubyforge.

Generally. the RAA contains pointers to projects whilst RubyForge
contains the projects themselves.

Yours,

Tom
 
J

James Britt

Tanner said:
Now as for specifics and suggestions :)
Ruby-Doc.org is a great resource, I use it on a daily basis to look
SOMETHING or other up. The problem is that the multi-frame templates,
while helping simple navigation, kill my attempts to search for
something.

If and when there is a generally-accepted single-page template for the
API rdocs then an alternate version can be hosted at ruby-doc.
In general, I'd say that the single best resource for ruby, is this
list. I've learned more, and found more great resources from here,
than anywhere.

Indeed!

James
 
B

Ben Giddings

David said:
When it comes to the miscellaneous fan/hacker/enthusiast sites, the
Ruby community at large has no control over their existence. (This is
the Web, after all.) So rather than worry about the problems they
create, I'd like to see energy go into thinking of ways for the
community to encourage and support the efforts of people who want to
create their own Ruby sites. I can't help thinking that a
proliferation of Ruby sites -- especially if the community embraces
them and helps them out when necessary -- is part of the solution to
raising people's knowledge about Ruby, not the problem.

(I know this sounds a bit Utopian, but as a first approximation I'd
rather try to flow with the nature of the Web than swim against it.)

There's certainly evidence that non-official sites -- that is, sites
that are not DNS-connected to ruby-lang.org, nor maintained by the
ruby-lang.org admins -- can be of tremendous, sometimes immeasurable
value. The online Pickaxe, ruby-doc.org, why's Poignant Guide, and
the RubyConf presentation archives at Zenspider.com spring to mind.

As for the official site(s) -- I'm personally not a big fan of trying
to bring about a consistent look or "branding", partly because I don't
think it's meaningful in a situation where non-official sites can be
so important (and we, the community, really are not in a position to
decide up front that they are not important). Certainly re-designing
ruby-lang.org is a possibility, though I'd like to hear from its
admins and maintainers before making a lot of plans on their
behalf.

Ok, well maybe the problem is different then. Maybe the problem is that
ruby-lang.org needs to be drastically improved. Try to find the Ruby
API documentation on the ruby-lang.org site. As far as I can tell, it
isn't there. There are tons of links to other sites with documentation,
but it seems to me that documentation of the language's API is important
enough that there should be an official copy of it on the site's home.

I agree, _why_'s stuff is amazing. I think it's a great example of what
can happen with community / enthusiast sites. On the other hand, it
seems to me that the main site for the language should cover everything
that's really essential.

I think, at the very least, the home page for a language should have
things like:
[X] An "about" page
[X] A download area
[ ] Installation guides / instructions
[ ] An introduction to the language / beginner's guide
[ ] C API / interfacing with other languages guide
[ ] API documentation
[ ] Standard library documentation
[ ] FAQ
[X] Mailing lists
[ ] Bugs
[X] Announcements

The [X] marks things that are hosted and clearly findable on the
ruby-lang.org site, the [ ] marks things that aren't.

Much of this stuff exists, but it's not at ruby-lang.org, and even
though ruby-lang.org might link to it, the lack of consistent style
doubtless makes new users somewhat suspicious about how authoritative it is.

I don't know, but maybe the Japanese side of ruby-lang.org does better
in this regard. It just seems to me that Ruby needs more "official
stuff" (mostly documentation) for English users.

Maybe all it would take is that the maintainers of the English language
site bring some of the existing things over to the official site. Some
things should really be there, and wouldn't be too hard to move over,
like the core language API docs. Other stuff might still need to be
written. I don't know. I just think that there isn't enough stuff on
ruby-lang.org to convince a wary newcomer that they have indeed found
the official Ruby homepage, and that it is a mature language, in active
development, with lots of users, and with lots of real-world uses.

If NaHi or whoever maintains the english part of ruby-lang.org is
listening, please speak up, and tell us what you think. If there are
things you'd like / need for the site, let us know. If anybody knows
who does maintain the site, let us know so we can volunteer to help out.

Thoughts?

Ben
 
N

Navindra Umanee

Ben Giddings said:
Thoughts?

As someone who's been lightly dabbling with Ruby recently (and is not
about to stop), you make several good points.

I can't get rid of the lingering feeling that Ruby is still somewhat
immature/unpolished. Part of the reason is lack of documentation and
sometimes the documentation that I do use is plain wrong or
out-of-date because the Ruby API changes from release to release. Of
course, I'm using RubyCentral for most of my documentation needs --
they've done a fantastic job, but that's hardly official or
up-to-date.

Some things I still have no explanation for, such as why there are
mutually incompatible Time and DateTime classes with different
functionality.

Taking off my user's hat though and looking at it from an OpenSource
project perspective, I imagine the real problem is that there's
probably not enough people willing to do real work on ruby-lang.org.
In that case, relying on independent sites to fulfil the project needs
remains the best bet... unless those people can be recruited to help
the official site directly. (like you've been discussing)

On the plus side, I'm slowing getting addicted to Ruby, and hoping
that by the time my project comes to fruitation speed will not be an
issue and awesome extensions like Distributed Ruby will still be alive
and well. :)

Cheers,
Navin.
 
J

James Britt

Navindra said:
As someone who's been lightly dabbling with Ruby recently (and is not
about to stop), you make several good points.

I can't get rid of the lingering feeling that Ruby is still somewhat
immature/unpolished. Part of the reason is lack of documentation and
sometimes the documentation that I do use is plain wrong or
out-of-date because the Ruby API changes from release to release. Of
course, I'm using RubyCentral for most of my documentation needs --
they've done a fantastic job, but that's hardly official or
up-to-date.

Which RubyCentral docs? RubyCentral.com has a links on the front page
that indicate they refer to old content:

Library ref (old)
Ruby Book (old)

(but no links to where you can find newer documentation.)

RubyCentral.org has a link on the front page to the Ruby Documentation
Project, which has the documentation for the 1.8.2 core, standard lib,
and C APIs.

If you are using an online version of Programming Ruby then it will
somewhat out-of-date on both sites. Best to go buy the 2nd edition
(paper or PDF only).

Finally, have you used ri to get documentation at the command line?
It's built into Ruby, but may not be fully installed if you built Ruby
from source, as the default configuration is (I believe) to not build
the data files.

James
 
J

Joao Pedrosa

Hi,

As someone who's been lightly dabbling with Ruby recently (and is not
about to stop), you make several good points.

Yes, but the Japanese folks that take care of the core of Ruby do a
lot already, bringing us top-notch code and trust. A lot of the site
seems to be scripted and integrated with other parts of Ruby. If the
website goes to another server, things could go weary, and we don't
want anyone stressed. If the site is edited in loco, things could go
wrong, too.

It seems that the best is to create the best English site elsewhere,
and put a big banner and link on the ruby-lang.org linking there. Matz
is generally in favor of such initiatives, I guess.

That's my 0.02 Ruby gems. :)

Cheers,
Joao
 
N

Navindra Umanee

James Britt said:
Which RubyCentral docs? RubyCentral.com has a links on the front page
that indicate they refer to old content:

That's what I meant to say in the last sentence above. I still use it
because it seems to be one of the better organized sources of
information for Ruby programming, even though it's not official or
up-to-date.
RubyCentral.org has a link on the front page to the Ruby Documentation
Project, which has the documentation for the 1.8.2 core, standard lib,
and C APIs.

Ah, is ruby-doc.org the official source of Ruby documentation then?
http://www.ruby-doc.org/core/ seems a bit overwhelming.
Finally, have you used ri to get documentation at the command line?
It's built into Ruby, but may not be fully installed if you built Ruby
from source, as the default configuration is (I believe) to not build
the data files.

I've never heard of this! I don't seem to have it on my system. If
it's anything like Python's "help" command, this is excellent news
indeed! Thanks for the pointer.

Cheers,
Navin.
 
J

Jim Weirich

I can't get rid of the lingering feeling that Ruby is still somewhat
immature/unpolished. [...]
Some things I still have no explanation for, such as why there are
mutually incompatible Time and DateTime classes with different
functionality.

Actually, if you consider Java, incompatible Date/Time structures with
deprecated APIs indicate a _mature_ language.
 
C

Curt Hibbs

Ben said:
I think, at the very least, the home page for a language should have
things like:
[X] An "about" page
[X] A download area
[ ] Installation guides / instructions
[ ] An introduction to the language / beginner's guide
[ ] C API / interfacing with other languages guide
[ ] API documentation
[ ] Standard library documentation
[ ] FAQ
[X] Mailing lists
[ ] Bugs
[X] Announcements

The [X] marks things that are hosted and clearly findable on the
ruby-lang.org site, the [ ] marks things that aren't.

Much of this stuff exists, but it's not at ruby-lang.org, and even
though ruby-lang.org might link to it, the lack of consistent style
doubtless makes new users somewhat suspicious about how
authoritative it is.
[snip]

Maybe all it would take is that the maintainers of the English language
site bring some of the existing things over to the official site. Some
things should really be there, and wouldn't be too hard to move over,
like the core language API docs. Other stuff might still need to be
written. I don't know. I just think that there isn't enough stuff on
ruby-lang.org to convince a wary newcomer that they have indeed found
the official Ruby homepage, and that it is a mature language, in active
development, with lots of users, and with lots of real-world uses.

Yes, yes, yes... I couldn't agree more!

But, this isn't going to happen without someone willing "champion the
cause".

Curt
 
M

Mathieu Bouchard

I can't get rid of the lingering feeling that Ruby is still somewhat
immature/unpolished. [...]
Some things I still have no explanation for, such as why there are
mutually incompatible Time and DateTime classes with different
functionality.
Actually, if you consider Java, incompatible Date/Time structures with
deprecated APIs indicate a _mature_ language.

Actually, if you consider Java, incompatible int/Integer structures with
mutually-exclusive feature sets indicate a _pure_ language.

My point is, don't use Java as an example for anything.

_____________________________________________________________________
Mathieu Bouchard -=- Montréal QC Canada -=- http://artengine.ca/matju
 
D

Dick Davies

* Curt Hibbs said:
Ben said:
I think, at the very least, the home page for a language should have
things like:
[X] An "about" page
[X] A download area
[ ] Installation guides / instructions
[ ] An introduction to the language / beginner's guide
[ ] C API / interfacing with other languages guide
[ ] API documentation
[ ] Standard library documentation
[ ] FAQ
[X] Mailing lists
[ ] Bugs
[X] Announcements

The [X] marks things that are hosted and clearly findable on the
ruby-lang.org site, the [ ] marks things that aren't.
Maybe all it would take is that the maintainers of the English language
site bring some of the existing things over to the official site. Some
things should really be there, and wouldn't be too hard to move over,
like the core language API docs. Other stuff might still need to be
written. I don't know. I just think that there isn't enough stuff on
ruby-lang.org to convince a wary newcomer that they have indeed found
the official Ruby homepage, and that it is a mature language, in active
development, with lots of users, and with lots of real-world uses.
Yes, yes, yes... I couldn't agree more!

But, this isn't going to happen without someone willing "champion the
cause".

Seems to me everyone agrees the site needs a bit of work (fixing broken
links is a definite, theming is more of a bikeshed and I'm not going near
that), but the only way we can help is saying 'tsk, yeah, i know, bad isn't
it?' and nagging the website maintainers.

'Give us the tools and we will finish the job" :)

Is there a mechanism for people to submit new layouts/bugfixes/typo corrections
for ruby-lang.org? IMO rubygarden.org is a big plus for ruby because it has such
a fast turnaround for fixing errors.

But obviously you probably don't want your main site to be a wiki (especially not
considering how angry the j2ee crowd are since rails stole their mojo....)

Is the website code in CVS anywhere? that's how the bsds do it, you just
send a patch to get a typo changed. Does the ruby-doc list cover this kind of issue?
 
J

James Britt

Dick Davies wrote:
...
Is the website code in CVS anywhere? that's how the bsds do it, you just
send a patch to get a typo changed. Does the ruby-doc list cover this kind of issue?

No, not at the moment.

Should the Web sites (putting aside the issue of just which ones) fall
under the scrutiny of the documentation project?

James
 
D

Dick Davies

* James Britt said:
Dick Davies wrote:
...

No, not at the moment.

Should the Web sites (putting aside the issue of just which ones) fall
under the scrutiny of the documentation project?

I'd say so - it's all user doc, isn't it?
Though not sure how the politics would work out.
 
N

Nicholas Van Weerdenburg

Dick Davies wrote:
...

No, not at the moment.

Should the Web sites (putting aside the issue of just which ones) fall
under the scrutiny of the documentation project?

James

That might work out well. Then the leaders behind the various sites
could encourage and accept patches.
 
I

Ian Hobson

In message <[email protected]>, Ben Giddings

lots of good stuff, that misses the point.

If you want people to use ruby, the solution is to make the learning
curve rather shallow. Ruby and the application they want to run
(rails??) must run "out of the box).

I've used ruby on and off for 6 months. Two weeks ago I heard of rails
and wanted to try it out. Since then...

I have installed the latest version of MySQL and found it would not
work.

I was getting 500 errors from apache whenever I used rails.

So found the password fix, applied it.

I was still getting 500 errors from apache whenever I used rails.

Removed MySQL and installed the version before the password validation
was upgraded.

I was still getting 500 errors from apache whenever I used rails.

Altered my apache configuration many many many times.

I was still getting 500 errors from apache whenever I used rails.

Looked at logs. I get 9 or so errors. The only one I can fix is missing
favicon.ico - one I happen to know is totally harmless.

Posted for help, twice, in the rails forum. Two answers.

One - I use Linux, and know nothing about windows. Sorry.

Two. I think you need a /tmp directory.

Where? In d:/rails, d:/ruby D:/dev/public?

After digging I find that ruby's tmpdir.rb uses win32api to find the
windows install directory, and then wants /tmp under that - I think.

Why? For goodness sake! EVERY windows installation I have ever found as
TWO environment variable that point to the temporary directory.

Theses are %TMP% and %TEMP% These have existed since the days of
windows 3.1! This is NOT cutting edge stuff!

Ruby could use either - they will point to a directory where the current
user has read, write and file create permissions.

Anyway, I create my c:/winnt/tmp directory (next to the c:/winnt/temp
directory!)

I was still getting 500 errors from apache whenever I used rails.

Two weeks, much digging into internals I should not need to dig in to,
(turning up errors that should not be there), and I still get errors
that stop me dead.

Now my problem might be an APACHE problem. It might be a rails problem.
It might still be a MySQL problem. It might be a ruby problem.

It is a problem that stops me using rails.

Until new users do not routinely have such problems, you will not gain
more users.

I have posted details of my problem elsewhere. If you want to help
please answer there.

Here, I suggest you address the real issue. Ruby is a fantastic
language, let down by
poor online documentation
some bugs
lack of cohesion in what is presented.
No documetation of configuration, so when it does not work,
there is nothing to do but dig into the source!

Credit where is is due - If it wasn't for Thomas, Hunt and Why ruby
would be a dead duck.

How do you recruit 300 more like them?

Linux is the success on the server that it has been ONLY because apache,
php, MySql and the kernel all "just work". It is struggling to make it
to the desk top because the desk top apps routinely have errors, and
need more configuration than your average non-geek can manage.

If you want Ruby to succeed Ruby and its killer application (Which
appears to be rails) must be "plug and play", for 99.9% of users. That
takes care, effort and diligence.

<Rant off> :)

regards

Ian

p.s Did I mention I was still getting 500 errors from apache whenever I
used rails.
 
D

Douglas Livingstone

p.s Did I mention I was still getting 500 errors from apache whenever I
used rails.

Can you get plain Ruby files to load?

My setup:
Get xampp (now you have PHP, MySQL, pache all set up.. perhaps someone
who knows their stuff can make a Ruby module for xampp?)
edit xampp/apache/conf/httpd.conf
add AddHandler cgi-script .rb at the bottom
install Ruby using one click installer
add the ruby binary to your %PATH%
At the top of ruby files, add this line:

#!ruby

And at the top of the main ruby.rb file:

print "Content-type: text/html\n\n"
print "\n\n"

# your ruby app...

That seems to be working, though I only just managed to get it working
today... rails has been working by itself, not sure how though :(

Douglas
 
A

Alexander Kellett

If you want Ruby to succeed Ruby and its killer application (Which
appears to be rails) must be "plug and play", for 99.9% of users. That
takes care, effort and diligence.

it takes one windows user to do some work.
and the rest can profit.
i don't really understand why noone has just created an all in one .exe.
but i love my mac and my webrick install.
so i don't care :)

Alex
 
T

Travis Detert

The Rolling on Rails article that was posted on O'reilly was great, it's
addicted and inspired me to move to ruby as my main development language.
I don't think anyone whom would like to try it out wouldn't be able to
get it running from that tutorial, but an all-in-one installer would be
pretty great.



Alexander said:
it takes one windows user to do some work.
and the rest can profit.
i don't really understand why noone has just created an all in one .exe.
but i love my mac and my webrick install.
so i don't care :)

Alex


--
Travis Detert
Application Developer
GS Design
6665 N. Sidney Pl.
Milwaukee, WI 53209
(414) 228-9666
fax: (414) 228-9653
 

Ask a Question

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

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,774
Messages
2,569,596
Members
45,140
Latest member
SweetcalmCBDreview
Top