Saving the World With Software

I read an article last week, Don’t worry that your job is pointless, that tries to assure developers that although we’re not out saving babies or changing the world, that’s okay. We’ll get plenty of other opportunities to change people’s lives outside of our career – focus on those. Based on a few personal ancedotes I find myself disagreeing with this viewpoint – as developers, we make a lot of difference in the world whether we know it or not.

Random Hacks of Kindness is just one example of how software developers are saving the world

One of my favorite stories from iQmetrix is one that’s told by one of our veterans about a trip he made to a client’s site. He was showing one of our users a report that we had recently changed with the new version of our software, pointing out a new column that we had added. She was overwhelmed when she saw the new column. Because of a simple change on our end, we had saved her hours a day. Now, she can go home and see her kids when they get out of school instead of after supper.

It’s impossible to imagine the impact that our software and hardware has on the general public. One little tweak like adding a column or reducing a report’s generation time from 10 minutes to 2 minutes can make a world of difference to an end user. And it’s not that we’ve made our applications simpler or easier to use, it’s that we’ve made more time in their lives.

It goes beyond business applications too. That person who did the lighting for a console game level? You might have made a sick child’s life that much better. Did you make a simple web-based chat room? Maybe it’s being used for a teen help program. A smartphone app that sends pictures to your social network? You just helped share the first pictures of a grandaughter to some proud grandparents. Maybe you contributed to the power-management code in a unix kernel – you just enabled movements like One Laptop Per Child.

I think part of the reason why people may feel like they’re not contributing is because of the disconnect between developers and end-users. In a lot of cases, we don’t get to see the end result of our bug fix or new feature. This really is a shame, and I’d love to see more focus put on “round-trip communication” where developers can see the positive (or negative!) impact their changes have made. I think it would improve developer morale, engagement, and accountability.

So just because you sit at a desk and write code doesn’t mean you’re not contributing to the greater good. In fact, thanks to the proliferation of technology in the modern world, we’re probably among the better equipped people to change the world for the better.