Broadly speaking, open source is a term that is used to describe software that can, with the consent of its creators, be distributed and modified relatively freely and without restriction. Such software is usually produced by communities of interested developers who have a mutual need for working software, and a simultaneous aversion to the heavier financial burdens and “locked down” nature of commercial solutions. Commonplace software like Firefox, WordPress, OpenOffice and VLC Media Player all originated and grew in this way.
The most distinctive characteristic of open source software is that its source code (usually the entire source code) is published “openly” for review and use by anyone who is interested. This is a very different than the approach taken by most commercial solutions, which generally do not publish any code at all.
The reason that the availability of source code matters is that it gives the developer the ability to change, modify, update, and improve a software’s key features and functionality, so that it works exactly as you need. It also allows developers to see exactly what is going on when the software is running, which is helpful when debugging any issues (speeds up the development cycle).
While Portland Webworks is not exclusively an open source software vendor, we do rely heavily on well-established open source products in our development processes. Our use of such products is usually oriented towards the integration of individual open source components into larger, fully integrated, enterprise-level solutions.
It should be apparent from our Portfolio we actually have a great deal of expertise and positive achievement in this area. Specifically, our projects have frequently entailed the deployment of open source resources in these fairly common configurations (among others):
Open source software is by no means a panacea, but if selected and used in a thoughtful manner it can provide significant advantages. That’s why we spend a significant amount of time testing and trialing new open source products before we introduce them into our tech stack, so that our clients don’t become victims of “bleeding edge” software.
These are some of the criteria we look for in the products we select:
The open source software landscape is very fluid. Products are frequently hailed as “the next big thing,” only to fall out of fashion just as quickly. That’s why we seek out tried and tested products - then try and test them ourselves – before recommending them as part of your long-term software plans.