As one, who just started contributing a year ago, I could
share my experience, that the barrier for contributions are
extremely high, due to lack of documentation.
I mean, other open source project generally have some sort
of documentation/tutorials, especially if they are doing some
non-conventional things.
With lot of wasted hours of reading forums, year old blog
posts, tuning google search, and trial-and-error, I could
collect that information, but I'm still not sure, if there are
simpler way to do this - I guess so, because every couple of
months my environment gone haywire, so I need to start from
scratch. As a wanna-be-contributor, I would expect:
* how to get the source code, and how to setup my IDE?
Originally, I tried to simply 'git clone ...' a couple of
repos, and import into Eclipse, but it wasn't successful.
Later found, that I need to use an 'advanced tab of 'Oomph'
tool to install a separate IDE, which will also do the git
checkout. (Of course, if that git operation times out, than
you have to start from scratch)
* how to start the project from the IDE? The launcher
config is very complicated, and it take a lot of trial and
error until I figured out, what projects should I close, what
needs to be open, and certain errors reported at startup is
just there.
* how to build your changes into a working, shareable
software, which can be used in other machines / by other
people? Finally, I found, that I need to checkout the
'releng.aggregator' project, adjust the submodules, and after
an hour of build, I will get the necessary binaries, that can
be used in other installations.
Compared to these problems, for me it's feels minor thing,
that if/when to rebase/squash/etc, but your mileage may vary.
Zsombor