Photo credit: http://www.flickr.com/photos/zoonabar/530245892
We have a saying on the COPIOUS Engineering team: How you think about software matters more than what tools you've worked with.
We don't pledge allegiance to any one set of tools over another. Our experience spans Ruby on Rails, PHP, .Net, ASP, node.js, iOS, Android, Perl, Scala, Erlang, Python, and numerous others. We build for web, tablet, and mobile with commercial and open-source tools, and inform technology decisions through clients' needs rather than pushing clients to adopt a framework that's simply fashionable or convenient.
To meet these ends, true craftsmanship requires neutrality in how we choose technologies to work with. Paid software such as Mac OS X, Windows, Microsoft Office, and Photoshop tend to come with numerous restrictions: you can use the software only for a certain range of activities or on a certain selection of hardware, but you can't modify it, and in some places can't even re-sell it or give it away. These restrictions build a different kind of product — one that's more costly to build and maintain, though one that's better curated and integrated with other paid software solutions.
Open source software, however, is a social movement based on freedom. When you use open source tools, you have the choice to use them however you like and change them in whatever ways you desire. In the majority of cases, the only restriction is that if you later redistribute what you've built, you can't restrict future users from having the same freedoms you have. This movement has produced some of the most common tools we use today, including Firefox, Android, Chrome, Linux, Ubuntu, Apache, Ruby, PHP, Perl, and countless others. These tools are all written, tested, documented, and given away publicly and freely.
After spending the last ten years building digital products with both paid and free software tools, we've found time and time again that, in most cases, free software builds a better product. The main reason for this is architectural costs. In the free software community, every major language and platform has open repositories of free libraries.
These repositories, such as rubygems for Ruby, PEAR for PHP, CPAN for Perl, PyPi for Python, and NPM for Node, provide free libraries for anyone to use to build better software. These libraries function like building blocks of an application. Before writing any code, we can check and see if someone else has already written and tested the same kind of thing. Whether that's a particular ranking system, log-in mechanism, database connector, or deployment or test component, there's a very good chance we can build on someone else's work and contribute back any changes we've made. In fact, just about every engineer here at COPIOUS writes and maintains free and open source libraries that other individuals and companies can use to make their software better. COPIOUS has recently open-sourced a backup system for a powerful eCommerce platform, Magento, because we're passionate about stability and like sharing that passion with others.
To further support the free software movement, COPIOUS recently sponsored the Open Source Bridge 2012 conference here in Portland to help foster open software and build connections between those of us who make this kind of community possible. This is how we help keep the free software movement going: doing it ourselves and helping each other out. Independence from costly proprietary software builds a community of passionate supporters who work on the clock and off to make sure free software stays ahead of the curve.
We at COPIOUS help build that community and support the software movements that make it all possible. To craft the caliber of digital experience we aim for, it truly takes a village.
Have you participated in Open Source culture? Interested in working with our team? We're hiring.