Drupal for resilient communities

We encourage users to post events happening in the community to the community events group on https://www.drupal.org.
matslats's picture

There is a clear, clear need for a certain kind of community web application, but so far, it hasn't been well articulated. Because the communities that need it aren't investing in web technologies, for various reason, the commercial sphere isn't addressing this need at all.

The needs this group is trying to address are in no way specific to transition towns.

In Estonia Community Tools have been working for a year on a Drupal distribution for realworld communities. I believe this may be the best model we have so far. They are fortunate enough to be paid wages by forward thinking Estonian institutions.

My own effort, Community Forge is focused on community currencies, but I understand the need to be a part of a less esoteric agenda. We are investing a lot of effort in training and educating the local administrators so they can spread the knowledge and become more technically independent, or at least, not dependent on me. Some communities make donations, or support in other ways. Community Forge and Tools alike use Drupal and both are acquiring a respectable amount of users.

Then there is Nodilus, which seems to have stalled I guess because of funding, but which planned to use Drupal.
Another I just found One Blue Dot plans to offer paid and free models, but I think they are not using Drupal.

There must be countless other initiatives, and boundless goodwill to make it happen. This is not about giving tiresome pro bono time to charity, this is about investing in all our futures.

Since building and maintaining a Drupal distro is a lot of work, I would very much like the next thing that Community Forge offers to be part of a collaborative effort. It might be advisable to have a small core and a long list of different drupal features, which could be developed independently, by different actors. Most of the so-called community features are actually about online communities, and that's where our needs diverge. The tools we need are not for online avatars who share a geeky obsession and and then vanish. We need to support REAL WORLD communities, that's the novelty. Let me remind you. In REAL WORLD communities people live close by, they meet in the shops, they exchange physical goods, they socialise and work together, they care for each other, and many have been there all their lives. Some of them don't even use computers!
So here is a list of the kinds of 'features' that I have identified

  • Classified ads, geopositioned, with privacy options and categories.
  • Some kind of lending management/checkout system for common goods. LIke the merci module but maybe simpler
  • A payment system which could be denominated in virtual national currency, and maybe hours, like a time bank. (That's my dept.)
  • something to help with ridesharing, might have to hook into an outside network, if there is one with a usable API
  • A reputation system which is considerate of the fact that everybody knows everybody
  • A group buying organiser, equivalent to groupon but better because delivery is cheaper when everyone lives in the same area,
  • A calendar with reminder
  • newsletter and discussion groups
  • A semi-sophisticated governance tool, perhaps giving extra credence according to the reputation system and/or to hours spent

Right now I'm working on the Communtiy currencies module for Drupal 7, and there is no shortage of work adding features to that and adapting it. I am passionate about that work. I am less passionate about building a whole community platform and migrating and supporting all the users I already support.

Comments

Community Tools

mwoodwar's picture

I was in Tallinn Estonia for a couple of months last fall, and got to meet the folks who put this package together. They are incredibly smart, and an eclectic mix of programmers, city planning/architect types as well as real community members and advocates.

I think that a distro in and

robbt's picture

I think that a distro in and of itself might be a good idea, but it also might be more than people can put together initially.

One thing I've thought about is trying to use the Features module to build components that people could reuse to build community sites. See - http://drupal.org/project/features

Then put that together as both a distro or way for people to interact. The other aspect would be once something like this was successful for individual implementations to figure out how to network sites together.

I know there is a lot of work going into the complimentary currency module. I think that a community events feature would be another good idea.

I agree that drupal is a great platform to leverage this stuff. What do people think about trying to leverage the community aspects of facebook applications. It seems like one of the biggest problems new sites have is pulling people into them and there is already a ton of people on facebook and/or using e-mail or even SMS/phones. Websites are often forgotten about unless they get into people's attention zones and then often you'll just have a small community of people using them regularly and other sparser attendees.

Funding for this sort of effort would be desirable but it would probably need to be connected with existing public institutions that would want to own the website and probably wouldn't necessarily want to fund a distro.

Another project using drupal that has expressed interest in this sort of thing is evolver.net

Also the global indymedia network has quite a few sites using Drupal and Columbus Indymedia in the past has expressed interest in foraging into this sort of project as an extension/alternative to the site.

More food for thought, but figuring out how to garner enough interest and coding into this would be a good idea.

The appleseed project http://opensource.appleseedproject.org/ has gathered a little bit of steam but I wasn't able to peak my interest into a non-drupal based php project due to the need to relearn and troubleshoot. I'd like to see decentralized social networking that was focused on community organizing and building. Tying it to existing community institutions and/or groups and then building the audience is probably the most challenging aspect.

Figuring out how to tie it together with real life entities and face to face interactions to help bolster trade and cooperation is a good idea. Easy print-outs makes sense for classifieds etc.

I'm glad someone else brought this up. Perhaps we can start building a base and/or tie it together with existing efforts.

yes

matslats's picture

@mwoodwar I shall be visiting Communitytools.info in Estonia next month.

Robbt. Thanks for this. Yes it seems that the features module is the way forward, especially since it is being used by Acquia in Drupal Commons.

Can you tell us more about the 'expression of interest' of evolver.net?

I agree that distributed social networking is the right platform for all this stuff; each community certainly needs its own identity and its own content, but many of those features I listed don't belong in a silo. I'm working on removing transactions from the silo, to make easier for communities to share currencies or trade between each other. But until there is a distributed social networking platform to do it on with enough of a user-base to make it worth investing in, all we can do is put that data elsewhere and make a nice webAPI to manipulate it.

I can't wait for that, it could be two years, so I'm getting on with Drupal. But if I'm working alone, it might take some time.

A suggestion

pmackay's picture

Last week I came across Open Outreach (http://drupal.org/project/openoutreach). Its a distribution profile aimed at non-profits and community organisations. I installed a D7 copy and it looks like a great starting point.

What I really like about it is that it is based around a set of Features called Debut (http://drupal.org/project/debut), which follow strict guidelines that use and extend the Kit Feature specification (http://drupal.org/project/kit).

So how about this for a proposal: leverage what has been done with Open Outreach. Connect with Chocolate Lily who maintain it and see if we can work with them on improving and extending Open Outreach. Create a new profile called "Open Community" (other name suggestions welcome) that is more specifically geared towards local communities than Open Outreach.

Potentially a Transition Drupal distribution profile might then further extend that, but I think something this community focussed on Transition needs to consider is what is specific to a website for Transition only? It might be some forms of categorisation, e.g. Transition Themes. But I'm suggesting Open Community so we increase the potential for collaboration as matslats has pointed out would be beneficial.

leap forward

matslats's picture

Well if there already a distro around that we could start with, then maybe the next thing is to identify a community or Transition Town who would like to work with us on their requirements, and testing. This can be hard though!
The other important work I foresee at the moment, apart from feature building, is project management - holding the centre.
I think this would be technical work - the usual stuff, version control, issue tracking etc, but also liasing with the partner-community.
I'll be building my first feature this month...

Community Forge, Community Tools and Features

matslats's picture

Community Forge is looking to work closely with Community Tools to build the kind of sites TT needs.
Focused on building local communities and civic engagement with local communities, and local money.

And now a word on Drupal features
I've learned some more about drupal features and it seems I had them all wrong.
The features module allows us to extract configuration data into code, we could do that anyway, and such code is what makes up most of the Community Forge custom module. We could release such modules without reference to features.
The real intention of features is to support the overwriting, upgrading and reverting of such configuration code, as you can do with views-in-code.
This kind of control is not something I wish to support.
If end users want to overwrite defaults provided in a module they are welcome to. Likewise if they want to stick with the defaults and stay on the upgrade path.
What the features module allows, and what I don't particularly care for, is the ability to switch between these two paths.
Consequently, I'm stopping talking about drupal 'features' and looking for a new word to describe modules which do glue-code and support user stories.
Currently the plan is to work with Community Tools later in the summer to determine an architecture we can build on. For example which contrib and custom modules will we use. So we're looking forward to D7 maturing a bit before that, but we're going to concentrate on our joint message.
The first thing, is requirements gathering for TT.
We need to understand the best management model for the sites but also what tools are needed.

The patterns module

greenwood's picture

Your first post above made me think of the patterns module, a brief description of which I had just glanced at by chance. Looking at the full description and the FAQ, I think that patterns and patterns_profile may be useful to you. At present there is no version for Drupal 7, however.

The FAQ says:

"Why was the Patterns module created?

The primary goals were:

* Create the ability to define and automate the setup of small or large bits of reusable functionality and features.
* Provide the ability to mix and match and combine patterns and sub-patterns.
* Do this on new or existing sites.
* Support multiple formats that are easy to manage, non developers can use, and can reside in revision control systems.
* Make it easy to share and collaborate on patterns/features."

Patterns not ready

matslats's picture

Hi Greenwood
Yes I'm aware of the patterns module, but unfortunately it seems to have been overtaken by features. I have a feeling that patterns is a superior architecture, but without a release, a promise of a release, or mention of a D7 upgrade, we can't go down that path without the resources to see it through.
Features is well supported by Development Seed and used in Drupal Commons, and is most likely to be the way forward.

I spent quite a lot of time

pmackay's picture

I spent quite a lot of time last year trying to use Patterns to extract out config, but you dont get too far before you fall over due to lack of documentation. The formatting can get quite tricky and hard to deduce. Features definitely has the momentum.

"features" and "Features"

pmackay's picture

The kit specification defines 3 ways to create features, one of which is using the Features module. I would suggest that we would benefit from using the term "features" to describe these glue code/config modules. Whether the features are built using the Features module is another matter. The Debut spec says that using Features should be preferred as much as possible, but that is the Debut approach.

I see no reason why things like Debut, other Features and hand-crafted features couldnt all be combined, if that is really needed. But also standardising on a spec and way of building these things makes it easier for all to follow IMHO.

Call to arms

mariomaric's picture

Hi!

I posted suggestion about using Commons distribution as a foundation for the real-world community web sites: http://groups.drupal.org/node/219564

Feedback is much appreciated. :)

Sorry for cross-posting, this is just in case somebody is only following this particular thread...

Cheers.