CiviCRM has one of the most active and friendliest communities I have come across. From initial tentative forum posts I was encouraged into engaging more actively through IRC and directly with other groups & individuals and am now happy to count many community members as friends. I recently found an article on the web that said if you post a question about CiviCRM anywhere on the web Lobo will post an answer within a few hours. It often feels like that is true.

One of the most valuable way in which the community supports me is by allowing me to bounce my ideas around and often someone is able to suggest an approach which is better than mine.

As developers for various OpenSource CRM applications, we learned a lot from CiviCRM on its scalability and ease of customization.
CiviCRM community is truly organic cultivating growth for users and developers.
We wish to continue learning with CiviCRM and to tackle future challenges with CiviCRM.

We help many not for profits implement CiviCRM through consultancy, training, configuration and custom development. Many of them come from a painful world of old Access databases, multiple spreadsheets and even paper. It's really satisfying to
help people move on with a system that's so much in tune with their own ethics of sharing and collaboration. We also 'eat our own dog food' and use Civi in-house for our client records because we love the flexibility and control it gives us.

For us it's important to share code and advice with other members of the community when we can because we know we get it back in help at other times. The community really is awesome and one of the friendliest and undaunting I've come across. We appreciate the huge value of the software to us and our clients so we try to contribute back and make it even better.

As users since 2007, we have watched CiviCRM grow right alongside of us. Our growth as an organization, our ability to serve our members and donors and our ability to support, protect and preserve the amazing system of state parks and historic sites through Georgia is directly tied to the growth of CiviCRM.

I chose to learn to use CiviCRM to learn how to help NPOs :) And because it seems to be a meeting point and a continuity of my values, my skills, and what I think we should develop for the next step of our humanity.

The CiviCRM community has been a tremendous resource for new ideas and helping us solve problems. We are excited to contribute customizations EFF makes back to core and support new features such as batch entry for offline donations or multiple payment processors on one donation form.

CiviCRM Developer Hackathon - Tired but Smiling

Submitted by Dave Greenberg on May 12, 2008 - 11:27

I'm on my way back to San Francisco after an incredibly stimulating three weeks of collaborating (and co-habitating) with fellow "Civi's". There were lots of very long days (12 - 15 hours) of brainstorming , designing, hammering out code... intermingled with cooking and eating some lovely meals together, a few cool adventures in the natural beauty of New Zealand, and some excellent meetups with members of the community "down-under".

This was our fourth "international" team gathering. In planning for it we tried to build on the things that worked best in our prior meetups - and learn from things that didn't work as well. We decided to focus tightly on a few key goals / projects - and worked hard at staying on task. (This meant resisting the gravitational pulls of email, forums, team members not with us etc.) We set a schedule for moving through our projects and decided up front that it was ok to move on to the next task without completing 100% of the current one.

The plan was to make progress in these areas:

Usability - solving some of the issues which folks have reported on the forums and in meetups

One of the big wins in the usability arena was figuring out a way to seamlessly inject sets of fields into a form without reloading the page. Over the last 6+ months, the most consistently reported "tooth grinding annoyance" has been the page reloads that happen when you're filling in many Civi forms. The offline Event Registration form is probably the worst since it reloads TWICE - once when you pick the event and again when you pick the participant role. With the new ajax-based approach - the additional (or different) fields just appear in the form without affecting any entered values. See Kurund's recent blog post for more details.

The days we spent on test automation were also super rewarding. The extension to Simpletest developed by some of the core Drupal developers turned out to be pretty easy to install and we were cranking out some simple browser tests in the first afternoon. We wrote tests that logged in, clicked links, and even created a simple contact record - and could then test the database state to make sure it matched. We committed to using test-writing as a time to evaluate and re-factor the code being tested - and clean out redundant and unused methods in our business objects. Check out Michal's recent blog for more on this.

You can preview some of the things we worked on at the Hackathon by logging in to our newly re-configured 2.1 Development Sandbox. You can...

Try the improved Quick Search widget (left column block) which now takes you directly to viewing a contact if there's an exact match. (Personally I find this to be a nice "smoothing" of my typical work-flows...)