Bad Programming Practices 101

Become a Better Coder by Learning How (Not) to Program

  • Karl Beecher

Table of contents

  1. Front Matter
    Pages i-xxii
  2. Karl Beecher
    Pages 1-7
  3. Karl Beecher
    Pages 9-29
  4. Karl Beecher
    Pages 31-50
  5. Karl Beecher
    Pages 51-66
  6. Karl Beecher
    Pages 67-86
  7. Karl Beecher
    Pages 87-105
  8. Karl Beecher
    Pages 107-123
  9. Karl Beecher
    Pages 125-144
  10. Karl Beecher
    Pages 145-167
  11. Karl Beecher
    Pages 169-188
  12. Karl Beecher
    Pages 189-201
  13. Back Matter
    Pages 203-221

About this book


This book takes a humorous slant on the programming practice manual by reversing the usual approach: under the pretence of teaching you how to become the world’s worst programmer who generally causes chaos, the book teaches you how to avoid the kind of bad habits that introduce bugs or cause code contributions to be rejected.

Why be a code monkey when you can be a chaos monkey? OK, so you want to become a terrible programmer. You want to write code that gets vigorously rejected in review. You look forward to reading feedback plastered in comments like "WTF???". Even better, you fantasize about your bug-ridden changes sneaking through and causing untold chaos in the codebase. You want to build a reputation as someone who writes creaky, messy, error-prone garbage that frustrates your colleagues. Bad Programming Practices 101 will help you achieve that goal a whole lot quicker by teaching you an array of bad habits that will allow you to cause maximum chaos.

Alternatively, you could use this book to identify those bad habits and learn to avoid them. The bad practices are organised into topics that form the basis of programming (layout, variables, loops, modules, and so on). It's been remarked that to become a good programmer, you must first write 10,000 lines of bad code to get it all out of your system. This book is aimed at programmers who have so far written only a small portion of that. By learning about poor programming habits, you will learn good practices. In addition, you will find out the motivation behind each practice, so you can learn why it is considered good and not simply get a list of rules.

You will:
  • Become a better coder by learning how (not) to program
  • Choose your tools wisely
  • Think of programming as problem solving
  • Discover the consequences of a program’s appearance and overall structure
  • Explain poor use of variables in programs
  • Avoid bad habits and common mistakes when using conditionals and loops
  • See how poor error-handling makes for unstable programs
  • Sidestep bad practices related specifically to object-oriented programming
  • Mitigate the effects of ineffectual and inadequate bug location and testing


programming best practices patterns anti patterns coding software

Authors and affiliations

  • Karl Beecher
    • 1
  1. 1.BerlinGermany

Bibliographic information