Aller directement à la fin des métadonnées
Aller au début des métadonnées
  1. Describe your organization

    CiviCRM is web-based, open source, Constituent Relationship Management (CRM) software geared toward meeting the needs of non-profit and other civic-sector organizations which is used by ~8,000 organizations.  CiviCRM is the CRM of several Google Summer of Code mentoring organizations from previous years including CERN, Creative Commons, Drupal Association, and Electronic Frontier Foundation.  Organizations using CiviCRM manage donations, mass mailings (postal and email), event registration, and membership payments of more than 100 million contacts.  

    As a non profit committed to the public good itself, CiviCRM understands that forging and growing strong relationships with constituents is about more than collecting and tracking constituent data - it is about sustaining relationships with supporters over time. To this end, CiviCRM has created a robust web-based, open source, highly customizable, CRM to meet organizations’ highest expectations right out-of-the box. Unlike proprietary software, each new release of this open source software reflects the very real needs of its users as enhancements are continually given back to the community.


    CiviCRM is localized in over 20 languages including: Chinese (Taiwan/China), Dutch, English (Australia/Canada/UK/US), French (France/Canada), German, Italian, Japanese, Russian, Spanish, and Swedish.

  2. Why is your organization applying to participate in Google Summer of Code 2014? What do you hope to gain by participating?

    Like many open source projects, CiviCRM relies heavily on a small group of people to do most of the work.  We are always looking to grow that number.  Participating in Google Summer of Code would allow us to do both further engage developers and organization site admins already using CiviCRM as mentors and co-mentors as well as introduce to students to CiviCRM development.  Our hope is also that some of the student projects will result in functionality organizations using CiviCRM want without adding as much to the workload of the existing contributors as if they developed the functionality themselves.

    We are also hoping students bring new ideas to the project and challenge the existing contributors to reevaluate assumptions and consider new approaches to solutions.
  3. Has your organization participated in past Google Summer of Codes? (yes/no)

  4. If you answered “yes” to the question above, please summarize your involvement and the successes and challenges of your participation. Please also list your pass/fail rate for each year.
  5. If your organization has not previously participated in Google Summer of Code, have you applied in the past? If so, for what year(s)?

  6. What Open Source Initiative approved license(s) does your project use?

  7. What is the URL for your Ideas list? **This is the most important part of your proposal. Please make sure we can access it and it is complete when you submit this proposal. “Placeholder” or inaccessible ideas pages will be grounds for an automatic rejection for participation in Google Summer of Code2014.**

    Google Summer of Code - 2014

  8. What is the main development mailing list for your organization?,20.0.html
  9. What is the main IRC channel for your organization?

    #civicrm on 
  10. Who will be your backup organization administrator?

    Xavier Dutoit

  11. What criteria did you use to select the mentors? Please be as specific as possible.

    All primary mentors are developers who have:
    - contributed to CiviCRM core
    - developed CiviCRM native extensions
    - CiviCRM related Drupal modules
    - CiviCRM related WordPress plugins
    - CiviCRM related Joomla components

    Co-mentors are developers or site admins from organizations using CiviCRM.
  12. What is your plan for dealing with disappearing students? Please be as specific as possible.

    Kevin Reynen will be one of CiviCRM's GSoC Organization Administrators.  He has participated in GSoC as a unofficial mentor w/ the Creative Commons module for Drupal project in 2011 and the official mentor of the Drupal Media Derivatives API project in 2012.  Both projects were completed successfully.  Kevin applied approaches to working with his GSoC students that he has used teaching web development in the classroom and online for Bradley University, Minneapolis College of Art and Design, and University of Nevada Reno.  As an Organizational Administrator, Kevin will ensure that all CiviCRM mentors will be using a similar approach to engage with their students which include:

    - Any students working on CiviCRM related projects for GSoC are connected and given each others contact information to establish a cohort
    - All students are expected to log into #civicrm on at least once a week
    - All students participating in a development focussed project will be expected to complete Civix training from Tim Otten (IS THIS OK W/ TIM?)
    - All students participating in a development of CiviCRM extensions will be given access to a repo within and expected to commit their Civix framework within 2 weeks of starting the project (IS THIS OK W/ LOBO?)
    - Students working on core improvements will be expected to fork core into their own Github repo and file a basic Pull Request within 2 weeks of starting their project
    - In addition to their mentor, students will be paired with a co-mentor from an organization using CiviCRM (Free Software Foundation, Leukaemia & Lymphoma Research, etc)
    - Students are encouraged to discuss issues with their mentor's expectations (being overwhelmed, confused, frustrated etc) with their cohort, co-mentors, or other members of the CiviCRM community.  Everyone involved in GSoC will know they can bring issues to CiviCRM's Organizational Administrators ( Kevin Reynen or xavier dutoit).  The Organizational Administrators will work with the mentor to resolve the issues and find another mentor from within the community if necessary.
    - All student work will be committed to public repository and/or deployed on public testing site
    - Weekly checkins are required via email or ~Skype (mentor and student should connect using Skype or other real time audio/video solution twice a month)
    - Students should blog about their progress monthly on
    - All students should publicize their blog post on #civicrm on and ask for feedback from the community in IRC
    - Before be given a passing Midterm evaluation, students must create a screencast of their project (in whatever state it is in) requesting community feedback beyond that of their mentor, co-mentor, and cohort.  In some cases there may not be a UI to demo at that point.  In that case, the student should present any wireframes, mock ups, diagrams, schemas, etc in a conference session style presentation explaining what they will be delivering during the second half of the term.

  13. What is your plan for dealing with disappearing mentors? Please be as specific as possible.

    To qualify as a CiviCRM mentor, the individual must be an active member of the CiviCRM community.  This should minimize the chance of a mentor just disappearing due to a lack of interest or other priorities.  If a medical or family emergency prevented the mentor from continuing their participation, students will have been paired with a co-mentor from an organization using CiviCRM.  Depending on the projects and at what point in the term the mentor disappeared, the co-mentor may be able to take over as the primary mentor.  If not, CiviCRM has a pool of potential mentors that will likely exceed the number of slots CiviCRM would be allocated and the Organization Administrators would assign another mentor.
  14. What steps will you take to encourage students to interact with your project's community before, during and after the program?

    Students will be required to use #civicrm on and blog on  In addition to their mentor, students will be working w/ staff from an organization using CiviCRM who will provide feedback on their project from a real world perspective.  Key CiviCRM contributors will be aware 
  15. Are you a new organization who has a Googler or other organization to vouch for you? If so, please list their name(s) here.

    Free Software Foundation?
    Create Commons?
  16. Are you an established or larger organization who would like to vouch for a new organization applying this year? If so, please list their name(s) here. 
  17. What will you do to encourage that your accepted students stick with the project after Google Summer of Code concludes?

    Since all projects will be paired with an organization interested in potentially using that project, the hope is that the potential for having their code used by organizations like Creative Commons, Electronic Frontier Foundation, and Free Software Foundation to further those organizations missions will motivate students to continue to support and improve their project and continue to contribute to the CiviCRM project in other ways.
  • Aucun
  1. Jan 29, 2014

    Tim Otten dit :

    Regarding the number of sites/contacts, we do have some ping-back stats. They're a bit tricky to interpret (due to the existence of demo/dev/staging sites and due to the anonymization of stats). We could argue that the Civi community has 590m contacts if we wanted to take an extreme position, but a better estimate is 70-200m contacts. I'd feel OK calling it an even 100m. Some data to support that:

    • Summing the most recent pingbacks from all unique sites that have ever pinged back, there are:
      • 100k sites, 590m contacts, 410m activities, 240m contributions
    • Summing the most recent pingbacks from all unique sites that have sent 3+ pingbacks, there are:
      • 15k sites, 210m contacts, 110m activities, 45m contributions
    • There may still be other sources of error (eg demo/test/abandoned sites), but perhaps the ratios above are representative. If so, we could project based on different assumptions of community size, eg
      • If there are 10k sites with the above ratios, then there are 140m contacts, 73m activities, 30m contributions
      • If there are 8k sites with the above ratios, then there are 112m contacts, 56m activities, 24m contributions
      • If there are 5k sites with the above ratios, then there are 70m contacts, 37m activities, 15m contributions
    • If we're trimming down the number of sites to try to eliminate demo/test/abandoned sites, then it's not clear that the ratios would be the same. Comparing the 100k and 15k stats above and thinking anecdotally, I suspect that real sites tend to have higher #contacts than demo/test/abandoned sites, so the simple linear projections are too conservative (undercounting contacts/activities/etc).
    • Note: A default installation with dummy data includes 200 contacts. If all 100k installations were only using auto-generated dummy data, it would account for 20m contacts. There are ad hoc ways for people to generate their own dummy or duplicate data, but I don't know how we could analyze that. The main take-away is that our auto-generated data does not significantly bias the results.
    • Note: This obviously excludes data from sites which don't send pingbacks (eg due to an opt-out or due to misconfigured PHP environment). Anecdotally, I believe that sites which opt-out of pingbacks tend to be bigger while sites with misconfigured PHP environments tends to be smaller sites.
    • Note: If a site does go offline or only runs for a little while, that may not be a bad thing. Many endeavors may be campaign-oriented (ie enduring for a few months or a year).

Creative Commons License
Except where otherwise noted, content on this site is licensed under a Creative Commons Attribution-Share Alike 3.0 United States Licence.