чтобы научить человека чему нибудь новому, надо отобрать старое.
не всегда кстати. В большинстве областей знаний истинный путь един. Потому, если вы знаете умножение, вам проще обучится дифференцированию. Вот только IT к этому не относится. Так получилось потому, что даже админам и программистам не нужны глубокие знания основ - знание ассемблера это совсем не плюс, а скорее минус для сишника, а знание С - серьёзный минус для кодера на С++. Куда как важнее абстрагироваться от основ, и рассуждать на более высоких уровнях. Это ещё и важно потому, что основы "плывут", постоянно меняются.