I know about memory management (I do not fully understand it, but I use pointers and release my data when I need to), but when I ran my application under Instruments and found memory leaks (which I expected because I am not a programmer with the best practices in the world) I realized that I really did not know what caused memory leaks. Is it forgetting to release an object? Is it a bad dealloc() function? What are some common causes for memory leaks? Here I basically ask what caused memory leaks in your previous experience.