I want to contribute to the open source community, but I've never done it before, and I have some concerns regarding the collaboration process - I am afraid that I will just "get in the way" of other developers, and since (I assume) that they are pretty polite guys, they will feel bad about telling me to bug off. I imagine things like adding the feature X in 1.3.0, just to realize that there was actually such thing in 1.1.5, but it was intentionally removed in 1.1.8 because of Y.
Being an independent contractor (a freelancer) I work very rarely with other developers, as a team, and I do understand that the software collaboration is a complex area (I've read a couple of books on management of big teams, seems to be a delicate area, at least to me).
To my actual question - should I start with something small (that I will create), and wait for other contributors to join it (ones that will know how "the stuff works", so I can slowly get my head straight on the collaboration part), or I should try to join a big project, which has a lot of activity in it, so I can see the big picture (but risking to be a pain for them) ?