Best ways to accelerate Ruby's popularity

S

Steve Brumbaugh

Another announcement on behalf of our Japanese friends at Rubyist Magazine.

(English translations for these articles will appear... uh... sometime in the
near future. Translations for the previous three volumes are scheduled to
appear in the upcoming Ruby zine, which I was told would launch this month.)

--Steve

-------------------------------------------------

This is Sasada Koishi of the Japan Ruby Association (and editor of Rubima
Magazine).

We have released Volume 4 of Rubyist Magazine, a Webzine produced by volunteers
from the Japan Ruby Association.

http://jp.rubyist.net/magazine/?0004

Even though the end of the year is a busy time, we gathered plenty of articles.
Enjoy!

==============================
= Rubyist Magazine, Volume 4 =
==============================

http://jp.rubyist.net/magazine/?0004

Rubyist Magazine ("Rubima") is a Webzine that brings you technical articles,
interviews with Rubyists, essays, and more.

Foreword
========
Greetings from Masayoshi Takahashi, the editor-in-chief of Rubyist magazine.

Rubyist Hotlinks No. 4: Tadashi Tada
=====================================
Rubyist Hotlinks is a series of interviews with well-known Rubyists. For this
interview, we spoke with Tadashi Tada, the author of tDiary
<http://sourceforge.net/projects/tdiary/>. We were able to speak with him not
just about tDiary, but about all sorts of interesting things.

Let's Begin Programming with Ruby No. 3 (Dan)
=============================================
Ruby primer for people who are not familiar with computer programming. Take
your very first steps with Ruby!

Using Ruby on Rails (Moriq)
===========================
Introduction to Ruby on Rails, a popular Web application framework.

Ruby Library Report No. 3: O/R Mapping Tools (Michiaki Baba)
============================================================
Series introducing libraries and development tools for Ruby developers. This
article introduces four libraries for implementing O/R mapping: rorm, TapKit,
SDS, and Active Record.

Customizing Your Blog with lily No. 2 (Kan Fushihara)
=====================================================
This is a series from the developer of lily, an easy-to-use blog tool written
in Ruby, with information on customizing lily and creating your own blog. This
article explains flavour, a mechanism that lets you customize the format of a
blog quickly and easily.

Using Win32OLE No. 2 (cuzic)
============================
Second article in a series explaining Win32OLE. This article describes how one
can use Win32OLE to process Excel files.

Build Ruby on Windows No. 1 (Tamura)
====================================
Series explaining how to build Ruby on Windows. This article is suitable for
even complete novices.

Ruby/Tk Workshop Report (Workshop participants)
===============================================
Report on the Ruby/Tk workshop held December 11th at the IMS Tenjin in Fukuoka.

Ruby News
=========
A gathering of Ruby-related news stories.

Ruby Event Check
================
Upcoming events that are related to Ruby or that might be of interest to
Rubyists.

-------------------------------------------------

The next issue is scheduled for mid-February. Upcoming articles include:

* Rubyist Hotlinks No. 5: Toshiyuki Masui
* Let's Begin Programming with Ruby No. 4
* Customizing Your Blog with lily No. 3
* Using Win32OLE No. 3
* Ruby Library Report No. 4

As always, we'd like to hear from you. Feel free to send your thoughts,
opinions, and suggestions.

In addition, we always welcome the following types of articles:

* Technical articles about Ruby
* Ruby usage examples
* Essays related to Ruby (even if only loosely!)
* Other types of articles dealing with Ruby

...in Japanese, if possible. :)

Any questions or comments you may have should be sent to the Rubyist Magazine
editorial desk at (e-mail address removed).



__________________________________
Do you Yahoo!?
Meet the all-new My Yahoo! - Try it today!
http://my.yahoo.com
 
A

Austin Ziegler

FWIW, there's a new theme available now; if you log in and go to "My
Page" and go "Account Maintenance", there's a dropdown box to select a
new theme. Just pick the GForge theme and click ok and then click
around a bit...

Nice theme, but the "RubyForge" logo looks bad on it.

-austin
 
W

Wayne Vucenic

Hi David,

Thanks for all the great work you, Chad, Rich, and others have been
doing at Ruby Central.

A few days ago I mailed RubyCentral a check contributing 1% of my
gross receipts from doing Ruby programming in 2004. I'm going to do
the same thing in 2005.

I think RubyCentral is really helping to improve Ruby and to make it
more popular. You've done a lot with the resources you have, and I
assume with more financial resources you'll do even more amazing
things. I encourage anyone else who earns money with Ruby to consider
supporting Ruby Central.

Wayne Vucenic
No Bugs Software
"Ruby and C++ Contract Programming in Silicon Valley"
 
T

Tim Sutherland

I don't like how ruby-doc.org's front page is set up. I hate the
navigation. You have:

little_link little_link little_link
Content

Content

Content

The links should have a big graphic next to them, or as the link:

===========|
=API =|
= DOCS =|
= HERE =|
===========|
[...]

Just to agree with Zach here...

The links at the top and the sidebar(s) on the right are the only parts of the
page that have to do with Ruby documentation, most of the page is taken up
with announcements and so on.

Maybe move all the announcements to a small sidebar with short summaries?

Also, with the way the announcements (and articles on
http://www.ruby-doc.org/articles/ etc.) are displayed, they feel like
they're all "merging together" visually.

Instead of

Wed, 6 Oct 2004

Some Title Goes Here In Light Grey

Some text ...

How about
Wed, 6 Oct 2004: Some Title Goes Here In Same Colour as the Date

Some text ...

The date and title could still be differentiated by one of them being
italicised.

Those issues aside, ruby-doc.org is a great resource. The sidebar on the
right has a lot of good stuff I hadn't noticed before because of the layout.

Cheers :)
 
J

James Britt

Tim Sutherland wrote:
...
The links at the top and the sidebar(s) on the right are the only parts of the
page that have to do with Ruby documentation, most of the page is taken up
with announcements and so on.

Maybe move all the announcements to a small sidebar with short summaries?


They're basically going away. When the site started there was more news
than docs. Aside from Dave's outstanding Programming Ruby there was
little else to link to. It was more a blog for the RDP than a
documentation directory. When a new resource came around, it was big news.

That's changed in a big way. Nowadays, there's almost little point in
announcing when a new resource is available, as they pop up too
frequently. (It's still big news, but, thankfully, not *as* big, owing
to the increased frequency.)

Instead, what's needed (and coming along) is a better way to organize
and search known resources,and a way to recognize these resources
without a central administrator having to add them.

So certain things will remain (primarily the links to the more stable
and essential docs, such as the core classes, standard lib, and C API,
as well as doc bundles and other downloads), but the main page will
focus more on immediately directing users to resources for assorted
development tasks.

Along with this, the overall style will get cleaned up, so it will
easier for the eye to pick out and follow things.
 
T

Trevor Andrade

The reason I came to ruby was that it had regular expressions like perl so
it was possible to do small quick hack and at the same time it was as purely
object-oriented as smalltalk. The main reason I didn't like Python wasn't
very object-oriented (everything was not an object, nothing was private), it
forced indentation, I hate the idea of having tuples and vectors. I think
hyping Ruby as a pure language is important. Also emphasizing that Ruby can
do quick scripts and is a practical language will show people that Ruby is
the best of both worlds. I really liked it when I found out about the fact
that you could do things like 1.+(5) in Ruby or "jfskdjkl".class. I also
like the fact that Ruby could do regular expressions and yet regular
expressions were objects themselves.

Now the main reason I can't use ruby or justify recommending ruby to others
is that Ruby's libraries are just not as comprehensive as python's. Ruby
needs to have better libraries and more applications to become more popular.
But to have bigger libraries it needs to be more popular so that it can
attract the programmers to write them. The only was to get out of this
catch-22 is just to wait a long time and hope for a critical mass or write
something that is used by a lot of people and is written in Ruby. I think
Rails is an app that has the potential to make people look at Ruby. It is a
visible project that a lot of people are finding out about it.

Another thing I am wondering about is the Japanese ruby users. It feels
like the communities are not really connected together and not really
pulling in the same direction. Maybe we need more Japanese to English
translators and vice versa. I don't know if we are aware of everything the
Japanese users are doing. Maybe this is just due to the language barrier.
Are there any Japanese readers that may have some comments on this?

Regards,
Trevor Andrade

-----Original Message-----
From: James Britt [mailto:[email protected]]
Sent: Wednesday, January 05, 2005 11:58 PM
To: ruby-talk ML
Subject: Re: Best ways to accelerate Ruby's popularity


Tim Sutherland wrote:
...
The links at the top and the sidebar(s) on the right are the only parts of the
page that have to do with Ruby documentation, most of the page is taken up
with announcements and so on.

Maybe move all the announcements to a small sidebar with short summaries?


They're basically going away. When the site started there was more news
than docs. Aside from Dave's outstanding Programming Ruby there was
little else to link to. It was more a blog for the RDP than a
documentation directory. When a new resource came around, it was big news.

That's changed in a big way. Nowadays, there's almost little point in
announcing when a new resource is available, as they pop up too
frequently. (It's still big news, but, thankfully, not *as* big, owing
to the increased frequency.)

Instead, what's needed (and coming along) is a better way to organize
and search known resources,and a way to recognize these resources
without a central administrator having to add them.

So certain things will remain (primarily the links to the more stable
and essential docs, such as the core classes, standard lib, and C API,
as well as doc bundles and other downloads), but the main page will
focus more on immediately directing users to resources for assorted
development tasks.

Along with this, the overall style will get cleaned up, so it will
easier for the eye to pick out and follow things.
 
A

Austin Ziegler

Now the main reason I can't use ruby or justify recommending ruby to others
is that Ruby's libraries are just not as comprehensive as python's. Ruby
needs to have better libraries and more applications to become more popular.
But to have bigger libraries it needs to be more popular so that it can
attract the programmers to write them. The only was to get out of this
catch-22 is just to wait a long time and hope for a critical mass or write
something that is used by a lot of people and is written in Ruby. I think
Rails is an app that has the potential to make people look at Ruby. It is a
visible project that a lot of people are finding out about it.

So ... what's missing, from your perspective?

-austin
 
D

Douglas Livingstone

So ... what's missing, from your perspective?

Raw output from Ruby to the console is easy, but getting output to a
web browser without using Rails is just a sea of Apache's 500 errors
for me. (I'm looking at moving from PHP to Ruby.)

Right now I can't use Ruby without Rails. I guess that means a couple
of days hacking Rails, but it should be easy with just Ruby. A
"require" or an "include" at the top of a Ruby file to get
browser-friendly output would be magic.

Browser-friendly error messages would be *very* helpful; knowing what
is wrong would be easier to work with than just getting a 500 error.

Thanks,
Douglas
 
N

Nicholas Van Weerdenburg

Raw output from Ruby to the console is easy, but getting output to a
web browser without using Rails is just a sea of Apache's 500 errors
for me. (I'm looking at moving from PHP to Ruby.)

Right now I can't use Ruby without Rails. I guess that means a couple
of days hacking Rails, but it should be easy with just Ruby. A
"require" or an "include" at the top of a Ruby file to get
browser-friendly output would be magic.

Browser-friendly error messages would be *very* helpful; knowing what
is wrong would be easier to work with than just getting a 500 error.

Thanks,
Douglas

What of eruby (http://www.modruby.org) or the cgi library?
 
D

Dimitri Aivaliotis

Browser-friendly error messages would be *very* helpful; knowing what
is wrong would be easier to work with than just getting a 500 error.

Try this:

---- begin 500.rbx----

r = Apache.request
rp = r.prev
r.content_type = 'text/plain'
r.send_http_header

puts "Something unexpected happened. Please report the following to
the site administrator.\n"
if !rp.nil?
puts rp.connection.remote_ip
puts 'uri: ' + rp.uri
puts ENV.inspect
puts rp.error_message.to_s
puts rp.headers_in.to_a.inspect
end

----end 500.rbx----


I've been using that for awhile (forgot where I first saw it...). Set
up 500.rbx as an ErrorDocument in Apache:

ErrorDocument 500 /path/from/document/root/to/500.rbx

and make sure that mod_ruby handles your *.rbx files:

<Files *.rbx>
SetHandler ruby-object
RubyHandler Apache::RubyRun.instance
</Files>

HTH,

- Dimitri
 
L

Lothar Scholz

Hello Austin,

AZ> On Thu, 6 Jan 2005 15:32:38 +0900, Trevor Andrade

AZ> So ... what's missing, from your perspective?

A good reliable and fast MIME parser that supports all the MIME
features and not some kind of common subset - because this does not
work for a library that works with such an important standart. There
are a few important RFC's that must be implemented and this can't be
done with regular Expressions. I think we need a binary extension
for this.

But even Perl's MIME library is only working sometimes. Ever tried to
attach a file with non ASCII characters in the path name ?

And talking about MIME we must also talk about a little bit more about
charsets and encodings. We don't have anything comparable to python.
 
O

oinkoink

Ben said:
I'm a relative new user to Ruby, and to programming in general. A long
while ago, I programmed in BASIC. I also tried a bit C and Pascal, but
nothing big, always those little calculator programs.

Last year, I tried Ruby and I really, really liked it. But even after
reading 10 tutorials and the PickAxe book (online), I still don't
understand it.

I think Ruby lacks a good beginners guide. A guide that explains what
OO-programming is and how you can do it in Ruby. A guide that explains
everything with very simple programs, from A-Z.

Every guide/tutorial that I encountered was too difficult for a beginner
to follow, certainly if you have no OO experience (or programming
experience for that matter). All the existing documentation is written for
people who have already programmed in Python, Perl, ... . I didn't program
Python or Perl, so I don't have anything to compare with. I just want to
learn Ruby.

There is a big group of wannabee programmers out there, and a
beginnersguide would be a good introduction for them. It's much easier to
convince a new programmer to use Ruby, than to convince a Python-user to
convert to Ruby. ;-)



Regards
--
Ben Branders http://bytewarrior.madoka.be

.---. E-mail privacy is a right, not a privilege.
/ |\________________ Please sign and/or encrypt your mail.
| () | ________ _ _)
\ |/ | | | | Gnu Privacy Guard: http://gnupg.org
`---' "-" |_| Enigmail: http://enigmail.mozdev.org
 
O

oinkoink

Ben said:
I think Ruby lacks a good beginners guide. A guide that explains what
OO-programming is and how you can do it in Ruby. A guide that explains
everything with very simple programs, from A-Z.

Get _SAMS Teach Yourself Ruby in 21 Days_, by Mark Slagell. It does
what you want, quite lucidly.

Regards, oinkoink
 
S

Shad Sterling

I don't like how ruby-doc.org's front page is set up. I hate the
navigation. You have:
[...]

The links at the top and the sidebar(s) on the right are the only parts of the
page that have to do with Ruby documentation, most of the page is taken up
with announcements and so on.
[...]


I agree with those suggestions, but my problems with ruby-doc.org are
more stupid newbie problems - there's no lists of reserved words and
what they mean, of intrinsic variables, that sort of thing. It may be
the navigation problems, but I have trouble finding any reference
information at all - I see plenty of howtoish prose, which is near
impossible to just look something up in.
The core and library rdocs are quite good (tho some libraries fail to
explain their general concepts), it's language stuff I get stuck on
when I can't find things. (things like, how do you control the return
value of a do loop?)

Now I don't want my first post to be all criticism, so I have to say
I'm quite happy with Ruby as a language. I've yet to have the
language get in my way.


- Shad
 
T

Thursday

Great idea! Very useful for debugging.

A slight modification when moving into production would be to log the
details of the error using something like syslog (ideally using
syslog-ng to log to remote server). And posting a more user-friendly
message--just to avoid confusing non-techs and keeping detailed info out
of hackers' view.
 
B

Ben Giddings

Hi all, I got to this discussion really late, but I have some ideas.

Here's what web-related things I would suggest to accelerate Ruby's
popularity:

* A central "portal" site geared towards people who are brand new to
Ruby. This central site's main page should have at most 6 "elements" on
it, and should show them all with no scrolling. The way Google's main
page does things is almost perfect. I'd lay things out like:

About | Search: ____________________ [go]
Ruby |
----------------------------------------------
Docs | Downloads | Libraries / Software

I think a big, prominent "search" box is a necessity. It wouldn't even
need to run a search engine on any site either, it could simply connect
to google and search only a small subset of Ruby sites. It's just that
you often know what you want, but don't know where it would be. Is
"bugs" under documentation or "about Ruby"? Is "CVS access" under
"About Ruby" or "Downloads"? You can't possibly show everything people
are interested in on the main page, so don't try, just make it easy for
them to find it.

I would suggest that each one of those sections only contain 1 link, and
that the page it links to can contain more information, say:

About Ruby:
* What is Ruby? (Intro from Matz)
* Ruby's License
* How does Ruby compare to Python, Perl, PHP, Smalltalk...
* Ruby stats (how many downloads, how many projects,
date of latest release, number of developers,
mailing list size, age of Ruby...)
* CVS access
* Mailing lists
* Bugs

Docs:
Docs could either be a direct link to ruby-doc.org or could be a page
on the same server. Either way, I think the docs page should be
another simple portal:
* Quick intro to Ruby for beginning programmers
* Quick intro to Ruby for advanced programmers
* Ruby API & Std Lib Documentation
* Ruby language reference

Downloads:
* Windows one-click installer
* OS X disk image
* Tarball
* Info on packages for other OSes (Debian, Gentoo, Solaris, ...)
* Link to CVS tree

Libraries / Software:
* RAA
* Rubyforge

I think three of the biggest problems with Ruby's websites now are:
1. inconsistent look and feel between the various ruby-related domains
ruby-lang.org vs. rubyforge vs. ruby-doc.org vs. rubygarden vs. RAA. I
know each of these sites are run by individuals, and that they all have
their own reasons for running them, and their own interests. I just
think it would help the community if they all agreed on a standard look
and feel. That way, if the main ruby site linked to ruby-doc.org
directly for documentation, new visitors wouldn't wonder whether the
documentation was official or not.

2. Duplicated information on every site. RubyForge has a link to report
a bug in Ruby itself, ruby-doc.org has a link to download Ruby directly,
etc. This is confusing. I think ruby-doc.org shouldn't have a download
page at all, and should instead point all downloads to one central
download page. I think RubyForge should concentrate on Ruby libraries
and apps, and not on Ruby the language.

3. Most ruby sites home pages are geared towards long-time Ruby users,
and not newbies. I don't think there's any good reason for that. Long
time users will either have bookmarks or know how to find what they want
in one or two clicks. New users are probably overwhelmed.

Finally, there's the issue of news and discussion. Easily 90% of the
screen space on www.ruby-lang.org is dedicated to news, but the last bit
of news was on Christmas. If news comes in so slowly that there might
not be news for 3 weeks, it shouldn't have such a prominent place. I
think news and discussion should be somewhat buried in the sites.
Long-time Ruby users will know where to find it, and interested
newcomers will be able to find it, but it won't distract newbies who are
just trying to figure out "what the heck is this Ruby thing?"

Now, I'm pretty good at laying out info, but I don't have any skills at
real graphic design, so I can't really volunteer to design anything I'm
suggesting. I just think it would be nice to see.

Ben
 
J

Joel VanderWerf

Ben Giddings wrote:
...
* A central "portal" site geared towards people who are brand new to
Ruby. This central site's main page should have at most 6 "elements" on
it, and should show them all with no scrolling. The way Google's main
page does things is almost perfect. I'd lay things out like:

I like it. It would reduce the number of ruby bookmarks one needs to
carry around from computer to computer.

...
I would suggest that each one of those sections only contain 1 link, and
that the page it links to can contain more information, say:

About Ruby:
* What is Ruby? (Intro from Matz)

You could copy this from `man ruby`, for starters.

* FAQ
* Wikis
* Books (on line and print)
 
B

Ben Giddings

Joel said:
I like it. It would reduce the number of ruby bookmarks one needs to
carry around from computer to computer.

Yeah, as I wrote that, I realized how many important ruby sites there
are out there. Even I know that I'll find Python at python.org, Perl at
perl.org, but ruby...

Ruby's most central site is "ruby-lang.org".
Documentation is at "ruby-doc.org"
Some applications are hosted at "rubyforge.org"
Other applications are listed at "raa.ruby-lang.org"
The old pickaxe, and some documentation is at "rubycentral.com"
The wiki is at "rubygarden.org"
The mailing list archives are at "ruby-talk.org" (and blade.nagaokaut.ac.jp)

That's a whole lot of URLS, all of which are fairly important.

So right now "ruby.org" is held by "netidentity.com", who brag about
owning over 15,000 popular surname-based domain names. I wonder if it
might be possible to get the ruby.org domain. From a little poking
around, it doesn't look like ruby.org is used much. When I did a google
search for it, virtually all the links were ruby-language related,
including one from January 2003 where there was some discussion of
buying the domain.

I did some searches of common first names, and every single one I tried
was available.

It may be that netidentity has nobody actually using the ruby.org
domain, or at least so few that they might be willing to sell it.

Aside from money, we could offer them a lot of good press. Googlefights
says more people talk about Ruby than about Netidentity:

ruby
(26 500 000 results)

versus

netidentity
( 15 200 results)

So, maybe they'd be happy to have all kinds of praise heaped on them by
the Ruby community, and be able to brag about helping out the free
software community?

Now that we have a US non-profit, maybe this would be a good cause for
them to pursue?

Ben
 
Y

Yukihiro Matsumoto

Hi,

In message "Re: Best ways to accelerate Ruby's popularity"

|It may be that netidentity has nobody actually using the ruby.org
|domain, or at least so few that they might be willing to sell it.

It's no harm to ask them. I had tried for ruby.net before, but the
domain holder did not respond. Maybe I was not too good at
negotiation. Is someone willing to ask netidentity?

matz.
 

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,982
Messages
2,570,185
Members
46,736
Latest member
AdolphBig6

Latest Threads

Top