There is one anti-pattern that is pervasive — it shows up everywhere all the time: the ITM anti-pattern. This is Conor's least favorite anti-pattern and avoiding it can lead to more readable, understandable, and beautiful code. ITM stands for "initialize then modify". When Sean Parent says "no raw loops" — that is an application of avoiding ITM. When Ben Deane says "avoid the initialization declaration split" — that is an application of avoiding ITM. And when Jason Turner walks you through different code smells to avoid — a lot of them are examples of ITM.
This talk will introduce the ITM anti-pattern, walk you through the story of Conor's discovery of it, and highlight/demonstrate how to avoid it.
Go to presentation