In almost all cases, the point of a program is to have effects other then mapping things going in to things coming out. The idea of controlling the side-effect is that you can organize code in a way that is easier to understand and reason about. If you put all the side effect together, in a place that is very explicit and central, it's easy to know where to look and trust that this is all that's happening, no more. If you have the input be very explicit too, it helps test the behavior for different input, and it's easier to use, since you don't need to change the input in a lot of different places, some which might not be obvious, just to get what you want.
Rapper Eminem, whose albums have titles like “Relapse” and “Recovery,” has been open about his battles with prescription drug addiction, including his near overdose on methadone, his relapse, and his eventual detox. He blames Ambien, however, for huge lapses in his memory over five years and an extended period of writer's block. “…a lot of my memory is gone. I don't know if you've ever taken Ambien, but it's kind of a memory-eraser. That shit wiped out five years of my life. People will tell me stories, and it's like, "I did that?" I saw myself doing this thing on [television network] BET recently, and I was like, "When was that?"” Eminem has kept some of his writing from that period, admitting to Rolling Stone that “It fucking creeps me out…Letters all down the page – it was like my hand weighed 400 pounds. I have all that shit in a box in my closet. As a reminder that I don’t ever want to go back.”