Кеші для «чайників»

Кеш очима «чайника»:



Кеш – це комплексна система. Відповідно, під різними кутами результат може лежати як дійсної, так і уявної області. Дуже важливо розуміти різницю між тим, що ми чекаємо і тим, що є насправді.

Давайте прокрутимо повний оборот ситуацій.

Tl;dr: додаючи в архітектуру кеш важливо явно усвідомлювати, що кеш може бути засобом дестабілізації системи під навантаженням. Дивіться кінець статті.

Читати далі →

10 помилок, що призводять до оверинжинирингу

Кілька речей гарантовано будуть збільшуватися з часом: відстані між зірками, ентропія всесвіту і бізнес-вимоги до ПЗ. Багато статті пишуть «Не ускладнюйте!», але чому не пишуть або як це зробити. Ось вам 10 ясних прикладів.

1. Інженерам видніше
Ми, інженери, вважаємо себе умнейшими людьми. Ну, оскільки ми створюємо різні штуки. І ця помилка часто призводить до оверинжинирингу. Якщо ви спланували і побудували 100 модулів — Бізнес завжди попросить у вас 101-ий, про який ви ніколи не замислювалися. Якщо ви зберетеся з силами і вирішите 1000 проблем — вони прийдуть до вас і викладуть на стіл 10 000 нових. Ви вважаєте, що у вас все під контролем, а насправді ви навіть не уявляєте, в якому напрямку вас завтра поведе дорога.
image
За мої 15 років роботи програмістом я ще ні разу не бачив, щоб Бізнес видав закінчені і стабільні раз і назавжди вимоги до ПЗ. Вони завжди змінюються, розширюються. І це природа бізнесу, а не помилки людей, керуючих їм.

Мораль: Казино (бізнес) завжди перемагає

Читати далі →