There are quite a few issues when you open source an existing website, and I'd like to see how how others have tackled this before. Are there some good examples out there of web applications, which have a public source code repository?
These are issues I have in mind:
- Handling sensitive data: salt keys, database connection info, etc.
I suppose you could store these in a file that is outside of the project, and only distribute an example file for contributors to build their local version. - Protect your user base: what if a contributor doesn't want to cooperate, and wants to publish their own version on a different domain/server?
It's not just bad that you may loose users, but it is also confusing for your users. - Protect your search engine indexation: what if you are penalized by Google because someone carelessly publishes a copy of your site on a different www?
My best guess right now would be to use a standard open source license and add an extra clause that basically says you can build your local version and modify for your own uses, distribute the modified code, but you can not publish either the original or modified version on a public www (that leaves the possibility to build a custom version for intranet use, which won't hurt the website's userbase and indexation).
I think this is programming related. In other words my question is how can you effectively allow people to read/learn from your code and contribute without jeopardizing an already established web app and associated community?