Тяжела и неказиста...
Mar. 11th, 2013 02:28 pmВсё-таки удивительная штука - жизнь практикующего программиста.
Вот бывает, проектируешь что-нибудь, ну например систему "автомобиль". Напрягаешь свою стареющую память, вспоминаешь все похожие задачи, пишешь так чтобы в случае чего, не напрягаясь, расширять систему по ходу добавления требований. Рассчитываешь чтобы можно было легко наращивать грузоподъёмность. Чтобы можно было подменить стандартный двигатель на аэротурбину или десять мопедных моторчиков. Чтобы количество колёсных пар можно было неограничено увеличивать. Чтобы водители на ходу могли меняться. Чтобы любой прицеп можно было прикрутить и сзади, и сверху, и с любого бока. И чтобы могла ездить и вперёд и назад не теряя ходовых качеств (ведь бывали и такие случаи в практике). И думаешь, что теперь предусмотрел всё и дальше будешь, поплёвывая в потолок, спокойно развивать систему.
А потом внезапно приходят новые требования, в которых пишут "А ещё надо чтобы сверху были вращающиеся рога с воздушными шариками!"
no subject
Date: 2013-03-13 04:01 pm (UTC)Случается так, подходишь к сотруднику и говоришь в неясных образах, смысл которых сводится к задаче клиента, а точнее говоря, чтобы тому было хорошо. Начинаешь объяснять то, что и сам не понимаешь, работник нервничает, говорит, типа, отстань от меня, я могу складывать и умножать, неясные образы мне чужды, они не ложатся ни в фон неймана архитектуру, ни в нейроподобный мозгх. В конце концов, чтобы от него отстали он решает делать автомобиль, а там будь что будет. Будь, что будет наступает в конце, в виде рогов, когда переделывать уже поздно.
no subject
Date: 2014-08-13 05:25 pm (UTC)И получается, что очень важно насколько исполнитель является аналитиком в предметной области или насколько он опытен вообще. Первый попытается понять логику и назначение поставленной задачи и может угадать недосказанное в задании, но может и не угадать. А второй - начнёт строить общие решения, типа колёсной базы для чего угодно, что позволит в будущем менять направление развития, но ценой первичной разработки и последующей эффективности.
Увы, программирование - это не просто.