Dear Nonprofits: Software Needs Upkeep (Why we need better education about software development and professional ethics)
A friend who is president of a nonprofit came to see me last week with a problem: he doesn’t know how to maintain their mobile app. They worked hard to get a grant, and used the money to hire a web design firm to make them a mobile app. Seems like a nice idea, right? Except one problem: they don’t have ongoing funding for software updates and design changes. They had a one-time grant, and they spent it all on their first version. The first version is not bad–it works. But that’s kind of like saying “we made a version of Facebook that works years ago, so we’re done, right?” That doesn’t explain what all those employees in Mountain View are doing, working sixty-hour weeks.
Anyone who works in the software industry knows that software needs ongoing love and care. You’ll never get the functionality quite right–design has to evolve over time. And even if you do get it mostly right, there will be new releases of operating systems and new devices that break the old code. It will need to be updated.
Giving someone a first version of software and walking away is rather like selling them a horse knowing that they have no barn and no money for grooming or hay or vet bills. The upkeep is the issue, not the cost of the horse. The well-known web design firm that sold my friend a horse with no barn should be ashamed. Because they knew.
Nonprofits are particularly vulnerable when they have limited in-house technical capability. They are completely dependent on the vendor in every phase of the project. Dependent on the vendor’s honesty and forthrightness as well as the quality of the product they deliver.
This particular vendor just informed the nonprofit that they would not be able to support future software changes because “their business is going in a new direction.” Now there’s a line for you. They knew that supporting the nonprofit was a losing proposition, from a financial perspective. It’s the business equivalent of a one-night-stand: that was nice, but I don’t want to see you again.
For those of you running small organizations, please think hard about how you are going to maintain any software you buy. For those of you running web design firms, think hard about whether you are serving the best interests of your clients in the long run. I imagine the staff who sold my friend the app are thinking “we delivered what we agreed to,” and don’t see any issue. But you know better and need to hold yourselves to a higher standard.
This is not a new phenomenon. Cliff Lampe found the same thing in a study of three nonprofits. At the root of the problem is two shortcomings in education. So that more small businesses and nonprofits don’t keep making this mistake, we need education about the software development process as part of the standard high-school curriculum. There is no part of the working world that is not touched by software, and people need to know how it is created and maintained. Even if they have no intention of becoming a developer, they need to know how to be an informed software customer. Second, for the people at web design firms who keep taking advantage of customers, there seems to be a lack of adequate professional ethics education. I teach students in my Computers, Society, and Professionalism class that software engineers have a special ethical responsibility because the client may not understand the problem domain and is relying on the knowledge and honesty of the developer. More people need to get that message.
Responding to an earlier version of this post, Jill Dimond makes the excellent point that part of the problem is with funders of nonprofits. It’s more appealing to fund something new than to sustain something already funded. Funders should take a lesson from Habitat for Humanity, who make sure to give people a house that they are financially able to maintain. Most funders are acting more like reality television shows who give people a mansion they can’t afford. And then we all act surprised when the family loses the home in bankruptcy. Funders need to plan for the long-term, or else why bother at all?