Must to knows, Nice to knows, and No need to knows

Whenever we look at any new technology, concepts fall into these three buckets:

  1. Must to knows - these are fundamental building blocks for that technology.  Most of the time 90%+ of everything in that technology leverages these 'must to know' concepts.  Often these must to know concepts constitute less than 10% of content in the technology's official documentation.
  2. Nice to knows - these are usually advanced topics that people who have been using that technology for years have come across.  These appear during interviews for hiring mangers to distinguish between someone new or someone who really knows that technology.  Although these are good interview prep questions or concepts to know, typically these concepts are not that critical to build things in that technology.  Typically when you look at any official documentation, about 10-20% of content in the documentation are "nice to knows".
  3. No need to knows - A big majority of what's outlined in the official documentation for that technology is not typically used ever, unless for a very niche application.  These concepts do not need to be taught as it's such an edge case scenario and when students have sufficiently leveled up, they can easily learn these one off edge case (if needed).  

A good course spends 90-95% of student's time on the must to knows.  Then it spends 5-10% of the time on the nice to knows, AFTER students have leveled up sufficiently and reached a learning milestone desired by the instructor.

A poor course combines all three buckets into a single course and the students have no idea which concept is really important, not really important, or just important for interviews but not really used in the real world, etc.  Sometimes the instructor doesn't know this either (which is a problem also).

Visually, always try to identify which of the three buckets each concept falls and try to create a mental picture such as this:

Where grey filled circles represent "nice to know" concepts and where red represent "no need to know" concepts.  Do not ever create a course before you've identified what are the must to know concepts.