Thursday, July 21, 2005

Fundraising

A few months ago, when I started trying to raise money for 2People, I thought that if I could just find the right "angels", they'd be dying to give money to such a great project. And maybe they will ... some day. But after meeting with a few very progressive, ecologically aware angels, I found out that they still wanted a good ROI. So I've begun to think about more traditional non-profit fundraising -- simply for seed money until we can become self-sustaining. I think we do have a great business model, but it will take time to get rolling.

In this vein, two good things that have happened recently: Leith Sharp (of Harvard's Green Campus Initiative) put me in touch with a Boston-based freelance fundraiser. We met last week and hit it off, ... I expect good things to come of that. It never would have occurred to me that there are freelance fundraisers in circulation.

The other thing I'm excited about is the How to Build a More Ethical Society competition sponsored by Ashoka. Ashoka is a highly-respected incubator for social entrepreneurs, and in addition to the $5000 prize, the opportunity to network with them would be great. As I wrote up the entry for 2People, it was nice to hit upon this language: sustainability is ethics at societal scale. You can go to their site and vote on entries from around the world.

Monday, July 11, 2005

Tech talk

The software that the 2People web site runs is under development -- it's called 'Reef'. A 'reef' is an ecosystem of content. It's a community built around posting, subscribing to, and collaborating on content. Something like a wiki, only with structure -- you can post an article, an event, a discussion topic, etc. (Also akin to structured blogging.) Because it's all based on a unified content model, it gives people the ability to subscribe to exactly the content they're interested in.

I chose to develop Reef in perl, on top of an mvc framework called 'Catalyst'. I'm liking these choices a lot, though it took me a bit of time to settle on them. Originally I though I'd develop in java, but the java mvc frameworks (Struts, Spring, ...) are still a bit daunting compared to something like Ruby on Rails. The java frameworks are definitely doing cool things, but they don't feel agile.

The other thing I expected was to find existing components to build on -- especially, I thought I'd use an existing wiki as a scaffolding for Reef. I looked at many, including MoinMoin, ZWiki, JspWiki, and Kwiki. The latter two became finalists -- they're both well done and relatively light weight, they have good communities, and they're built on languages (java and perl) that have great libraries backing them up and which I know. I actually started work on JspWiki, but immediately stopped bc the codebase just didn't feel stable enough for the kind of re-architecting I needed to do. Then I spent two weeks studying the marvelous, impeccable kwiki code. Kwiki is a wiki designed for extensibility -- the idea is that anybody can contribute a plugin and it should work with anybody else's plugins. I learned a ton about good perl code.

Sadly, within a few days I started to feel the limits of the kwiki architecture. I felt like I was trying to force it into shapes it wasn't meant to go in. Specifically, it doesn't feel very friendly to creating a class hierarchy for different types of pages. This is probably my limitation -- but I'm the one hacking on Reef. (Speaking of page architectures, yes, I also looked at plone. It's so very close to what I wanted -- esp. the new archetypes architecture, but it has so many, many, many layers -- the opposite of lightweight.)

In truth, it wasn't just wikis I looked at -- which is why it took me so long to settly on a toolkit. I also looked at CMSs, blogging software, and java portlet containers... This project cuts across so many categories! So it's kind of ironic that in the end, I'm writing it from scratch on a lightweight mvc framework. But I think this was the right choice. Having a clean page architecture -- by which I mean that every kind of page, whether it's an event or a resource listing, can be treated essentially the same -- makes everything so much easier, and development is going well.

Friday, July 08, 2005

The story so far...

It's finally about time I started blogging 2People. This first post will try to summarize the story to now...

I've been home from Senegal for 4.5 months -- hard to believe -- and in that time a lot has gelled. The key concepts of 2People as both an organizing strategy and an online community have come together. I have a mockup of the site, and I'm making headway on implementing the software (more on that next time).

I've presented 2People a number of times, including at MIT's E-Club (for entrepreneurs), to Harvard's Green Campus Initiative, to SustainUS (campus activists), and to a working group of MBA types doing "clean energy" startups (which I was invited to join -- I feel special). I started out hoping to raise money, but now I think it's unlikely that angel investors would hand over cash for this kind of purely social enterprise. That's okay, I'm focusing more on a first release of the software, getting some open source momentum, and I'm pretty sure the money will work out.

Oh, yeah, I've also spent some time on omidyar.net, and set up a 2People group there.

Last week I went to DC for a global warming action timed for the G8 summit. We camped out in Lafayette Park right across from the White House, and fasted for three days. I went, not because I thought this would have a big impact, but because I wanted to meet a group of people with that level of commitment -- and I was not disappointed. Great people! I was especially inspired by the students -- kids who are really smart, well-informed, and utterly passionate about creating change.