Awesome Reviewers

Choose variable, function, and method names that clearly communicate their purpose and behavior. Avoid ambiguous abbreviations, numbered suffixes, double negatives, and names that don’t accurately reflect functionality.

Key principles:

Example:

// Poor naming
func (pmpt *Action) taskEligibleToPreemptOthers(preemptor *api.TaskInfo) (bool, string) {
    podPriority := PodPriority(preemptor.Pod)  // Unclear whose priority
    // ...
}

// Better naming  
func (pmpt *Action) taskEligibleToPreemptOthers(preemptor *api.TaskInfo) (bool, string) {
    preemptorPodPriority := PodPriority(preemptor.Pod)  // Clear ownership
    // ...
}

Clear naming reduces cognitive load, prevents misunderstandings, and makes code self-documenting for future maintainers.