Design Principles
The following design principles were created through collaborative story-telling and visioning at the start of the PeachCloud project. While not strictly technical in nature, this information is shared here to give future contributors and peers a feel for the guiding spirit behind this work. Implementation details should always be made in service of this underlying vision.
- Better communication infrastructure for local communities
- Able to store the long-tail data (the niche content that isn’t mass popular but nevertheless important to support libraries of local culture and knowledge)
- Able to support real-time media-rich interactions
- Not just text, but also voice and video mail!
- Able to transport your data with you as you move locations
- Create local network topologies and local data centers to match our local social topologies
- Less dependence on external networks, external data centers, etc
- Accessible to users
- Easy to get started for you and your community
- Easy for non-technical people to use
- The system is a teacher to guide you on your journey
- Invite less technical people to become more technical
- Simple on the surface, powerful under the hood
- Example: more like Excel spreadsheets, less like Apple interfaces
- The interface should embody the underlying system
- Let all the internals leak out for you to see
- A living system of activity playing on the physical lights
- Allow users to look at the firehouse of logs, usage, metrics, etc
- Easy to grok what is happening
- Physical lights should give you the status at a glance
- Friendly automation
- Your personal robot friend, your home computer
- No surprises, any automation should be upfront and clear
- Be helpful, but don’t try to guess what the user wants
- Give the user the power tools to automate their own desires
- Let all the internals leak out for you to see
- Accessible to contributors
- Modules are well-documented
- Code follows best practices
- Focus on being accessible and maintainable, not being clever and complicated
- Focus on being boring and just working, not being shiny and perfect
- Provide an opinionated foundation to build flexible ecosystem
- Frame is restrictive and has constraints, enables scope and freedom to play inside
- “Bondage sets you free”
- Contributions are more than tech
- Living cultural documentation
- Peer production as a deployment strategy