-- Leo's gemini proxy
-- Connecting to hugeping.tk:1965...
-- Connected
-- Sending request
-- Meta line: 20 text/gemini
by hugeping on 2021-09-21 15:32:40
Когда долго программируешь, привыкаешь проверять все причинно-следственные связи от начала и до конца, разворачивать их. Отладка учит быть подозрительным. Не верь тому, что написано и вроде-бы "работало раньше". Ошибка могла не проявляться. Ошибка может скрывать проявление другой ошибки. Ошибка может быть следствием гонки. Несколько ошибок могут входить в суперпозицию и выглядеть как одна ошибка или наоборот. Чтобы действительно разобраться в проблеме, ты должен понять что именно происходит максимально педантично и досконально. Никаких домыслов! Никаких непроверенных предположений! Каждый раз ты должен учиться смотреть на код, как будто он написан только что.
Не удивительно, что с годами это начинает отражаться и на психике. Один из таких "синдромов" я замечаю у себя и у некоторых знакомых программистов. Я назвал его синдром "0 или 1". Проявляется он в различных формах, но стоит за всем одно и то же.
Если высказано какое-либо суждение, ты начинаешь его раскручивать и доводить до логического конца. Интерпретация событий всегда чёрно-белая. 0 или 1? Ведь нужен конкретный и простой факт в основе. То, что хорошо помогает искать ошибки может навредить в общении. Например?
> - Смотри, я тут игру написал Color Lines.
> - Неплохо. Только цвета шариков мне не нравятся.
> - А мне, кажется, красиво.
> - Нет, слишком яркие.
(сценарий 0) Я подобрал плохие цвета. -> Они мне нравятся, значит, у меня нет вкуса. -> Зря я написал игру.
(сценарий 1) Цвета мне нравятся, а оппоненту -- нет. -> У оппонента нет вкуса, не надо учитывать его мнение. -> Зря я его спросил.
Следствие синдрома. "Если что-то может случиться, то это обязательно случится." Перекликается с законами Мерфи, да? Не случайно, ой не случайно... :)
> - Где мой паспорт?
> - Зачем тебе?
> - Я всегда беру паспорт, когда выхожу на улицу... И, кстати, где зонт?
Усиление следствия. "Если что-то случится в будущем, то это уже случилось."
> Мы смертны -> мы уже мертвы -> нас не существует и никогда не существовало.
Ещё одно следствие -- если назревает конфликт, нет смысла тянуть, ведь "он уже случился".
> - Не могу тебя видеть!
> - Если мы враги, то давай расстанемся. Если нет, то зачем эта ссора?
Наконец, невозможность делать простейшие вещи без детального понимания задачи.
> - Отрежь кусочек скотча.
> - Какой длины?
> - Просто кусочек скотча.
> - Для какой задачи нужен скотч? (попытка узнать точную длину отрезка под задачу)
> - Блин, да ты издеваешься!
// Все диалоги являются вымышленными, любое сходство -- случайно.
Годами выработанная привычка сводить всё к "да" или "нет", "всё" или "ничего", 0 или 1 -- рано или поздно находит выход, нередко приводя к раздражению, непониманию, ссорам.
Программа -- мир, который создал программист и полностью его контролирует. Выполнение программы в глубине своей -- детерминированная шарманка. Возможно, именно отсутствие противоречий и привлекает программистов в профессию. Но жизнь -- нередуцируема и противоречива по своей сути. Попытка действовать в реальном мире так же, как ты привык работать в виртуальном, неизбежно приводит к конфликту. Попытка решения его в виде ответа 0 или 1 приводит к парадоксальным и опасным состояниям. В лучшем случае -- просто неадекватным.
Когда я слышу очередную "печальную" новость про программиста, я всегда с сожалением думаю, что не последнюю роль здесь сыграл синдром 0 или 1.
Мне кажется, любой программист в качестве противоядия должен иметь "аналоговое" хобби. Велосипед, гитара, рыбалка... Что угодно, что позволяет не терять связь с реальным миром и напоминать себе, что не всё решается через 0 или 1.
Берегите себя!
-- Response ended
-- Page fetched on Thu May 2 04:20:13 2024