by Zach Hendershot - Mar 24

Drupal and CiviCRM, the leading open source content management system and constituent relationship management system, can be a powerful combination to help your organization connect to, empower, and organize your constituents. We have a lot of experience with integrating Drupal and CiviCRM and have learned a lot about the benefits and hurdles you’ll encounter when choosing such a solution.
As Part Two of our three-part Drupal and CiviCRM blog series, I want to give you a picture of the CiviCRM and Drupal landscape from the nuts and bolts side of things. T.J. did a review of a participant's experience, and Brian followed up with a screencast advocating improved usability for participants. Now we’ll discuss what has made these products a popular choice for nonprofits, what factors have potentially slowed adoption, and how the projects are proactively moving forward.
As with any software solution, you will never find anything that works 100% out of the box. The same is true for CMS and CRM systems such as Drupal and CiviCRM. Therefore, a large part of your decision-making process should be spent on what your integration experience is going to be when attempting to use it and extending it the way you want. In this light, let’s take a look at the top advantages and disadvantages of a Drupal and CiviCRM solution from a software developer's perspective.
Advantage #1: Free is hard to beat
Both Drupal and CiviCRM are open source and freely available. Thus, a fully integrated solution within the budget constraints of many nonprofits is attainable. There certainly are integration costs, setup costs, custom development costs, and maintenance costs to deal with. However, proactive organizations who can harness freely available resources choose to tackle a lot of the setup themselves. If you compare the features available in a Drupal and CiviCRM solution to some of the more popular commercial options like Blackbaud’s The Raiser’s Edge, free definitely gets hard to beat in the long run.
Advantage #2: Out of the box and serving your organization
A Drupal and CiviCRM environment provide a significant amount of top-of-the-line functionality out of the box, especially for nonprofits. If you’re working from a feature checklist, you’ve got a lot of box-checking in your future. The minute you get the installation and setup completed, your organization can start utilizing features like a centralized donor database, multiple contribution pages, and automatic report generation. Of course, you know that the initial setup is just the first step in a successful ongoing solution.
We’ve worked hand-in-hand with organizations to take the next step of integration, bringing custom tools and processes into new CiviCRM systems and setting up channels of communication between Drupal and CiviCRM. Regardless of what your organization’s mission is, there are bound to be built-in capabilities to help meet your needs. Your organization will be on the path of saving time and engaging your community just the way you need.
Advantage #3: Grow your organization, then grow your software
For nonprofits, an important attribute of any software package is how well it can expand and grow alongside the organization. You don’t want to invest time, money and resources in software that you’ll need to scrap in a year because you’ve outgrown it or it’s gone in a different direction with its feature set. Thankfully, a Drupal and CiviCRM installation is designed from the beginning to be highly extensible through a concept called modules. Modules allow easy integration points for new functionality. As your needs change or new needs arise, both software packages can be modified to accommodate those changes.
For example, say you’ve got a new payment processor that handles your online donations. This change can be easily accomplished. As another example, you already have another software package in your organization that MUST integrate cleanly with your new CiviCRM system. The openness of the system makes this integration possible.
There are many more advantages, to be sure, but let's spend a few moments review important disadvantages as well.
Disadvantage #1: Sometimes the going isn’t easy
The installation and setup of Drupal and CiviCRM aren’t as user-friendly as we’d like. Because of the potentially large discrepancy between the needs of your organization and what features come out of the box, the configuration and initial setup could be a lengthy engagement process to get everything working within the paradigms of your organization.We are excited about exploring ways of simplifying the setup and installation code to make it more extensible.
Just as Brian proposed just one of many usability improvements to come, we'd like to make the experience of getting up and running fun and uneventful. We hope what we come up with will open opportunities to deliver a more cohesive and customized solution for a larger variety of organizations. This is just one of the ways we are evaluating how we can better serve our clients and the Drupal and CiviCRM communities with work in this area of the software.
Disadvantage #2: The development mine field can be hazardous
We develop under the curtains of CiviCRM and Drupal frequently, and we know first hand the difficulty of developing robust custom solutions for our clients within the frameworks. We know that the integration points between custom code and internal functionality are sometimes non existent or inconsistent. Sometimes modifying core CiviCRM code is required to achieve a certain bit of functionality. These workarounds lead to the unfortunate situation where maintenance and general development become more troublesome and costly.
As is common in open source projects, inconsistent coding style and loosely coupled components slow development and cause other integration issues. We’re constantly striving to determine ways to alleviate these issues and make this situation better, as are all the other developers of Drupal and CiviCRM themselves.
Disadvantage #3: Jack of many things, master of none
Because of the vast feature set of CiviCRM and Drupal, as a package the capabilities are numerous. However, what inevitably happens in this situation is that the specific features that are important to your organization may not be fully functional, or they may not constitute the best experience for your users. What's more, the features may operate in a way that isn’t in concert with how your organization operates, or may just simply not be very usable at all.
For instance, CiviCRM comes out of the box with a variety of reports that often do not meet the complete needs of an organization that wants to measure the success of their donation campaigns at a more detailed level. Also, CiviCRM's CiviEvent component often doesn’t meet the data collection or usability needs of organizations with whom we work, requiring more definition and custom development. The new CiviReport is a big step towards remedying the former shortcoming, and we trust CiviEvent will continue to improve at its core as well.
Nonetheless, at HiDef, we strive to deliver incredibly useful products that fit your organization, so we go to great lengths to make sure that we work with you to first make sure that Drupal and CiviCRM are a good fit for your needs.
The Bottom Line
As you can see, there are many great reasons to choose a Drupal and CiviCRM solution for your organization, but there are also some things that you need to think about before implementation. What's great about the development communities behind these two platforms is that they are constantly improving both their own feature sets and bolstering communication between the projects.
Nevertheless, you need to be prepared to make sure what you end up with solves the problems you need to solve as part of your overall strategy. HiDef is here to help you every step of the way to make those decisions and guide you through the process of picking a system that gets your organization to the next level. It’s what we’re passionate about, after all.

Comments
Post new comment