ailev.ru

1 августа 2012 · Комментарий

Без заголовка

Мои друзья критикуют Scratch по многим позициям. Нужно учить тому, что нужно, а не тому, что "легче схватывается". Я же критикую моих друзей не за разделение обучению коду (планированию) и данным (моделированию данных), а за полное игнорирование моделирования данных. И там есть огромная проблема, в которую мы уткнулись, начав работать с онтологиями (прежде всего, с довольно продвинутой онтологией ISO 15926): в моделировании данных, равно как и в программировании, работа с экземплярами существенно отличается от работы с типами (схемами данных). Учитывая, что всё программирование насквозь "мета", это означает, что есть огромные трудности вычислить тип, объявив его "экземпляром", а затем породить экземпляр этого типа (который сам опять может оказаться типом для порождения чего-то ещё). Это берётся только, если перейти от концепции классов с явными отношениями классификации к каким-то другим теориям понятий (прототипной теории Лакоффа, атомарной Крипке, теории теорий, плюралистической и т.д.). Можно поглядеть на успех языков типа Lua, это бледная тень того, что можно получить на этом пути. А messaging -- да, очень важно, но это решает другой тип проблем. Это решает проблемы связи programming-in-the-small и programming-in-the-large, проблему гранулярности агентирования/исполнения. Но это про "компьютерную революцию", что не исключает, конечно, обучения работе и с legacy парадигмами. Так, печатание на клавиатуре не исключает необходимости хоть как-то уметь писать ручкой (хотя я вот уже практически не умею писать ручкой, разучился за последние двадцать пять лет -- но если нужно, полстранички печатными буквами могу написать! Хотя и медленно...). Я рекомендую вашей сестре попробовать пройти через пиктомир и лайтбот (ага, там и рекурсии будут, и циклы-повторители). А затем поставить ей КуМир и смело идти по программе (что, конечно, требует уже хоть какого-то владения письмом на клавиатуре и чтением. Но я думаю, что это не проблема. Так, письмо на клавиатуре я у дитёнка выработал, заставив его поработать чуть-чуть на клавиатурном тренажёре, прикрывая при этом руки полотенцем. Он довольно быстро понял принцип, полотенце я убрал, но постановка рук как для слепого десятипальцевого метода у него при этом осталась -- а дальше скорость он и так натренирует, при правильной-то пальцовке). Побочным выходом будет заодно освоение большого куска арифметики (сложения и вычитания в пределах размеров поля робота) и логики (удивительно, но детки это быстро осваивают -- даже сложные условия). Для всех умений есть свои методы, и главное -- это четкое понимание, чему учим, и дальше определение последовательности упражнений. Попробуйте, у вас получится. Хотя это и не так красочно будет, как в Scratch :-)

К записи · К обсуждению