To learn computer science, students should be encouraged to break down the learning process into three hierarchical forms of learning. Many guides do not focus on these forms. To properly learn computer science, learning objectives should be broken into strategies, tactics, and tool acquisition.
Strategies are all-encompassing principles in the study of computer science. Strategies cover the necessary infrastructure for learning. They involve topics like how to set up an environment for learning, how to ask questions, how to seek help, and how to debug.
Tactics are ways of tackling computer science problems. A problem has an ambiguous presentation. One may come across a problem but not know how to solve it. Learning tactics involves building tools to help you tackle new problems. Study of computer science is filled with challenging problems. To deal with new challenges, therefore, computer science students should have their favorite methods.
When most people think about computer science, tools are kind of things that come in their mind. Knowing “How to design greedy algorithms” and “Knowing Ruby” are some of the things we consider to be tools. In computer science, tools help us to do things. Tools entail data structures, syntax of languages, and anything that gives a concrete understanding of something.