"Don't re-invent the wheel." That piece of advice can help software developers produce applications on time and on budget - and one of the best ways to avoid reinventing the wheel is to use software modules that have already been written.
There are literally millions of open source modules available on sites such as GitHub. A high proportion of those has been abandoned by its authors, though, and is no longer actively maintained.
That explains the rise of curated code marketplaces. These offer software modules - and even completed applications that can be customised. Source code can be bought or licensed, along with support from the original authors.
Spend Less on Code, Finish Development Projects Faster
The most obvious benefit of buying from a code marketplace is getting access to code modules for a far lower outlay than would be involved if you had to develop the code yourself.
Chupamobile cofounder Stefano Argiolas notes that some of the software offered on his code marketplace took around 1,000 hours of development time yet is offered for $500 or less.
That works out to less than 50 cents per hour - two orders of magnitude less than the rate you'd have to pay a developer to write the software. For that, he says, you get "a solid code base, reviewed and documented and with the full support of the original author of the project."
The savings may not necessarily be quite that large in practice, but they can certainly be significant. Jaime Enriquez, founder of software company Inode Entertainment, bought source code for $500 and then spent $2,000 customising the code. He says he would have spent $10,000 developing code from scratch. "It's less money, and it reduces my time to market," he says.
Binpress CEO Adam Benayoun says the benefits go far beyond getting access to low-cost code. One key purpose for starting his code marketplace, he says, was to make it easier for open source developers in particular to commercialise and monetise their software. This gives them an incentive to maintain their modules - rather than abandon them on GitHub.
Code Marketplaces Offer Continued Maintenance, Support
Another benefit for companies that buy from a code marketplace is the guarantee that the module's developer will actively maintain and support it. Before founding Binpress, Benayoun worked on many projects that used hundreds of open source libraries. He encountered support difficulties time and time again.
"Whenever there was a problem, we had to fix it ourselves," he says. "We would try to reach out to the developers, but most of the time they weren't responsive as there was no incentive to help. As a business, if you are using 10 or 20 libraries, you want someone with the expertise to maintain them for you."
Benayoun adds that licensing issues also made it far less straightforward than he would have liked when his company used code modules developed by third-parties. "We always had to make sure that the license we used (for any module) was compatible with other licenses we were using and with the goal of the project," he says. That meant talking to (and paying) a lawyer each time they used a new module to ensure that they could comply with the license.
Binpress (and other marketplaces) make the licensing issue much more straightforward. Not everything that's available on Binpress is open source, but a license is always available that is close to an open source license, Benayoun says.
Some code is available on terms that allow the licensee to sublicense it, similar to the Massachusetts Institute of Technology's MIT license. Some developers offer a support license. Most licensees chose to buy a full commercial license, sometimes with additional features to the open source offering, he says.
'Money Back Guarantee' If Support Never Comes
Like the Apple and Android app stores, Binpress takes a 30 percent cut of each transaction. Benayoun justifies this with the argument that it's far more convenient for businesses to go to a code marketplace than to deal directly with developers who may or may not be responsive and who may not be very proficient. "We check that the code is of a decent quality," he says.
Chupamobile also takes a 30 percent cut. Like Binpress, it offers refunds in certain circumstances if customers aren't happy with the code they buy. If users encounter a problem, and the author doesn't provide the necessary support, then the "14 day money-back guarantee" kicks in, Argiolas says.
For module developers, meanwhile, these marketplaces provide buyers for the software they have written, as well as CRM and license management tools to make their life easier, Benayoun says. If developers update their code, for example, Binpress emails their customers. For independent developers who devote up to 10 percent of their time to managing licenses, this is a big help, he says.
Code Marketplaces Do Their Best to Mitigate Malicious Software Risk
The obvious danger of using any code you haven't developed yourself is whether it can be trusted. There's always a risk that it could have a hidden malicious component that would be introduced into any software that incorporates the code.
Since customers are given source as opposed to binaries, they can inspect the source code themselves, Benayoun points out, adding that Binpress is working on tools that will check source code for backdoors and other vulnerabilities. "We don't provide any guarantees security-wise," he says, "but we do vet each developer and ensure that code is written to standards."
If you want to avoid reinventing the wheel, open source software available in public repositories may well be the cheapest solution. If you're looking to avoid support and licensing hassles, though, and you don't mind paying for convenience, then browsing a curated code marketplace may be a good option to help you get your applications out on time and on budget.
Paul Rubens is a technology journalist. Contact him at [email protected]