DRY – Don’t Repeat Yourself

Don't Repeat Yourself is principle helping to avoid repetition of the same information (same code produced multiple times).
Read more
Article

Don’t Repeat Yourself (DRY)


  • Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.
  • Don’t Repeat Yourself is software development principle helping to avoid repetition of the same information (same code produced multiple times). Having the same code in multiple places makes maintainability much harder, as the changes need to be done in all occurrences.
  • Achieving DRY can be done by dividing code into smaller pieces of functionality, which can be reused easily.
  • DRY violations are called WET (Write Everything Twice/ We Enjoy Typing).

DRY usage exmaples

Similar posters

CEDAR Feedback
CEDAR Feedback CEDAR is a structured feedback model providing coaching opportunities via repeated revisiting and readjusting of the feedback and the goals.
STATIK Kanban
STATIK Kanban The Systems Thinking Approach To Introducing Kanban (STATIK) is a repeatable way to start with Kanban resulting in continuous improvement.
Data Model Canvas
Data Model Canvas The Data Product Canvas is a framework for developing data products based organized into 10 blocks within 3 domain areas.
Kanban Practices
Kanban Practices Visualize Visualizing your work provides transparency, identifying the bottlenecks. Create cards for the items you work on. Think of the workflow – statuses that work items go through to make implicit policies explicit, which enable learning how the work works. Limit Work In Process Stop starting, start finishing. Limit the number of items being worked...
Theory Of Constraints
Theory Of Constraints The Theory of constraints says the throughput of any system is limited by at least one constraint slowing it down.
Classes of Service (CoS)
Classes of Service (CoS) Classes of service (CoS) provide a transparent way of categorizing the incoming work items and ensuring they are properly prioritized and governed to lead to meeting customer expectations. They enable managing risk, priorities, and cost of delay. Expedite High-priority items that should be worked on as soon as possible. Expedite class work items have critical...
Seven wastes of software development
Seven wastes of software development Similar to what TPS identified as seven categories of waste in manufacturing, also software development has its own wastes.
Core Kanban Practices
Core Kanban Practices One of the few rules or practices which are the foundation of Kanban are its 3 core practices: Visualize, Limit WIP, and Manage flow.
The prime directive of agile software development
The prime directive of agile software development Acronymat poster: The prime directive of agile software development - Never be blocked, the system must work all the time.
AIDAOR
AIDAOR The AIDAOR is a hierarchical model, where a persona moves through a series of cognitive steps before and after making a purchase decision.