If you are employed, what disclosures do you need to provide to your employer? What disclosures do you need to provide to the folks you are helping? Check your contractual relationships for possible conflicts. Get written riders to contracts as needed.
Will you treat your programming as an "in-kind donation" for tax purposes? If so, you should check with your tax professional to find out exactly what is needed.
What will be the intellectual property status of what you create? If you are creating code or compiling data, who owns the results of your effort? If you are working as part of a large multi-participant project there needs to be a work-for-hire agreement for all concerned.
As with any project, you need to have a plan and execute to the plan but provide a way to adapt the plan as situations change. It is usually smart to define how decisions get made and who is responsible.
Finally, you need to consider what happens when the project is in production. How do bugs get fixed? Who is responsible for maintenance? Will you be supporting your creation forever?