A blood-curdling selection of negative traits and anti-patterns that programmers should recognise and avoid. Remedies are included for the ailing.

Signs that you're a bad programmer 1. Inability to reason about code 2. Poor understanding of the language's programming model 3. Deficient research skills / Chronically poor knowledge of the platform's features 4. Inability to comprehend pointers 5. Difficulty seeing through recursion 6. Distrust of code Signs that you are a mediocre programmer 1. Inability to think in sets 2. Lack of critical thinking 3. Pinball Programming 4. Unfamiliar with the principles of security 5. Code is a mess Signs that you shouldn't be a programmer 1. Inability to determine the order of program execution 2. Insufficient ability to think abstractly 3. Collyer Brothers syndrome 4. Dysfunctional sense of causality 5. Indifference to outcomes