![]() |
Lava flow | ||
На википедии антипаттерн «Lava flow» находится в разделе «Programming anti-patterns», но я считаю, что ему все же место в разделе «Management anti-patterns». По крайней мере как это бывает в России. | ||
Предположим что у вас есть какая-то подсистема. Эта подсистема досталась вам в наследство от прошлого владельца. Она вроде как работает, но при этом имеет совершенно уродливую реализацию, затрудняющую ее дальнейшее сопровождение и развитие, и является самым настоящим музеем антипаттернов. Для того чтобы привести эту систему в порядок (что чаще всего означает «переписать заново»), придется потратить немало сил и времени. Многие руководители боятся пойти на такой рискованный шаг, продолжая двигаться по пути наименьшего сопротивления. Мол, «работает, и ладно». Подобный отказ от приведения системы в порядок и является антипаттерном «Lava flow». | ||
Я особенно трепетно отношусь к этому антипаттерну. Когда я сталкиваюсь с ним в реальной жизни, я всегда жалею о том, что не родился штандартенфюрером «СС» или древнекитайским пыточником. «Lava flow» особенно часто встречается в коде, у которого сменилось не одно поколение хозяев. | ||
Предлагаю вашему вниманию мини-пьесу, написанную лично мной, которая так и называется: «Lava flow». | ||
Г е н е р а л ь н ы й (в отдел кадров). Уволить этих бездарей! Найдите мне нормальных специалистов! …спустя три недели новые специалисты сидят на рабочих местах и изучают проект. J u n i o r d e v e l o p e r (про себя). Как тут все сложно… Жизни не хватит чтобы понять как все это работает… Меня наверно уволят… S e n i o r d e v e l o p e r (громко и недовольно). Кто учил этих мудаков программировать?!! Нет, ну вы посмотрите что они тут пишут! Г л а в н ы й а р х и т е к т о р (задумчиво). Если бы это была лошадь, я бы посоветовал ее пристрелить… T e a m l e a d e r (нервно). Спокойно, мужики. Заказчик хочет чтобы мы просто кое-что тут дописали. Оставим все как есть, просто доделаем то, что требуется. P r o j e c t m a n a g e r (обращаясь к разработчикам). Проект конечно тяжелый, но мы ведь справимся! Тем более мы будем вести разработку по самой лучшей методологии! Нам поможет XP! Scrum! TDD! (нужное подчеркнуть). Г л а в н ы й а р х и т е к т о р (поймав project manager-а в курилке). Ты ведь понимаешь, что проект уже бьется в предсмертных конвульсиях. Его нужно полностью переписать. P r o j e c t m a n a g e r (Главному архитектору). Да все я понимаю, только кто мне это позволит? Знаешь сколько уже потрачено бабла на этот проект? Попробуй объяснить генеральному, что нужно все переделать, я посмотрю насколько быстро ты отыщешь живописное местечко под названием «нах#й». P r o j e c t m a n a g e r (Оставшись один в курилке, глядя в окно). Вот начнем мы писать проект заново. И облажаемся. Я же во всем виноват буду, с меня же шкуру спустят. Ну его нафиг. А так, если сроки и завалим, то я всегда смогу свалить все на то, что проект уже был полным говном, когда достался нам. …спустя пол года. Г е н е р а л ь н ы й (в отдел кадров). Уволить этих бездарей! Найдите мне нормальных специалистов! |
|
Статистика |
|