To get good at math proofs (and thinking math), do you have to first memorize all the different proof tricks, or is there a way to learn as you go?
I am a software developer and have recently decided I want to start learning math. I have been running into a road block for the past year or so because I can't understand all of the equations in research papers describing their different algorithms (Conditional Random Fields, Markov Logic Networks, Probability Theory, Graphical Models, ..., for machine learning, natural language processing and all that).
All of it is basically standard equations such as those for Bayes Theorem, Markov Chains, CRFs, etc., or something using propositional logic like the Markov Logic Networks, or novel theorems derived from one of these.
Looking over lots of other questions on this site, it's clear that I just need to get good at proofs, and understanding how to think mathematically / logically. I bought the book How to Prove It, and will get the other one How to Solve It soon.
My issue is, I've been studying this stuff every day for the past few weeks, and I don't feel like I am any better than when I started. In contrast, when I started learning to code, I was able to quickly get the hang of it and learn rapidly, mostly by studying other peoples code and trying to build my own programs.
I would like to do the same thing for learning math. Instead of just trying to do each exercise in a textbook which is super boring and dull, I would like to read a research paper, and slowly figure out what they are doing, learning what I need to as I run into things I can't figure out. (This is how I learned Markov Chains with no probability or set theory or anything, just had to go back and learn the basics, but at least it was applied which keeps me motivated and excited about learning the basics). I am also watching a bunch of the math lectures on coursera related to research papers I'm interested in, which is helpful.
The problem is, I feel like this isn't working with most math proofs, because there seems to be so many little tricks with all of the proofs that have to be memorized in order to be even the slightest bit effective at reading and understanding new theorems.
My question is, do I just have to sit down and memorize all kinds of these tricks to get good at math proofs, and thinking math, or is there a better way?
These are things like transformations between logical statements using DeMorgan's Law, the Conditional Law, etc. Or, is there a way to slowly pick these up? Like with programming, I can build some really cool stuff without ever having to learn algorithms or low-level computer science stuff; I just need to learn that when I run into a specific problem that requires that skill. With math it seems like the opposite, I have to first memorize a seemingly infinite number of things before I can even start looking at the research papers. Is there a more effective strategy?
Updated from a comment
Put another way, I can understand something in math (like DeMorgan's Law), but I can't make it stick. The reason is (I think) because I am not applying it in any real way (like to implementing something a research paper is talking about), so I never fully get it at an intuitive level (the same way that knowing by reading is different than knowing by doing). How do I get it at an intuitive level without having to just memorize these basics like DeMorgan's Law?