These are the principles that guide the major design decisions in Concourse for the benefit of both users and developers
- Works right out the box
- Self explanatory
- Simply configurable when necessary
- No XML
Concourse should work right out the box–no assembly required
- Use sensible default preferences so that Concourse is immediately usable after installation without the need for additional configuration
- One click installation (just press play)
- Minimal external dependencies
- Where possible, package any external dependencies with Concourse
Tuning Concourse should be simple and painless
- Use simple key/value preferences
- Tuning preferences all go in one file
Concourse should never use XML for anything
...
Press Play in Production (P3)
- Concourse should work in a production environment right out of the box with no assembly.
- Leverage pre-installed core system tools as much as possible
- Bundle any third party dependencies with the application
- User should never be forced to manually configure anything (i.e. edit paths, move files, etc) in order for the system to work
- The system should be configurable, but must have reasonable defaults that are suitable for the vast majority of cases