В Украине есть такие ребята — “Агенти Змін”. Это группа из архитекторов, дизайнеров, урбанистов и прочих сочувствующих, которые (если вкратце) на волонтерских основах занимаются улучшением дизайна города и сопутствующими вещами. Например, они совершенно бесплатно разработали для киевского метрополитена схему метро и она теперь везде используется. А еще они разработали “Київський Стандарт” в котором описали множество урбанистических проблем Киева (которые, впрочем, характерны практически для всех городов пост-советского пространства) и предложили пути для их решения.

В частности, там есть несколько параграфов о том, почему многоквартирные дома плохо влияют на социальные связи между людьми. Говорится о том, что из-за большого количества жителей, например, подъезд и придомовая территория принадлежат, как-бы никому, и воспринимаются людьми как “ничейная” территория, а то и вообще как враждебное окружение и никто не заинтересован в его улучшении. В частности поэтому, например, многие подъезды у нас в довольно плохом состоянии (для жителей новостроек у которых все еще все ок — давайте проверим через 10-20 лет, все-таки большая часть жилого фонда строилась очень давно).

Вот у меня в подъезде ремонтировали летом окна. Во время ремонта оторвали кабель витой пары, который был натянут возле него. Кабель остался висеть и висел так, наверное полгода, и никто не потратил 5 минут чтобы прибить его обратно (или уложить в короб). Людям просто наплевать как выглядит их окружение, и это меня невероятно бесит. Из таких мелочей состоит наша повседневность, и когда ты каждый день видишь изрисованные двери, лапшу из кабелей разных провайдеров, заводские наклейки на окнах, которые не сняли мастера то это начинает переноситься и на твою обычную деятельность.

Проведем параллель с рабочим кодом — в нем тоже “живет” много людей, но, в отличие от большинства квартир, срок жизни тут недолгий, и глупо ожидать что люди будут относиться к нему как к “своему”. Поэтому часто на проектах у нас такие же проблемы как и в подъездах.

Как с этим бороться? Создавать правила и окружения, в которых люди не смогут косячить или им это будет невыгодно. К сожалению, мы не можем ввести админ ответственность за дырки на стенах, хлам на этажах и мусор по утрам возле двери, однако А3 предлагают правильно организовывать публичные пространства, а нам на проектах можно начать с того, чтобы закрутить пожестче гайки статических анализаторов кода и лапши уже должно будет здорово поубавиться.

Люди — существа, которые идут по кратчайшему пути если их не ограничить, и нанимай не нанимай ты “лучших” программистов, рано или поздно проект станет очередным легаси, если на нем нет жестких стандартов качества. Поэтому я не верю в баззворды SOLID, DRY и тд без тестов, без статических анализаторов с жесткими ограничениями и прочими метриками.