Zettelkasten principles are not well suited for neatly packed or utilitarian learning (courses, textbooks, learning how to program, how to use Emacs, etc.).
Zettelkasten forces you to split what you’re learning into atoms and that is usually too much work for dense learning. (e.g., when learning programming, do you create a note for every syntax feature? for every library function?)
This work is usually not worth it. It likely won’t produce interesting links as they will usually be similar to the structure of the book you’re reading. (Zettelkasten as a tool for breaking down and rebuilding structure)
Links will also be closed within the area of study. i.e., the area will be self-contained and there will be little to no cross-disciplinary links and connections.
Counterargument: you will start generating new links once you start stepping outside of textbooks, trying things in practice, etc.
Too many notes make it hard to review and rehearse what you’ve learned. (You have too keep a comprehensive index and jump over a tons of notes.)
There are better tools for that:
Wiki-style pages whereas you have all your notes on book/topic in one file. Easier to compile and maintain, helps reviewing everything. (Every note-taking app allows you to create these, so you can mix-and-match wiki-style pages and zettelkasten notes.)
Splitting everything into atoms does help to understand better, find new ideas and connections.
(But do you need that level of understanding? It’s usually enough to know and remember the material and be able to apply it in real life.)
There are people who used Zettelkasten (or mixture of zettel and wiki notes) to learn programming and that worked fine for them.
If you use pre-packaged resources to advance your grander research, taking Zettelkasten notes is reasonable.
It’s often hard to predict when pre-packaged learning grows into research.
(Is taking Zettelkasten notes for pre-packaged learning a premature optimization?)
Studying done properly is research. For it is about searching insight. (Ahrens2017)