Маленькая ошибка, глубокий урок

Недавно я совершил небольшую, но критическую ошибку в проекте. Я self забыл при вызове метода класса. В результате я столкнулся с сообщением об ошибке:

update_existing_billing_task() принимает 1 позиционный аргумент, но было передано 2

Сначала мне было непонятно, почему возникает такая ошибка. Пересматривая код несколько раз, я в конце концов осознал, что забыл указать self при вызове метода класса. Это была такая простая ошибка. После того как я это понял, ко мне одновременно нахлынуло чувство досады и стыда.


Почему я допустил такую ошибку?

Если оглянуться назад, я могу выделить несколько причин, почему произошла эта ошибка.

  1. Автоматизированное мышление

    Разрабатывая, я иногда обрабатываю привычные задачи на автомате. В этом процессе пропускать детали — обычное дело. Я знал, что нужно использовать self, но, погрузившись в написание кода, допустил такую ошибку.

  2. Обманчивость сообщения об ошибке

    Сообщение "Требуется 1 аргумент, но передано 2" определенно указывает на причину, но сначала заставило меня думать: "Где передали 2?" Это помешало мне быстрее понять суть проблемы.

  3. Лень из-за чрезмерной привычки

    Чем глубже я понимаю взаимосвязь класса и метода, тем больше я, похоже, упускаю такие базовые ошибки.


Как можно уменьшить такие ошибки?

  1. Прекратите кодить и отдохните

    Когда вы слишком погружены в процесс, ваше восприятие сужается. Небольшой перерыв и повторный просмотр кода могут дать новую перспективу.

  2. Еще раз проверьте базовый синтаксис

    Когда ошибка не исчезает, нужно приучить себя проверять основные вещи сначала. Просмотр своего кода с умом новичка может помочь.

  3. Проверка как если бы это был код другого человека

    Когда вы считаете свой код идеальным, ошибки становятся незаметными. Если вы будете рассматривать его как код, написанный не вами, вы сможете легче обнаружить проблемы.


В завершение

Разработчики — не идеальные существа, которые не делают ошибок. Я тоже. Важно все время учиться и расти на своих ошибках. Это сделает нас лучше как разработчиков, если мы станем более снисходительными к себе и будем стараться уменьшить ошибки.

Поэтому я хочу сказать коллегам-разработчикам: не накладывайте на себя слишком много стресса и рассматривайте ошибки как возможность для роста. 😊

Разработчик проверяет код