BBVA API Market
You likely use open source software (OSS) daily, perhaps without realizing it. OSS is at the core of Apple’s Mac operating system (OS X), it is revolutionizing PayPal’s engineering stack, is in your car’s communication system and is currently running 22% of the world’s websites as WordPress. In fact, this article is hosted on a server running Apache, an open source project.
What is open source software?
If you are new to OSS, the nuances of what it is and what it applies to can be baffling. So, I’ll briefly sum it up as software projects built in the open by a community of developers and engineers, with most volunteering their time to the project. Projects’ scope and purpose are typically managed by one or more people.
Open source does not always mean free. OSS can carry dual-licensing where one version is open and the other is commercial, as in the case of OpenGamma Platform. Companies such as Digium support a free core application, and sell proprietary plugins, components, services and premium-grade support. Or OSS can be used to add features and functionality to existing closed/proprietary systems, in which case, customers or users would still incur the cost of the system the open source feature is running on.
OSS harnesses the power of collective development
PayPal’s VP of Business Engineering, Bill Scott, makes the argument that using OSS goes beyond merely utilizing a piece of open source software to fulfill a given need. “It is a way of working and thinking. Our adoption of open source (and releasing open source) was about changing our approach to development. Moving from roll your own solutions to building on the work of others, from being inward focused to outward focused (giving back to the community) and being able to more easily work across teams (inner sourcing)”.
Unlike proprietary software, every person that touches an OSS project has access to the entire codebase, effectively allowing her or him to experiment with its capabilities and limitations. Any of these people might discover problems with the code. And they will, as a community, submit fixes and improvements they have come up with for review and possible acceptance in future versions of the software. Subsequently any approved features and fixes will be available to all users who use that new version.
The pitfalls of using proprietary software
While closed or proprietary software is still broadly used today, some of it is being phased out in favor of OSS. This is due to the fact that proprietary software is costly to operate on a few organizational levels. Licensing can be expensive. It leaves an organization reliant on a software company for upgrades and fixes that may not be completed in a timely manner, and often uses proprietary formats and out-dated frameworks that don’t translate to other systems (vendor lock-in) and which may be difficult to learn and set up. Should a software company go out of business, it becomes very risky to maintain and costly to migrate the system.
Open source, built on common frameworks, mitigates some of these pitfalls
OSS is often free to use, shortens build time, and relies on a common understanding out of the box by using using popular, proven formats, libraries and frameworks (JSON, SQL, OAuth, APIs). Should an OSS project owner abandon the project (or take it in a new direction), any company or engineer can clone the code and create their own project.
Open Source is changing the face of IT in financial services
When we talk about using OSS in financial services—and the fact that some are switching over to (or integrating) open source rather than proprietary/enterprise solutions—the reality is that most solutions today are a mix of both.
“By 2016, the vast majority of mainstream IT organizations will leverage nontrivial elements of OSS (directly or indirectly) in mission-critical IT solutions.” — Gartner’s “Within the Enterprise, Open Source Must Coexist in a Hybrid IT Portfolio”.
Since OSS is made to be opened up, worked on and contributed to, companies will require more developers/engineers to implement and maintain the code, or develop plugins to extend the features.
Open source is changing IT governance
Some have concerns that OSS being free could circumvent a formal internal requisition and licensing process, hence no paper trail. But, the Sarbanes-Oxley Act of 2002 requires an institution to verify ownership and its right to use the software, and to document when financial or accounting software has been changed or updated.
While OSS may be free to download and use, adding more applications, connectivity and infrastructure to your existing system requires additional maintenance and security costs. On that note, being open source does not guarantee it has been tested or even supported for your application—due diligence is required in the areas of QA, security testing and implementation, software stress testing and more.
Open source is changing how firms hire
In an organization that solely uses enterprise software, you mainly rely on the company that created the software to create extensions, fix bugs, and push out updates.
In an organization that incorporates open source into its stack, your team will need to be a heavier mix of developers/engineers that can work on creating extensions/plugins and finding, testing and implementing open source solutions as needed.
Bill Scott, says OSS “allows your teams to keep their latest tech skills up to date since your stack is cutting edge.” PayPal also releases their own OSS, such as Kraken.js and Card.io. In doing so Bill sees an advantage to this in that “your work is public and advertises your engineering prowess”, which has translated into being “the best recruiting tool” for his team.
Some open source solutions you can use today
From backend technology to your public facing website, analytics and risk management, even your mobile app, OSS can be used at nearly every layer of your system.
– For when you need a blog or microsite launched in less than a day, there is WordPress, the most popular and widely used open source CMS on the planet.
– For real-time market risk management and analytics there is the OpenGamma Platform, available in two licenses: open source (free) and commercial (paid.)
– When your mobile app needs to accept credit cards, you can let them input the numbers using their camera with PayPal’s Card.io. And then it can use Allevo’s FinTP for processing financial transactions.
Open source software is already here. In addition to making industry leading tech stacks better, it is lowering total cost of ownership and is even being used as a powerful recruiting tool for established and emerging companies. Now may be the time to review your stack to see whether your organization can adopt OSS to trim costs while improving agility and fostering innovation.
In a connected world, APIs are the glue that keeps all the parts that form our day-to-day lives in place. The same way the power of glue depends on the material it is used on and the knowledge of its properties, APIs are only as useful as their documentation allows for.
App users must be aware that a button... is in fact a clickable button. Therefore, app buttons must be designed in such a way that users should feel invited to interact with the interface and actually click on it.
Groovy is a pretty interesting programming language for Java developers, as it has become a perfect complement for this general purpose syntax. As a matter of fact, Groovy introduces interesting features to get where Java cannot.