An acquaintance recently contacted me about an idea for a Web startup, using social media to bringing together people interested in humanitarian causes, art, positive change, etc. The problem she had, and it's a problem that I think is quite widespread, is she doesn't have the required coding skills. I responded with the following message:
Regarding your idea for a social media site (or network?) it sounds pretty interesting, and there are definitely niches out there that are not being well served by Facebook, Linkedin Groups, or existing Web forums.
That being said, I would be very careful about what area you target, as there are many existing services that address some of the areas that you named below -- Jumo, http://www.humanitarianforum.org/, some specific art-oriented communities, etc. Convincing users to join your site when there are already compelling services out there with large user communities is more difficult than targeting an unserved or underserved population.
In addition, in my experience creating user communities and blogs in the past, I have found that very tight niches ("South Florida Artists for Peace") are much easier to gain traction than broad communities ("Worldwide Artists for Positive Change and Humanitarian Causes").
As for the nuts and bolts of creating the community, the good news is that there are many existing software platforms out there that make it much easier to get started, and good coders will know how to use them.
The bad news is that good coders can be hard to find -- there is definitely a shortage of engineering talent, and you will be competing against larger companies and funded startups for them.
But there is a silver lining: There are many software developers who are currently working as employees who are interested in co-founding a company. The question then arises of how to find one who likes your idea, recognizes the skills/connections you are bringing to the table, can brainstorm/collaborate on how to move the project forward, and finds the opportunity worth pursuing.
In my opinion, the co-founder has to be someone you can meet in person on a regular basis -- that's how trust gets built, and ideas can move forward much more quickly than by sending emails or relying on Skype. You can work your local networks, or start attending local entrepreneurial meetups (preferably technology-oriented events). If there are none in your area, try organizing one and bring in one or two speakers that startup founders would want to hear from (for instance, a local lawyer talking about LLC vs S-Corp formation, or someone who has founded a successful startup in the past).
Plan B would involve outsourcing all of the coding using Guru.com, Elance, or remote developers recommended to you by someone else. The problem with this approach, besides the cost, is working out the software specifications and deliverables can be very frustrating if you've never done it before. It's possible to find developers who can help walk you through the process, but even still the chance for misunderstandings and "scope creep" is very high -- another reason to find a technical co-founder.I didn't get into the details of some of the software components that could be used to make such a site, but when I heard the idea I immediately thought of open-source content-management systems such as Joomla and Drupal, and authentication tools such as Facebook Connect and Twitter's xAuth/OAuth that would let people use their existing social media identities to authenticate/register and easily distribute the site's content and discussions elsewhere.