Сегодня было 13 встреч (коллов) за рабочий день. И еще три на которые я не прошел. Наложился перенос пятницы и обычная текучка. Когда я свернул не туда…
Об этом мало кто говорит, но архитектура это просто правила
Многие думают, что плохая архитектура это отсутствие хороших правил, но на деле, плохая архитектура это просто отсутствие правил
Я видел много проектов, во многих из них разработчики жаловались на плохую архитектуру
Но на деле в них просто не было никаких договоренностей, кодовая база просто как-то развивалась, смотря на часть системы было невозможно сделать верное предположение про организацию других частей этой же системы
Ты читаешь кодовую базу и скорее видишь в ней годовые кольца подходов нежели цельную систему
Многие думаю, что залог успеха кроется в построении идеальной, лучшей, верной системы, упуская самое главное, что в первую очередь мы строим систему
В некотором смысле, это похоже на синдром отложенной жизни, только в инженерной плоскости:
Ради непонятно чего, люди готовы тратить часы и даже годы на споры, не создавая никаких правил сейчас, в надежде что когда-то потом будет тот самый идеальный момент, а пока мы ещё не готовы.
Я думаю не все читали определение архитектуры, я тоже не сразу пошел его читать, а только спустя годы как им активно оперировал:
Архитектура - это набор правил по организации элементов системы и связей между ними.
Когда я его впервые увидел, я в глубине души, если честно, не поверил: неужели все так просто? Да быть того не может, пойдука найду определение получше...
Скажу честно принятие этого происходит не сразу, дайте себе время, ну и давайте время другим, лучшее что мы можете сделать для вашего проекта, если у вас есть проблемы, просто начать фиксировать правила, помогать им следовать, помогать коллегам продвигать свои идеи, ... договариваться.
Это наверное ещё более не очевидная штука, но правила самой системе, не сказать что нужны, они нужны людям, тем кто ее меняет
Мы часто думаем что накладываем правила на систему, но следовать им должны люди
Если люди не договорятся, если не будут следовать, передавать и защищать правила, то и архитектуры у вас не будет.
А когда у вас ее нет, не так важно плохое правило или хорошее вы не смогли принять
Так что когда в следующий раз поймаете себя на мысли что где-то вокруг вас плохая архитектура, найдите одного коллегу и попробуйте хотя бы с ним договориться о чём-то.
И помните соглашения привыше конфигураций.