My wife Teri worked for years in relief and development, and she told me that one of the open secrets of that world was that a certain amount of fudging always had to be done to bridge the gap between what donors wanted to do and what needed to be done. For instance, people liked to give money to sponsor a particular child, and to forge a relationship of some kind with that child, and to provide for that child — but of course the child’s whole community had needs that any responsible relief and development agency had to be more concerned about. So the selling point to a donor might be that a new well could provide plenty of fresh water for little Anna, but the real point would be to have a reliable source of water for Anna’s village. Still, it was always the individual, the one little girl or little boy, that set the juices of compassion flowing.
Surely this also explains this guy’s desire to teach a homeless man how to write code — an idea that has been endless mocked, though not always for the right reasons. Compassion should never be discouraged, though sometimes it needs to be redirected. For a more appropriately big picture, read this post on the Code for America blog.
What that post teaches us is that the problem for the homeless and the chronically poor is not that they don’t know how to write code themselves, but that their situation is routinely made at the very least more stressful and often materially worse by code ineptly written by others. They suffer disproportionately from automated governmental systems not only because they don’t have the education to interpret and respond to the products of bad code but also because the code that they have to deal with is often much worse than what the wealthier among us regularly encounter. It should be no surprise that a bureaucracy (perhaps necessarily) lacking in compassion generates badly-designed and badly-implemented automated systems.
So people in the software industry who want to help the poor and the homeless might think about this. What if a Google and Facebook and Twitter donated not just money but also coding expertise? What if they went to City Hall and made a deal to rewrite and re-implement the automated systems that are meant to help the poor and the homeless but in fact often make their suffering worse? Let’s not worry about teaching individual poor people to code until we can create an environment in which bad code is no longer a principal ingredient of their misery.