http://thedeemon.livejournal.com/96870.html По-моему, это метафорическая иллюстрация к программированию вообще.
1. Пользователю наплевать на технические аспекты
Потребителю, программы, в-общем, всё равно, как она устроена внутри, лишь бы выполняла функции
2. ТруЪ-решения и наколенные
Чаще всего оптимальное решение всем известно, но по каким-то причинам используется совершенно бредовое, которое, тем не менее, прижилось и никто не жалуется.
3. Refuctoring после увольнения ключевого сотрудника
Могло оказаться так, что хвост раньше был чёрный и нормальный, но понадобился белый, а проектировщик чёрного хвоста уже уволился и новый другого цвета делать некому. Те, кого наняли, не придумали ничего лучше, чем использовать голову куклы-блондинки, к ярости уволившегося тимлида из-за того, что над его детищем надругались долбоебы и теперь проект стыдно упоминать в резюме.
5. Лишние зависимости
Оказалось, что готовых хвостов в продаже нет, но есть головы по приемлемой цене. И голову от хвоста никак не отрезать, потому что и волосы распадутся, т.к. удерживаются не столько резинкой, сколько пластиком головы (кто вырывал волосы куклам в садике, знает). Более того даже если отрежешь - лысые головы никому не нужны, т.е. выгоды никакой
6. Почему компании часто предпочитают смерть проекта открытию исходного кода
Потому что все увидят кукольные головы внутри, и это будет ущербом для репутации компании. Чтобы открыть код, надо сначала нанять команду, которая если не переделает хвост на нормальный, то хотя бы отрежет кукле внутри хотя бы полголовы, чтобы никто не догадался.
7. Необходимость стартапу быть пластичным и выпускаться как можно раньше
Могло оказаться так, что изначально планировалось сделать как раз куклу - конкурента для Барби, с особо мягкими волосами как ключевой фишкой. Но со временем выяснилось, что куклы не нужны, но лошадки вот пользуются спросом, и надо срочно куклу переделывать на лошадку. Естественно, лучше запуститься хотя бы так, а потом когда дойдут руки, убрать голову, всё равно надо быть специалистом чтобы додуматься.
8. Любовь к определённым приёмам
Могло оказаться так, что директору или ведущему разработчику очень нравились блондинистые волосы, и он тулит их во все проекты, даже если это не нужно. Да чё, классный же цвет!
9. Любовь к стабильности и запрет рефакторинга
Несмотря на то, что голова смотрится дико, если делать новый хвост, может оказаться, что волосы не удастся с первой попытки хорошо закрепить, и покупатели начнут жаловаться на то, что лошадь лысеет. А со старым решением она заведомо не лысеет, т.к. жалоб на это нет! Поэтому что-то делать с головой запрещено.
10. Почему нельзя давить на разработчика по срокам
Если лошадь нужна как подарок на юбилей вечером в воскресенье, а об этом сообщили изготовителю только в субботу утром - то не стоит удивляться, что для хвоста ему пришлось раскурочить дорогущую куклу и включить в стоимость, и юбиляру так и подарили потом с головой внутри.