забавно наблюдать, как современные технологи отчаянно пытаются понизить сложность управления зависимостями
например, товарищи из Go серьезно заморачиваются на то, чтобы вычитывать код зависимостей, и складывать в lib только нужное, руками. И сишники тоже. Прямо как монахи, такая дисциплина.
сложность систем растет очень быстро - еще недостаточно быстро чтобы случилась экспонента и сингулярность, но уже достаточно, чтобы проект через год-два становился умонепостигаемым. Слишком много кода, слишком мнгого зависимостей.
новые фреймворки появляются быстрей, чем ты успеваешь прочитать новости об их появлении, зачастую ты узнаешь о существовании какой-то вещи --- по ее некрологу
например, раньше люди печалились, что обычный Hello World в Java заставляет загружаться 2000 классов. Сейчас чтобы написать Hello World уже недостаточно функции main с принтом - теперь нужно подключить гипервизоры докеров, внутри которых живет микросервисная платформа, под управлением которой живут жирные Спринги и веб-фреймворки, которые в конце концов с помощью ReactJS таки напишут чертово Hello World. Сколько там классов - уже никто не считает. Десятки тысяч, сотни?
мы (люди) не выиграем это войну. По сути, война уже проиграна, толком не начавшись - воины со стороны людей, ака хорошие разработчики - на войну не явились, их слишком мало.
соответственно, первое время - максимум лет 10 - это всё еще будут обрабатывать детерминированные алгоритмы, по типу поиска бинов в Спринге. Но следующий этап эволюции - это когда зависимости и конфигурацию собирает ИИ (что бы слово «ИИ» ни значило - все возможные варианты).
человек в этом будет участвовать только в том смысле, что будет указывать векторы поиска, подчеркивать тренды, намечать стратегические цели. Например, не «хочется, чтобы был спринг:мвц:1.2.3-SNAPSHOT», а «хочется чтобы какой-нибудь веб, чтобы вон те тесты выполнялись».
а в следующей части будущего, уже и четкие тесты не понадобятся. Т.к. например для публичных веб-сервисов маркетологи (читай продакт-менеджеры) все равно собирают хотелки статистически - а это звучит как прямая цель для ИИ
мы сейчас на самой грани пропасти, когда еще шаг - и мы стремительно перестаем напрямую управлять чем-либо, и в точности понимать как что-то работает. В смысле, системные программисты еще будут (кому-то же нужно делать кирпичики), а прикладники - уже всё. И в эту пропасть в самое ближайшее время прыгать!
поэтому вопрос - кто из присутствующих прямо сейчас чувствует себя в силах написать нечеткое управление зависимостями?
может, уже что-то такое есть, чтобы можно было попробовать? Какая-то надстройка к Webpack, или Maven/Gradle, итп. Платформа желательно - Java