Design Principles » History » Revision 6
Revision 5 (Tom Clegg, 04/02/2014 11:03 PM) → Revision 6/7 (Peter Amstutz, 03/03/2016 04:31 PM)
h1. Design Principles
(Work in progress)
* All Arvados core components are "free software":http://opensource.org/osd.
* Any application can run on Arvados, including non-free tools that are only available as binaries. Use wrapper scripts around vendor-provided source and binary distributions, rather than maintaining derivative works.
* Use web technologies to tie components together, so programs can access Arvados regardless of programming language or framework.
* Use the best tool, programming language, or framework for each component, instead of standardizing on a single platform for the sake of conformity.
* Where possible, use established, widely understood components such as SSH, Git, Rails, and WebSockets rather than hand rolling custom components.
* Use Debian GNU/Linux as the primary supported deployment platform to ensure good performance, ease of development, and variety of deployment options.
* Use technologies such as virtualization and Linux containers to increase portability and flexibility of deployment.