В свете текущего положения дел у большинства из нас появилось время, которое обычно тратится впустую на Netflix, видеоигры или другие развлечения. Не поймите меня неправильно, нет ничего постыдного в том, чтобы насладиться днем пиццей и любимым сериалом, будь то в одиночестве, с партнером или с пушистым компаньоном, но у этого есть обратная сторона… Мы умеем отвлекаться и откладывать. Наряду с потоком новостей, связанных с пандемией, видеороликами о домашних тренировках и ненужными заказами на Amazon, вы, скорее всего, заметили, что повсюду появляются статьи, посвященные проблеме прокрастинации.
Я ничем не отличаюсь от любого другого человека. Я поймал себя на том, что смотрю химические видеоролики о создателях контента, пытающихся создать аэрогель дома (что-то, что не окажет влияния на мою жизнь, если только меня не поставят под прицел и не попросят сделать это). Тем не менее, в этом поиске прокрастинаторской нирваны я решил, что если я не собираюсь программировать, то мне лучше прочитать об этом и попытаться получить какую-то пользу от пребывания дома весь день. И вот я купил книгу, которую мне порекомендовали и коллеги, и друзья: Чистый код дяди Боба. Я еще не закончил и не буду торопить процесс. Несмотря на то, что я не прочитал название полностью, я думаю, что могу поделиться с вами несколькими уроками о предисловии к этой Библии.
Маленькие вещи имеют значение
Блестящее предисловие Джеймса Коплиена погружает прямо в дух чистого кода и его японскую эффективность в простоте и дисциплине. Создается впечатление, что это предисловие не относится к профессиональной книге о красиво и чисто написанных функциональных языках. Это предисловие связано с чем-то более глубоким, и, как выразился Коплин:
«Качество — это результат миллионов актов бескорыстной заботы, а не только какого-то великого метода, спущенного с небес. То, что эти действия просты, не означает, что они упрощены, и вряд ли это означает, что они легки. Тем не менее они являются тканью величия и, более того, красоты в любом человеческом начинании. Игнорировать их еще не значит быть полностью человеком». - Джеймс О. Коплин (Чистый код: руководство по гибкому программному мастерству)
Руководящие принципы для создания чистого кода также являются руководящими принципами для того, чтобы справляться с жизнью и беспорядком, который с ней связан. Coplien берет руководящие принципы Total Productive Maintenance и приближает их к читателю в виде аналогий, понятных как программистам, так и обычным людям. Я не буду пытаться сравниться с его виртуозностью и почерком, но я думаю, что стоит подумать о них сейчас, когда у нас есть время, чтобы побыть дома и реорганизовать свой разум и окружающую среду.
Принципы
Организация и аккуратность:
Это связано со знанием того, где находятся вещи, чтобы вам было легче их найти. Этот пункт намекает на наименования переменных, функций, каталогов и файлов в компьютерном программировании. Как это может быть связано с тем, чтобы оставаться дома и привносить эту ценность в целостную интеграцию в нашу повседневную жизнь? Легкий. Знайте, где и как вы собираетесь хранить ту книгу, которую читали прошлой ночью, или как вы собираетесь расположить свою одежду в шкафу, или куда вы поместите этот лист Excel или XML-скрипт, над которым вы работали, и который вам нужен. доставить в следующий понедельник.
Конечно, держать вещи хорошо организованными и маркированными кажется легкой задачей, и любой, кто хочет быть продуктивным, должен это делать. Тем не менее, вы были бы удивлены количеством пропущенных заметок и файлов, которые ежедневно теряются в академической, профессиональной и неформальной обстановке только потому, что мы не удосужились приступить к процессу классификации этой информации. Вдобавок к тому, что вы не потеряете время на поиски вещей, вы будете спокойны за то, что вещи находятся там, где они должны быть. Этот монстр стресса, который будит вас ночью, вероятно, будет впечатлен и в конечном итоге поможет вам завтра организовать больше вещей.
Но не помешает ли тогда этот стрессовый монстр моим организаторским способностям на следующий день? О да, будет, если только вы не научитесь укротить его с помощью других принципов.
Очистка и стандартизация:
Эмпирические правила, которым нужно следовать не только когда вы пишете код или работаете с унаследованным кодом или грязной кодовой базой, но и когда вы находитесь в уединенном помещении (действительно, вы всегда должны содержать свое пространство в чистоте!). Уборка. Простой, практичный, и как только вы закончите уборку, вы почувствуете прилив сил и готовы приступить к делу. Единственное предостережение в том, что это продлится до тех пор, пока вы снова не устроите беспорядок. На самом деле реальная проблема уборки заключается не во времени, необходимом для устранения беспорядка, или в ручном труде, стоящем за этим, или даже в ресурсах, затраченных на эту деятельность; реальная проблема заключается в периодичности или также называемой стандартизацией уборки.
Ранее я упоминал о стрессовом монстре, который не будит вас ночью, а присоединяется к вам на следующий день, если вы сохраняете порядок в своей жизни, и это реальность вещей. Этот монстр никогда не исчезнет. Ты ему слишком нравишься. Он хочет быть рядом с вами настолько, насколько вы ему позволяете. Так что после того, как вы решите привести вещи в порядок, что-то может побудить вас провести весеннюю уборку и обильно все убрать, как если бы вы были одержимы компульсивным притворством. Это похоже на то, как если бы вы пробежали 1 милю на полном газу, но так и не закончили гонку. Очистка и определение периодических процедур идут рука об руку как в жизни, так и в коде. Если вы работаете над функцией, убираете за собой, удаляете ненужные комментарии и неиспользуемые функции, то же самое можно применять всякий раз, когда вы готовите. Оставлять вещи без присмотра и грязные, будь то отдельные строки кода или куча грязной посуды, повлияет на ваше психическое состояние, если вам придется с этим жить.
Стандартизация просто означает выяснение способа, алгоритма, которому нужно следовать, когда что-то не на своем месте, эффективного решения, которое оптимизирует ваше время и (рискует звучать как книга по самопомощи) ваше счастье.
Конечно, кажется, что нужно много всего, чтобы удержать монстра стресса подальше и жизнь шла гладко! Да, и я уверен, что никто не хорош в этом от природы. Если вы придерживаетесь общепринятого мнения о том, что мы произошли от приматов (обещаю, что не буду слишком много судить, если вы этого не сделаете), достаточно беглого взгляда на наших кузенов, чтобы понять, что в своей основе мы… очень беспорядочны. . Что позволяет нам подчинять волю огня, гравитации и даже смерти?
(само)дисциплина:
Этот принцип говорит сам за себя. Вам нужно придерживаться тех эффективных методов, которые вы определили, и помнить о своих целях. Работайте с умом и каждый день, каждую ночь отправляйте монстру открытку с подробным описанием всего, чего вам удалось достичь, или всех шагов, которые вы предприняли для этого.
Поддерживайте связь часто, но на расстоянии, чтобы вы могли сообщить ему, что у вас все хорошо без него, но будьте осторожны, если вы не будете настойчиво применять эти принципы, он может решить нанести визит; ему или, может быть, другим монстрам нравится лень. Чем больше вы практикуете самодисциплину и самоконтроль, тем проще становится поддерживать чистоту в доме, код и, следовательно, чистоту мышления.
Если вы хотите узнать больше о чистоте своего кода, я настоятельно рекомендую Robert C. Martin Series. С другой стороны, если вы хотите содержать свой дом в чистоте, Мари Кондо может быть лучшим выбором.