Some Observations on Nonprofit Software
Some thoughts on how nonprofits can best leverage existing software to meet their needs.
If we've learned nothing else in working for 10 years with environmental nonprofits, we have learned this:
Missions are serviced only by engaging constituents to action
You can't do it alone folks--you need donors, activists, influencers in high places. We focus all our efforts on helping nonprofits get more effective at engagement--that's where the biggest mission bang for the buck is. Here's another key insight that has come out of our experience in our field:
Engagement activities aren't unique to nonprofits, so the tools aren't either
Identifying prospects, communicating with them, and moving them along a path to engagement is a set of activities common to just about every organization in the world. Corporations call it sales and marketing, nonprofits call it donor management and outreach, and government calls it campaigning and constituent outreach. Underlying the different terms, the activities are very similar.
This is great news--we don't have to build it ourselves! We get to use great free and paid software that is targeted at serving other sectors, primarily corporations. We can implement our engagement strategies using tools that are already designed to do that well. When you get down to it, these tools should meet the majority of our needs, but they may be missing some functionality necessary to support nonprofit engagement practices. In these cases, we'll build those functions ourselves:
The best way to build software for nonprofits is to find tools that successfully addresses most of your needs and then add the nonprofit-specific functionality
Find the Content Management System that just needs a way to better deliver the nonprofit's message to it's different audiences. Find the Constituent Relationship Management system that just needs to beef up on individual donor support. Find the email blasting service that just needs some documentation and training help to support nonprofit users. And then fill in the gaps. It's a great strategy because:
Software targeted at a larger market than nonprofits will improve faster than software specifically for the nonprofit market
If we let someone else build the core functionality around supporting engagement activities, they will be on the hook for improving it. If their engagement tools serve a broader market than just nonprofits, there will be more revenue available to them to turn into features, functionality, and infrastructure for the tools. We ride on the coattails of an economic engine much larger than our sector. Build on top of an application that will be improving underneath your feet. This wasn't practical only a few years ago, but now it is:
Software that has open Application Programming Interfaces makes the "build-on-top" model work
Applications that focus on a core competency, and then allow you to build on top of that using Application Programming Interfaces (APIs) are the way to make this work. They enable us, at relatively low cost, to get tons of the core functionality that supports engagement. Then we can customize that 10% of very specific needs that nonprofits have. These tools will have invested huge resources in building out their APIs, making it relatively easy for us to build our small percentage of functionality on top. Customizing this 10% will be expensive, but because we're leveraging the huge investment in the API, it will be a bargain.
What about core competencies that aren't served by the general software market?
There is a market for nonprofit-specific software that serves a defined function and is accessible via robust APIs
As more nonprofits are using software that is targeted toward broader markets, there is an opportunity for nonprofit-specific software vendors to build services that can extend the functionality of software tools. An example: a fax-your-legislator service that can easily be integrated with CMS and CRM via open APIs. The key for these vendors will be to resist the urge to build a tool that also has CMS and CRM functionality. They'll never have the resources to do it all and we're best served by them focusing on the specific functions that aren't currently served.
So keep looking for similarities between what you do on a daily basis and what corporations do. Find the tools that serve those corporations in an affordable way, and can be customized for your few unique needs. Build on top of application APIs, and get more effective in your engagement. Engage more folks in more meaningful ways and bring about the change you want in the world, rather than spending time writing software.
