Feb. 22, 2013 With a few keystrokes and a click, Facebook users can announce their daily news to the world. But what if a status update could include more than just a person's latest baking exploit? What if it could include the actual cupcake ingredients and an oven -- and if a user's friends could tinker with the batter, and taste and send out the treats themselves?
This online method of cooperative baking would be the kitchen equivalent of open-software development, a growing programming movement that promotes transparency, accessibility, and collaboration. If traditional software development was a secret recipe, open development would be a community cookbook.
The NCI, following the lead of the White House, NASA, and the Veteran's Association, has leapt aboard the open-development train, and recently begun transferring millions of lines of software code to a public repository called GitHub. Soon, anyone in the world will be able to easily tap into and contribute to the NCI's cancer informatics resources -- and the community will determine development priorities.
But that's not the only exciting part, says Juli Klemm, Program Director of the Open Development Initiative at the National Cancer Informatics Program (NCIP). By storing software at GitHub, the NCI is also giving people the chance to fix bugs and customize programs.
Take Microsoft Word, Klemm says, "You can't open it up and change the software. But imagine a Word where you could add new features, and then distribute the program to other people." Open development is kind of like that, she says.
"Since it's all open, everyone has access and everyone can contribute good ideas," says Warren Kibbe, a bioinformaticist at Northwestern University in Chicago. "It's a way to bring the whole community into a project."
This community effort could speed along advances in cancer treatment by letting researchers rapidly respond to new information, constantly improving clinical and molecular tools. And because these tools help doctors understand the nuances of a person's cancer, open development could help doctors fine-tune treatments, improving patient care. We're not quite there yet, Kibbe says. But within the decade, this tailored approach to cancer treatment -- "precision medicine" -- could be standard practice.
The NCI first jumped into open development nearly a decade ago with caBIG, a 2004 program launched to give cancer researchers widespread access to data, infrastructure, and tools. In 2006, Kibbe's team developed one such tool, the Patient Study Calendar, to keep track of patients' scheduling info. The PSC is a vital gadget in the clinical researcher's toolkit and the first NCI program now officially settled on GitHub servers.
The Calendar is one of about 50 projects that NCIP is shepherding over to GitHub. Klemm hopes the programs' migration will be complete sometime this summer. When the project is complete, she says, the NCI will have "opened up" -- donated, in essence -- its vast informatics resources to the entire cancer research community. "I think it's important to take assets that have been developed with taxpayer dollars and make them easily available to everyone" Klemm says.
What's more, opening up government data could also be a boon to business. GitHub is a for-profit venture (basic accounts are free, but users can add extra goodies for a monthly fee). Likewise, Trulia, a real-estate site, draws upon info from the U.S Department of Housing and Urban Development.
Though the caBIG program cemented the foundation for open-source informatics at NCI, it also revealed challenges and opportunities for improvement. One such opportunity was how to make community involvement easier. "The people we were working with were really willing to dig in and contribute code," says Kibbe, but back then, there wasn't a simple way for them to offer contributions.
Now, with the NCIP Open Development Initiative, the NCI is starting to close the loop. Developers will be able to submit suggestions, ask questions, and contribute code -- and on GitHub, every tiny tweak is open for the world to see. So, for example, if people wanted to adjust how the PSC displayed names on a calendar, says Kibbe, they could edit the software's code and send changes to GitHub -- making the new code available for everyone else to use, too.
Like Facebook, GitHub lets users show what's happening in real-time. "And that's really what you're trying to expose in open-software development," Kibbe says. "Not only what you're doing today, but what you did yesterday, and what you're planning tomorrow." The Facebook analogy isn't perfect, Kibbe says, because open-software development provides more than just status updates -- it gives people the tools to change programs themselves.
Eventually, the NCI hopes to build an "ecosystem of developers" that work together to hone cancer research software tools. Teamed with the National Institutes of Health's extensive publication archives, and genomic and proteomic data banks, Kibbe says, open-source programs could revolutionize how researchers advance science -- and cancer care.
Other social bookmarking and sharing tools:
Note: If no author is given, the source is cited instead.