I would like to contribute to the development of rails.

I would like to contribute to the development of rails.
What are the prerequisites for it. Please guide.

Hi Pankaj,

There are no prerequisites to contribute code. If you have something you would like to fix or add, follow the following guidelines:


You can find open tickets here:



thanks Manfred,

By prerequisites i meant, technical knowledge required.
Although I know ruby and rails, I have not looked much inside the
rails framework( the code).
What do you suggest should be the path to start contributing.
I am reading Design Patterns in Ruby by Russ Olsen. Have also gone
through The Ruby Way.
Any other book or suggestions which will help contributing to rails
are welcome.


Use the source luke! The best way to understand rails is to read rails. I would advise (at least that's how I got started) to do that in narrow vertical slices, ie pick something in rails that annoys you then step through the code (mentally or with a debugger) and try and understand how the annoying behaviour arises.


That's kinda what I'm doing with date_select at the moment, I think.
I'm working on a site that handles date fields in a different way
each time, which on its own is probably not all that smart (but I do
need something different every time), but it also means I keep
running into lots of obscure little bugs in date_helper.rb.

I created two tickets for bugs I found (1715 and 1824), and submitted
patches for them.

I opened first on january 9th, but so far nobody has even commented
on it. So now I'm wondering: should I announce my tickets and patches
on this list to get attention? Or will someone pick them up sooner
or later?

Also, how much of a problem is it that I don't include tests for my
patches? I notice other patches have them, but I haven't fogured
out how to do proper tests yet. I just check if they fix my problem
and try to write my patch so it's least likely to break anything for
anyone else.



They're not a pre-requisite for your ticket being looked at but
definitely a must for a patch being accepted. Plus, you should
actually supply breaking tests as a proof for a bug before fixing it -
in the spirit of TDD.

I don't know if this is still true (it's been a while since my last
contribution), but I think you need three people to +1 your suggestion/
patch before core team members look at it. Another option would be to
announce tickets in the rails-contrib IRC channel.

- Clemens