habr.com взгляд на микросервисы с марксистской точки зрения. Вся статья очень большая, с огромным вступлением, поэтому в коммент скопирую только фрагмент "по делу". Полная статья по ссылке.
Это если есть уже кем то написанная ранее сложная, отлаженная, масштабируемая во все поля система, регламентированная и настроенная на все случаи. Эдакая система в вакууме.
А если нет - никаких таких куштюков с разрабами не будет.
Плюс систему все равно надо кому то поддерживать в целом, а не частями.
Ебнется тындекс из за некого архитектурного трабла - кто то должен будет это чинить, а не писать код микросервисов.
Кстати, микросервисы это не источник проблемы автора.
Проблема его в том, что для большой системы, грамотно спроектированной для максимальной автоматизации - уже нет необходимости для ее расширения и масштабирования нанимать именно разрабов.
По сути автор работает на позиции не разраба, а подстановщика параметров в некие шаблоны скриптов.
Естественно, что предложение масштабировать систему путем введения неких интеграционных компонентов, не вписывающихся в парадигму шаблонизации - это риски для компании.
Вот если б он рассчитал сумму рисков и показал, что данные риски гораздо меньше чем возможные потери от шаблонизации, к которой все равно предлагаемое решение планирует стремиться - ответ, возможно, был бы иным.
> Программирование там в названии должности. Суть в том, что для усиления своей значимости в компании, руководителю департамента нужны подчиненные. Больше - лучше.
Так там описыватся модельная ситуация, когда можно было в теории и подчиненных штат увеличить и результат получить, а пока подчиненные пилят микросервисы - провести анализ на том, что есть и в итоге выйти и с готовой аналитикой и с обосновой ценности штата и себя лично.
> организация производства. процесс разработки стремятся сделать более предсказуемым (управляемым и планируемым). всем, в целом, плевать на творческую глубину автора. если, конечно, на предприятии не используются какие-то методики по повышению мотивации.
Да как не назови, политика, организация производства, - в данном случае не суть вопроса моего.
Суть в том, - просто в силу организации производства плевать на глубину авторов или глубины у авторов в целом просто нет, как по твоему?
> если правильно понимаю, логика делать универсальный код, переделать который может любой индус
Не совсем, как я понял.
Логика в том, чтобы процесс создания кода автоматизировать так, чтобы индус мог лепить код просто подставляя параметры в некий шаблон.
Как на конвеере.
Переделывать код это опять компании зависеть от индуса.
Цель - максимальная независимость компании и ее техпроцесса от конкретного исполнителя и т.о. снижение рисков и через это снижение рыночной цены труда исполнителей в целом, повышение нормы прибыли за счет этого в настоящем и будущем, даже при расширении штата.
Идея рабочая, однако только если есть мегаплатформа, она отлажена десятилетиями и не нуждается сама по себе в архитектурной доработке в долгосрочной перспективе.
Естественно, сами по себе ни разу не бэд.
> Красиво — небольшое.
Главное не размер !!!
Главное - соразмерность и согласованность.
> Пусть каждая программа делает что-то одно, но хорошо.
Предпочитая масштабируемость эффективности - это смотря с какой т.з. будет хорошо.
С т.з. эффективности - вопрос, хорошо ли это.
> Предпочитайте переносимость эффективности.
См. Выше. И важен баланс все же.
Иначе недолго утонуть в фреймворках, решая простые задачи.
> Храните данные в простых текстовых файлах.
То-то я вижу известные СУБД так и делают, ага)
Всякой задаче свой формат полезен. И текстовый в т.ч.
> Извлекайте пользу из уже существующих программных решений.
Так и рождаются нагромождения макросов на экселе вместо разработки БД )
Зачем, ведь существует эксель!!!
Всему своя мера же.
> Используйте скриптовые языки для уменьшения трудозатрат и улучшения переносимости.
Это слой сценариев по сути.
Когда программа "сама своему сценарию рантайм компилятор".
До определенного предела да - неплохо.
> Избегайте пользовательских интерфейсов, ограничивающих возможности пользователя по взаимодействию с системой.
Скорее избегайте организации интерфейсов, ограничивающих разработчика для дальнейшего расширения.
Это да.
Но.
Избегание тоже должно быть в меру.
Зависит от задачи.
> Делайте каждую программу «фильтром».
Ну такое себе.
***
В целом абсолютизация этих принципов так же спорна, как и их игнорирование, ибо принципы неплохи.
Такая же история.
> Автор производит впечатление малолетнего долбоёба не понимающего ни в разработке ПО, ни в жизни.
Есть такое впечатление слегка.
Воткнуть в сложную систему новый компонент, который будет опрашивать все события вне основной архитектурной парадигмы - да, риск.
Однако речь не просто об этом.
А также и о том, как мотивировал руководитель.
Плюс обрати внимание, чтобы реализовать функционал сбора статистики ему потребовалось 4 года, если автор нам не врет нагло.
Так что дело, возможно, не только в детектируемом долбоебизме автора.
А если нет - никаких таких куштюков с разрабами не будет.
Плюс систему все равно надо кому то поддерживать в целом, а не частями.
Ебнется тындекс из за некого архитектурного трабла - кто то должен будет это чинить, а не писать код микросервисов.