Nine thousand hours. That's how much time financial tech firm Pendo Systems estimates it would take to write the code for one of its calculation engines. But instead of sinking 375 days--and $500,000--into developing a proprietary code, Pendo went in the completely opposite direction: It downloaded an open-source software engine coded entirely by volunteers. "By leveraging tools that others have built for free, we can pull a power drill out of our bag at the cost of a screwdriver," says Pamela Pecs Cytron, the New Jersey-based company's founder and CEO.
Pendo is hardly the only company these days pulling out the power drill. Today, nearly 80 percent of businesses are running some part of their operations on open-source software, while 66 percent say their software products are built on open-source code, according to an annual survey by consulting firm Black Duck.
When the concept of freely shared code began proliferating in the early 1990s, companies initially fretted that it might leave them vulnerable to security breaches or competitors. When those fears proved to be exaggerated, open source migrated to the mainstream. Now, "whether you're interested in neural networks or drone software, there are dozens of options," says Karl Fogel, co-founder of open-source consultancy Open Tech Strategies.
Even if open source is usually safe, companies need to understand its technical and social nuances to avoid getting burned.
Mind the fine print
Open-source code comes saddled with terms and conditions that detail how it can be modified or shared. "Licensing needs some thought up front, but it's not as intimidating as it sounds," says Joe Stein, co-founder of big-data firm Elodina. Have your dev team stick to one type, like the Apache License, to cut back on the amount of legalese you have to read.
Roll up your sleeves
"If you find an issue, don't just complain about it," says Stein. "Document it, report it, maybe suggest a fix. If your fix is accepted, you'll become a contributor." Kevin McGrail, co-founder of digital communication firm Atriceps, says chiming in results in more than just karmic return. "It makes our maintenance simpler," he says.
Show some respect
If you hit a glitch, first search forums to see if your query has already been answered. If it hasn't, and you do need to post it, ask nicely--don't demand. "These communities are made up of volunteers, so the more respectful you are, the better the response you'll get," says Christopher Schultz, CTO of medical R&D company Total Child Health.
Know the limits
When Total Child Health was looking for a rules engine for the company's pediatric diagnostic platform, Schultz--an avid open-source user--determined that the open options weren't up to snuff. "I decided they were low performance and had limited features," he says, "so we built something from scratch."
Unlocking the Code
Even tech giants are venturing into the open.
Alliance for Open Media
In September, Amazon, Google, Cisco, Microsoft, Netflix, and Intel joined forces with open-source foundation Mozilla, a partnership intended to develop next-gen video formats and related technologies for viewing ultra-high-def streaming media.
In November, Google open sourced this artificial intelligence engine, which drives speech recognition in the Google app, search in Google Photos, and the smart reply feature in Gmail.
In December, notoriously guarded Apple open sourced its Swift programming language, which can now run on competing devices. Companies like Lyft have used it for their apps.
In January, Microsoft published the code for ChakraCore, a central piece of its Edge web browser, on the open-source site GitHub. While that's not as expansive as open sourcing the entire browser language, Microsoft expects coders will be able to incorporate the code into everything from games to internet-of-things devices.
How your company can open source its software
If you want to unleash a volunteer army on your own code to make it less buggy, it might be time to open up. But "open sourcing involves a lot more than taking the code and dumping it on the internet," says Tobias McNulty, co-founder and CEO of Caktus Group, a Durham, North Carolina-based company that has open sourced several of its projects. Before sharing your company's code, consider McNulty's prelaunch recommendations.
1. Spend time on documentation
Writing an "Install" or "Read Me" file--a text file that comes with software code and includes things like installation instructions and a list of known bugs--is an instant signal to volunteers that you're serious about their involvement. "We invest a lot of time in documentation, because that's the handrail for developers to come in and contribute," says McNulty. "Making it easy for new people to come into the project is where you get the real value."
2. Run a blind test
When one of McNulty's engineers writes code, another developer on the team dives into it before it's released. If that second developer hits a bump, odds are high that volunteers will as well.
3. Map out your community's infrastructure
Building community isn't much of a time commitment, says McNulty, but it can't be an afterthought. Think things through, like how a project will be announced in forums and who will handle inbound bug reports from volunteers.