Volunteer work and an idea how to get into existing code bases
Hi Bryce,
It's a shame that I only saw your calls for volunteer work now that you replied to them yourself... But I think this is an excellent idea to invite new developers! There needs to be more of it, or maybe it just needs to be more visible (like with a tag in the subject, eg. "[CFV]" for "Call For Volunteers").
In fact, I was looking for an easy way to familiarize myself with existing (poorly or barely documented) code bases and came up with this (as yet sadly unimplemented) idea: Look for a bug that has been fixed sometime in CVS and get a diff for the fix.
I think it might be another good invitation and might add value to code documentation if some good (ie. easy) fixes and enhancements were pointed out in the Wiki by the developers that commited them to CVS or by the newbies that found the diffs and found them to be straightforward.
If I someday get to implement this idea, should I start a Wiki page? (This might take a few months though...) Or is somebody else willing to do it? Or is it a not-so-god (bad) idea altogether?
Greetings, Felix
On Fri, 31 Dec 2004, Felix Rabe wrote:
Hi Bryce,
It's a shame that I only saw your calls for volunteer work now that you replied to them yourself... But I think this is an excellent idea to invite new developers! There needs to be more of it, or maybe it just needs to be more visible (like with a tag in the subject, eg. "[CFV]" for "Call For Volunteers").
Ah, thanks. I'll continue looking for appropriate projects for volunteers and help identify them for folks.
In fact, I was looking for an easy way to familiarize myself with existing (poorly or barely documented) code bases and came up with this (as yet sadly unimplemented) idea: Look for a bug that has been fixed sometime in CVS and get a diff for the fix.
Yup. Another way I've found helpful in learning barely documented codebases is to start by just documenting code. I've learned large swatches of Inkscape code by going through files and writing comments (as best I can) for each function in the file.
Also, right now is a *perfect* time for new developers to get involved in bug fixing, because right now we've got a huge wealth of new bugs reported since the last release. Over the coming weeks, as bug fixing becomes intensive, easy-to-fix bugs are going to get ferretted out and fixed. But right now those are all siting there ripe for the taking. :-)
I'll give you a secret for bug fixing - the *easiest* bug fixes to work on are usually the ones that cause crashes. This is because you can run gdb on them and get a backtrace. That tells you *exactly* where in the codebase the crash occurred, and usually you can figure those out easily (it's usually some form of naughty pointer). You can fix 2-3 such bugs per evening without too much trouble.
I think it might be another good invitation and might add value to code documentation if some good (ie. easy) fixes and enhancements were pointed out in the Wiki by the developers that commited them to CVS or by the newbies that found the diffs and found them to be straightforward.
If I someday get to implement this idea, should I start a Wiki page? (This might take a few months though...) Or is somebody else willing to do it? Or is it a not-so-god (bad) idea altogether?
Sounds worth having a shot at, so yeah, start a wikipage on it when you're ready and we can see how it goes. :-)
Bryce
On Fri, 31 Dec 2004, Felix Rabe wrote:
Date: Fri, 31 Dec 2004 16:27:46 +0100 From: Felix Rabe <xitnalta@...128...> To: inkscape-devel@lists.sourceforge.net Subject: [Inkscape-devel] Volunteer work and an idea how to get into existing code bases
Hi Bryce,
It's a shame that I only saw your calls for volunteer work now that you replied to them yourself... But I think this is an excellent idea to invite new developers! There needs to be more of it, or maybe it just needs to be more visible (like with a tag in the subject, eg. "[CFV]" for "Call For Volunteers").
Abiword used to organise a POW or "Project of the Week". It worked well when Abisource were starting development as there was much more work to be done then there were volunteers and they also offered a small prize for the best patch submitted that month.
It was very worthwhile but a lot of work to organise. Many of the problems were easy to fix bug that the developers could have fixed themselves but deliberately left aside to encourage new contributors. Others were suggestions to improve the plugins (usually import export plugins) and other non essential features, and Inkscape does have good seperation of plugins so a simliar approach might work well.
In fact, I was looking for an easy way to familiarize myself with existing (poorly or barely documented) code bases and came up with this (as yet sadly unimplemented) idea: Look for a bug that has been fixed sometime in CVS and get a diff for the fix.
Might be interesting to see a UML diagram of the codebase if anyone already has the tools setup to do it easily, generate it automatically (Rational Rose, Visio, Autodia?)
I think it might be another good invitation and might add value to code documentation if some good (ie. easy) fixes and enhancements were pointed out in the Wiki by the developers that commited them to CVS or by the newbies that found the diffs and found them to be straightforward.
If I someday get to implement this idea, should I start a Wiki page? (This might take a few months though...) Or is somebody else willing to do it? Or is it a not-so-god (bad) idea altogether?
If you have the enthusiasm to get it done it is definately worth trying.
Sincerely
Alan Horkan
Free SVG Clip Art http://OpenClipArt.org Dia is for Diagrams http://gnome.org/projects/dia/ Inkscape, Draw Freely http://inkscape.org Abiword is Awesome http://abisource.com
On Sun, 2005-01-02 at 13:43, Alan Horkan wrote:
Others were suggestions to improve the plugins (usually import export plugins) and other non essential features, and Inkscape does have good seperation of plugins so a simliar approach might work well.
Sadly, not really yet, except for the input/output filter plugin stuff.
In fact, I was looking for an easy way to familiarize myself with existing (poorly or barely documented) code bases and came up with this (as yet sadly unimplemented) idea: Look for a bug that has been fixed sometime in CVS and get a diff for the fix.
Might be interesting to see a UML diagram of the codebase if anyone already has the tools setup to do it easily, generate it automatically (Rational Rose, Visio, Autodia?)
I did a partial one a long time ago, but it's probably gotten a bit out of date now. I think it's still up in the documentation section of the website, though.
-mental
participants (4)
-
Alan Horkan
-
Bryce Harrington
-
Felix Rabe
-
MenTaLguY