Forum: Ruby What are the 5 most innovative ruby projects/libraries?

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
29668d9eaaf486727a446f7d03c59f07?d=identicon&s=25 Camille Roux (camilleroux)
on 2009-03-08 18:22
Hi,

I'd like to write a post on the most innovative projects in Ruby. I
think Ruby is interresting for the language itself and also for its
community and it's what I would like to show.
I tought to :
- Sinatra
- Capistrano
- Cucumber
- Shoes
- Whenever

In your opinion, what are the 5 most innovative ruby projects/libraries
?


--
Camille Roux
http://www.camilleroux.com
4299e35bacef054df40583da2d51edea?d=identicon&s=25 James Gray (bbazzarrakk)
on 2009-03-08 19:33
(Received via mailing list)
On Mar 8, 2009, at 12:21 PM, Camille Roux wrote:

> - Whenever

Interesting.  What is this?

Can I get a link?  Google wasn't too helpful.

> In your opinion, what are the 5 most innovative ruby projects/
> libraries?

That's a very, very hard choice to make.  I think I would have trouble
if you asked for 20.  I'll give it a shot though:

* The Pathname standard library:  for interface design
* Rake:  for classic automation done right
* Rails:  for continually trendsetting
* RestClient:  for making networking sexy
* Amalgalite (SQLite by extension): for super easy yet full featured
data storage

James Edward Gray II
29668d9eaaf486727a446f7d03c59f07?d=identicon&s=25 Camille Roux (camilleroux)
on 2009-03-08 19:58
Nice choice...
I didn't know the two last ones.

Whenever is a nice library to generate cron tasks. It can even be used
with Capistrano.
http://github.com/javan/whenever/tree/master
8a85c693f13ef7cb542ef94d2a403d4d?d=identicon&s=25 Luc Heinrich (Guest)
on 2009-03-08 21:03
(Received via mailing list)
On 8 mars 09, at 18:21, Camille Roux wrote:

> In your opinion, what are the 5 most innovative ruby projects/
> libraries
> ?

- Rack
- Mongrel
- Rake
- FFI
- Threadify
4299e35bacef054df40583da2d51edea?d=identicon&s=25 James Gray (bbazzarrakk)
on 2009-03-08 21:09
(Received via mailing list)
On Mar 8, 2009, at 3:00 PM, Luc Heinrich wrote:

> On 8 mars 09, at 18:21, Camille Roux wrote:
>
>> In your opinion, what are the 5 most innovative ruby projects/
>> libraries
>> ?
>
> - Rack

Great choice there.

> - Mongrel

Interesting.  What part of this do you consider "innovative?"  I'm
just curious.

> - FFI

Yeah, another great choice.

> - Threadify

I really like his Slave library, which is along similar lines.

James Edward Gray II
14e8bd391ddbb9a311edac1d774cd38a?d=identicon&s=25 Power One (arghx1)
on 2009-03-08 22:31
Camille Roux wrote:
> Hi,
>
> I'd like to write a post on the most innovative projects in Ruby. I
> think Ruby is interresting for the language itself and also for its
> community and it's what I would like to show.
> I tought to :
> - Sinatra
> - Capistrano
> - Cucumber
> - Shoes
> - Whenever
>
> In your opinion, what are the 5 most innovative ruby projects/libraries
> ?
>
>
> --
> Camille Roux
> http://www.camilleroux.com

Isn't rail is one of those most innovative Ruby's projects?  I'm a noob
in Ruby, but I heard so much about rail, lolz.
Ff9e18f0699bf079f1fc91c8d4506438?d=identicon&s=25 James Britt (Guest)
on 2009-03-08 22:40
(Received via mailing list)
Camille Roux wrote:

>
> In your opinion, what are the 5 most innovative ruby projects/libraries

Nitro
Rack
Rake
Monkeybars
open-uri

or something.

--
James Britt

www.jamesbritt.com           - Playing with Better Toys
www.ruby-doc.org             - Ruby Help & Documentation
www.rubystuff.com            - The Ruby Store for Ruby Stuff
29668d9eaaf486727a446f7d03c59f07?d=identicon&s=25 Camille Roux (camilleroux)
on 2009-03-08 22:44
Power One wrote:
> Isn't rail is one of those most innovative Ruby's projects?  I'm a noob
> in Ruby, but I heard so much about rail, lolz.

You're maybe right. Ruby has a very dynamic and powerfull community, so
there're a lot of innovative projects.
I didn't put Rails in my list for some reasons:
- Rails is composed of some separate projects : Active record, Active
resource, ... are they all innovative?
- Some part of active record are inspirated by WebObjects (from Apple)
- I don't know whether ruby community created new things for Rails or
not
- It's very famous, all rubyist know it. I prefered give less famous
projects
4299e35bacef054df40583da2d51edea?d=identicon&s=25 James Gray (bbazzarrakk)
on 2009-03-08 23:34
(Received via mailing list)
On Mar 8, 2009, at 4:42 PM, Camille Roux wrote:

> - Some part of active record are inspirated by WebObjects (from Apple)

Really?  I thought it was based on the Active Record pattern described
by Martin Fowler.

James Edward Gray II
8a7a74182e801b31248d51cf8d94f2d5?d=identicon&s=25 rick_2047 (Guest)
on 2009-03-09 04:28
(Received via mailing list)
@Camille Roux
Nobody seems to have taken notice here but shoes is not a library of
any kind. Its more like a different ruby implementation. It comes with
its own ruby fork and cannot be installed as a gem or something.
Aafa8848c4b764f080b1b31a51eab73d?d=identicon&s=25 Phlip (Guest)
on 2009-03-09 05:05
(Received via mailing list)
> Nobody seems to have taken notice here but shoes is not a library of
> any kind. Its more like a different ruby implementation. It comes with
> its own ruby fork and cannot be installed as a gem or something.

Shoes is indeed the answer to the question "if Rails is so bitchen, why
isn't it
on the list of innovative ruby projects?"

Rails can't possibly innovate because it has only one purpose in the
world -
linking SQL (a preexisting innovation) to HTML (another preexisting
innovation).

Shoes takes the best DSL concepts from Rails, and other good projects,
and then
builds a whole new platform that ignores SQL and refutes HTML.
Ae16cb4f6d78e485b04ce1e821592ae5?d=identicon&s=25 Martin DeMello (Guest)
on 2009-03-09 06:04
(Received via mailing list)
On Sun, Mar 8, 2009 at 10:51 PM, Camille Roux <roux.camille@gmail.com>
wrote:
>
> In your opinion, what are the 5 most innovative ruby projects/libraries

Heckle is a pretty good idea that I've not seen elsewhere.
Haml is a nice rethinking of html templating
Halcyon is an interesting take on web service frameworks

and since I seem to have fallen into an alliterative pattern, check
out Hpricot and Hoe too :)

martin
Aafa8848c4b764f080b1b31a51eab73d?d=identicon&s=25 Phlip (Guest)
on 2009-03-09 08:10
(Received via mailing list)
Martin DeMello wrote:

> and since I seem to have fallen into an alliterative pattern, check
> out Hpricot and Hoe too :)

You may have missed the memo, but Nokogiri recently blew Hpricot out of
the water...

Yeah yeah yeah Hpricot _was_ innovative - a XML library that focuses on
all the
features real programmers actually /need/, instead of just typing in the
exact
XML RFCs verbatim. Nokogiri is strictly derivative here. Yet Nokogiri
appears to
have a better architecture...
29668d9eaaf486727a446f7d03c59f07?d=identicon&s=25 Camille Roux (camilleroux)
on 2009-03-09 08:12
Martin DeMello wrote:
> On Sun, Mar 8, 2009 at 10:51 PM, Camille Roux <roux.camille@gmail.com>
> wrote:
>>
>> In your opinion, what are the 5 most innovative ruby projects/libraries
>
> Heckle is a pretty good idea that I've not seen elsewhere.
> Haml is a nice rethinking of html templating
> Halcyon is an interesting take on web service frameworks
>
> and since I seem to have fallen into an alliterative pattern, check
> out Hpricot and Hoe too :)
Very nice choice Martin. I didn't know all of them. I note that for my
future article.
Could you explain what is Heckle and where is the innovation?


Phlip wrote:
>@Camille Roux
>Nobody seems to have taken notice here but shoes is not a library of
>any kind. Its more like a different ruby implementation. It comes with
>its own ruby fork and cannot be installed as a gem or something.
ho, I didn't know that. I understand why I had curiously to use 'shoes'
to launch my project! thanks
Aafa8848c4b764f080b1b31a51eab73d?d=identicon&s=25 Phlip (Guest)
on 2009-03-09 08:25
(Received via mailing list)
Camille Roux wrote:

>> Nobody seems to have taken notice here but shoes is not a library of
>> any kind. Its more like a different ruby implementation. It comes with
>> its own ruby fork and cannot be installed as a gem or something.

> ho, I didn't know that. I understand why I had curiously to use 'shoes'
> to launch my project! thanks

That's not the problem - lots of apps are true Ruby apps that you start
with
some other name. Some apps even freeze Ruby and its libraries into
themselves.

The problem (which I learned about in this thread) is the custom fork of
Ruby!
I am aware that if anyone could find a technical reason to fork Ruby,
Doctor Why
could. But still...
8a85c693f13ef7cb542ef94d2a403d4d?d=identicon&s=25 Luc Heinrich (Guest)
on 2009-03-09 08:52
(Received via mailing list)
On 8 mars 09, at 21:06, James Gray wrote:

> Interesting.  What part of this do you consider "innovative?"  I'm
> just curious.

Well, I couldn't really think of a fifth one and I *really* wanted to
give credit to something I use all the time. So yeah, maybe not
innovative in the strictest sense.
Ede2aa10c6462f1d825143879be59e38?d=identicon&s=25 Charles Oliver Nutter (Guest)
on 2009-03-09 08:59
(Received via mailing list)
Camille Roux wrote:
> In your opinion, what are the 5 most innovative ruby projects/libraries

In no particular order (and I have 7 here):

- JRuby
- Rubinius
- MagLev
- MacRuby
- IronRuby
- RubySpec
- YARV

More than just about any other library or project, the alternative impls
represent a *tremendous* amount of work, and will do more to move Ruby
forward than anything else.

Of course I'm obviously biased toward implementation-related tech :)

- Charlie
Ae16cb4f6d78e485b04ce1e821592ae5?d=identicon&s=25 Martin DeMello (Guest)
on 2009-03-09 09:08
(Received via mailing list)
On Mon, Mar 9, 2009 at 12:38 PM, Phlip <phlip2005@gmail.com> wrote:
> exact XML RFCs verbatim. Nokogiri is strictly derivative here. Yet Nokogiri
> appears to have a better architecture...

Yep, nokogiri is a superb piece of work, but hpricot blazed the trail.
If we're specifically discussing *innovative* projects I'd say hpricot
gets the tip of the hat.

martin
Ae16cb4f6d78e485b04ce1e821592ae5?d=identicon&s=25 Martin DeMello (Guest)
on 2009-03-09 09:11
(Received via mailing list)
On Mon, Mar 9, 2009 at 12:40 PM, Camille Roux <roux.camille@gmail.com>
wrote:
>
> Could you explain what is Heckle and where is the innovation?

It uses parsetree to get at the structure of your ruby code and modify
it in random but syntactically correct ways, the idea being that that
should cause a test to fail. If it doesn't, you don't have proper
coverage.

http://blog.aslakhellesoy.com/tags/heckle is a good writeup.

martin
34a7615f38496a5dafbb3e6b721c435e?d=identicon&s=25 Mohit Sindhwani (Guest)
on 2009-03-09 09:27
(Received via mailing list)
Charles Oliver Nutter wrote:
> - RubySpec
> - YARV
>
> More than just about any other library or project, the alternative
> impls represent a *tremendous* amount of work, and will do more to
> move Ruby forward than anything else.
>
> Of course I'm obviously biased toward implementation-related tech :)
Especially the first one (in no particular order) :P
But seriously, I think you're right!  And the work you guys have done on
JRuby is commendable!
  Thanks!

Cheers,
Mohit.
3/9/2009 | 4:26 PM.
Ef0db53920b243d6758c2f6b1306df0d?d=identicon&s=25 Steve Ross (cwd)
on 2009-03-10 06:56
(Received via mailing list)
On Mar 8, 2009, at 9:03 PM, Phlip wrote:

> Rails can't possibly innovate because it has only one purpose in the
> world - linking SQL (a preexisting innovation) to HTML (another
> preexisting innovation).

That's like saying that the maglev trains can't be innovative because
they link preexisting train stations. What's innovative about maglev
is that it allows trains to achieve higher velocity through the use of
innovative technology. That argument could be made for Rails. The
trains ran before ... they just run faster now (or maybe they get
built faster, or fail less often, or ...).
5a837592409354297424994e8d62f722?d=identicon&s=25 Ryan Davis (Guest)
on 2009-03-10 07:02
(Received via mailing list)
On Mar 8, 2009, at 22:01 , Martin DeMello wrote:

> and since I seem to have fallen into an alliterative pattern, check
> out Hpricot and Hoe too :)

I like your list, tho I should claim a little bias. ;)

I'd recommend looking at tagz over hpricot, even tho it breaks your
alliteration. It does an amazing job in as little code as it is, and
is really quite fast compared to similarly architected libraries.

I did steal the idea for heckle from java-land, so it can't be that
innovative ;)
Ef0db53920b243d6758c2f6b1306df0d?d=identicon&s=25 Steve Ross (cwd)
on 2009-03-10 07:02
(Received via mailing list)
On Mar 9, 2009, at 12:10 AM, Camille Roux wrote:

> Could you explain what is Heckle and where is the innovation?

Heckle injects permutations into code for the purpose of testing the
code's behavior when supplied unexpected inputs. This is done
automatically, and in conjunction with a set of tests that you write
to ascertain that the code is working right. See:
http://glu.ttono.us/articles/2006/12/19/tormenting...
  for a discussion of Heckle and
http://blog.zenspider.com/rubysadism/heckle/
  for heckle itself.
Aafa8848c4b764f080b1b31a51eab73d?d=identicon&s=25 Phlip (Guest)
on 2009-03-10 12:40
(Received via mailing list)
s.ross wrote:
> trains ran before ... they just run faster now (or maybe they get
> built faster, or fail less often, or ...).

You snipped the comparison to Shoes, whereas Rails to Shoes goes like
maglev to
teleportation...
Ef0db53920b243d6758c2f6b1306df0d?d=identicon&s=25 Steve Ross (cwd)
on 2009-03-10 16:57
(Received via mailing list)
On Mar 10, 2009, at 4:38 AM, Phlip wrote:

>> (or maybe they get  built faster, or fail less often, or ...).
>
> You snipped the comparison to Shoes, whereas Rails to Shoes goes
> like maglev to teleportation...
>

While I did snip the comparison the Shoes, I didn't snip the phrase
"Rails can't possibly innovate..." which is what I responded to.
Please tell me you don't believe that Rails is constrained like that.
Aafa8848c4b764f080b1b31a51eab73d?d=identicon&s=25 Phlip (Guest)
on 2009-03-10 19:16
(Received via mailing list)
s.ross wrote:

> While I did snip the comparison the Shoes, I didn't snip the phrase
> "Rails can't possibly innovate..." which is what I responded to.
> Please tell me you don't believe that Rails is constrained like that.

Okay, try this:

Rails is incredible because it takes a completely broken architecture -
HTML,
CGI, HTTP, XML, & JS - and polishes them beyond recognition with
state-of-the-art DSLs and architecture. That is both a major achievement
and
true innovation, considering the pitiful state of other web platforms.

But a Ruby platform could have innovated even more if HTML didn't so
totally suck...
Ef0db53920b243d6758c2f6b1306df0d?d=identicon&s=25 Steve Ross (cwd)
on 2009-03-11 01:00
(Received via mailing list)
On Mar 10, 2009, at 11:13 AM, Phlip wrote:

> architecture - HTML, CGI, HTTP, XML, & JS - and polishes them beyond
> recognition with state-of-the-art DSLs and architecture. That is
> both a major achievement and true innovation, considering the
> pitiful state of other web platforms.
>
> But a Ruby platform could have innovated even more if HTML didn't so
> totally suck...

Right, but HTML is kind of an immovable object. CGI is so sucky people
were dreaming up workarounds in the mid-90s. XML, meh, hard to get
excited about yet another markup language. Javascript wants to be C
and it wants to be Erlang (not really, but it kinda turned out that
way) and it wants to hide bugs so nobody can see. But it's everywhere.
I'd say, "like oxygen" but Javascript seems to suck the life out of me
rather than breathing life into me.

So you're right. The innovation of Rails is that it makes the Web
approachable for lousy programmers (most people can eventually write
the obligatory blog) and leverages good programmers' time and skill
nicely.

Steve
This topic is locked and can not be replied to.