Where does one attain the skill/ability (skill vs. ability is a good question in itself) to do proofs? By "do proofs" I mean prove existing theorems. For instance I am really no good with ε-δ proofs. The concept is so easy, but when I have to prove something using ε-δ I either have no idea what to do or I do something wrong. I have heard that the only way to become good at proofs is to do tons of them. I have the idea that this is incorrect in the sense that perfect practice makes perfect not just lots of practice. So how does one perfectly practice writing proofs I find doing proofs for class rather stressful since there is a deadline and a grade. What would one suggest for doing proofs in my free time as I way to gain proficiency? Additionally I am a decent problem solver. When it came to calculus questions and physics questions I could usually link the theorems or see the bigger picture to come up with the answer. Is there any recommended text that really changed your skills with proofs?