понедельник, 26 декабря 2011 г.

[prog.memories] Несколько хороших историй на тему инженерной археологии

…нашлось в разделе юмора на RSDN, хотя место им вовсе не в юморе. Вот они:

Память фирмы (не про программирование, но очень поучительно)

Археология исходников в блоге ув.тов.ShaggyOwl

Археология исходников в Компьютерре за авторством ув.тов.Виктора Шепелева.

На тему первой истории (про установку производства полимеров и “левые” копии технической документации у инженеров) мне вспомнился случай, который произошел со мной.

Когда-то давным-давно сделали систему для большого заказчика. Причем сделали так – есть софт на нашей стороне, есть софт на их стороне. То, что на нашей стороне, мы полностью делали сами. То, что на их стороне – в основном их собственная разработка, в которой использованы наши библиотеки. Понятное дело, что как только возникало что-то странное в работе софта на их стороне, то всех собак вешали на нас (“Ваша библиотека работает не правильно!”) и мы с шилом в заднице пытались найти у себя проблемы, которые чаще всего были не у нас.

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

Минуло еще года три и случился большой Бах-ТРАХ-Тара-Рах (причем ТРАХ именно с большой буквы во всех смыслах этого слова). В конце-концов проблема была найдена – зацикливание при разборе принимаемых данных. Но этого было мало, нужно было еще как-то указать, откуда она взялась. И тут очень пригодился валявшийся все это время без дела архив – зная что именно искать я, в итоге, нашел место, где происходила ошибка. Хотя, по хорошему, этих исходников у меня быть не должно было ;)

Отправить комментарий