UNPKG

principles

Version:
43 lines (24 loc) 2.11 kB
+++ Categories = ["Strategy"] Description = "" Tags = ["epic:principle", "macro:principle", "pdd"] title = "Make the invisible, visible" +++ Make the hidden principles, ideas and behaviors which make up a technology organization understood and explicit. ## Why * Understanding is what allows an outcome to be reached. The greater the understanding the better the communication, efficiency and effectiveness of a team. ## How * Use Principles combined with Principle-Driven Development to illuminate the technology organization from the source code to the leadership level. * Ask questions that seek to understand and illuminate. ## Content It is the founding principle of Principle-Driven Development (PDD). The base principle behind every other principle and the purpose of PDD. It is broad in scope and purpose. Programming is abstract in nature, it cannot be seen. Only the results of programming can be seen. This is also true of the behavior of an organization. Drawing parallels with the construction industry. In a construction project you can walk onto a construction site and view the physical structures. In code, you cannot look at an unfamiliar codebase and quickly understand the interconnections, structure and architecture of the system. Programming is like construction, if you entered a construction site at night time and all the lights were turned off. You cannot see what you're building. To see what is being created, you have to create the picture in your head, by manually parsing lines of code, reading documentation and have team members share concepts with you. Principles are the lights that help make what is invisible, visible. Everyone has them, but they aren't often shared. By sharing understanding of why a system is designed the way it is. It is like walking into the construction site with the lights on. The more principles that are defined and understood, the more visible a code base is. ## Contributors <a class="contributor" alt="Adam Craven" href="https://github.com/adamcraven"> <img src="https://github.com/adamcraven.png?size=80" width="40"> </a>