Open Source Software
Open source software is made available under a license that allows you to make copies and pass them to anyone. The software comes with its source code – which you can change to meet your needs. Licenses for open source software do vary. Some licenses require you to make any changes made to the source code publicly available, while others will allow you to keep those changes private. You should read the license before using or changing the software. Open source software is usually available for free download or off-the-shelf at a low cost.
Open Source Pros
- No code lock down – With open source, if a feature doesn’t exist, someone may create it, and many others review and improve on it, and it is contributed into the community to share and evolve
- Low Costs – In proprietary systems, there tends to be a fee for just getting a copy of the software license (and additional fees for number of users). Then the business pays a further fee for delivery for implementation and consulting on top. Open source systems tends not have a license fee, so anyone can try it (support free) without limitation if they have the skills in setting up it up themselves. What you pay for with open source is expertise and support, thus the TCO is much lower. Since development is done by a community of volunteers (many of whom are paid by other organizations), your costs don’t need to cover a company’s development expenses. That said, this is a minor savings because in mid-sized software company, the vast majority of expenses are customer support and marketing. Open source software does not have purchase costs or licensing fees. The concept behind open source means that there are many developers around the world who contribute to the software using a system of peer collaboration and bartering. This allows it to be made available to the public free of charge.
- Lower hosting costs – Proprietary CMS systems require proprietary hosting configurations (operating systems and databases) to run them, which mount the costs of hosting. Open source solutions can run on any operating system, but running them over Linux and using other freely available alternatives for databases and modules don’t attract additional license fees reducing costs.
- No vendor lock-in – Open source systems, even if the product changes hands, will transfer or fork (sometimes with a name change) but continues because the momentum of the developer base and user base.
- Full release up-to-date support documentation – Consider any flavour of MS Windows, the most widely used operating system on the planet, and its lack of poor help documentation. All popular open source solutions come with rich user and admin support documentation, and this is brought up to date and in-line with each product release
- Higher security and performance – Open source is tightly regimented in the version control of code within the development cycle. On top of this, code review and inclusion is cross checked by many eyes that come from many different points of view. As such the security and stability of open source solutions tends to be considerably superior to that found in proprietary solutions. By maintaining alignment with the latest versions and patches, a business can enjoy a superior system security and system stability, especially when compared to proprietary models. Be aware that out of date open source software can be just as hackable as proprietary systems
- Constantly being improved by thousands of developers – The international development community for the larger open source software brands has become vast indeed. This system of multi-contributors means that pretty much any requirement or problem you can come up with has already been thought of by someone somewhere and a solution is available.
- Not tied down to one company – Anyone can work on or host a website that uses open source software. This means that if you decide to change web companies or hosting providers you can do this without having to completely rebuild the site, whereas with proprietary systems you are stuck with the owner of that system.
- Fully extensible – This means you don’t have to mould your site to the software, it can be changed to suit your specific needs. As the source code is accessible, web developers can modify or re-write it (often with support from the wider development community), to suit your specific requirements.
- Customization: Systems like BuddyPress and Drupal are designed for developers to adapt and extend. Whereas, you usually cannot make non-cosmetic changes to a proprietary system.
- Nimble: Open source projects adopt new trends faster than proprietary systems. For example, support for posting to Twitter or logging in using an existing Twitter username was added faster to the open source packages than to commercial ones.
- Openness: Open Source systems are usually designed with integration in mind; whereas commercial systems have business motivations to lock organizations into a closed system.
- Fast bug and security fixes: BuddyPress and Drupal have many people combing their source code, and rapidly fix problems as they are discovered.
Open Source Cons
- No responsibility: The sticking point for Open Source is that it’s not a company, and there’s rarely any direct customer service. Open Source is a process and philosophy which produces software, but it is not a contract. No customer support rep at OpenERP or Drupal is waiting to answer calls. However, they have a ton of documentation and online forums.
- Not aligned with corporate needs: In the case of social networking software, the Open Source platforms don’t have all the moderation/censorship, monitoring, and other kinds of features that some commercial platforms do.
Closed Source Software
Proprietary software or Closed Source is developed by a supplier and made available to use under an end-user license agreement (EULA), which effectively accept when you install the software. The license sets out how the software can be used and usually prohibits you from doing certain things, like: Making copies of the software and passing them on, Selling your license to someone else etc.
When you buy a proprietary software package you are not buying the software – you are buying the right to use the software in a specific way. The software company owns the software.
The source code is only available to a core group or team of developers and in most cases it’s not free. There is usually a premium to pay or there is a locking strategy that users (not developers) are funneled through for up selling purposes. On the surface the strategy will look fairly cheap and inexpensive but when it comes to the extras there might be additional bolt on costs or upgrade costs.
Closed Source Pros
- Usually quick to setup as it’s a repeat model
- With any proprietary software, there is a single source for support, bug fixes, security fixes, or regular updates / upgrades. This means you know who to harass to get it working right, if it can be made to work right.
- Direct vendor technical support – this means that when software support is needed, in the case of problems or upgrades, the actual person or team who created the software can work on it. As opposed to open source where the developer community model means that there is often no-one in particular who is directly responsible for issues.
- Support is obligatory rather than optional – when something goes wrong, as it does from time to time whatever the system may be, the owner of the software is directly responsible for sorting it
Closed Source Cons
- Limited flexibility with basic models
- Costly in the long run
- Slow bug fixes, security updates, and upgrades
- Support limited to certain hours / days