Project of the Month, January 2011

CiviCRM

CiviCRM is a free, libre and open source software constituent relationship management solution. CiviCRM is web-based, internationalized, and designed specifically to meet the needs of the civic sector – including advocacy, non-profit, non-governmental groups as well as educational institutions, membership associations, government agencies and more. Integration with both Drupal and Joomla! open-source content management systems gives you the tools to connect, communicate and activate your supporters and constituents.

CiviCRM includes optional components for:

  • * Online fundraising and donor management
  • * Event registration and participant tracking
  • * Membership programs
  • * Personalized email blasts and newsletters
  • * Case management for clients and constituents


CiviCRM’s integration with content management systems provides a number of advantages relative to other CRM applications:

  • * Visitors to your website can carry out many activities on their own, such as renewing their memberships, signing up for events, requesting email updates, and donating money.
  • * You can share segments of your data with visitors to your website, including membership or staff rosters, chapter directories, event info and participant lists, etc.
  • * Access to website content can be controlled based on constituent properties (i.e. memberships, demographics or other attributes)

Why and how did you get started?

The project was started in the fall of 2004 and the first release (v1.0) was in March 2005. Several of us had worked together developing web-based software for online donations and bulk email targeted at U.S. non-profits. The software was NOT open source and didn’t provide a consolidated view of constituents. We came to the conclusion that there was a need for an open source CRM solution built from the ground up to serve not for profit organizations was desperately needed. Existing CRM solutions were modeled on sales force automation requirements and weren’t easily adapted to the needs of the civic sector.

Who is the software’s intended audience?

Civic sector organizations around the globe — including advocacy, non-profit, non-governmental groups as well as educational institutions, membership associations, government agencies and more. Political campaigns have also started using this software a lot more in the past few years.

What are a couple of notable examples of how people are using your software?

There are thousands of fantastic organizations using CiviCRM to support their missions. Some examples:

  • * Concern Worldwide used CiviCRM to raise several million dollars for Haiti earthquake relief.
  • * The Wikimedia Foundation uses CiviCRM to manage Wikipedia’s fund-raising campaigns.
  • * The International Mountain Biking Association uses CiviCRM to provide membership signup and renewal as well as online event registration for national summits and lots of regional conferences and meetups.
  • * Physician Health Program-British Columbia uses CiviCRM’s case management component to manage their physician cases.
  • * The New York State Senate uses CiviCRM to manage constituent cases (complaints, requests and feedback on legislation and other issues)
  • * Will B, a senator from MA used the software to successfully win reelection.

What are the system requirements for your software, and what do people need to know about getting it set up and running?

CiviCRM is a web-based solution that runs on your own web server, or on a server at your hosting provider. Installs on local machines should consider using the XAMPP/WAMP stacks which almost painlessly install Apache/PHP/MySQL.

  • * CiviCRM is resource-intensive. We encourage users to consider Virtual Private Servers (VPS) OR (semi) dedicated hosting OR shared hosting from a host with experience hosting CiviCRM. Please review our Hosting provider information page for hosting options.
  • * Apache 2.0+
  • * PHP 5.2.1+ (PHP 5.3 is supported starting with CiviCRM 3.2)
  • * MySQL 5.0.x+ with InnoDB support
  • * Drupal 6.x / Joomla 1.5.x
  • * Server cronjobs
  • * 128mb PHP memory limit recommended
  • * Multi-lingual features of CiviCRM require SUPER privileges in MySQL 5.0.x (to allow the use of TRIGGERS)

What gave you an indication that your project was becoming successful?

We’ve experienced a number of different “success indicators” as the project has grown, including:

  • * Growth of membership and active participation in our community forums (currently up to 12k+ members and more than 70K forum posts).
  • * Development of an ecosystem of consultants and hosting providers offering CiviCRM services (professional services listing at: http://civicrm.org/professional).
  • * Independent study of the non-profit “data ecosytem” by NTEN:
  • + Highest adoption rate for orgs up to $500K
  • + User satisfaction rating of A or A- in all categories
  • + 97% of all CiviCRM users would highly recommend the system
  • + CiviCRM ranked in the top ten (3.57/5.0) in political campaign systems (PDF report)
  • + In most cases we rank as good or better than the large proprietary solutions: Salesforce, Convio, Blackbaud.
  • * … and of course increasing numbers of downloads from SourceForge.

What has been your biggest surprise?

The need and demand for open source tools in the sector. The rapid adoption rate across organizations of all sizes.

What has been your biggest challenge?

  • * Dealing with a large admin/user base and attempting to make all things configurable via the UI.
  • * Attracting and growing a developer base from within the sector

Why do you think your project has been so well received?

We are providing a powerful set of tools which meet the real needs of organizations / users. Most of the alternative solutions are proprietary and many are quite expensive. We have devoted a lot of time and resources to communicating with the folks who use the software and responding to suggestions, “better ideas”, bug reports etc.

What advice would you give to a project that’s just starting out?

Release early and often and set up effective channel(s) for communicating with end-users, developers and integrators.

Where do you see your project going?

So far the project has relied on foundation support (thanks to OSI, Yellow Dog Foundation and Chintu Gudiya Foundation), large consulting contracts (thanx Physician Health Network, US PIRG, Quest Scholars, Alpha International) and our training program to bootstrap and get the project to its current state. In order to remain sustainable in the coming years, we need to transition to becoming a fully community funded and supported project. We have begun this process by launching a series of crowd-sourced funding campaigns we call “Make it Happen”. You can check out (and contribute to) the projects currently seeking sponsorships here: http://civicrm.org/mih

What’s on your project wish list?

  • * Making the product simpler and easier to use
  • * Better workflow and usability
  • * Bigger developer and consulting ecosystem

What are you most proud of?

  • * Proud of our ranking vis-a-vis the commercial players in the various surveys
  • * Proud of our user base
  • * Proud of the fact that we have frequent releases that reduce our users pain points and move the project forward
  • * Proud of how our community is stepping up and helping the project become strong and sustainable in the near future

If you could change something about the project, what would it be?

  • * More focus on usability at an earlier stage of the project life cycle
  • * Better structuring of the code with a solid API layer

How do you coordinate the project?

  • * All development tasks are managed using our issue tracker
  • * We have a suite of unit tests (using the phpUnit framework), and user interface tests (using Selenium). Both suites are run automatically on a regular basis and monitored for regression issues. We are working hard to engage developers and integrators in the community to help improve test coverage.

How many hours a month do you and/or your team devote to the project?

There are 12 full time “core team members” working on the project.

What is your development environment like?

  • * Most of us are on Ubuntu or MacOSX
  • * PHP5.x/MySQL 5.1.x/Apache

Milestones:

Version / Date Milestone
March 2005 First release
August 2005 (v1.3) Contribution component added
January 2007 (v1.7) Events component added
May 2007 (v1.9) Bulk email
January 2009 (v2.2) Case management and reporting framework
August 2009 (v3.0) User interface overhaul
August 2010 (v3.2) Campaign tools
Next release (3.4) Will include support for workflows, and provide compatibility with the new versions of Drupal (7.0) and Joomla! (1.6)

How can others contribute?

  • * Best place to coordinate is on our forums or IRC channels
  • * Basic premise of “scratch your own itch” and contribute code
  • * For non-developers, we encourage them to improve and extend the documentation and help others on the forums

More projects of the month

Project name: CiviCRM

Date founded: March 2005

Project page: http://civicrm.org

Project Leaders


Donald Lobo

Donald Lobo

Occupation:Chief software architect
Location: San Francisco, USA
Education:BS Computer Science, MS Computer Science


Michal Mach

Michal Mach

Occupation:Developer, localization and quality assurance guru
Location: Warsaw, Poland
Education:Master of Arts in Economics, Warsaw School of Economics



Dave Greenberg

Dave Greenberg

Occupation:Project manager

Education: BA, MSW
Location: San Francisco, USA



Piotr Szotkowski

Piotr Szotkowski

Occupation: Developer, localization guru
Education:PhD Telecommunications, Warsaw University of Technology
Location: Warsaw, Poland


Kurund Jalmi

Kurund Jalmi

Occupation: Development team lead
Education:Bachelor of Engineering in Computer Science from Goa Engineering College, Goa University
Location: Mumbai, India


Deepak Srivastava

Deepak Srivastava

Occupation: Development team lead
Education:Bachelor of Engineering in Information Technology from Mumbai University
Location: Mumbai, India


Yashodha Chaku

Yashodha Chaku

Occupation: Development team lead
Education:Bachelor of Engineering in Computer Science from Cummins College, Pune University
Location: Mumbai, India


Kiran Jagtap

Kiran Jagtap

Occupation: Development team lead
Education:Bachelor of Engineering in Information Technology from Sinhgad College of Engineering, Pune University
Location: Mumbai, India

Why did you place the project on SourceForge.net?

To simplify the download process and make it easier for folks to download using SF mirrors.

How has SourceForge.net helped your project succeed?

Better, faster downloads; the ability to have multiple versions of the software on the site; and the ability to have download stats.

What is the number one benefit of using SourceForge.net?

A more streamlined download process.