Pair debugging


#1

I spent a couple of hours this morning debugging RubyGems unit test
failures along with Jirapong Nanta. It was a fun exercise. We tracked
down two issues and hopefully Jirapong found the experience useful to
jump start his exploration of the IronRuby code base.

I am open to helping others too. I have put the following notes at the
bottom of http://wiki.github.com/ironruby/ironruby/debugging to ensure
that we can have a productive session. Jirapong had done his homework,
gotten RubyGems to work cleanly with MRI, and done a bit of debugging
himself, which is why we had a productive session.
Pair debugging with experienced IronRuby developers

Some experienced IronRuby developers may be available to debug a problem
with you. Watching over their shoulder can help a newcomer to the code
base learn debugging tips and techniques. To make this a fruitful
exercise, please follow the following guidelines:

  •     Send email to 
    

removed_email_address@domain.invalidmailto:removed_email_address@domain.invalid asking
if any experienced developer is available to help you

  •     Ensure that you can build and successfully run all of the 
    

RubySpechttp://wiki.github.com/ironruby/ironruby/rubyspec tests.

  •     Restrict the problems to pure Ruby code which is known to work 
    

with MRI. Ensuring a clean working baseline functionality in MRI ensures
that the problem truly in IronRuby. Without a known clean MRI baseline,
the problem can be in a component other than IronRuby which you are as
well-equipped to diagnose as anyone else.

  •     Set up a clean repro. Spend time ensuring that it is not a 
    

configuration issue, and that the problem can be easily reproduced on
other machines. Document detailed information about your platform,
version of IronRuby, and the steps to repro the problem.

  •     Do basic debugging by yourself beforehand. This will ensure 
    

that you get the most out of the session and can keep up with what’s
going on over Live Meeting.

  •     Set up Live Meeting<http://livemeeting.com> on your machine, 
    

which will allow you to watch the debugging session.

  •     Add the experienced developer as a friend/buddy in some Chat 
    

program so that you can ask questions during the debugging session.
Thanks,
Shri


#2

Awesome idea! We don’t use these newfangled collaboration tools enough,
so I’m all for whatever can make collaboration easier =)

From: removed_email_address@domain.invalid
[mailto:removed_email_address@domain.invalid] On Behalf Of Shri B.
Sent: Thursday, March 26, 2009 4:06 PM
To: removed_email_address@domain.invalid
Subject: [Ironruby-core] Pair debugging

I spent a couple of hours this morning debugging RubyGems unit test
failures along with Jirapong Nanta. It was a fun exercise. We tracked
down two issues and hopefully Jirapong found the experience useful to
jump start his exploration of the IronRuby code base.

I am open to helping others too. I have put the following notes at the
bottom of http://wiki.github.com/ironruby/ironruby/debugging to ensure
that we can have a productive session. Jirapong had done his homework,
gotten RubyGems to work cleanly with MRI, and done a bit of debugging
himself, which is why we had a productive session.
Pair debugging with experienced IronRuby developers

Some experienced IronRuby developers may be available to debug a problem
with you. Watching over their shoulder can help a newcomer to the code
base learn debugging tips and techniques. To make this a fruitful
exercise, please follow the following guidelines:

  •     Send email to 
    

removed_email_address@domain.invalidmailto:removed_email_address@domain.invalid asking
if any experienced developer is available to help you

  •     Ensure that you can build and successfully run all of the 
    

RubySpechttp://wiki.github.com/ironruby/ironruby/rubyspec tests.

  •     Restrict the problems to pure Ruby code which is known to work 
    

with MRI. Ensuring a clean working baseline functionality in MRI ensures
that the problem truly in IronRuby. Without a known clean MRI baseline,
the problem can be in a component other than IronRuby which you are as
well-equipped to diagnose as anyone else.

  •     Set up a clean repro. Spend time ensuring that it is not a 
    

configuration issue, and that the problem can be easily reproduced on
other machines. Document detailed information about your platform,
version of IronRuby, and the steps to repro the problem.

  •     Do basic debugging by yourself beforehand. This will ensure 
    

that you get the most out of the session and can keep up with what’s
going on over Live Meeting.

  •     Set up Live Meeting<http://livemeeting.com> on your machine, 
    

which will allow you to watch the debugging session.

  •     Add the experienced developer as a friend/buddy in some Chat 
    

program so that you can ask questions during the debugging session.
Thanks,
Shri


#3

Yes!, It has been very helpful to me. I can see what i need to prepare
and looking for when get an error.

I found the debugger method is very powerful -
http://gist.github.com/61605

and would be nice if It can auto load when Ruby.Console is start?

encourage everyone to try & contribute
Thank you,
-Jirapong


#4

I am planning on looking at bugs in some Ruby apps this week. If anyone
wants to look over my virtual shoulder with Live Meeting as a way to
jump start contributing
patcheshttp://wiki.github.com/ironruby/ironruby/contributing to
IronRuby, let me know and we can plan a time that works for all. Times
that work for me are 10-12am PST Wednesday, and most working hours on
Thursday and Friday. The session will probably be a couple of hours, you
will need to have Live Meeting working, and you should be able to do
builds and run tests cleanly on your machine (see details below).

Shri

From: removed_email_address@domain.invalid
[mailto:removed_email_address@domain.invalid] On Behalf Of Shri B.
Sent: Thursday, March 26, 2009 4:06 PM
To: removed_email_address@domain.invalid
Subject: [Ironruby-core] Pair debugging

I spent a couple of hours this morning debugging RubyGems unit test
failures along with Jirapong Nanta. It was a fun exercise. We tracked
down two issues and hopefully Jirapong found the experience useful to
jump start his exploration of the IronRuby code base.

I am open to helping others too. I have put the following notes at the
bottom of http://wiki.github.com/ironruby/ironruby/debugging to ensure
that we can have a productive session. Jirapong had done his homework,
gotten RubyGems to work cleanly with MRI, and done a bit of debugging
himself, which is why we had a productive session.
Pair debugging with experienced IronRuby developers

Some experienced IronRuby developers may be available to debug a problem
with you. Watching over their shoulder can help a newcomer to the code
base learn debugging tips and techniques. To make this a fruitful
exercise, please follow the following guidelines:

  •     Send email to 
    

removed_email_address@domain.invalidmailto:removed_email_address@domain.invalid asking
if any experienced developer is available to help you

  •     Ensure that you can build and successfully run all of the 
    

RubySpechttp://wiki.github.com/ironruby/ironruby/rubyspec tests.

  •     Restrict the problems to pure Ruby code which is known to work 
    

with MRI. Ensuring a clean working baseline functionality in MRI ensures
that the problem truly in IronRuby. Without a known clean MRI baseline,
the problem can be in a component other than IronRuby which you are as
well-equipped to diagnose as anyone else.

  •     Set up a clean repro. Spend time ensuring that it is not a 
    

configuration issue, and that the problem can be easily reproduced on
other machines. Document detailed information about your platform,
version of IronRuby, and the steps to repro the problem.

  •     Do basic debugging by yourself beforehand. This will ensure 
    

that you get the most out of the session and can keep up with what’s
going on over Live Meeting.

  •     Set up Live Meeting<http://livemeeting.com> on your machine, 
    

which will allow you to watch the debugging session.

  •     Add the experienced developer as a friend/buddy in some Chat 
    

program so that you can ask questions during the debugging session.
Thanks,
Shri