Canvass and Phonebank

Introduction: The Need

Progressive Technology Project (PTP) supports grassroots community organizing groups nationwide that engage in social, economic and environmental justice efforts to empower low-income people and communities of color. These groups conduct phone banking and field canvassing as an integral part of their base-building and voter engagement strategies to engage existing and new constituents. PTP hired DharmaTech to help them build PowerBase: a customized CiviCRM for use by community organizing groups.

PowerBase helps groups manage the following data related to phonebanking and field canvassing work:

  • voter info, history, and demographics
  • reason why the phonebank or canvass is taking place
  • responses to questions asked during the phonebank or canvass
  • phonebank or canvass status
  • primary language spoken

CiviCRM and QuickBooks

About 8 weeks ago we began looking into a CiviCRM / QuickBooks integration framework. Our goal is to write a module that allows CiviCRM contributions and contact information to be written to QuickBooks. Our target version is QuickBooks 2009 Premier Non-Profit edition, since that's what we use.

At the very least, the module should be able to:

Data Mapper Pattern: A CiviCRM Architecture Proposal

Current CiviCRM architecture pitfalls

rasantiago has proposed a new CiviCRM architecture with details of the ORM layer. Torenware commented on the latter and mentioned some particular scalability issues.  Our own experience with the Active Record design pattern proposed by rasantiago is that it works well for small projects but doesn't scale well.  We believe that CiviCRM is now facing serious scaling problems in several areas, to wit:

Better Household Management with CiviCRM

The current way to track Households (HH) in CiviCRM is not easy. Over the last few weeks DharmaTech has been brainstorming how to better manage HH's and we had a chance at the CiviCRM developer camp to bounce ideas off of the core team as well as other developers in the community which was really helpful. What follows are our ideas to start the discussion.