What is open source and why should you care?
How does the open source software movement affect the call center?
Even if you’re not a developer, you might have heard about the open source software development movement. Even as a non-technical gal, I’ve been fascinated by the success of the movement and its proponents. For those of you like me who aren’t software developers, here’s the Wikipedia definition: a broad-reaching movement of individuals who support the use of open-source licenses for some or all software. Open source software is made available for anybody to use or modify, as its source code is made available. Open source software promotes learning and understanding through the dissemination of understanding.
A good way to look at this aspect of software development is to consider two access points: the front end and the back end. The front end refers to the interface presented to the end user–what you see when you open up Microsoft Word or Mozilla Firefox. The back end refers to the data access layer used to code the software, something the end user typically never sees.
The proprietary philosophy
With traditional or “proprietary” software, only the software vendor owns the back end and has unique and legal access to it. The software is covered by copyright, and proprietary software vendors usually regard source code as a trade secret. The idea is that the vendor develops the software, controls its development and charges for its use. Microsoft Office is an excellent example: Microsoft created and owns all the back end code that makes Office work, and outside developers are generally not allowed to dig into the back end code and customize it to create additional functionality. Users have the right to access the software’s functions through the front end (think creating a Word document or an Excel spreadsheet), but not to access the back end to change the software’s functionality.
The benefits of the proprietary approach include tight control over look and feel; the vendors issue regular bug fixes for their paying customers; and it’s often considered the industry standard. The drawbacks include lack of ability for users to fix software bugs on their own or customize it to their own needs. Additionally, most proprietary software requires a fee for use and typically limits the number of users that can access it through licensing.
The open source philosophy
On the other hand, open source software (OSS) creators provide users with access not only to the front end but to the back end as well. Generally, OSS developers provide the source code to the general public for use and/or modification from its original design. A community-based approach, open source development is generally more collaborative, where developers change, customize and improve upon the source code and share their changes within the community. For example, Mozilla Firefox, Google Chrome and Open Office all take an OSS approach to their software, opening the back end to developers to create custom scripts to be shared with the community. The benefits of this approach include constant innovation, adaptability and the collective intelligence of the broad user community rather than a small group of developers. Additionally, OSS is usually free. The drawbacks include a lack of control over changes and an inelegance or inconsistency to the software.
This rather humble video provides a simple overview of explaining the proprietary and open source software approaches:
And this video goes into more detail on the licensing and copyright details of proprietary vs. OS software models.
Advantages and disadvantages of OSS
- Free It’s generally free. Free is always good, especially when free has the potential to save businesses billions of dollars. These days, for every piece of proprietary software that is on the market, there is an OSS version.
- Innovation It’s continually evolving, which means it’s continually improving. Because there is a huge community devoted to improving the software, OSS often offers better quality and more security than proprietary models.
- Freedom As a user, choosing OSS software means you are not locked into a particular vendor’s system.
- Customization OSS allows you to adapt the software to your own business needs, something not available with proprietary systems.
- Quirky Because there is no requirement to create a commercial product that satisfies the needs of all users, OSS products can tend to reflect the developers’ wishes rather than those of the end user.
- Obtuse Due to that overcustomization, OSS can be less user-friendly than proprietary software that is user-tested before being presented to the public.
- Support There can be less support when things do go wrong, and this can sometimes result in extra costs in paying for external support.
- Vulnerability Although OSS means there are many people identifying and fixing bugs, it can still be vulnerable to malicious users.
Why you should care
More and more software vendors are seeing the value in leveraging the OSS community to improve upon their existing software products. According to Fortune, which recently reported on Facebook’s backing several new open-source projects:
Facebook, like Yahoo, Google, Yelp and older-school companies like IBM, take growing pride in turning over key software code to the open source “community” of developers. Even Microsoft, long viewed as the enemy of open-source development, has focused on making its Azure cloud computing platform a hospitable place for open-source software, including different flavors of the Linux operating system.
Why would a proprietary software vendor support OSS projects? Two simple reasons:
- Free advertising If the OSS community develops a popular plugin or patch, the appeal and market for the vendor’s software grows.
- Paid support Remember the #3 disadvantage above? Proprietary software vendors who build an OSS community around their software can then offer paid support that the community doesn’t provide.
OS in the call center
If you’re in charge of call center hardware and software, you might be wondering why this blog post even exists. It’s true that OSS has been all but absent in the call center software space. While many vendors are eager to sell you their Call Center as a Service (CCaaS) cloud platforms, very few have built those platforms on anything other than a proprietary approach to software. The traditional pay-for-license model has been extremely slow to die.
However, we are seeing glimmers of openness. At Spoken, while our CCaaS platform is proprietary, we consciously made the choice to build on free or OSS systems whenever possible. And we are working on creating an Application Marketplace, where our clients can share their custom scripts with the Spoken community.
Have you applied OSS tools to your contact center? Share your experiences in the comments!