I tend to go back and review the basics--of a programming language, a framework etc-- from time to time. And everytime I tend to discover something new about the basics. What's your experience with the basics?
If you talk to any professional or decent amateur of the board game Go, he or she will tell you that mastering the basics is fundamental, and is used at every possible moment in the game. In the same vein, this is how I often view programming: having strong knowledge of the fundamentals allows for immediate and precisely correct planning and action in the moves to come.
In one of my favorite Go books entitled Lessons in the Fundamentals of Go, the author Kageyama expresses the same sentiments: mastering the basics is fundamental for progression at every point in the player's career. He begins the book with what is very much an exercise taking some time and thought: there were no shortcuts to solve this problem for the beginner this book is aimed for. It is the same in programming: mastering anything (even the fundamentals) involves much time and effort.
As I become stronger at the game, I am finding new wisdom in the same advice Kageyama gives. I can read the same paragraph a few months apart and get different tangible results out of it. I have often had the same experience programming: I can use certain expressions and programming constructs without knowing the intricacies of them, but as I progress in my programming career, I am also able to understand these constructs, often at a lower level, to my great benefit.
I frequently go back to this book and always find new wisdom to improve my game. I strive to do the same with programming: just because I know how lambda functions in Python work does not mean I should be ignorant of the possibility that I may not know everything about them and tangentially related concepts.
Whenever I try a new language, I go back to the basics of languages I'm familiar with for comparison...e.g. language Y handles closures in this way for this particular case...wait, do I really know how language X handled that?
I feel like I am stuck at the basics. As a student with no large project to work on, I have no need to really master a single language and learn its intricacies. In the end, I jump from language to language learning and using cool new tools and ideas without ever gaining mastery over one.
nice to know I'm not the only one doing that, I believe you need to un-learn to learn better I often get better understanding and good practices when come back to the beggining... however it implies to be careful no like if you are all the time reviwing the basics and never going further to advance stuffs
I'd like to go back to grad school, get my PhD, but it's been so long that I've forgotten all my math.
I'm planning to start with high school geometry. If I can find a copy, I'm going to use the same textbook as I used in high school. It was really good. Not sure about what I'll use for a trig textbook. For calculus I'll use Tom Apostol's Calculus vols I and II - that's what we used at Caltech.
I think I'm going to work through a basic calculus text again. I learned the concepts well enough 25 years ago, but I've gotten rusty on the practice. I look forward to it!
In one of my favorite Go books entitled Lessons in the Fundamentals of Go, the author Kageyama expresses the same sentiments: mastering the basics is fundamental for progression at every point in the player's career. He begins the book with what is very much an exercise taking some time and thought: there were no shortcuts to solve this problem for the beginner this book is aimed for. It is the same in programming: mastering anything (even the fundamentals) involves much time and effort.
As I become stronger at the game, I am finding new wisdom in the same advice Kageyama gives. I can read the same paragraph a few months apart and get different tangible results out of it. I have often had the same experience programming: I can use certain expressions and programming constructs without knowing the intricacies of them, but as I progress in my programming career, I am also able to understand these constructs, often at a lower level, to my great benefit.
I frequently go back to this book and always find new wisdom to improve my game. I strive to do the same with programming: just because I know how lambda functions in Python work does not mean I should be ignorant of the possibility that I may not know everything about them and tangentially related concepts.