#9568: DRY me a river
12:45 15.07.2012, IT happens
Конечный покупатель не станет платить за программные модули, которые ему не нужны. А платить за модули, из которых используется пара методов, как минимум нелогично. В частности мало кто может обосновать покупку XI, хотя при правильном использовании можно получить довольно много ощутимых плюшек. Вот только развёртывание XI — задача трудоёмкая. В каждом модуле есть свои методы именно для того, что бы конечный пользователь гарантированно получил работоспособный продукт. И если консультанты работают с одним конкретным заказчиком, то разработчики SAP делают для неопределённого круга лиц. А это, согласитесь, несколько сложнее.
Использование чужих пакетов требует довольно длительной и трудоёмкой процедуры согласования, что побуждает банально скопировать чужой код и пользоваться им. С другой стороны, нет никакой уверенности в том, что работающий сейчас метод внезапно не поменяет интерфейс. Софт, на него опирающийся, внезапно перестанет работать у огромного количества клиентов сразу, а время простоя — это упущенная прибыль.
Специфичные для России бизнес-процессы зачастую реализуют иностранные отделения, которые знают о том, что нужно сделать, только из спецификации, которую тоже писали не в России, пытаясь прочитать результаты трудов отечественных законотворцев.
Много ещё чего можно сказать и про стандартизацию, и про унификацию разработки, но зачем? Если за десять лет работы с SAP вам не открылась гибкость, возможность выбора и умение находить оптимальные варианты, возможно, вам просто не стоит этим заниматься. Попробуйте гвозди забивать. Хотя нет — там ведь длины разные, сталь и сплавы всякие, диаметры тоже, маркировка у разных производителей. Опять же, молотки.
#9569: Принт-форс-мажор
12:15 16.07.2012, IT happens
Сам всегда ругал работников, которые картинки сохраняют в Ворде. Но однажды, когда стандартными средствами винды никак нельзя было распечатать TIFF-файл, нужно было «вот прям сейчас, иначе всё пропало», а подходящие приложения поставить просто не было времени, я сделал страшное.
Я вставил TIFF в Ворд и спокойно нажал Ctrl+P.
#9570: Ждём в гости космических дятлов
12:15 16.07.2012, IT happens
Что было бы, если бы программисты строили дома? Не буду говорить за всех, но расскажу, как их строила бы наша команда из двух фрилансеров, программиста, время от времени ковыряющегося с паяльником, и аппаратчика, который не прочь написать пару строчек кода, а потом ещё пару сотен.
Дом построен из самых обычных на вид железобетонных плит. Впрочем, при просветке интравизором становится ясно, что если материал и имел что-то общее с железобетоном и плитами, то разве что на стадии выбора материала.
Все отверстия и каналы строго типизированы и документированы, а их геометрия выдерживается с точностью не менее шести знаков после запятой. Для целых чисел.
В Доме всегда есть обширный запас резервных блоков, плит и универсальной субстанции, принимающей любую форму и содержание. Да, он самовосстанавливается, а что?
Дом связан с другими Домами и обновляет список разрешённых к созданию предметов интерьера динамически вместе с чёрными списками. Доступно также клонирование жильцов при несчастном случае внутри Дома.
Дом обменивается служебной информацией с другими Домами.
Аварийный переход к полной автономии — штатный режим функционирования Дома, как и защита от неблагоприятных внешних факторов, не говоря уже об индивидуальном климат-контроле с воспроизведением, например, грозы.
99,5% времени наши Дома не тратят впустую энергию, а просто спят.
Первый же залетевший дятел, говорите, уничтожит цивилизацию? Нашу — только если это будет космический дятел, желающий санировать «шарик» полностью. Если успеет. У наших Домов очень силён защитный инстинкт — на сбор «ядерного кулака» из ничего уйдёт минут пятнадцать.
А все почему? Сразу были выкинуты напрочь все «современные» среды и технологии. Нам не хайвмайнд собирать, а работать надо. Был выбран компилятор с неплохой библиотекой, отвечающей нашим целям, генерирующий стабильный логичный код — разумеется, Си с «плюсами» в следовых количествах. Мы никогда не писали тест-кейсов — это пустая трата времени, если код написан очевидно. Вы же не пишете тест-кейсы для while(1)? Никогда не менялись работой — каждый должен сделать то, что умеет лучше, и суметь объяснить, как этим пользоваться. У нас никогда не было менеджера: нет бригады дармоедов — нет и работы для дармоед-контролёра.