The state of CC software, for IJCCR

This report briefly covers the field of non-commercial mutual credit software, discussing the issues and challenges they collectively face in meeting the needs of the movement. The author's purpose is to draw out some themes of collective concern to a few small, under-resourced, and disparate projects which are working along very similar lines, and to encourage discussion. The intention is not to make direct comparisons but to take a higher view, with concrete examples.

Disclaimer: The author is the developer of the Drupal module and Co-founder of Community Forge

Projects under consideration here all have multiple instances active and are open source. Proprietary software for our purposes is anathema to an economy of abundance.

The term 'association' is used here to mean a distinct mutual credit exchange circle, using its own currency, and whose member balances add up to zero.

The playing field

Before getting to the issues, here is a synopsis of each of the main projects, in order of age. These projects are selected on the basis that they are open source, have multiple implementations, and support community exchange using an arbitrary measure of value.

Cyclos

Language/ platorm Full time developers Implementations Plug 'n' Play? Url
Java 4 Many No www.cyclos.org

Cyclos is the software implementation arm of the Social Trade Organisation. It is an open source, java, comprehensive accounting package used in increasingly large projects around the world. The German Tauschring network picked up Cyclos and now use it routinely, contributing back code. Many other 'one-off' projects also use it as a back end accounting package.

Comunity Exchange System (CES)

Language/ platorm Full time developers Implementations Plug 'n' Play? Url
MS asp 1 200 in one Yes www.ces.org.za

Arising from a grass-roots movement in Cape town, CES is a free web service that hosts 200 'Exchanges', each with its own currency and separate database. Some exchanges charge membership fees in the national currency, some in the currency of the exchange and some use the optional transactional levy feature. Trade is possible between exchanges.

ccLite

Language/ platorm Full time developers Implementations Plug 'n' Play? Url
PERL 1 No www.hughbarnard.org

Cclite is a Perl package for local exchange trading systems (LETS), banking and other alternative money systems. Multi-registry, multi-currency, web services based transactions and templated to give multi-lingual capabilities.

Fourth Corner

Language/ platorm Full time developers Implementations Plug 'n' Play? Url
Php <1 More or less www.fourthcornerexchange.com

Fourth Corner Exchange is a small family of LETS like groups. Their php/MySQL application was written for multiple implementations of that specific model. LETSlink UK has forked the software and done several implementations.

Drupal & Community Forge

Language/ platorm Full time developers Implementations Plug 'n' Play? Url
Drupal 1 + 1,000 35 No / Yes drupal.org/project/mutual_credit
www.communityforge.net

A Drupal module for web developers to implement a complementary currency with total flexibilty over usability, design, wireframing etc. Community Forge is a non-profit hosting Drupal implementations tailored for LETS.

oscurrency

Language/ platorm Full time developers Implementations Plug 'n' Play? Url
Inoshi 1 2 No www.opensourcecurrency.org

Developed by members of the Austin Time Exchange, this project is now under development for the Bay Area Community Exchange. While the platform, Insoshi is not well known, much attention has been given to openness, so that the system plugs in easily to the rest of the web.

Also worthy of mention is Time Banks whose membership includes a special license to use the proprietary 'Community Weaver' software.

The Issues

Supporting community implementers

Many nascent projects are opting to have paper currencies, which though archaic have some advantages
  • there are no membership requirements to trade in paper
  • no hardware, software, or digital infrastructure is needed either
  • paper appeals to the 'back to the earth' crowd
Software developers need to be pointing out the numerous benefits of online accounting:
  • instant, convenient transactions
  • better tools to analyse and manage the economy
  • Portability of local money, though intertrading
  • interoperability with paper money, through a 'cash' account
  • easier to extend credit (you can't hold a negative balance of paper)

Cc activists are trawling the net trying to work out what each software package does, how they compare, and which is best for them. The only information available to them is in the form of a few poorly maintained lists on the web with no review and no attempts at balanced comparisons.* Implementers find themselves sifting through lists including dead projects, ready rolled services, and hard-core applications and there is very little actual information from users' perspectives.

We need to building up communities of users, who support each other and handle enquiries from strangers. Note that the Tauschringen are streets ahead in this respect with a community of volunteer developers. The network is so comprehensive that joining it is just a matter of time for the few remaining German associations outside.

Encouraging good governance

It's well known that complementary currency projects have a high failure rate, and widely acknowledged that this is largely due to poor governance structures being unable to sustain an initial flurry of interest. There are various ways in which software can support governing activities.

  • identifying hoarders and long-term debtors
  • identifying people who have been inactive for a while
  • bringing to prominence the members whose trading behaviour contributes most to the health of the system
  • collecting fees from every member to support the governance process
  • helping with volunteer management and rewarding voluntary effort with 'points'
  • In 'offer' searches, bringing to the top the people with the least balance
  • keeping a checklist of tasks for the committee to review periodically

At this stage in the development of the ecosystem, associations are moving from isolated instances, into networks. Providors of software have an ideal opportunity to bundle in governance support to add value to the package. Later on the governance and the software should become separate again. A delicate balance has to be struck between encouraging good governance, providing the tools and expertise, and local autonomy.

Intertrading

One of the major barriers to achieving scale in a decentralised mutual credit economy is the fundamental inability of members of currency groups to exchange value between groups. however it is critical for the usefulness of the network that members be able to trade outside their local groups, across the network firstly with adjacent local groups

The most highly evolved solution seems to be that each scheme has a single 'intertrading' gateway account which holds the balance of all external transactions. The schemes then make a virtual transfer as user A pays into his schemes intertrading account, while user B is paid an equivalent from her intertrading account. CES offered this mechanism almost from the beginning as all its 'exchanges' lived on the same server.

This intertrading can take place perfectly well without an all the web sites being able to talk to each other. Community Forge is working with the French and Belgian SELs to set up interSEL trading even before the software is ready. Each transaction would have to be negotiated by the scheme's accountants. In order for this to happen. All the participating schemes need to agree on a standard measure of value. They might do well to learn from the Tauschringen.

This diagram shows how intertrading usually works between mutual credit clearing circles. Each contained circle is an account within the association, with the intertrading account protruding slightly. Since it is meaningless to transfer value outside the system, value is transfered instead to an intertrading account, while elsewhere an equivalent value is transferred from an intertrading account. This method means that both parties use their normal currency, no special accounts need to be created for one-off transactions, and the currency doesn't go out of circulation, like the Nepali Rupees I brought home and couldn't sell.

The Tauschring network has been working with the Cyclos team, and made a lot of progress in this area.

  • They are automating the intertrading between Cyclos instances on different servers, which is harder because there needs to be better authentication and a registry of participating schemes.
  • This mutual credit economy has balance-of-trade mechanisms designed in. Intertrading mutual credit associations must, like their members, keep the balances around zero. The equity of the intertrading account is a collective responsibility, as a poor balance-of-trade will restrict intertrading transactions from happening. The Tauschring network has a rule that no intertrading account should hold more than 10% of the scheme's activity.
  • They have also agreed on an exchange rate mechanism which factors in a time-value for the currency unit, and the local Euro minimum wage. This is the most advanced, but there do need to be more objective measures of value.
This diagram shows what happens when too many of the above payments are made with too few going in the opposite direction. The intertrading accounts bloat and cause a liquidity crisis. The solution is for the association to constrain the balancing account, just as all the other accounts have minimum and maximum limits.

This API would send a proposed transaction from one scheme to another, and carry back either an OK or an error code. There would soon be a need for transactions to be confirmed by the second party before moving from a pending state to a completed state

Feeding the Developers**

Developers are aware of all these matters but progress in the movement is very slow compared to equivalent technical endeavours. This is because there is almost zero investment in software itself, any investment is always directed at implementations, and most of the software is built by busy people in their spare time.

The movement is hardly organised enough to use its own issued money for funding (hat tip to CES), yet it needs highly professional skills to advance.

  • The users of the software don't want to pay for it, perhaps because there's a tradition of web services being free. In any case this is an attitude that needs to be changed, whether users pay directly or indirectly, it is by their paying that they have autonomy over their money.
  • The fact is that while the movement is small and distributed, pooling resources will be difficult. However there's nothing to stop philanthropic, government, or even corporate investment if the right arguments were made in the right places.
  • Business barter software makes money because it's customers are business, and it helps those businesses run better. But Communities don't monetise things in the same way; without the software they would just muddle along like they have for years. In the West there is almost no governance and hence no money for investment at the community level.
  • While altruists are willing to work for free, perhaps there's no need for funding.

Of all the software under discussion, only Cyclos is insulated from the possible demise of its primary programmer. All the others are still dependent on the altruist who initiated them, and have been unable to professionalise. No investment means no staff, no reliability, no guarantees for the future. A viable business model needs to be established for a CC software project. Communities and networks could be responsible for raising funds for building new economic tools, and they need to understand it will be the best investment they will ever make.

Closing thoughts

In the localised economy, will intertrading be the exception or the rule? The final structure of the system that is emerging is unknowable.

The bundling of offers and wants with a transaction engine is very common, as the two services complement each other like the bank and the marketplace. But functionally and practically, these are beginning to separate. The web itself functions as a very efficient marketplace where buyers and sellers can meet. Instead of building closed directories of member offers, the payment tools need to become more platform and network neutral, more accessible to more buyers and sellers, much as PayPal is now.

There is much talk about 'virtual' currencies. These may broadly fit the definition of complementary currencies, but they offer none of the benefits which we are concerned with. Some are direct proxies for hard currencies which are paid for in advance, and then spent using a plethora of widgets and enticements. The distance of virtual currencies from national currencies allows operators to introduce games and incentives which blur the value, and make it easier to spend.*** It should be possible to use virtual currency tools such as the Opensocial API to quickly build a CC ecosystem, though an appropriate context would need to be found.

One proposal on my back burner is a mutual credit bank, which would offer secure hosting of many currencies via an API. There may be a social network on which all trading takes place; instead everyone would trade through payment widgets on their own sites.

Facebook makes an obvious platform for a complementary currency, but it might be a false investment. Facebook is now almost entirely corporate-ised, and edging towards the entertainment industry. It would be naive to believe any privacy were possible there.

All the models under discussion assume so far that the currencies live on one server, in one integral database, where the same users log in and trade with each other and the governance is very clear. If the Metacurrency initiative has its way, this rather simple economic unit would become enmeshed in a complex and abstract economic web.

If implementing intertrading between schemes in a network seems complex, trading between different networks will prove to be a real challenge. For example ccLite's definition of intertrading, while logically sound, is not quite compatible with the others. Multiple and diverse networks are emerging.

The CC movement has mostly been on the margins of society having minimal impact. There must be opportunities now, with software and expertise, to engage with larger players. Entrepreneurs could be approaching the following types of organisations proposing affordable CC software solutions to the coming deflation crisis.

  • Cooperative societies have always been amenable to CCs (remember the stamps?)
  • Local energy generation companies have the perfect measure of value, basic commodity and community integration. By issuing a local currency they could ease liquidity.
  • Local food producers could pay their gardeners in money backed by the coming harvest.
  • Could credit unions and similar local-based organisations better use assets with a Cc?

Recommendations

  1. developers need to collaborate on an API to facilitate intertrading between associations, and networks of associations
  2. protocols and APIs for embeddable widgets need to be agreed and published
  3. Independent reviews should be commissioned/encouraged.
  4. Potential sources of long term funding need to be identified and courted.
  5. The value/cost of the software needs to be better communicated to the potential users.**
* http://communityforge.net/compare
** the author is a volunteer developer
***http://www.sfgate.com/cgi-bin/article.cgi?f=/c/a/2010/06/20/BUL61E1B0J.DTL

Somehow, I think that if

Somehow, I think that if these alternatives *really* worked, the principals involved would be in litigation so fast as to make their heads swim.

Great write up. Your bullet

Great write up.
Your bullet point lists on supporting community, governance and recommendations are gold!

Such a relief to hear someone else say what my gut has been telling me about all the blahblah surrounding gaming and social currency. I keep feeling like maybe I'm missing something obvious, but my gut feeling is it's associated with fluff so probably not that relevant.

I'm not sure if it fits in your list, but I was thinking Ripple might be worth a mention if it fits your criteria. the idea of allowing individuals to set account limits with each other seems like a potentially groundbreaking concept.

Hi Matthew, it's a very fine

Hi Matthew,

it's a very fine conclusion of Cc-Software projects and initiative states with focus on intertrading.
The most thing i like is making cc like paypal.
Actually, Cyclos develops in this direction with the upcoming 4.x version (end year).
They really develop it more and more like a dedicated transaction server running schemes in the background, while front ends can run anywhere. Cool thing. Also more Cc-related algorithms will be contained.
So i also share the idea of making marketplace and transaction more independent.
At least, when i can install a plugin for cc-payment in webshops, where's the problem then?

Intertading make it also needed to share marketplaces. As far i've seen www.ces.org.za is very interchangeable in each direction as long running on one server.

General problem you speak about is diversity at Ccs word wide. I think, this is an issue not to try to unify, but to standardize. Meaning making clear interfaces between systems. And thus again is much communictin work before implementing something. So, if YOUR plattform can cope with 10 other scheme definition from different softwareplattforms, that really cool in my eyes.

Matthews, well done & i like it!

Post new comment

The content of this field is kept private and will not be shown publicly.
  • Web page addresses and e-mail addresses turn into links automatically.
  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <img> <blockquote> <div>
  • Lines and paragraphs break automatically.

More information about formatting options

CAPTCHA
This question is for testing whether you are a human visitor and to prevent automated spam submissions.
Image CAPTCHA
Enter the characters shown in the image.
Refresh Type the characters you see in this picture.
Type the characters you see in the picture; if you can't read them, submit the form and a new image will be generated. Not case sensitive.  Switch to audio verification.