Mar 17, 2014 19:49
Часто я тешил себя такой пространной мыслью: "вот совершенно случайно я попадаю на 200 лет назад, какая я бы из профессий более всего совпадала с профессией программиста, и требовала бы меньше всего переквалификации".
Думал разное: часовщик, математик... но честно говоря все не то. Не похоже. Слишком сильные ограничения физического мира у часовщика. И излишне технологично мелок математик, т.е. математик работает с како-то одной теоремой, темой, и на программирование его труд не очень похож. Все таки это что-то другое. Нет у математика процесса отладки, нет того изящества реального мира. Все же программист использует математику для описания мира, а математик выводит какой-то один закон. Разное.. очень разное.
И я пришел к выводу, что самый близкий к программисту вид деятельности это писатель романов. Именно он задает классы персонажей, дает им методы, свойства. И потом согласно этим методам и свойствам они живут в созданном писателем окружении. Пистаель чуть чуть меняет декорации среды, ставит на пути персонажей разные преграды, дает им различные бонусы. Но! Все равно каждый из героев остается самим собой, со своим набором свойств, со своим алгоритомом действий.
И как бы изначально не казалось, но у хорошего писателя в его мире, каждый персонаж действует с "математической точностью" согласно своей модели. Толкиен сказал, что писатель сначала создает мир, а потом мир начинает жить по заданым изначально законам. Так и есть.
По сути произведение - это лог действий персонажей. Описание визуализации программы.
Жаль одно, что модели персонажей остаются на всего у писателя. Нет исходных кодов на github.