Целиком и полностью поддерживаю. Начинающие сначала должны освоить принципы алгоритмизации.
Грубо говоря, научиться планировать.
Память и ее управление - это уже профессиональные знания, которые на начальном этапе абсолютно не нужны.

Я вам больше скажу.
Удивительным образом среди программистов мало людей с аналитическим складом ума. Хотя казалось бы - куда в нашем деле без этого? А вот практика показывает, что таких студентов - единицы. Они и есть - самые лучшие программисты.
Вот делаем мы наш семантический редактор.
Основной двигатель - один пацан, которому это интересно.
У него аналитика работает. Он ко мне приходит с выкладками, написанными в тетради, и мы эти выкладки начинаем обсуждать.
В команде есть пара 4-рокурсников, которые такой способностью абсолютно не обладают.
Хотя программы вполне пишут и более чем справляются с учебным планом.
То есть приходится учить:
прежде, чем лепить что-то в проекте, напиши анализ - чего требуется достичь и какими средствами.
Анализ+классификация составляют план действий, зафиксированный на бумаге.
Без подобного плана система будет напоминать большую кучу сами знаете чего.

Но почему-то у них это идет с трудом.
Навыка нет.

И вот самая моя главная проблема - научить именно анализировать и классифицировать. Сначала. А потом уже писать программу.
Плохо получается этого достигать.
Плохо получается потому, что у самого никогда с этим проблем не было, и я не совсем понимаю, каким образом именно этому учить.
Коллеги, может быть опытом поделитесь?