I am not sure how much the "learning in depth" can be avoided. This may be a prejudice, but it seems to me that software development typically really has a lot of inferential depth compared with... I don't know... plumbing.
In addition to this, software development is in motion. You can use the same screwdriver for decades, but software frameworks are developed so quickly that even remembering their names becomes a difficult task. (I can't even remember all frameworks in Java.) So it's not like they can't be taught effectively... it's more like there is so much of them that the few people able to teach them effectively didn't have time to learn the topic and write a book on the topic yet. (Maybe they will do 5 years later, but then you will want to learn something different, or a new version different from the old one will appear.)
If -- somehow -- we could choose the best programming language, or just say best 10 programming languages, two or three frameworks for each of them, remove everything else, and freeze the progress... then within 20 years we would discover efficient ways of teaching them, so that how we learn them today would probably seem completely ineffective in comparison.
But that is not going to happen, for many reasons, at least during the following decades. (Some of those reasons are good, such as progress, some of them are bad, such as reinventing the wheel either because of ignorance or for profit.)
Anki decks are great when you don't go into depth. Or when you go into depth using some other source (such as a book), and then use Anki decks to memorize what you learned there.
In my opinion, a good way to learn is to get a lesson from someone who really understands the topic, knows how to explain it, and especially is later available to answer your questions. A week of education this way easily beats months spent reading online tutorials written by people who overestimate their own understanding of the topic, or just don't care and do it for adsense (w3schools, roseindia...). But in my experience people are usually averse to pay for this. (It's like in their cost-benefit calculations they assign almost zero costs to their time and they horribly understimate how much time would they need.) The second best option is to read a book on the topic, or perhaps a few of them.
My current stack is linux, apache, python, django, dynamo, js, backbone
This does not provide as much information as it seems to do. I can install Linux (using the installation wizard) and run a few programs from the command line. Linus Torvalds invented Linux and probably knows everything. Where are you on this scale? Where are you on the Python scale: are you able to write "Hello World" or what exactly? How about the many things you did not mention here, such as: do you understand algorithms, computational complexity, formal languages, automata, functional programming, etc.? That could make a huge difference in choosing the right way to learn a new language.
Also... what exactly are you trying to achieve? Add a few keywords to your CV, or some other specific goal?
Linus Torvalds invented Linux and probably knows everything.
Doubt that very much. Linus is the creator of a kernel, which is only a small (though important) part of the whole shebang people call "Linux".
For most people, it probably doesn't matter all that much whether your "stack" includes Linux or FreeBSD or any of the other kernels you can find.
Similarly apache is going to be largely invisible to people who use a web framework at a higher level of abstraction than CGI (that would be most of today's frameworks).
Bottom line - I agree...
Software developers have to repeatedly and continually learn massive number of new concepts, procedures and techniques related to the latest languages, frameworks and technologies up and down the stack.
The best way to learn would of course be to continuously read books in the spare time one isn't solving problems on the job and apply that knowledge.
I personally find reading books too time consuming for me. Books are presented in a depth first fashion, delving into multiple areas in depth one by one. This is not ideal for becoming productive quickly. There is no explicit ordering of how necessary / frequent a particular concept / technique is either.
What other sources of information / classes of sources are highest yield for picking up new technologies quickly [In the sense of getting productive fast].
An example of a high yield resources are well made slide decks. As an example, a slide deck on a language(e.g. javascript) made for experienced developers new to the language is much faster to process than a book. I can absorb the major features of the language, the syntax etc from a good slide deck in a fraction of the time it would take to read the introductory chapter of a book.
Any general comments (or specific sources) on how one would go about learning a new tech stack quickly would help too.
My current stack is linux, apache, python, django, dynamo, js, backbone