Is there a better model for building certain types of software products used by the federal government? With billions of dollars* in failed information technology projects over the last decade, there certainly seems to be room for improvement.

One of the issues with products built for government workers is that commonly users who will actually work with the system do not control how money is spent. Managers who will not be using the system are wowed by great demos and flashy features. Yet many of those features are useless to the real users.

HumanGeo's logo as seen from their office

HumanGeo (@thehumangeo), based in Arlington, Virginia across the Potomac River from Washington, DC, appears to have a better model. Experts in military intelligence at HumanGeo work directly with their top notch software developers. Together they create elegant solutions to hard problems.

HumanGeo's Arlington office location

Developers are granted freedom to use powerful technologies such as:

  • d3.js for dynamic visualization creation
  • Leaflet for cross-platform (both dekstop and mobile), interactive maps
  • HBase for storing and accessing massive amounts of data that can be feed into algorithms to create actionable information

These free open source software libraries are commonly used by start ups and organizations with effective software development embedded in their culture. However, the above technologies (among many others) are rarely used in government projects. Government employees and contractors are often hamstrung by a rigid set of pre-approved technologies that cannot solve problems in effective ways.

If the only tool available to you is a hammer, everything looks like a nail.

The rigid toolset is indicative of larger organization dysfunction. When the software development process does not work, well-meaning but non-technical supervisors add more procedures and checkpoints. The organization becomes content with failing in a structured way instead of succeeding with a flexible approach to software development.

Change the Approach

HumanGeo's approach to solving problems in the intelligence space breaks down barriers between real system users and software developers. Feedback is immediate and clear. Relationships and trust are built between the experts who understand their fields and developers who understand a wide swath of technologies. Once a product solves a problem, HumanGeo's well-respected intelligence analysts influence others in their community facing that problem. HumanGeo sells their products and consulting services around effective solutions to real issues faced by users.

HumanGeo's approach is not perfect, but it is a marked departure from how many large firms in the Washington, DC region operate. Traditionally, large federal government consulting firms sell a "butts in seats" model. Get contractors in the door and let them augment staff positions. Developers have limited freedom and influence to change the status quo. They are contracted to do as they are told even if that direction is a clear path to failure.

Many of HumanGeo's developers came from other DC consulting firms who follow the butts-in-seats model; some are my former coworkers. We saw first hand how we were shipped off to a government site and put in a seat. We railed against the inefficiencies from the inside without understanding the dynamic that it was in the best interest of our employer to maintain the failing status quo.

Clint and Mike from HumanGeo

Clint and Mike, two developers at HumanGeo

Developers at HumanGeo are constantly experimenting with new technologies and sharing that knowledge among members of the team. They also reach out to the greater community through technology meetups such as Intel Analytics DC.

Government as a Platform

I asked HumanGeo's developers about Tim O'Reilly's ideas on government as a platform. They agreed having more raw data available through APIs would help private industry create new applications for citizens. In the military intelligence space there would need to be limits on access. Yet many principles of data sharing from citizen-facing agencies can make the security cleared sector more effective as well.

An interesting idea emerged from our discussion: how do you get large public datasets from the government onto platforms where innovative applications can be created? Downloading large data sets can take hours or days and then it often needs to be uploaded into another environment. Large data transfers incur a bandwidth cost that is often prohibitively expensive.

One idea is for the government to partner with cloud services such as Amazon Web Services, Red Hat OpenShift, and Rackspace Cloud to offer lower cost access to public data on platforms that developers can immediately use to do heavy data processing. With the data already on the platform data it would not require immediate transfer to become useful. It's an idea worth further exploration.

What's Next?

On Tuesday I interviewed a development team from a Washington, DC company with a platform for making informed decisions about many aspects of personal healthcare. My story about WiserTogether comes next.