[userpic]

Re: ailev: Моделирование, метамоделирование, программиров 

metanymous в посте Metapractice (оригинал в ЖЖ)

Таким образом, в нашем случае (исполнитель модели -- человек). Человек является исполнителем двух кодов:
1. Код "модели моделирования" (корпус знаний НЛП), получается путем понимания и присвоения знаний по НЛП. В нашем случае -- это Третий (новый, классический) код. Понятно, что у психоаналитика тоже есть свой Фрейдистский код ;)
2. Код конкретной модели поведения, полученной и выполняемой (а иногда -- и кодируемой) в языке Третьего кода.
Разные Коды (как и любые другие модели) конкурируют между собой по
--точности воспроизведения целевых аспектов моделирования мира
--скорости исполнения полученного кода
--эффективности инсталляции
--возможности кодирования конкретных моделей, полученных с использованием Кода (отслюнявливания модели от ее носителя)
Старый код выигрывает у Ad Hoc психологических кодов в точности воспроизведения и скорости исполнения полученного кода и эффективности инсталляции.
Новый Код выигрывает у Старого по точности воспроизведения целевых аспектов, но проигрывает по возможности кодирования конкретных моделей.
Третий код в данный момент топчется на возможности выигрыша у его предшественников по эффективности инсталляции (вся тема ОВД и Паттерн Моделирования -- это про это) и возможность кодирования конкретных моделей (вся дискуссия о том, достаточна ли новокодовая возможность натурного моделирования других людей).
Конечно, предлагаемое понимание связи понятий Моделирования, Кодирования, Программирования нуждается в коренной лексической переработке -- ну да уж пока хоть какое-то письменное выражение лучше, чем никакого ;)
Вспоминая, что было наиболее сложным в моем курсе хождения по программистским мукам -- это написание алгоритма сортировки методом пузырька. Там очень хорошо понимаешь, что такое состояние переменных программы, и как оно меняется во времени. ;)
А второе "прорывное" упражнение было -- развитие мышления про "мета". Это, насколько я помню, было для меня похлеще буддийского коана: переход от простого признания фактов что бывает объекты и их модели, а еще бывают программы, которые выполняют другие программы, к пониманию различий и переходов моделирования между миром, информационной моделью и компьютерной многометауровневой моделью (там пяток-шесток уровней программ -- начиная от программы модели, написанной на предметно-ориентированном языке моделирования, исполнитель которого написан на языке программирования высокого уровня, исполнитель которого написан на языке машинных кодов, который в свою очередь написан на микропрограммных кодах, испонитель которых в свою очередь написан на языке описания структуры микросхем (язык кремниевого компилятора), который в свою очередь использует примитивы вентилей. И вся эта многоэтажная конструкция работает!) -- причем принципы перехода от одного уровня мета к другому одни и те же.
Вот после этого мысленного "мета"погружения по уровням выполнения программы и было над чем призадуматься, тут и остановился у меня внутренний диалог.
Из подходов программирования-моделирования, которые четко выделяют подход с абстрактрыми Исполнителями, действующими в своих Мирах -- подход Лебедева-Кушниренко. Он учит не столько программированию на языках, сколько моделированию. Поэтому программисты недолюбливают эти учебники программирования (школьный и вузовский), а другие люди не могут понять, о чем это их авторы талдычат. Ведь они явно не учат программистским заморочкам про двойные циклы, а только знай себе тренируют мышление по этому самому"мета"-переходу...