Direction for this Group: Organize and Mobilize Churches to Improve Drupal

Events happening in the community are now at Drupal community events on www.drupal.org.
bradwade's picture

There was some talk a while back that MFer got started about finding a direction or purpose for the groups.drupal.org/churches group.

I'd like to propose a new initiative for the group: to mobilize churches that use Drupal in order to improve Drupal for churches. At the same time we would be able to contribute these improvements back to the Drupal community. g.d.o/churches could organize and server as a hub for those efforts.

Here's what I'm thinking.

Step 1 Gather Needs

Where is Drupal failing to meet the needs of Church websites? What needs to be easier to do? Two examples that come to my mind are event registration and handling donations through Ubercart. As a community we could discuss various needs and clarify what things could be done to make Church websites better.

Step 2 Decide what to do

What is desired by most? What is achievable? What can we afford? Is there someone that can lead the initiative?

Step 3 Create Specifications

We could then take the individual ideas and develop them further creating a specification that would meet the needs of the various churches that would want this functionality.

Step 4 Mobilize Churches

All churches involved would need to chip in some money. Perhaps we would do a chipin based on functionality.

Step 5 Assign Tasks/Higher

As Necessary Higher Developers, Project Managers, Graphic Designers, etc. (Of course we would always take quality volunteers, but we should be ready and happy to compensate people for their work.)

Step 6 Develop, Testing, Etc.

My goal would be to create high quality, “finished” products that we could contribute back to the community. (Not a project that fits one clients needs but then languishes in “beta” for months on end.)

Comments

Good thinking

matt2000's picture

I think this is a great goal, if a bit optimistic. I expect churches are being hit just as hard as the average person during these times, so they may hesitant to spend money on web development, especially when most churches still thing of the web as little more than an electronic brochure.

So, a big part of step 4 will be marketing; we need to convinces churches of the imperative of using Social Media/Web 2.0 technologies to connect with their congregation, and help their members connect with one another. We need to emphasize the ways in which a good web application can reduce administrative staffing needs by automating the process of collecting and updating member information & directories, managing event registration, distributing publications, etc.

For example, many moderately large churches now have a 'small groups pastor' who's primary responsibility is to connect people looking for a group with one near them, and to help new groups form. A drupal-powered directory could handle this work perfectly, with Google Maps integration to show where groups meets, and automated e-mail reminders to encourage you to actually visit one of the groups you looked up over the weekend, or notices to group leaders when they get 'hits' on their directory listing, to encourage them to send a welcome note. Now the small groups pastor can spend his time training group leaders and recommending curriculum, instead of standing in for Match.com. Or he can go start that glam metal band he always wanted to be in, and the church can redirect his already diminishing salary to orphans in Uganda.

Anyway, add me to the list of interested developers, especially if you can raise some funding. I'd like nothing more than to lock myself in a closet for a month or two and emerge with "Chrupal." I've been the lead on a similar project to develop a Drupal package for labor unions, so I'm aware of some of the choices you'll need to make and some pitfalls to avoid.

Regarding the examples in step one, CiviCRM does donor management and event registration pretty well, and it's integration with Drupal is continuously getting better, so it might be a good short term solution. In the long run, however, I would very much like to see a pure-Drupal solution for church CRM.

By the way, step 7 is launching a hosted service for churches that think 'VPS' and 'DNS' are probably slang for the latest vices in the youth group. I suspect most church secretaries would become Hindu before they figured out that they need to increase the memory limit in php.ini, let alone that that's the reason the church website is WSOD. (Only 10% of church in america have more than 1000 adult members; outside that size, I doubt churches have an IT guy on staff.)

To pull this off, I think we'll need a team something like this:

Financial Lead: Determines how & how much to pay all the people below. Determines if we need an LLC or something to protect the developers from being sued when a bug deletes all of First Baptists donation records for the past 10 years. Goes to jail when the Fundraiser discovers he's been cooking the books.

Marketing / Fundraising Lead: Organizes churches to contribute & to be the primary beneficiaries of our work. This person can identify the gatekeepers (might be pastor, might be denomination, might be elders or deacons, etc) and speak their language.

Project Lead: Defines the requirements and works with Tech lead to make sure they are implemented sensibly. This person can tell us we need Facebook integration and back it up with statistics on the number of church goers who regularly use Facebook.

Tech Lead: Manages a code repository and coordinates other developers to make sure they are duplicating effort or breaking each other's work. Makes sure developers work is abstracted enough that it can easily be contributed back to the larger Drupal community and be useful. This person can talk intelligently about the trade-offs between using taxonomies and CCK multi-select fields. Can identify when to adapt existing modules and when to write news ones.

Developers: write code. Can hook_form_alter(). can hook_nodeapi(). Can theme_function_i_just_wrote().

Drupal Liason: Works on the Drupal 7 issue queue to make sure that the eventual transition is as painless as possible, and benefits our project as much as possible. Knows and cares about database schema minutia, RDF, and API signatures. Can argue convincingly why FCKeditor should be in Core.

QA Lead: Does usability testing with church staff and tells Tech Lead when things are broken. Can translate, "I clicked the thing and it didn't work" into "The user didn't realize that he needed to click the 'submit' button after uploading a new imagefield file." Can tell the difference between a user ignorant of interfaces and a user interface ignorant of users.

Infrastructure Lead: Makes sure churches have suitable hosting for running this stuff when we're done, and/or designs a system for a hosted service. Knows why MySQL 5 is important and where to set php runtime configurations. Can separate the sheep form the goats among hosting companies. Can implement redundant back-up systems. Can acquire and install SSL certificates. Can apt-get update; apt-get -u upgrade.

Migration Lead: Oversees migration of churches existing drupal or non-drupal websites & databases to our nifty new stuff. Knows how to clean up HTML generated by Microsoft Word. Knows how to get data from Access or Excel into Drupal nodes and CiviCRM records.

Themers: Migrate existing church web design to a Drupal theme, or explain to them why it sucks so bad and give them something better. Knows the difference between $page, $node->type=='page', and page.tpl.php. Knows how to say, 'your site looks like crap' with tact.

Training/Support Lead: Makes sure churches can & do actually use this stuff. Doesn't mind explaining the same thing three times. Knows how to use GoToMeeting or some equivalent.

Support Technicians: Answers questions via a ticketing system, like "How do I change the service times that are on the front page?" or "How do I remove all the forum posts by the Junior High pastor that just got arrested?"

Obviously some of these roles might be filled by the same person. I think this project could be executed just fine with 3 or 4 committed people; but if funding is short, it might take a lot more semi-committed people.

It might also be good to organize a consulting team to help church integrate their offline activities with their new Web 2.0 presence. E.g., it's one thing to make it super easy to upload MP3 to the website, but who's going to help Father James record his sermon to MP3 format in the first place, when he still does his sermon notes by typewriter?

Best,

Matt
Ninjitsu Web Development

Drupal.org user profile
Portfolio: http://www.NinjitsuHosting.com/portfolio
Drupal Micro-blogging: http://twitter.com/matt2000

Great stuff - but not quite what I had in mind

bradwade's picture

I was thinking of something much smaller scale, much more specific, focused and more decentralized than you are imagining: Just find one piece of functionality that we could improve in Drupal to make it better for churches. Then get several churches on board to support the development/solution for that issue. One step at at time.

BTW - I'm on my way home from DrupalCon DC. We've had several church Drupal sessions, BOFs, lunches, discussing these issues and more. I (and the others) will have to report back more of the ideas and initiatives that we came up with there.

-Brad

It's easier to sell bigger

matt2000's picture

It's easier to sell bigger dreams. :-)

For one, a comprehensive package has a much larger market.

Make 'one piece of Drupal functionality' and you can sell it to 'churches with Drupal websites without in-house technologists who want to do more online.'

This errs on the side of benefiting the Drupal community more than the few churches included in the above set.

(Maybe I'm wrong, but my impression is that many churches currently running Drupal have a marketing director or communications pastor or a consultant on retainer who knows Drupal, and knows how to build or subcontract the features the church might want. Why should they contribute money to a decentralized collective of people on some internet forum?)

On the other hand, a 'comprehensive web solution based on drupal' can be sold to 'churches with or without a website who want to do more online.' We may have doubled the size of our project, but we've increased our target audience tenfold.

This focuses on benefiting churches, although the individual components that make up that solution can still benefit the larger drupal community, especially with a tech lead who has an understanding of how to create specific features from generic components.

I'll look forward to hearing the results of the Drupalcon mind meld. I was disappointted to not be able to make this one.

Best,

Matt

Drupal.org user profile
Portfolio: http://www.NinjitsuWeb.com
Drupal Micro-blogging: http://twitter.com/matt2000

It is typically better to

dougm's picture

It is typically better to look at the bigger problem first and then scale back if needed to actually get something done. I see several different projects being identified out of the current discussion.

  • A need for a simpler configuration/management interfaces
  • An install profile or pre-packaged, church related configuration
  • Automated install of modules (and perhaps automated upgrades?)

Ignoring ease of use considerations for now, what major pieces of functionality are missing in the current selection of modules that would be needed for most church websites? The same types of features would likely help other organizations as well.

Doug

Excellent ideas

rkdesantos's picture

You can count me in on this. While I am a programmer, my Drupal knowledge is still short of what it needs to be to do serious development, but I can probably help with areas such as Infrastructure/Support/Migration.

@Matt2000: Well done analysis by the way.

I'd also note that some requirements will vary by denomination. Catholic parishes will have different needs and financial guidelines than say Baptist or Mormon churches.

--
-Rob de Santos
Web: http://www.afana.com
E-mail: rdesantos@afana.com

Denominations

matt2000's picture

That inspires another thought: Selling this at the denominational or diocesian level would potentially be much easier to support financially.

We could approach the denomination with: "You contribute $xx,xxx to development, and you get an awesome site for the denominations, and as many of your churches that want to can get equally awesome sites hosted for the low, low price of $xx per month, AND the sites can easily share news feeds with one another, and all member information collected on the church sites can get automatically funneled back to the denomination for it's database."

So, is there anyone in this group with connections to influencers at a large denomination?

Other, similar efforts

dougm's picture

The Web Empowered Church has a reasonable package built around Typo3.
I think Drupal could support a better facility that is easier to manage.
The associated book of the same title has some good ideas for what
a church should and shouldn't do on a website.

What I've seen at our church is that the web maintainer doesn't know much
about websites, just how to push HTML that comes from FrontPage or similar
app. Once setup, Drupal is actually easier to use, but getting it designed and
configured still takes someone knowledgable. That leads to a one
equirement of being relatively simple to setup.

I also would like to see a good base set of modules specified to make it
easier for churches with very small budgets to be able to figure out what
they will need.

The Web Empowered Church is at http://webempoweredchurch.com/

DougM

Starter Needs

struesda's picture

There seem to be two main categories of needs bubbling up here.
1. A base turnkey Drupal installation that would help to showcase what Drupal can do for a church website. This would not be the final product for each church, but it would remove the intimidation factor and help get church people to look into it more. (this seems to the point of WEC). If the typical HTML publisher type webmaster could install this, and be able to start playing with it easily, then they would be much more likely to see the Drupal potential and want to put in the time to use it.

  1. An infrastructure to do the things that matt2000 mentioned. To take this base installation, and take it from the marketing stage through implementation and innovation.

But without #1, #2 will have nothing to get off the ground with.

So - towards #1 - the basic needs for a church would be:
- brochure pages
- contact form (w/captcha)
- event calendar
- audio/video resources (w/podcast)
- custom, simplified admin interface (the stock one is way too intimidating to showcase - IMO)

Additional stuff that may not be too hard to put in:
- announcements
- newsletter
- groups (simple group list using OG - like gandg mentioned in the DrupalCon session)
- webforms

If there could be a install profile that had all of these things working together, and working WELL, and looking GOOD - then we could proceed with marketing such a thing.

Install Profile

sdudenhofer's picture

The issue with Install profiles is the amount of time it takes to truly build one. You have to manually export the files out of a current drupal install and paste it in the text.

Here is the video of the presentation:

http://www.archive.org/details/DrupalconDc2009-InstallerProfiles

I am curious is a PHP file could be created to basically run a wget on a server to download a packaged install then runs the basic drupal install.php.

Maybe have a drop down list of drupal installs to grab and modules/themes and then this script grabs them and untars them in the correct location.

Not sure really if there are security limitations to this. But I suspect as long as we aren't adding any custom modules security wouldn't be as big of a deal.

Freelancer

Twitter sdudenhofer
seth@osjournal.net

install profiles

matt2000's picture

My experience with Installation profiles has also been less than satisfying. For the extra work involved, they don't provide enough advantages over the simplest solution (database dump) and for about the same amount of work or less, you can get a lot more usefulness from patterns. ( http://drupal.org/project/patterns )

Also, someone commented about the need for a simplified admin UI, and I must say 'Amen!' I wrote two or three tiny modules for the union system I mentioned just to hide some of the more arcane controls from the end user. (e.g., the permissions pages. IMO, a non-technical user is far more likely to open a huge security hole than to get anything useful from this. We just pre-set up three or four roles and I think that's enough control for the average end user.)

-Matt

Drupal.org user profile
Portfolio: http://www.NinjitsuWeb.com
Drupal Micro-blogging: http://twitter.com/matt2000

Profiles/patterns/???

struesda's picture

I agree, creating an maintaining a profile may be more effort than beneficial - and maybe patterns would be a better way to do it (I attended the profiles DrupalCon session - but I still need to watch the Patterns one).

What I did like about profiles was the new user experience - they have ONE radio button to select at install time - and they end up with a site with the necessary modules installed, themes installed, configuration done, and sample data loaded and ready to show off and tweak from there.

Support would be simplified because it would be very easy to install the exact same site as they are working with and be seeing exactly what they are.

It would also have the potential to save a lot of time in setting up a church site if 50% if the effort to set up the common stuff could be done for you - and you only had to do the other 50% (delete some modules, add some, configure, theme, etc).

So has anyone worked with patterns enough to know whether it can give this same, one button user experience?

You're skipping the step of

matt2000's picture

You're skipping the step of identifying and downloading the correct version of each module on which the profile depends; of course patterns doesn't save you that step either, and I've already written a script to let a profile download and unpack it's modules from d.o , assuming sufficient permissions.

Patterns assumes that you have Drupal already installed and running, but has the benefit that they can be used on pre-existing sites, and can be nested. (E.g, we can have the 'Church' pattern and then sub-patterns for 'small groups directory' and 'conference registration tools', etc. You pick just the ones you want, when you actually need it, without overwhelming the user on day one with a huge admin interface.'

IMO, because Durpal can be customized & broken in so many ways, a hosted solution is the only way to truly simplify support.

Also, time spent building/maintaining a profile or pattern is time better spent building new features. And for a business model, the profiles/distributions approach is more rewarding to training/support folks than to developers, which is exactly why Drupal sucks at it.

Anyway, profiles vs patterns, hosted vs download, are all secondary issues that the team can solve once the team is formed. There's a reason I listed the money people first. Since I'm assuming most developers are like me and need to work to pay the bills, and have plenty of business clients to keep us busy, so we won't get anywhere until a couple people step up with 'my church/denomination can contribute $x to this project.'

Drupal.org user profile
Portfolio: http://www.NinjitsuWeb.com
Drupal Micro-blogging: http://twitter.com/matt2000

Flatten the Drupal learning wall

struesda's picture

EDIT: After rereading the introductory post on this thread - I realize it is about something slightly different than what I've been saying - more about improving Drupal for existing users.

I've been more focused on improving Drupal for new users - which is slightly different.

So perhaps this needs to be a different thread for a different group. But it is still a legitamate need. And one area to improve in would be the ability to automatically load and configure a group of modules....
----- END EDIT

I didn't realize that the download step wasn't addressed by either - argh! - that is a hole that needs to be filled.

IMO - the primary need is training and support - in the form of a drop-dead easy distribution that a newb can install and be presented with something that looks like a church site - something they know what to do with. If they had that - then the training needs would be much more reasonable - helping them extend it - rather than spending enormous amounts of time just getting them started and through the infamous drupal learning curve/brick-wall.

I agree that we do need some dedicated people/money - but I think if something like this was put together - and designed it so that it does not take much effort to maintain it - it would be the best way to start.

Regarding developing new features - some of this might be spent on refining features to make them fit better for church uses (unless you see some needed ones that are completely missing?) - but without a simple turnkey experience, way too much time will be spent in getting people through the learning curve before they can even start looking at the new features - and by that time they may be turned off to Drupal. We need to flatten that learning curve for them.

After rereading the

matt2000's picture

After rereading the introductory post on this thread - I realize it is about something slightly different than what I've been saying - more about improving Drupal for existing users. I've been more focused on improving Drupal for new users - which is slightly different.

Another reason patterns might be a better starting point than a profile -- patterns can serve both audiences.

I didn't realize that the download step wasn't addressed by either - argh! - that is a hole that needs to be filled.

Here's the code I mentioned that addresses this for D5 install profiles:

http://groups.drupal.org/node/10810

You'll see that others have taken to improving or adapting it for various situations. I never had problems with my original script for my own usage, so I never bothered to try any of the other versions.

An optimal solution, IMO, could be a combination of profiles and patterns; e.g., an install profile to walk the user through the install process and download the needed modules, and then allow them to select from a number of included patterns to run.

-Matt

Drupal.org user profile
Portfolio: http://www.NinjitsuWeb.com
Drupal Micro-blogging: http://twitter.com/matt2000

New Wiki to organize best practices

obiwan's picture

Great discussion Brad and Matt and everyone! I had hoped to discuss this more with everyone at Drupalcon but did not have a chance, but this will be a good place of course.

I agree that we need to organize and collaborate. We have started a wiki to collaborate on "best practices"

Visit and add to the wiki here...

http://groups.drupal.org/node/19972


Obi-Wan (Lee Raney)
Dallas Drupal Group

www.Christian.com


Lee Raney
Dallas Drupal Group
www.ChurchFinder.com

Move It Forward

bradwade's picture

I'm glad to see that we started to generate some discussions here.

I would propose that we end this general discussion here and break things up into more focused discussions such as some of these topics that came up at DrupalCon:

1) Church Distro/Install Profile
2) Fellowship1 and Drupal Integration
3) Ticket/Event Registration (http://groups.drupal.org/node/19770)
4) Donation (Discussion: http://groups.drupal.org/node/19893 Wiki: http://groups.drupal.org/node/19981)
5) EFT (paying by check) in Ubercart (same as donations)
6) Best ways to rework/simplify Organic Groups for church purposes.

-Brad

A pure Drupla solution

rchadwick's picture

In an earlier post matt2000 stated that: "CiviCRM does donor management and event registration pretty well, and it's integration with Drupal is continuously getting better, so it might be a good short term solution. In the long run, however, I would very much like to see a pure-Drupal solution for church CRM."

I'm new to Drupla and CiviCRM, so this question may be a little naive. Why is it important to have a pure Drupal solution rather than leveraging the power of CiviCRM and the energy already being invested in that system?

Thanks,
Ron

CiviCRM as a solution for

flickerfly's picture

CiviCRM as a solution for churches comes with disadvantages and their is varying opinion on its usability. My biggest beef is that, it uses an entirely different theming engine making it necessary to build two themes basically. They are interested in coming the direction of churches, but they have so far to go to handle the uniqueness of churches that it just doesn't seem practical.

Sorry to trigger the

matt2000's picture

Sorry to trigger the conversation and then disappear; I've been traveling the last several days.

The usability issues of CiviCRM are generally of the lesser evil kind -- there are so many options, that it can be overwhelming. Although, sometimes, it just takes way too many clicks to do something that could be much more straightforward.

The theming issue is quite so bad as flickerfly makes it out to be. Yes, if you want full control over the forms/templates, you have to use Smarty templates rather than Drupal's theme layer, but CiviCRM does function within your Drupal theme, and you can use your theme CSS to style CiviCRMs pages.

Fairly recent developments in CiviCRM could be a huge benefit to churches. The first examples that come to mind are CiviGrant (for managing a "Benevolent" Fund), CiviPledge for pledges, and Personal Contribution Pages, for accepting donations to sponsor specific individuals for a missions project, for example.

However, I still long for a pure Drupal solution, because of the duplication of effort that occurs because CiviCRM does not use Drupal's Forms API, Theme layer, database abstraction, permissioning, etc. CiviCRM is much harder to extend than Drupal. Although CiviCRM is written in object-oriented syntax, it is very bad at object-oriented concepts when compared to Drupal. I.e., it's missing inheritance in very obvious places because of the way it's various features have developed over time. The term 'spaghetti code' seems unnecessarily derogative, but...

So, IMO, from an end user perspective, CiviCRM is awesome for churches, but from a developer perspective, it leaves a lot to be desired.

Matt

Drupal.org user profile
Portfolio: http://www.NinjitsuWeb.com
Drupal Micro-blogging: http://twitter.com/matt2000

Agreeing with Brad...

obiwan's picture

Let's move forward with separate discussions on the 6 items he mentioned.

For #1, Church Distro/Install Profile, please add to the wiki here: http://groups.drupal.org/node/19972 (Thank you to those who have started adding your comments!)

@rchadwick - Your question is a good one, and yes CiviCRM is a valid option. I think some thought that since Church Management Systems (e.g., FellowshipOne, Shelby, Powerchurch, etc) already do way more that CiviCRM and most churches already use them, that CiviCRM is not necessary. But there are 3 features missing in Drupal (Donations/EFT in Ubercart and Ticket/Event registration) that if we built in drupal then would not need separate CiviCRM install just to get those features.

Brad and others...was that your understanding as well?

Does anyone want to make a case for or against using CiviCRM for #3, #4, and #5 above?

Lee


Obi-Wan (Lee Raney)
Dallas Drupal Group

www.Christian.com


Lee Raney
Dallas Drupal Group
www.ChurchFinder.com

Trouble with Civi...

avr's picture

I actually tried to use Civi for a recent project. I thought that everything would "work great" as billed.

However, my experience was less than stellar. Essentially, I found the interface/options clunky and too diverse. While it's possible to customize every little piece of Civi, things just didn't work. Also, the event registration seemed like it was going to work fine, but again I ran into issues with trying to configure/set up custom fields.

In the end, I used Ubercart and uc_nodecheckout to accomplish the registration (built on a CCK node type). After struggling with CiviCRM for a week, it took all of 4 hours with Ubercart. And...that was literally my first experience with Ubercart.

Just my experience...but I think I'll steer away from Civi in the future.

CiviCRM != Drupal

matt2000's picture

Civi is not Drupal. The concepts you know from CCK, taxonomies, theming, etc, just don't apply. You need to learn a whole new way of doing things, but once you do, you can do a lot.

Event Registration is one area where CiviCRM has had some strange blind spots. It's getting better with every version, but I have recommended Ubercart for some time as the better choice for anything but the simplest event management requirements.

Given that the Drupal community is much larger than the CiviCRM community, and "the Drupal Way" has evolved well and proven itself effective, I do agree that a solution for other Civi features (donations, contact management, bulk mailing, etc) based on Ubercart would be better in the long run.

Best,

Matt

Drupal.org user profile
Portfolio: http://www.NinjitsuWeb.com
Drupal Micro-blogging: http://twitter.com/matt2000

Drupal Churches Home

Group categories

Group notifications

This group offers an RSS feed. Or subscribe to these personalized, sitewide feeds: