liveBook · Manning

Tough issue

As explained in "Looks Good to Me"

A difficult code-review problem whose discovery may require significant rework, delay, or acceptance of technical debt.

A tough issue is a code-review problem serious enough to demand substantial rework, delay, or acceptance of technical debt. It often begins as an expected issue whose consequences are severe or difficult to resolve. section 4.4.4

Look for expected issues that could become tough issues:

  • Complexity that makes intent difficult to follow, such as giant classes, excessive layers, or over-abstraction. section 4.4.4
  • Security vulnerabilities that could compromise systems or sensitive data. section 4.4.4
  • Performance problems likely to appear in production or at scale. section 4.4.4
  • Unhandled edge cases, undefined behavior, insufficient logging, or hacks that require clarification before approval. section 4.4.4

From review comment to tough issue

A reviewer notices two giant classes containing most of the system’s behavior. The concern is not merely stylistic: the complexity may obscure intent, make maintenance difficult, and require substantial rework. The team must decide whether to revise the design now or accept the resulting technical debt. section 4.4.4

How "Looks Good to Me" covers it

How deep it goes
Defines the escalation from ordinary review concern to serious complexity, security, or performance problem without prescribing resolution steps.
Examples
Uses giant classes, excessive layers, over-abstraction, vulnerabilities, scale-related performance problems, and undefined edge-case behavior.
What it assumes
Assumes participation in code review and familiarity with maintainability, complexity, security, performance, and edge cases.
What you can do after
Evaluate code-review findings and recognize when complexity, security, or performance makes an issue tough.
How it connects
Connects complexity, security, performance, edge cases, logging, hacks, maintainability, and technical debt.

Related concepts

This explainer was generated by Manning's knowledge graph from the text of "Looks Good to Me". The section links point to the parts of the book it draws on.