Войти в систему

Home
    - Создать дневник
    - Написать в дневник
       - Подробный режим

LJ.Rossia.org
    - Новости сайта
    - Общие настройки
    - Sitemap
    - Оплата
    - ljr-fif

Редактировать...
    - Настройки
    - Список друзей
    - Дневник
    - Картинки
    - Пароль
    - Вид дневника

Сообщества

Настроить S2

Помощь
    - Забыли пароль?
    - FAQ
    - Тех. поддержка



Пишет ivanov_petrov ([info]ivanov_petrov)
@ 2009-06-11 10:12:00


Previous Entry  Add to memories!  Tell a Friend!  Next Entry
Дискретная реальность
Я видел довольно много замечательных системщиков и очень хороших программистов. Ну, может, и не больше, чем вы, но видел. Действительно крутых мастеров. И видел, как они работают. Долго мне блазнилось, что тут есть на что обратить внимание, и только недавно начало формулироваться.
Мои наблюдения в большей степени характеризуют саму область занятий, чем конкретных людей. То, что я скажу, относится к тому, как людей меняет их деятельность. Так вот, когда работает мастер в каком-то другом деле, картина возникает совершенно иная - красота и легкость. Особенная безошибочность - и именно из-за своей безошибочности кажущаяся естественной работа. Это видно у опытного врача, или художника. Тут, конечно, поставим паузу для цепляющихся - нет, все делают ошибки, и таланливые врачи тоже, и, конечно, художники - я не об этом.

Но когда я смотрел на работу мастеров цифрового дела - там было совершенно иное впечатление, хотя эти мастера были столь же в своей области эрудированы и мастеровиты, как помянутые врачи-художники в своей. Постарайтесь вспомнить - я не смогу объяснить, если у вас не возникнет собственного воспоминания-образа виденной работы цифровиков.

Она состоит из быстрого исправления ошибок. Нет безошибочности - просто мастер знает, что если вот так - значит, на предыдущем (предположим) ходу была ошибка, и тогда надо вернуться-отменить и сделать так. Это важно. Ошибается мастер по той причине, что эта сфера состоит из чудовищного, колоссального числа опций, выборов, конкретных альтернатив - помнить их все невозможно, знать заранее нельзя - и квалификация сказывается в быстрой ориентации среди них, в экономном исправлении ошибок. Путь цифрового мастера - ломаная линия, просто у новичка это запутанный клубок ломаных без выхода, а у мастера - довольно эффективный путь к результату с всего-то парой отмен-исправлений.

Я бы расширил эту попытку объяснить, в чем дело, до передвижения в городской среде. Мне пришло в голову, что в отличие от природной среды, в городе невозможно без ошибок. Ну нельзя всегда садиться в правильную сторону в автобусе на незнакомом маршруте, правильно поворачивать, выходить вовремя и не путаться на пересадках никогда. Все бывали в таких ситуациях, все помнят, это естествено. Понимаете? Естественно ошибаться. Есть люди, которые ориентируются плохо и тут же запутаются. Есть - кто хорошо, они быстро поймут ошибку и вернутся назад, исправят ее. Разница между молодцом и плохо ориентирующимся - не в том, что "мастер" всегда знает повороты - никто не может знать, он просто спокойнее и быстрее исправляется. Перемещение в незнакомом городе, чуждой городской среде - это последовательность выборов, сбора информации, ошибок, проверки и исправления ошибок.

Это я рассказал, но уверен - многие решат, что иначе и не бывает. Конечно, это естественно. Так всё, всегда, везде. Но нет же. Когда человек идёт, движения его мышц, связок и костей не детерминированы. При каждом шаге нога в целом и каждая мышца в некотором диапазоне решает, что ей делать. И движение каждой следующей мышцы на каждом следующем этапе состоит в компенсации мелких неточностей предыдущего движения и стадии движения относительно цели. Если было сжатие на 0.5% сильнее, то теперь, чтобы шаг удался, надо вот тут этой мышце тоже примерно на 0.7 сильнее, а этой наоборот чуть слабее. Движение состоит из плавной, постепенной и постоянной коррекции предыдущих движений, которые, если бы они были продолжены, привели бы к невозможности достижения цели.

Это не то же самое. В одном случае совершается выбор и он ведет к ошибке, и надо вернуться назад и отменить, сбросить результаты, выбрать другую опцию, поставить иное значение. Если мы будем считать последовательность действий шкалой времени, то в цифровой реальности время все время отменяется, запускается с какого-то момента еще раз, а в естественной реальности оно течет дальше - ошибка компенсируется, а не отменяется, потому что вариант ее выбора не детерминирует дальнейшее столь жестко.

В цифровой реальности пользователь приучается не бояться ошибки, быстро и смело пробовать и выбирать из на каждом шаге ограниченного круга возможностей, но все эти возможности дискретны и их мало - на каждом-то шаге. В естественной реальности исправлений почти нет, каждое действие не-ошибочно, поскольку не отменяется и не приводит к "последней ошибке", а компенсируется в малой своей неточности и последовательные компенсации приводят к цели - человек идет, как всегда, чуть раскачиваясь - в результате постоянной коррекции движений. Натоящая ошибка - падение при хдьбе - происходит в самом деле редко. Сам процесс нормального хождения не включает ошибок - он плавно корректирует этап за этапом и продолжается во внешней легкости и естествености, хотя в каждую сотую секунды множество элементов чуть иначе взаимодействуют, чтобы стал возможным следующий этап, находящийся в определенном отношении к образу результата совокупного изменения.

Я это имел в виду про врача и художника. Их действия не продроблены в дискретность альтернатив и потому не содержат ошибок (кроме тех в самом деле редких случаев, когда ошибки случаются). Каждая неточность находит противодействие и компенсацию в следующем ходе и эта неточность не отменяется, а включается в последовательность действий, ведущих к результату. В этом смысле такое скорректированное действие нельзя называть ошибкой - нужно иное слово, чтобы отличать то, что должно быть стерто и отменено от того, что должно найти противодействие и компенсацию в следующий момент и именно в таком своем качестве - частичной правоты - обеспечивает для целого возможность достижения результата. Так ходят по лесу, так плавают и бегают, так (раньше) лечили и так рисуют картины.

Ошибка возникает из-за самой расчерченности пространства возможностей в клетку, из-за создания системы альтернатив. Как только создается среда, в которой каждый выбор достаточно жестко детерминирует последующий ход событий и выборы эти жестко разделены - это в самом деле альтернативные выборы, а не плавное изменение в непрерывной шкале - сразу возникает образ лабиринта с тупиками. Деятель оказывается в лабиринте, когда он мыслит жизнь как систему выборов. Как только мы начинаем внешне ясно и четко разбирать дискретную систему выборов - мы заранее подписались на множественные ошибки и тупики. В этой среде иначе не бывает. Безошибочность может быть достигнута, но для нее нужно создать условия безошибочности - ну, скажем, выйти из города в лес (и научиться ходить в лесу). Конечно, и мастер может заблудиться, и новичок, пока научится, поблуждает, но в городе не существует безошибочного перемещения - а в лесу оно возможно.

Люди, договорившись, создают искусственную среду рисков. Дело не в том, что риски есть и их можно подсчитать - сама среда может быть организована так, что риск будет крайне редким явлением, или так, что катастрофы будут заранее запланированы самими свойствами среды. При этом и лес, и город - богатые среды, речь не о вырожденной сложности - город еще и попроще будет, а управление компьютером попроще работы организма - и тем не менее где сложнее - там безошибочнее. Вроде бы дело именно в том, что действий много, а не мало, управление длительное и тонкое, на текущем процессе с возможностью вывести в правильное (ведущее к цели) русло почти любой последовательности действий. В компьютере, как системе грубой и очень простой, выборы жесткие и сразу ведут к результату, их не изменить, только отменить, дерганая ломаная линия поступков возникает именно из-за этого свойства системы.

Занятно, что ладно бы компьютер. Он, конечно, просто одна из машинок, и ничего более. Человек сейчас свои среды выстраивает компьютертным образом, он себя мыслит в качестве компьютера и - создавая образ себя - перенастраивает свое поведение таким образом. Наверное, чуть не каждый, кто играл в дум или его клоны, помнит, как после игры выходил в реальной жизни из-за поворота в два приема - шатнулся-выглянул потом пошел, или как перед оживленной трассой мелькала мысль - сохраниться бы. Это анекдоты, я знаю, и это пустяки. Я к тому, что мы, напряженно думая о дискретных средах, врабатываясь в них, внимая этим моделям и оживляя их, сами создаем в своей психике деятеля, который живет по законам цифрового мира и начинает в самых разных жизненных ситуациях действовать как при наладке компьютера - то есть катастрофично. Иногда это называют "модельным мышлением", но дело не в том сейчас, чтобы плодить синонимы и вспоминать, как еще это называется в еще одной области.

Можно проследить, как меняется медицина и отношения на производстве между начальником и подчинеными, меняется искусство и в т.ч. живопись - и суждения зрителей о кино - как в самых разных областях безошибочное мастерство забывается и считается уже легендой или примитивизмом. варварством - а на смену ему приходит образ непрерывно ошибающегося мастера. Этот образ тоже можно сделать симпатичным, кто же спорит - на свете вообще нет ничего, что нельзя было бы сделать симпатичным, если постараться. И так меняется весь мир, стили поведения и нормы ожидания. И это - не компьюетр, это результат целенаправленных усилий человечества - на каждом шаге друг другу объясняют, что хотят сделать все проще, яснее и более открытым, получая на выходе безумную сложность, непрозрачность и непрерывные тяжелые ошибки - в целом-то время не имеет привычки останавливаться и снова начинать с какого-то момента. Все эти человечьи игрушки погружены в среду большого длинного времени, и никакие игры не сделают его изменяемым - так что действие путем исправления ошибок все время скребет по самому краю возможности существования.


(Читать комментарии) - (Добавить комментарий)

Re: Она состоит из быстрого исправления ошибок
(Анонимно)
2009-06-11 10:12 (ссылка)
Нет. Имеется ввиду парадигма генетического пограммирования, но не в смысле естественно отбора, как это сейчас топчется, а в смысле генной инженерии.

Генные инженеры занимаются РАСКОДИРОВАНИЕМ (пока что) генома - программы в результате работы, которой формируются чудовищно сложные объекты - живые организмы. Программисты ручками пытаются ЗАКОДИРОВАТЬ объекты сравнительно примитивные (пока что). Когда-нибудь они встретятся и научат друг друга КОДИРОВАТЬ геном, в результате работы которого будут формироваться объекты и системы (биологические, инженерные, программые) очень и очень высокой сложности.

(Ответить) (Уровень выше) (Ветвь дискуссии)

Re: Она состоит из быстрого исправления ошибок
[info]kondybas@lj
2009-06-11 10:40 (ссылка)
А вы можете привести в пример хоть одну отрасль, где поделия человека миновали период внутривидового конкурентного отсева и перешли к интеллектуальному оптимальному дизайну? Так, чтобы не пускать наугад в толпу собратьев по виду, гадая, примет спрос или не примет, а чтоб наверняка, раз и навсегда закрыть тему?

(Ответить) (Уровень выше) (Ветвь дискуссии)

Re: Она состоит из быстрого исправления ошибок
(Анонимно)
2009-06-11 11:14 (ссылка)
Хороший вопрос. Нет не могу. И все же.

Нынешнее генетическое программирование пытается смоделировать биологическую эволюцию. Ну а зачем? Естественный отбор жутко затратная штука. Из миллиона икринок - одна взрослая селедка. Природа мечет икру сразу во всех направлениях, авось где проскочит. Мы же обычно более менее представляем чего хотим. Если начинать с нуля, то сколько миллионов лет и вычислительных ресурсов нам понадобиться, чтобы сгенерить что-то более менее приличное?

Самый ценный результат биологической эволюции для нас, кроме нас самих :) конечно, это принцип генетического кодирования. Он позволяет в скромный по объему геном заложить огромного богатства конечный результат его разворачивания. Надо понять и принять на вооружение. Конечные продукты пусть себе отсеиваются, но их же еще надо получить, а не получаются. Хуже всего то хорошее, что получается - оно не закрепляется, потому что геном его формирования сидит у программиста в голове в некодифицируемом виде и по наследству да и вообще никак не передается.

(Ответить) (Уровень выше) (Ветвь дискуссии)

Re: Она состоит из быстрого исправления ошибок
[info]kondybas@lj
2009-06-11 11:23 (ссылка)
Извините, но я не вижу "принципа генетического кодирования". Я вижу рассуждения об этом принципе, не раскрывающие его сути. Что-то сродни обсуждению экономической целесообразности антигравитационного транспорта.

Нет предмета - нет разговора. Нет ножек - нет и мультиков.

(Ответить) (Уровень выше) (Ветвь дискуссии)

Re: Она состоит из быстрого исправления ошибок
(Анонимно)
2009-06-11 16:06 (ссылка)
Ежели я бы мог четко сформулировать не отходя от кассы, то конечно бы не ждал приглашения, а вовсю уже колбасил соответствующий воркфрейм и еще кучу народу посадил бы на это дело. Впрочем так оно и будет рано или поздно, потому что есть железная в том необходимость, вытекающая из довольно специфической практики. Пусть пока пазл не сложился, но почти все его кусочки уже в кучке.

Очень грубо. Из чего состоит организм? Из белков. Что содержит геном? Описания всех необходимых белков. Белки могут быть строительным материалом, а могут быть элементом управления, например, гормоны, а могут еще бог знает чего делать. Как это работает? Каждый включаемый в работу ген, через генерируемый по его образцу белок как-то воздействует на организм, влияет на развитие и/или функционирование, меняет его, иногда изменения получаютя феерические. От чего зависит включение? От последовательности генов и состояния организма. От чего зависит состояние? От всей истории развития и взаимодействия организма с внешней средой. Итого, геном задает не описание организма как такового, а его эволюцию, через последовательность воздействий или путь через последовательность решений. Теперь можно возвращаться к программированию.

Из чего состоит программа? Из текста :) И все что есть в программном прожекте может быть уложено в тегированный текст, например и XML. Есть и средства преобразования одного XML на основании другого. И собственно больше почти ничего не нужно. Дальше по вышеописанному шаблону из биологии.

(Ответить) (Уровень выше)


(Читать комментарии) -