Понимание интероперабельности
- Aerospace A – разработчик самолетов;
- Aerospace B – разработчик авиационных двигателей;
- Software vendor A – разработчик программного обеспечения soft A;
- Software vendor B – разработчик программного обеспечения soft B.
Aerospace A разрабатывает самолет, используя soft A;
Aerospace B разрабатывает двигатель для этого самолета, используя soft B.
И вот двигатель разработан, и Aerospace B высылает в Aerospace A электронную документацию в формате soft B. Открыть документы не получается, и Aerospace A обращается за помощью к Software vendor A: как нам быть? Нельзя ли обеспечить возможность обмена данными между soft A и soft B? От Software vendor A приходит ответ: soft B – это отстой, пускай ваши партнеры переходят на soft A, и никаких трудностей не будет. При обращении к Software vendor B приходит симметричный ответ. Следует иметь в виду, что и Software vendor A и Software vendor B – предприятия с миллиардными оборотами, и вынудить эти предприятия что-то сделать могут только столь же мощные предприятия, например, компания Boeing. Boeing – мощная компания. Больше половины пассажирских самолетов на Земном шаре произведены компанией Boeing.
Кроме того, существуют международные объединения пользователей, к которым также могут прислушаться крупные разработчики программного обеспечения. Ведь в этих объединениях участвуют ведущие специалисты того же Boeing, Airbus, NGC и им подобных.
И вот однажды на пленарном заседании одной конференции (вообще-то она называлась «summit») слушал я выступления Джеймса ДеЛаПорта (James DeLaPorte), как раз о взаимодействии компьютерных программ. Джеймс – крупный специалист, к его мнению можно прислушаться. Он поработал в компаниях Gulf stream, Boeing, NGC, ныне, кажется, работает в Rockwell Collins. Помимо этого, Джеймс, поскольку он умный и шустрый, а говорит так, что заслушаешься, постоянно организовывает различные объединения и рабочие группы. В том числе – и по организации взаимодействия между компьютерными программами.
Джеймс рассказал, что они в своем объединении или рабочей группе изучают вопрос взаимодействия компьютерных программ, формулируют требования к разработчикам этих программ и направляют разработчикам требования. При этом разработчики не слишком-то прислушиваются к этим требованиям. Отчего так – это не для литературного сайта. Но если кому интересно – пишите, слеплю эссе на полстраницы.
Не буду упоминать конкретных разработчиков. Кто в теме, догадаются. Кто не в теме – зачем им знать.
Джеймс рассказал, что Software vendor C нехотя, не сразу, но выполняет требования. Software vendor D после продолжительной серии пинков хоть отчасти выполняет требования. А от Software vendor E – ни ответа ни привета. Я заинтересовался, поскольку вопрос для меня знакомый и близкий. И запомнил.
А задолго до этого работал я в одной НИЛ (Научно-Исследовательская Лаборатория). Среди сотрудников большинство были программистами, был один сотрудник типа завхоза, две девочки-машинистки. И был еще один сотрудник, который как программист был пустым местом. Ни в чем толком не разбирался. Совершенно бесполезный для общего дела. Но жить-то надо, и он «учился» в аспирантуре. Точно не помню, или не знал. Но, кажется в советскую эпоху стипендия аспиранта была Девяносто рублей. Концы с концами можно сводить, а ежели еще и родители помогают…
И вот однажды, много лет спустя, когда этой НИЛ давным-давно уже не было, я случайно повстречал на улице Бывшего Аспиранта. Не знаю, защитился ли он, приобрел ли ученую степень. Не о том базар.
А Бывший Аспирант к тому времени стал крупным руководителем в российском отделении то ли Software vendor D, то ли Software vendor E. Не важно, тем более, что он и там и там успел поработать. Понятно, отчего он стал крупным руководителем. Назначь на должность грамотного толкового специалиста – специалист побегает, пообщается с пользователями. Поймет, что пользователям хочется. А потом, глядишь, и откроет свой startup.
Поздоровались мы с ним, обменялись дежурными фразами. А потом я говорю ему: “что твои Хозяева вытворяют!!! Вот Джим ДеЛаПорт на вас жалуется”.
И пересказал то, что услышал на конференции.
Бывший Аспирант меня внимательно выслушал и произнес фразу, которая меня поразила:
- да, Петя, ты все правильно говоришь. Наша фирма прилагает колоссальные усилия для обеспечения возможности взаимодействия с другими программными продуктами. И мы добились в этом направлении ведущих позиций в мире.
Резюме. Бывает так, что читатели не совсем понимают, что я хотел сказать. Или совсем не понимают. Заметка сия не про самолеты, не про компьютеры. А про тех ответственных работников, которые или не слушают собеседника, или все понимают наоборот или слышат только то, что им хочется услышать.
Свидетельство о публикации №225112500307
Интерфейсный адаптер - слой (hard или soft), обеспечивающий передачу данных в требуемом виде(формате) по определённым протоколам.
Применимо ли это к человеку. Конечно. Понятие интерфейса покрывает не только информатику, это не только и не столько API, сколько о том, чтобы что-то сказать и быть понятым. Для этого существуют языки, протоколы и адаптеры (устройства сопряжения, шины, маршалинг), прокси-паттерны и т.д.
Способность понимать друг друга зависит от среды, в которой человек рос и учился, и от желания понимать. Научиться этому сложно, но можно, если есть желание.
Дмитрий Кальянов 25.11.2025 18:00 Заявить о нарушении
С Джимом я впоследствии связался, и один раз он даже приезжал в Москву провести семинар. Аппаратными интерфейсами мы с ним не интересуемся. Я сформулировал концепцию, впервые изложенную на той конференции. Поскольку Джим одобрил ее, мы с ним обменялись. Я подарил ему треугольник, который стал называться "Треугольник ДеЛаПорта-Шильникова", а он подарил мне фуфайку с надписью "Kennedy Space Center". Сам он непосредственного отношения к космодрому не имеет, просто живет поблизости. Фуфайку можно увидеть на фото на моей странице.
Суть написанного - взаимодействие с собеседником, который или не мог или не хотел понять совершенно однозначное сообщение, которое я как бы передал от Джима хозяевам той фирмы.
Шильников 25.11.2025 18:16 Заявить о нарушении
Дмитрий Кальянов 25.11.2025 18:42 Заявить о нарушении