Stop Reinventing the Flat Tire with Custom Software Development

News flash: most nonprofits are terrible at software development, open-sourcing is not a sustainability plan, and constantly re-inventing the wheel is a poor way to spend limited resources.
So why don’t international development projects leverage more off-the-shelf, private-sector technology solutions? After all, the private technology sector has established mechanisms for managing technical talent, sharing development costs across many users with similar needs, and maintaining and supporting technology solutions over time.
Customization Over Efficiency
One common answer is that development projects are poorly served by off-the-shelf solutions, the vast majority of which were designed to meet needs in other sectors. But even presuming that the international development sector has unique software needs, it would seem large enough to sustain a thriving market of small-to-medium-sized software vendors. There is certainly enough money being spent.
Much of the money currently being spent, however, is being diffused on staff, services, and one-off efforts. Even would-be software companies with a preference to serve common needs are inexorably pulled toward focusing on the lucrative business of fulfilling idiosyncratic project needs on a services basis, rather than packaging and selling an off-the-shelf product.
When one project will pay $100,000 for something that is customized to their every whim, for example, it is difficult to focus instead on a product that sells for $1,000 and might meet the needs of hundreds of projects. Particularly in the early stages of a technology business, it is very difficult to resist the $100,000 in favor of the $1,000. The financial incentives are just too great.
For their part, implementing project teams often seem to place a high value on complete control, on the ability to fully customize a technology solution. While it’s not entirely clear whether these teams fully realize the true cost to build, maintain, and support high-quality software (even open-source), they often operate with large budgets very conservatively set at a much earlier proposal stage; in some sense, by the time of implementation, cost is not really a factor – budget is.
Conditional on being able to secure donor funding, in fact, larger budgets and staffs might be strictly preferred to smaller budgets and staffs. This phenomenon that more-expensive can be preferred to less-expensive is one you often see in the public and nonprofit sectors where “other people’s money” is being spent. You see it far less in the private sector, at least when market forces are operating well.
The Role of Donors
This brings us to what seems to be an important factor: donors. Anybody who works in development will readily admit (and probably bemoan) the fact that donor funding dynamics drive incentives all through the development sector. Though it’s less widely recognized, many working on the donor side do try mightily to combat the unintended and undesirable incentives that result from their funding. But in this case of what appears as a preference for staff and services over off-the-shelf software – where hundreds of projects seem to very expensively re-invent the wheel – are the incentives strictly unintended?
Donor egos or fundraising incentives could lead them to focus on bleeding-edge innovation, quick pilots, and splashy conferences over more mundane investment in technology solutions that efficiently meet project needs. They may also have an implicit (sometimes explicit!) bias against the private sector: given the choice between spending $1,000 on a private-sector technology solution or $10,000 on a custom- or nonprofit-built solution, they may actually prefer the latter option. And they may truly believe that by spending more money and focusing it on a nonprofit or open-source solution, they are acting in the public interest.
But by now, donors should be figuring out that publishing a bunch of code that kind of works most of the time as one of 21+ million GitHub repositories is no guarantee that it will be maintained, used, or even looked at ever again. In fact, the odds are very much against any of those things happening. Building – and then maintaining – high-quality software is a difficult, tedious, continuous business. Getting something started and then open-sourcing it is just wishful thinking.
Another Way
In my view, the public interest would be better served by having more development projects spend money more efficiently, by allowing a more rational, free-market dynamic to support high-quality software firms that meet the shared needs of many projects.
While individual projects would give up some degree of control in principle, the reality is that software supported by revenues from many projects would come to serve those projects considerably better than any custom-built solution ever could. Truly idiosyncratic needs might not be met as well (and is that really a bad thing?), but there is far more that is common across projects than what is distinct – and software vendors would undoubtedly release toolkits, API’s, and other avenues for project customization.
I believe the social gains would be considerable. But what do you think? Is the ICT4D marketplace is working well? Or should we have wholesale change?
Christopher Robert is founder and CEO at Dobility, Inc., which derives 95% of its revenue from SurveyCTO, an open-source-based professional product that meets the needs of many hundreds of projects.