I just began working for a religious non-profit organization. As with most non-profits, the organization is resource-poor and has no IT department to speak of. In my two months here I've received 20 requests for websites, apps, and internal automation. Many of these 20 requests have merit and would benefit the organization.

I'm a .net web developer and as such the open source community is relatively foreign to me...


For the sake of this question, lets say I'm talking about building a single, large, website.

Does software (web based, hopefully) exist that would allow me to post requirements and assets (graphics and CSS) for a site, and then invite programmers to participate in the sites development?

As a simple example, I could post the requirements and data for the about us page and an individual would indicate that they could/would fulfill the requirement. Upon completion, they could upload the new source code to the shared repository (github).

  • Aren't you afraid that if you send requirements and assets before the programmer agrees to help you, than someone could just use your documentation without your permission?
    – superM
    Sep 25, 2012 at 13:13
  • 1
    Perhaps you can find some resources or direction in the answers and links of this question about coding for charity
    – Rachel
    Sep 25, 2012 at 13:19
  • 1
    @superM, this is simply a corporate website. As far as I'm concerned, there are no requirements worth stealing.
    – James Hill
    Sep 25, 2012 at 13:56
  • @superM, it's an open source project. You WANT people to use your documentation, design, and code. The more people using it, the more work will be applied to it, the better it will be. Them using your tools makes your tools sharper. So, say, one of these requests is for a... transgression tracker to help measure their tithe this week (for old-school Catholics?). If some random guy decides to use this GPL'd doc and make his own, and realizes it could easily be expanded to include... stuff dealing with Kabbalah?... anything he published would likewise be GPL'd, and free for James to use.
    – Philip
    Sep 25, 2012 at 15:39

3 Answers 3


You might consider using GitHub itself as the tool for this. The requirements could be posted as individual "Issues" and you could have a special folder in the repository for "Requirements Assets" to place the assets associated with each issue/requirement. Then other developers could fork the repository and pick up the issues to work on and post them as pull requests. And once they become trusted contributors just assign them to the project directly to post submissions.

You could use your existing website to request contributors, linking to the issues page and the repository page at the Github site.

  • +1 for a solid answer. As an additional bonus, using github (or sourceforge or wherever) allows the OP to do QA / QC on the changes prior to pushing to the actual website.
    – user53019
    Sep 25, 2012 at 13:28
  • This seems like the best option. As a .net guy, I've never even used github. I guess I have some reading to do. Thanks for your time!
    – James Hill
    Sep 25, 2012 at 14:34
  • I HATE when people ask questions in the comments, but here I go: Would the free version of Github allow me to do all that you have suggested?
    – James Hill
    Sep 25, 2012 at 14:53
  • Yes, as long as the repository is created as a public repository.
    – Turnkey
    Sep 25, 2012 at 16:29
  • One other thing to add, there is a nice Windows client available now called GitHub for Windows that makes publishing to GitHub very easy. windows.github.com
    – Turnkey
    Sep 25, 2012 at 17:00

In addition to Turnkey's answer:

Consider having style guidelines and a preferred site structure in place prior to soliciting help. This will make it easier for developers to come and go but still be able to understand how a given change blends in with the rest of the site.

Prioritize the requests, as difficult as that may be. A large list of tasks to work on can be overwhelming. Providing guidance to the contributors helps them understand where the organization's needs are really at.


James, you are doing a great job !

In addition to the provided answers to host this project using GitHub, you may also get local developer support to help you with your initiative.

Depending on where are you located there is a GiveCamp event - a weekend long marathon where IT professionals donate their time and skills for charities. You may also get inspired developers from that communities to help you.

Last year, I have attended the one in Baltimore, MD. It was a great feeling to help the non-profits that were doing wonderful job to the communities in need. This year, i am also planning to attend and give back to the non-profits that support needy communities.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.