Re: Интерфейсы и администраторы
Никакого смягчения позиции. У нас просто разное видение архитектуры программного комплекса одного ведомства. Я считаю, что в рамках одного начальника невозможно определить, где границы модулей: они могут заказываться очень хитро, это вопрос финансовый, а не архитектурный (границы заказа модулей могут не проходить по собственно границам задач, скажем один софт бьется на три маленьких лота ввиду ограничений финансирования -- такое сплошь и рядом). То есть я считаю, что модули, в своем общении не выходящие за границы ведомства (или ГУП или одного юридического лица) -- это друг другу братья, сестры, подпрограммы. И тут, конечно, можно рекомендовать специфицировать границы, но только рекомендовать.
Но вот ежели общение модулей начинает пересекать границы ведомства, то можно с огромной вероятностью ожидать, что по ту сторону границы модуль другого разработчика и гарантированно модуль другого сисадмина/аутсорсера хостинга. В этом случае специфицировать интерфейс обязательно.
В моих рассуждениях вообще нет "обманщиков-копирайтщиков-проприетарщиков". У меня нет такой категории людей, я с ними не борюсь специально. У меня есть определенная логика, которая иногда пускает их, а иногда не пускает. Я не слежу специально за тем, чтобы не пускать из-за каких-то "священных принципов". Когда я борюсь с копирайтом, то я борюсь сразу с соответствующим законодательством (что имеет место быть), а не по-мелкому и не по делу.
Код же у меня должен быть открыт в том случае, ежели в нем есть хоть какая-то поддержка административных процессов, а не просто программазмов (транспорта, например -- транспорт может быть хоть каким закрытым, ежели его интерфейс четко определен, ибо транспорт по определению ходит между ведомствами, поэтому речь идет только об интерфейсе).
У меня также критерий есть для АПО: как только в АПО встречается что-то из раскрытия информации, или учета, или аудита, или административных процессов, то это вычеркивается из слоя архитектуры программного обеспечения и вписывается в модельный слой. А АПО занимается только программными интерфейсами "общего назначения", инвариантными к целям использования.
И поздравляю с появлением в ЖЖ, тут вы встретитесь с гораздо бОльшим числом знакомых, нежели можете ожидать.