How These Courses Teach Theory Through Tools

In my courses, tools (libraries, frameworks, and APIs) are integrated into the study of theoretical concepts. The goal is not just to learn how to use these tools, but to understand the ideas behind them and how they can help you solve real problems.

Three suggestions for getting more value

Learn at two levels: understand the concepts well enough to work with different technologies, and gain enough practical experience to apply them effectively.

1

Look beyond the code

When I introduce a tool or demonstrate a code example, it is usually connected to a concept we have just discussed. Try to understand this connection. What part of the concept does the tool implement? What happens behind the scenes? What does the tool handle for you, and what decisions are still yours?

The important skill is not remembering the code, but understanding what it does and why. This knowledge will also help you work with other tools that implement similar ideas.

2

Let tools help you think about your project

Choosing the right tools can save a lot of development time. But there is another benefit: tools can shape how you think about a problem and design its solution. Frameworks and libraries often implement specific approaches to solving problems. Once you understand these approaches, you can use them to structure your project and make better design decisions.

When planning a project, explore several options. Consider not only which tool offers the features you need, but also how its underlying concepts fit your problem. A good tool can simplify both your code and your thinking.

3

Build experience that matters for your career

Tools change quickly. New ones appear, existing ones evolve, and some disappear. At the same time, many established tools remain widely used for years. I try to keep the tools presented in my courses relevant to current industry practices. However, you should also make your own choices about which tools deserve your time.

Look at job descriptions for positions that interest you (see Work Backward From the Job). Check which libraries, frameworks, and platforms employers expect candidates to know. Then use your course assignments and projects as opportunities to gain hands-on experience with these technologies. You are not limited to the tools presented in class, if another tool is more relevant to your goals, explore it and consider using it in your project.

Understand the concepts well enough to work with different technologies, and gain enough practical experience to apply them effectively. Each level makes the other more valuable.