Regardless of whether organizing principles or central values underlying the process of software and technology development are stated, they exist. The benefit of being intentional in codifying these values at the beginning of a project is in the degree to which they create an environment for collaboration and inform the process of integrating technology into the larger context of the project.
The central guiding values and principles for jellobrain are:
- The central goal of technology is to mirror human values, and support the direction of those values as they manifest into human endeavors.
- Trust and honesty are the backbones of a technology project, and this trust should be preserved and earned by the technologist through clear and timely communication, advocating for the best interests of the project and client, kindness and professionalism.
- The essential intelligence that informs the direction of technology development must come from the larger system, the players within that system, and the larger organizing principles underlying the project.
- The primary task of a technologist is to act as a bridge between what is needed and what is known: to facilitate a process of teasing out and codifying the larger intelligence in a way that can be translated into sound technical specifications and needs.
- Technology is political. Where possible, it is essential that tools employed to achieve sound technological implementations are politically and socially aligned with the overall values of a project.
- People are creative, computers are tools. Sound technological implementations maximize the extent to which people are empowered to act creatively in the performance of work tasks. Sound automation of repeated administrative tasks is as much about creating healthy working environments and job satisfaction as it is about efficiency and economy.
- Methods employed in the implementation of technological solutions should be iterative and agile. Iterative development methods necessitate regular testing of discrete units of development, and ensure that each iteration is tested and assessed by the larger project team and is inline with the overall project goals. Agile methods honor the discovery process as a project unfolds, and treat natural and expected shifts in scope as opportunities.
- Training and training materials are a method of creating a project team that can be fully engaged with the process of development and discovery. It is incorporated into every step of the process. It is not a phase of the project that gets implemented at the end.