As a junior/self learning/independent programmer, and will start a open-source app as side project,<p>Do you have any tutorial/advices?<p>I will be using python, and have some doubts,<p>For exemple i dont follow that much PEP8 and kind of have my own style of writing,
Is it mandatory to change it and follow 100% PEP8?<p>I use to make a lots of commits, minor changes, but all the project i read make few.<p>I would like to have people contribute and use it, do you have any tip or tutorial of the most do in open-source developement?<p>Thank you
My take on the PEP8 question is that it sort of points to the difference between open sourcing a personal project and building a community around a software project. If it's just me, then it doesn't matter if I do what I want. If I am trying to work with other people, then meeting their expectations by changing my behavior is part of what building a community tends to mean. And if using PEP8 is the sort of thing that people in a community are going to fight over, then all sorts of things unrelated to solving the problem that the project sets out to solve are fair game.<p>For me, it is also the case that things like learning to follow PEP8 are part of what I can get out of any side project...and worth getting because they are not worth fighting over. On the other hand, the idea of "unpytonic" as embodied in PEP8 are why I don't like the Python language community's norms very much...the norms are tribal in an unhealthy way and it comes down from the top.
Have a reason for it to exist<p>Plan for and/or create rules for how people can contribute<p>Publicize it<p>Show how it will help its users' loves be "better" - don't give a feature laundry list: make me <i>want</i> to use it<p>Have fun<p>Don't be surprised if [almost] no one ever contributes, helps, or uses it other than yourself - and be ok with that likelihood
I also commit as often as I can. Commits are free, and I like it the my git log tells a story.<p>I think the most important part is to make it as easy as possible to use the first time, and detail the main use cases in the readme, including how to install all the perquisites.<p>Sometimes I start a project without git and then decide to open source it, so my first commit is "v1, works" and the commit counter is low.