время строить и время дестроить

May 23, 2008 22:47

Где-то пару лет назад мне по работе нужно было встроить в систему, которую мы поддерживаем, некоторую дополнительную функциональность. Я проковырялся сколько-то времени, аккуратно встроил, и стало лучше, чем было.

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

Не правда ли, напоминает историю с закапыванием и выкапыванием телефонного кабеля в "Москве-Петушках"? :)

При всей незначительности примера он хорошо иллюстрирует переход системы в новое качество. В чём суть? Система умела взаимодействовать с внешним относительно себя объектом П. Нам нужно было провести эволюцию этого объекта до нового качества, не нарушив взаимодействия. Поэтому, взяв за основу старый объект типа П1 мои коллеги построили его новую инкарнацию типа П2. А я научил систему различать между объектами типа П1 и объектами типа П2, поскольку в переходный период это различение было необходимо. Потом объекты типа П1 отмерли естественной смертью, остались только П2, так что способность к различению двух типов превратилась в обузу, и ради красоты это различение было снова удалено.

Пожалуй, подобную "посредническую" функцию исполняют строительные леса. Они пристраиваются к дому в изначальном качестве, потом дом ремонтируется, приобретает новый вид, а потом леса разрушаются.

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

смерть, applied systemogenesis

Previous post Next post
Up