“Premature optimization is the root of all evil.” – Donald Knuth
I like what Dr. Knuth said about optimization. Currently in my life, I don’t have too much time or too many choices to do optimization in lots of my situations. Because I lack a solid CS foundation (you can read the story here), I learn new stuff mostly when I face a challenge. Even though I really wish I could have taken CS classes or done some related projects, I do enjoy this “Just in time learning process.”
“Just in time learning + divide and conquer” means:
1. Analyze my problems and my goals. Divide my big problem into smaller tasks.
2. Search for effective solution for one task. Learn necessary knowledge.
3. Implement the knowledge I just learned.
4. Validate the solution.
5. Connect the task, goal, and solution.
6. Iterate to the next task.
After doing the previous 6 steps, combining all the small tasks/solutions into the original problem, test them all again.
I found divide and conquer with just in time learning are amazing ways to learn. I guess probably everybody uses similar methods? Do you have productivity tips? I would like to hear your ways.