Boat Anchor

The anti-pattern is about codes that serves no purpose. This is often seen in all levels, especially when integrating new technologies without a risk mitigation strategy and removal plan.

Consequences

  • Bloated (but not scalable) project.
  • Confusing tech components.

Symptoms

  • When requirements does not factor in "useless" product risk.
  • Code base contains "obsolete" comments or partitions.

Causes

  • Immature requirements like new risky technology integration or assimilation.
  • Unplanned / bad planning for development and release strategy related to new integration/assimilation.
  • Bad technical backup and version control.

Fixing Recipes

  1. Check the requirements again. Perform a process review to prevent such event from happening again.
  2. Plan for deprecation and removal schedules and implementation.
  3. Implement deprecation notices.
  4. On scheduled time, remove them via a refactor efforts.