На моём опыте, код, в котором каждые несколько строчек вынесены в методы с "самодокументируемыми" названиями, читать гораздо сложнее, чем код, где блоки кода обернуты в понятные комментарии. В первом случае, в таком спагетти-коде приходится рыться, пробираясь через кучу функций, которые вызывают другие функции, а те в свою очередь третьи. Если для автора кода очевидно, что делает функция enableGradientClipping(model), то для меня не очевидно ни что она делает, ни как она реализована, что часто тоже важно. Открываешь функцию, она оборачивает другую функцию setClipNorm, но с проверками на дурака и ассертами. Открываешь и её, а внутри просто вызов библиотечной функции из torch. Часто натыкаюсь на репозитории, которые на 90% состоят из "самодокументируемых" функций, из-за которых код приходится читать в 3 раза дольше.
На моём опыте, код, в котором каждые несколько строчек вынесены в методы с "самодокументируемыми" названиями, читать гораздо сложнее, чем код, где блоки кода обернуты в понятные комментарии. В первом случае, в таком спагетти-коде приходится рыться, пробираясь через кучу функций, которые вызывают другие функции, а те в свою очередь третьи. Если для автора кода очевидно, что делает функция enableGradientClipping(model), то для меня не очевидно ни что она делает, ни как она реализована, что часто тоже важно. Открываешь функцию, она оборачивает другую функцию setClipNorm, но с проверками на дурака и ассертами. Открываешь и её, а внутри просто вызов библиотечной функции из torch. Часто натыкаюсь на репозитории, которые на 90% состоят из "самодокументируемых" функций, из-за которых код приходится читать в 3 раза дольше.
Вы, кроме Навального, ещё что-то посмотрите, в музеи сходите, в галереи, и такие вопросы даже в голову не прийдут