EPA and Open Source

April 22nd, 2014

In honor of Earth Day I figured I would write a quick post about how the U.S. Environmental Protection Agency uses open source software and technology. I admit it’s not perhaps the...


image

In honor of Earth Day I figured I would write a quick post about how the U.S. Environmental Protection Agency uses open source software and technology.

I admit it’s not perhaps the greatest example of open source at work. But they’re making an effort and that’s worth mentioning. The EPA is taking advantage of open source networking through the use of a Github organization and series of repositories. They’ve boldly made the decision to place their website files in a repository to allow other developers to provide improvements and help. The sad news comes out when reviewing the number of pull requests made. In the nine months the code has lived out in the open there have been exactly 0 (zero) pull-requests

Uhoh

Ok, so perhaps not the greatest example. There are other repositories in the EPA organization account. Unfortunately, the other repositories post many of the same statistics. Various repositories for projects, applications, and websites exist but none have any better stats. 

What does this mean? Should open source be neglected and not used by these government agencies? Not necessarily. The problem is not in the intent but in the execution. I’m sure many of you know how the recent healthcare.gov site also attempted to use Github to share all of their codebase. https://www.healthcare.gov/developers

Healthcare.gov Github Failure

This was a fiasco for them during this process and after only a few weeks they removed the code.  Why do these different government agencies fail? As I said before

The problem is not in the intent but in the way they carried out their plan. 

Open source is not an easy, “instant” solution, and as I’ve written about before, many will fail at open source. These government agencies falsely assume the community is waiting for opportunity to contribute code and contribute fixes. While the world is full of altruistic, well-intentioned developers it cannot be assumed they are idly sitting waiting to offer perfect little code-presents bundled up with a bug-fix bow. 

Multi-step Plan

I’m glad to see the government eager to take advantage of open source. But it must be carefully thought-out and planned and be sure it’s not seen as just a chance to get free help from developers. Care should be taken to grow and nurture a community surrounding the organization. It takes time, it takes thought, and it takes planning. Yes, it can be done. And it can be done successfully. It’s a multiple step process.

1. Recognize

The first step is to recognize the benefits of open source. This one is the easy step. Most companies and people recognize the power of open source. The EPA has recognized the power of open source. They’ve taken the first step and I commend them for it.

2. Plan

The second step is to organize a plan for how, where, and why to implement open source. What technologies, what software, and what platform should be used to share this code with the world? This step is a bit harder than the first step but again most can accomplish this step as well with very little effort. 

3. Implement

The third step is the first step which takes much greater effort and attention. This is also the step when most companies begin to fail. Simply dumping the code onto an online repository such as Github or BitBucket is not enough. This is not implementation. Implementing involves more than the code release. Implementation means marketing, advertising, and clearly defining the benefits for the community to helping. This means showing the value of the open source code to the greater good. Giving the community a reason for participating and sharing how the project benefits more than just the organization.

4. Nurture

The final step is the nurturing process. This is not the end of the process but this is the last of the steps in seeing it successfully begin to grow. Nurturing the community surrounding the code means spending time showing the value of the whole. Offering praise and feedback to those community members volunteering their time. Companies who fail to plan and implement clearly never spend the time to nurture these communities. Contributors must feel valued and see positive outcome from their involvement. 

Again, I’m excited to see open source growing in government agencies and other organizations but it needs to be done well. Companies should pay attention to more then recognizing the value. Encourage others to plan, implement and nurture their open source communities and then we’ll truly see the power of open source.