Thursday, April 18, 2013

Giving Back to the Community

Many of us developers spend all day at the office writing code only to turn around and work on our own coding projects at home. Based on discussions with other developers, I know that I am not alone in being at a stage in my life where I have many more ideas for personal coding projects than I have time available to work on them. I suspect that this very scenario may keep many developers from giving of their time and talents within their community.

Giving back can come in several forms. A number of my friends have participated in area Give Camps, which is a sort of weekend long blitz where developers converge on a single location and knock out reasonably sized projects for local organizations. Another way that many give back is to give presentations at local user group meetings that are open to the public. Even if you aren't so keen on public speaking this groups often can use someone to do some of the behind the scenes work for their organization. Perhaps even better yet is to seek out an organization in your community whose cause you're passionate about. I've found that these organizations are often open to receiving development help, even when they are not publicly asking for it. Take it upon yourself to ask if they could use your services.

Not everyone may have time to meet with an organization face to face in order to serve. However, another trend that continues to be on the rise is to write open source applications and utilities. These can be of benefit both from the standpoint of an application's utility and from the standpoint of giving other developers the chance to learn from your code.

I have to give a tip of the cap to commercial software developers that have decided to generously release their legacy games and applications as freeware and/or open source software. I recently was the beneficiary of this, as I had just completed converting a JAMMA arcade cabinet to a MAME arcade cabinet, which now runs a number of arcade and console emulators on an old computer that I was no longer using. This was a great way to consolidate some of my old games into a single interface. It just so happened that I read a posting which talked about how Cinemaware had released all of its old games as freeware. Much to my delight, I found that they were so generous as to offer download links on their web sites for these classic games in many formats, including Nintendo, TurboGrafx, and Gameboy.

Chances are that I have only scratched the surface on the number of ways that developers can give back to their communities using the skills that they have honed in the workplace. If you haven't sought out such opportunities yet, make it a point to do so. I have to say that I have by and large enjoyed my experiences when programming for a cause, and I'm confident that you will to.