DRY:
принцип сушки



КАК И ЗАЧЕМ ПРИМЕНЯТЬ ПРИНЦИП СУШКИ?
ОБЪЯСНЯЕТ ИНЖЕНЕР BLINKIST АНАТОЛИЙ МАКАРЕВИЧ.
E {EFFICIENCY} : ЭФФЕКТИВНОСТЬ / SOFT SKILLS

#E
Анатолий Макаревич объясняет, как с помощью принципа программирования DRY сделать свой год длиннее и найти время на творческие задачи.
Фото предоставлено: Анатолий Макаревич
Анатолий Макаревич
Инженер в Blinkist

Если совсем просто, в чем суть принципа DRY?
Анатолий Макаревич: В программировании по идее много повторяющихся действий. И тут на помощь приходит принцип DRY. Это аббревиатура, расшифровывается как Don't Repeat Yourself – «не повторяйся». В английском есть слово dry, оно означает «сухой», «сушить» и подходит по смыслу.

Строго DRY формулируется так: «Каждая часть знания должна иметь единственное, непротиворечивое и авторитетное представление в рамках системы». Принцип DRY аналогичен принципу Single Source of Truth – «единственный источник правды».

Совсем простой пример: чтобы не делать ошибок и не копипастить одно и то же, я создаю скрипты и сокращаю все частые команды в шорткаты – git status у меня просто g. Если посчитать время, то в год такие оптимизации экономят дни. Поэтому в своей работе я автоматизирую вообще все – от создания блоков верстки до ежедневных отчетов для команды. Это позволяет фокусироваться на том, что требует непосредственного участия и творческого подхода.

Другой смысл принципа DRY – не создавать зависимостей. Если при изменении чего-то одного приходится менять много другого, это означает, что вы создаете зависимости.
Как и почему применять принцип DRY в жизни?
Анатолий Макаревич: Принцип DRY полезен не только в программировании, но и в любой другой работе, да и в повседневной жизни. Мои знакомые, к примеру, завели специальную карту для хозяйки съемной квартиры и переводили туда ежемесячный платеж, чтобы она не приезжала за деньгами каждый раз – это экономило всем много времени.

Лучший мотиватор для постоянного «подсушивания» процессов по принципу DRY – прикидывать, сколько времени в год уходит на какую-то рутинную задачу. Когда видишь результаты подсчетов – а это обычно несколько дней, потраченных впустую, – то сразу возникает желание придумать, как автоматизировать эту рутину. Если получается, это все равно, что твой год становится длиннее.
ИТОГО: DRY'ить работу & развивать карьеру

У многих карьера не двигается вперед и вверх из-за микроменеджмента и игнорирования Lean-подхода. Принцип DRY же, по сути, относится к бережливому производству и менеджменту. Когда нет понимания, что в работе можно и нужно автоматизировать, как любые изменения отразятся на созданных цепочках зависимостей, много времени уходит на бессмысленные повторения и тушение пожаров. Времени на бигпикчу, идеи, проекты и карьерную стратегию, понятно, не остается.
Фокус в том, что большинство людей могут самостоятельно решить такие проблемы только точечно, и обычно это кратковременные увлечения оптимизацией – когда отпускает, все быстро возвращаются к порочным паттернам. Поэтому тут полезны взгляд со стороны, командная работа, Helicopter View, вот это все: как минимум время от времени советуйтесь с карьерным наставником, или вот даже совсем по хардкору – подберите себе ментора. Вот здесь можно почитать об опыте и специализации наставников и менторов из пула Zilllion.Academy. >>>


DRY'ить работу.

Развивать карьеру

MOAR. Покажи еще
Made on
Tilda