Open source platform for non-profit: the Cure2Children experience
Introduction
At the end of 2006 I began my collaboration with Cure2Children. We had to develop the IT infrastructure, with the following requirements:
- Geographically dislocated teams: C2C operates in several countries, for example Italy, Pakistan and Kosovo
- The C2C Italian team is itself "dislocated": some users based in Florence, others in Milan, so a shared collaborative space is required
- Use of open source software: we want to share the solutions that we could develop for our projects
- User friendly environment: no power user in the organisation
- Low cost
We agreed that the best solution was an open source web platform.
Web development environment
A web application offers several advantages compared to a "local" solution.
- Accessible anytime from everywhere
- Independent from an operational system
- No software to be distributed and installed
- Wide choice of open source free software
Of course there are several disadvantages: poor user interface, cross-browser compatibility, security, speed.
In 2009 we moved from a server in Milan to a managed server with Rackspace (UK) in order to obtain the maximum flexibility to personalize the developing environment and to achieve an higher level of data and access security (datacenter access is strictly controlled and logged, hardware is monitored 24/7).
The choice of the development platform was between Java and PHP. I prefer the simplicity and the online support that comes with PHP. Besides, it's a widely used and lightweight solution, with a lot of free open source projects to choose from. The Linux-Apache-Mysql-PHP platform (LAMP) is a "de facto" standard in the open source world.
Communication infrastructure
To define the basic requirements I used my previous experience with the Italian Neuroblastoma Association and some information collected online from websites like TechSoup o IdealWare, specialising in technology for the non-profit organisations.

The first issue is external communication: a website to present our projects, events, activities, etc. The "Content Management System" (CMS) used is Drupal, that offers all the basic functionalities (online html editor, events, user management, etc) we need and can be used by users with limited knowledge of the web environment (but not from anyone without training). Drupal could be much better (lots of frustrating bugs) and I hope that future releases will offer this in the core version, with no need of external modules, functionalities like html editor, file management, image gallery and real forum. If you'd like to test some CMS without installing them, the site is Open Source CMS; if you want to compare them, go to CMS Matrix. My personal opinion is that at the moment no open source CMS (written in PHP) can be called a "real" CMS, and the level of "hype" in the reviews doesn't help to make a sound and rational choice.
This is the first version of the website, later changed to the actual one. I have installed the 5.x version, and some of the most useful modules are:
- Teaser
- FCKEditor
- Comment
- Directory
- Event
- Taxonomy Browser
- Views
I used two main taxonomies (plus a free tag system) to categorize the content: subject (what are we talking about) and type (article, file, video, gallery, etc).

To manage the image galleries, I use a specialised free OS software, Gallery2, that offers many advantages compared to the Drupal modules (better file management, better interface, multilingual).
To manage the internal staff forum I use Phorum.
To manage the newsletter, I chose PHPList, that has all the basic features we need. The clear disadvantage is a duplication of contact information.
For internal discussions and "brainstorming", I have installed the precious WordPress, a widely used blog platform, features rich and stable.
As a personal note, I would stress the crucial importance of a "content first" approach. The best template or interface in the world cannot solve the problem of having useful, interesting, updated and well written articles.
I suggest you to ask for content even before the creation of a website. Usually too much is spent (in terms of time and money) in graphic design and too less for content creation and management.
Internal communication
We use Skype, with a webcam, for direct communication. Group calls are technically possible but difficult to manage without the visual clues that we take for granted in a real meeting. As a desktop sharing software, Yugma is the most useful and stable free tool. Together with Skype, you can set up a remote presentation or seminar for free.
For our mail server IMAP interface and groupware application (central documents repository) we're using GroupOffice, a well built and useful free open source tool. It has more functionalities than just email, for example projects, bookmarks, tasks, image gallery, etc. and comes in two versions: free and commercial, with technical support.
As a project management tool, we are using a useful, specialised free software: dotProject. I was following before an interesting project, ActiveCollab, but the free, open source version has been cancelled and replaced with a commercial version, an unfair move. Again, project management is more an organisational problem than a technical one. No tool can implement in one day a good project management routine.
For donors (CRM) and finance (donations and expenses) management, I tried to find a free web application, with no success (some lacking features, others too obscure and complex). I have developed from scratch a CRM application with the help of PHPMaker, a commercial software that creates a simple web interface from a MySql database. We keep trace of any donations or expenses, donors, projects, activities and we can produce automatic reports and charts, exporting data in Excel or Word format.
Integration

Using the same development platform (LAMP), it is easier to integrate these applications and exchanging data between them. For example, a PHP web page in Drupal can read the CRM data and produce a chart with the donations per year and per month, using the fantastic graphic library JPGraph. A Drupal registered user can have a list of all his donations, we can export new emails from the CRM to the newsletter database, or import new contacts form the e-commerce database.
The road toward a real integration of different specialised free applications is still long, but first important steps have been taken since the foundation of the open source movement , and I believe that it could be the beginning of an exponential growth in modules quantity and quality, until we reach, probably, a complexity induced plateau.
Added Wed, 19/11/2008 - 19:37, last modified 24/09/2009
- Login to post comments
- Printer-friendly version









