From: David Albert Date: 2012-06-25T11:19:37+09:00 Subject: [ruby-core:45823] Re: How can I contribute? --e89a8ff249d5fef89a04c3429c5b Content-Type: text/plain; charset=ISO-8859-1 On Sun, Jun 24, 2012 at 1:57 AM, NARUSE, Yui wrote: > (2012/06/23 1:39), David Albert wrote: > > I've been using ruby as my primary language for two years now and I like > it quite a lot. I'd like to start contributing back to it, but I don't know > where to begin. Does anyone have any pointers as to where I can be helpful? > > > > A bit of background: I'm pretty comfortable with the ruby language, C > api, and codebase. I've written a couple of small C extensions and have a > cursory understanding of how the garbage collector works and how objects > are stored. More recently, I've been spending some time learning about how > YARV works (iseq generation, opcodes, method definition, FrozenCore, etc). > > > > I have been looking into https://bugs.ruby-lang.org/issues/5776, and > I've made some progress. At some point between 1.9.2 and 1.9.3 the > visibility of top level inner method definitions changed from private to > public: https://gist.github.com/2973857. Because everything typed into > irb is eval'd with the binding from inside the top level Object#irb_binding > method (lib/irb/workspace.rb:51), all top level method definitions in irb > have become public. I haven't learned enough yet to know why this change > happened and if it was intended, but I imagine I can get there soon. > > > > Hopefully this is enough to help you understand the level I'm at. I'm > happy to continue working on #5776 or contribute to something else. Any > advice or direction would be wonderful. > > As Ammar says, writing Ruby program, studying Ruby, introducing Ruby to > some, > helping someone troubled with Ruby... all of them are contribution. > > Anyway, what you are saying is to contribute ruby core code, like fixing > bugs > and adding a grand new feature. > But they are also from helping someone (include you and me) troubled with > Ruby. Yes, this is what I'd like to help with. I'm happy to get my feet wet fixing a few bugs before adding any grand new features though. > > If you find a person who hit a bug of Ruby, you get a chance to fix the > bug. > If you find a person who is suffering how to write a function beautifully, > you may get a chance to add a new feature which make the function written > easily. > Such people are waiting us in twitter, blogs, stackoverflow, and so on. > If you report a bug, it should have small reproducible code. > So making a small reproducible code of existing but not fixed bug reports > is great contribution. (of course bug fix patch is welcome ;-) Thanks for the tips. It can be intimidating starting out in such a large project. It is hard to know what is already being worked on and what is available. I'm happy to add code and steps to reproduce to existing bugs that are missing it (and of course patches when I can). If there are any specific bugs that need some love, please let me know. Best, -Dave --e89a8ff249d5fef89a04c3429c5b Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable

On Sun, Jun 24, 2012 at 1:57 AM, NARUSE,= Yui <naruse@airemix.jp> wrote:
(2012/06/23 1:39), David Albert wro= te:
> I've been using ruby as my primary language for two years now and = I like it quite a lot. I'd like to start contributing back to it, but I= don't know where to begin. Does anyone have any pointers as to where I= can be helpful?
>
> A bit of background: I'm pretty comfortable with the ruby language= , C api, and codebase. I've written a couple of small C extensions and = have a cursory understanding of how the garbage collector works and how obj= ects are stored. More recently, I've been spending some time learning a= bout how YARV works (iseq generation, opcodes, method definition, FrozenCor= e, etc).
>
> I have been looking into https://bugs.ruby-lang.org/issues/5776, and I&#= 39;ve made some progress. At some point between 1.9.2 and 1.9.3 the visibil= ity of top level inner method definitions changed from private to public: <= a href=3D"https://gist.github.com/2973857" target=3D"_blank">https://gist.g= ithub.com/2973857. Because everything typed into irb is eval'd with= the binding from inside the top level Object#irb_binding method (lib/irb/w= orkspace.rb:51), all top level method definitions in irb have become public= . I haven't learned enough yet to know why this change happened and if = it was intended, but I imagine I can get there soon.
>
> Hopefully this is enough to help you understand the level I'm at. = I'm happy to continue working on #5776 or contribute to something else.= Any advice or direction would be wonderful.

As Ammar says, writing Ruby program, studying Ruby, introducing= Ruby to some,
helping someone troubled with Ruby... all of them are contribution.

Anyway, what you are saying is to contribute ruby core code, like fixing bu= gs
and adding a grand new feature.
But they are also from helping someone (include you and me) troubled with R= uby.

Yes, this is what I'd like to help= with. I'm happy to get my feet wet fixing a few bugs before adding any= grand new features though.
=A0

If you find a person who hit a bug of Ruby, you get a chance to fix the bug= .
If you find a person who is suffering how to write a function beautifully,<= br> you may get a chance to add a new feature which make the function written e= asily.
Such people are waiting us in twitter, blogs, stackoverflow, and so on.

If you report a bug, it should have small reproducible code.
So making a small reproducible code of existing but not fixed bug reports is great contribution. (of course bug fix patch is welcome ;-)
=

Thanks for the tips. It can be intimidating starting ou= t in such a large project. It is hard to know what is already being worked = on and what is available.

I'm happy to add code and steps to reproduce to exi= sting bugs that are missing it (and of course patches when I can). If there= are any specific bugs that need some love, please let me know.

Best,
-Dave
--e89a8ff249d5fef89a04c3429c5b--