---
title: Do Not Use Dead Code
impact: LOW
impactDescription: reduces codebase noise and maintenance effort
tags: dead-code, cleanup, maintenance, quality
---

## Do Not Use Dead Code

Dead code confuses readers and clutters the codebase. Git history preserves deleted code, so there is no need to keep it in the active source files.

**Incorrect (keeping dead code):**

```ruby
def process_order(order)
  # Old implementation - keeping for reference
  # total = order.items.inject(0) do |sum, item|
  #   sum + item.price * item.quantity
  # end
  
  total = calculate_total(order)
  total
end

# Unused function - someone might need it later
def legacy_calculation
end
```

**Correct (clean code):**

```ruby
def process_order(order)
  calculate_total(order)
end

# Delete unused methods - git history preserves them
# Delete commented code - git history preserves it
```

**Types of dead code:**
- Commented-out code
- Unused methods/classes
- Unreachable code
- Unused variables

**Tools:** RuboCop, debride
---
