metaclass: (Default)
metaclass ([personal profile] metaclass) wrote2009-04-27 03:30 pm

О синдроме NIH

Как наши многоуважаемые читатели уже могли заметить, мы с ребе [livejournal.com profile] belnetmon страдаем синдромом NIH в особо запущенной и тяжелой форме. Симптомы усугубляются еще тем, что мы сами это осознаем, но избавляться от него в большинстве случаев не собираемся.

Этому есть объяснение, и самым кратким образом оно описано вот тут:
Ссылка

1. Использование готовых решений, увы, стоит очень много времени. Вот как только понадобится перейти на новую версию ОС, на которой работает только новая версия решения, уже несовместимая со старой - сразу и будет стоить.

2. А тем, что этот кусок не сломается внезапно.

Никогда не сталкивались с тем, что вы приезжаете к важному заказчику ставить систему, а у вас сторонний модуль начинает кидать коней из-за несовместимости с какими-нибудь тонкими квантовыми эффектами настройки компа, ОС или инфраструктуры у оного заказчика?
Или когда система в силу особенностей реализации сетевых протоколов сразу же демонстрирует все грабли в настройках сети, типа глюков с фрагментацией пакетов и MRU.

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

А если "готовое решение" - это программно-индусская жопа в виде хреново документированных готовых бинарников, вызываемых через несколько слоев COM-объектов, сетевых вызовов и прочей жути, там даже мне лень в эти дебри лезть.

[identity profile] mr-aleph.livejournal.com 2009-04-27 12:55 pm (UTC)(link)
хо-хо-хо!

если вы не пользуетесь собственным компилятором Modula-2 написанным на Modula-2, то вы не страдаете NIH =)

прогроммисты, мля

[identity profile] oldmann.livejournal.com 2009-04-27 01:01 pm (UTC)(link)
в бытность мою интегратором, я к заказчику тащил клон системы, предварительно развернутой и протестированной в лабе. полный клон, включая ОС со всеми ея патчами.

[identity profile] vp.livejournal.com 2009-04-27 03:08 pm (UTC)(link)
Ну вот свежая жопа, когда сервер при наличии двух сетевых интерфейсов случайным образом биндится к одному из них "который больше понравился", и все :) И делай ЧТО ХОЧЕШЬ.

[identity profile] volodymir-k.livejournal.com 2009-04-27 09:40 pm (UTC)(link)
> Никогда не сталкивались с тем, что вы приезжаете к важному заказчику ставить систему, а у вас сторонний модуль начинает кидать коней

Может Вы хотите сказать, что написанный Вами никогда так не глючит? Ха-ха три раза.

> в исходниках можно разобраться и пересобрать их с отладочной инфой и есть тот, кто в них разбирается.

Итого:
- в стороннем коде надо разбираться, если будут кони (вероятность p1)
- в своём коде надо разбираться при написании (100%) +и если будут кони (p2)

покажите мне выгоду?

[identity profile] slonopotamus.livejournal.com 2009-04-28 07:30 am (UTC)(link)
Развивайте скилл быстрого погружения в чужой код.

[identity profile] alexclear.livejournal.com 2009-04-28 07:42 am (UTC)(link)
1. Использование готовых решений, увы, стоит очень много времени. Вот как только понадобится перейти на новую версию ОС, на которой работает только новая версия решения, уже несовместимая со старой - сразу и будет стоить.

Поэтому Kolab при развертывании собирает полсистемы, начиная от компилятора.
А Zimbra идет в виде virtual appliance с надписью "руками не трогать".