There's nothing worse than working really hard on an iPhone game or app, only to be plagued by poor performance, memory leaks and out-of-control allocations. One of the most important things I routinely forget to do is to auto-release every time i use a perform selector. For example, if I want to play an announcement in 2 seconds, i might say: