Сломались мессенджер, инстаграм — пользователи не могут залогиниться, не могут отправить сообщения. Я давно наблюдаю за жизнью больших систем в разных компаниях, большинство из которых регулярно ломается. Но ведь можно же делать хорошо, чтоб не ломались? Особенно когда у компании есть буквально армия разработчиков.
Я тоже так думал долгое время, но с годами интуитивно всё чаще избегал и даже активно противостоял сложности в проектировании и реализации программных систем. Сформировалось профессиональное чутьё, идеальное отражающее “закон Мёрфи”: если что-то может пойти не так, оно пойдёт не так.
Но оставалось глубокое неприятие: как же так, стараемся, проектируем и планируем, тратим кучу времени и денег, а получается всё равно говно, которое гарантированно сломается. Что же мы все делаем не так?
И тут мне попалась книжка The Systems Bible, которая волшебным образом разрешила это противоречие. Ненадёжность, как и куча других качеств больших систем — непредсказуемость, сопротивление достижению собственных целей, отрыв от реальности и прочие — просто фундаментальны для них. Проблем не избегает ничто: ни бюрократические аппараты правительств, ни сети супермаркетов, ни программные системы.
Книга достаточно объёмная и написана немного претенциозно, но если вы, как и я, уже не можете спокойно воспринимать вечные поломки и проблемы с системами, в которые вы вложили всю душу, рекомендую к прочтению.