Сегодня столкнулся с тем, что коллеги иногда болтают с горяча лишнего, основываясь не на рациональной, подтверждённой экспериментально, мысли, с цифрами на руках, а на сиюминутной эмоциональной экспрессии. Предлагая велосипеды там, где они не помогут. С любителями «старой доброй, самой лучшей школы мысли и жизни» столкнулся. С любителями платиновой сишки.
Вводные: Есть некоторый restful API сервис, который написан серьёзными энтерпрайз разработчиками на Джаве. Spring Boot, КроликЭмКу, стандартный набор батареек, ну и аппаратные устройства, назовём их вычислительные устройства (ВУ). Этот сервис активно работает в проде, проблемы есть но в основном из-за запутанности (корпоративно-исторически обусловленной запутанности) архитектуры и неидеальности оперативной организации труда этих энтерпрайз разрабов. Но в общем и целом - ничего экстраординарного для реального опыта проблем в индустрии. Но зависть к ребятам большая, типа они разрабы, а мы - их клиенты.
Но ребята типа дорогие, а бизнес всегда хочет сэкономить, тем более кризис экономики… Возникает идея («ты ж программист!»), типа, для новых проектов, где не самые пиковые нагрузки, слепим что-то попроще, без очередей сообщений, без кровавого джава-энтерпрайза, просто возьмём где можно опенсорс батарейки, слепим, протестируем - и ОК. На Питоне. Сказано - сделано, и оно даже работает, и клиенты счастливы.
Но вот, в один прекрасный день, поступает предложение. Переписать прокладку между собственно веб-сервисом и ВУ с Питона на C. Мотицация - не хотим использовать опенсорс-обёртку, мало ли кто там её разрабатывает? а вдруг он завтра под поезд попадёт, и мы не сможем эту обёртку поддерживать. А атаки на каналы поставки, официальную репу PyPI, и вот это всё не наше хозяйство? И вообще, Питон медленный, переусложнённый и не готов для промышленного применения. Перепишем эту обёртку на C. На вопрос «а если потом таки будем очередь сообщений добавлять, то в неё писать и из неё читать тоже на сишке?» следует ответ «ну конечно!»
Дальше, предлагаю, коль скоро не устраивает производительность кода на питоне, взять таки Джаву, ведь у серьёзных энтерпрайз ребят она уже работает. Ответ: «ну ты же видишь, что на этой Джаве у нас как-то всё тормозит?!» А откуда они знают, что в Джаве причина тормоза, а не в архитектуре? А кто-то измерял самые простейшие вещи, типа загрузки процессора сборщиком мусора? Нет, никто ничего не измерял.
Предлагаю C++. Опять воротят нос, мол после стандарта образца xyz года там такого наворотили, что чёрт ногу сломит. Говорю «а кто-то заставляет непременно фичи новых стандартов использовать?» В ответ тишина. Не подходят людям технологические достижения в языках высокого уровня за последние 50 лет. Предпочитают ковбойский сишный наскок, а там - будь, что будет…
Как с такими людьми работать?











