методологическое
Oct. 16th, 2018 03:49 pmИнтервьюировал намедни человека. Человек в-принципе быстро нащупал путь к решению на общем уровне, и собственно код писать может. Но вот посередине между этим верхним и нижним уровнем - полный затык. Как говорится, угадал все буквы, не смог назвать слово. Не может поделить задачу на части, детализировать требования к этим частям, и шаг за шагом довести до уровня кода. Хотя, казалось бы, при нормальном подходе этот уровень делается довольно-таки механически, без больших затрат ума. Пытается интуицией, но в интуиции не хватает сил для этой сложной задачи, а как применить механистический подход - не знает, даже с подсказками, подсказки не вызывают нужных ассоциаций.
И вот так если подумать в ретроспективе, то этому ведь как-то и не учат. Студентам и читателям учебников рассказывают тут общую картину, тут синтаксис языка, между ними - пустое место. Кто сам научивается, тот научивается. Кто не научивается, тот учит других :-)
Я стал задумываться, как этому научить, и пока не очень могу придумать методу. Разбирать в деталях примеры решения достаточно сложных задач, показывая, как сначала интуицией получается общая картина, а потом долбежкой доводится до полной реализации?
Вот, кстати, у хаскельщиков есть подобная фигня - у них типично написание кода на верхнем уровне, в надеждах, что работу промежуточного уровня магически сделает компилятор. Который делает, но только потом оказывается, что не то, что хотелось.
И в математике есть аналогичная проблема. То, как перподают доказательство всяких теорем, обычно имеет весьма слабое отношение к тому, как изначальный автор нашел свое решение. Это решение оказывается десять раз отредактировано и переделано, чтобы быть более простым для чтения. Но при этом напрочь теряет учебный компонент о том, как искать новые решения.
P.S. Учет и контроль, хоть нынче и хреновый:

И вот так если подумать в ретроспективе, то этому ведь как-то и не учат. Студентам и читателям учебников рассказывают тут общую картину, тут синтаксис языка, между ними - пустое место. Кто сам научивается, тот научивается. Кто не научивается, тот учит других :-)
Я стал задумываться, как этому научить, и пока не очень могу придумать методу. Разбирать в деталях примеры решения достаточно сложных задач, показывая, как сначала интуицией получается общая картина, а потом долбежкой доводится до полной реализации?
Вот, кстати, у хаскельщиков есть подобная фигня - у них типично написание кода на верхнем уровне, в надеждах, что работу промежуточного уровня магически сделает компилятор. Который делает, но только потом оказывается, что не то, что хотелось.
И в математике есть аналогичная проблема. То, как перподают доказательство всяких теорем, обычно имеет весьма слабое отношение к тому, как изначальный автор нашел свое решение. Это решение оказывается десять раз отредактировано и переделано, чтобы быть более простым для чтения. Но при этом напрочь теряет учебный компонент о том, как искать новые решения.
P.S. Учет и контроль, хоть нынче и хреновый:
Это нормально
Date: 2018-10-16 11:15 pm (UTC)Я такое же видел с указателями. Некоторые люди просто не понимают указатели и всё тут. При том что ничего особенно сложного там нет.
Re: Это нормально
Date: 2018-10-16 11:28 pm (UTC)В типичной книжке по Паскалю действительно фиг поймешь, что такое эти указатели, они объясняются методом абстрактного и бессмыссленного размахивания руками. А вот в ассемблере все делается сразу понятно, указатель - это адрес. Особо смешно и грустно в этом то, что и Вирт, и писатели этих книжек сами когда-то учились не по Паскалю, и (за надеюсь редкими исключениями) знают, что указатель - это адрес. Но вместо того чтобы объяснить как есть, пытаются объяснять "без лишних деталей", на более высоком абстрактном уровне, и этим только все запутывают.
no subject
Date: 2018-10-17 06:45 pm (UTC)Когда ты пытаешься 'объяснять "без лишних деталей"' эти абстрактные описания проблем интервьюируемого - "только все запутывают".
no subject
Date: 2018-10-19 07:13 pm (UTC)Расписывать в деталях мне и лень и конкретную задачу рассказыват не хочется. Тут у меня цель не разъяснить подробности, а во-первых оставить заметку для себя, во вторых эмоционально пообщаться с людьми, уже встречавшимися с подобным. Ну или наоборот, подать общую мысль, по которой другие люди потом люди смогут распознать подобное в своей жизни.
no subject
Date: 2018-10-22 11:53 am (UTC)описания абстрактного коня в вакууметеоретические выкладки.Ну а без проверки полагаться на твою "общую мысль" - опрометчиво.