Меня недавно спросили, почему программисты ненавидят работать с чужим кодом. Долго думал, как донести до обычного пользователя всю суть пиздеца. Решил привести небольшую аналогию: Вот представь, что тебе доверили достроить за другим прорабом лабораторию на острове. Ты приходишь на объект, а там кроме недостроенного здания: огромный вентилятор (размером со здание), большой воздушный шар и комната набитая швабрами. Почесав голову, ты разбираешь этот хлам и доделываешь лабораторию. Сдаешь объект ученым, но через 5 минут они выбегают с криком: "УТЕЧКА ЯДОВИТОГО ГАЗА!!!". — Как так–то, блять! Должно же работать! — в отчаянии кричишь ты и звонишь прошлому прорабу: — Вася, у нас ядовитый газ потёк! В чем проблема? — Не знаю, должно было все работать. Что–то в проекте менял? — Немного, швабры вынес... — Швабры потолок держали! — Что??? Что, блять, извините??? — Говорю, швабры потолок держали. Над ними цистерны с газом были. Очень тяжелые, пришлось в комнату снизу швабры напихать. — Ты хотя бы записку на двери повесил бы, что швабры для держания потолка! У нас тут ядовитый газ течет! Что нам делать? — Включай вентилятор. Он сдует газ с острова. — Я его, блять, демонтировал сразу же! — Зачем? — Зачем ты построил 120 тонный вентилятор? Ты не мог положить ящик блядских ПРОТИВОГАЗОВ? — Ящик противогазов искать нужно, а вентилятор у меня с прошлого заказа оставался. — Вася, я убрал твой вентилятор! Мы тут задыхаемся! — Херли вы тогда там делаете? Садитесь на воздушный шар и уебывайте!
Как программист, работающий десятки лет с жесточайшем легаси кодом — всё не так печально, как описывают. Ничего не ломается внезапно. Даже если в проекте нет никаких тестов — достаточно внимательности и кропотливого изучения кода перед изменениями, это практически гарантирует их стабильность — главное точно знать, как тут же проверить корректность новых изменений.
Самая большая трудность старого кода — это большое количество недокументированных костылей (работает, не трогай — в точку). Поэтому всегда оставляйте комментарии к своему коду, особенно когда исправляете какой-то баг нестандартным способом или вносите редко используемые настройки. Поможете и другим, и себе в будущем.
Как никогда лучше:
Меня недавно спросили, почему программисты ненавидят работать с чужим кодом. Долго думал, как донести до обычного пользователя всю суть пиздеца.
Решил привести небольшую аналогию:
Вот представь, что тебе доверили достроить за другим прорабом лабораторию на острове. Ты приходишь на объект, а там кроме недостроенного здания: огромный вентилятор (размером со здание), большой воздушный шар и комната набитая швабрами. Почесав голову, ты разбираешь этот хлам и доделываешь лабораторию. Сдаешь объект ученым, но через 5 минут они выбегают с криком: "УТЕЧКА ЯДОВИТОГО ГАЗА!!!".
— Как так–то, блять! Должно же работать! — в отчаянии кричишь ты и звонишь прошлому прорабу:
— Вася, у нас ядовитый газ потёк! В чем проблема?
— Не знаю, должно было все работать. Что–то в проекте менял?
— Немного, швабры вынес...
— Швабры потолок держали!
— Что??? Что, блять, извините???
— Говорю, швабры потолок держали. Над ними цистерны с газом были. Очень тяжелые, пришлось в комнату снизу швабры напихать.
— Ты хотя бы записку на двери повесил бы, что швабры для держания потолка! У нас тут ядовитый газ течет! Что нам делать?
— Включай вентилятор. Он сдует газ с острова.
— Я его, блять, демонтировал сразу же!
— Зачем?
— Зачем ты построил 120 тонный вентилятор? Ты не мог положить ящик блядских ПРОТИВОГАЗОВ?
— Ящик противогазов искать нужно, а вентилятор у меня с прошлого заказа оставался.
— Вася, я убрал твой вентилятор! Мы тут задыхаемся!
— Херли вы тогда там делаете? Садитесь на воздушный шар и уебывайте!
https://www.anekdot.ru/id/936401/
Комментарий недоступен
Как программист, работающий десятки лет с жесточайшем легаси кодом — всё не так печально, как описывают. Ничего не ломается внезапно. Даже если в проекте нет никаких тестов — достаточно внимательности и кропотливого изучения кода перед изменениями, это практически гарантирует их стабильность — главное точно знать, как тут же проверить корректность новых изменений.
Самая большая трудность старого кода — это большое количество недокументированных костылей (работает, не трогай — в точку). Поэтому всегда оставляйте комментарии к своему коду, особенно когда исправляете какой-то баг нестандартным способом или вносите редко используемые настройки. Поможете и другим, и себе в будущем.
Премию тому кто этот костыль придумал.
А он уволился месяц назад и на звонки не отвечает, по классике. Или говорит, что это ещё до него было
Враг в отражении
А вот это хорошо