По какой методологии работал в команде?

Ответ

Ответ не найден

Ответ 18+ 🔞

Да ты посмотри, какой тут у нас код, блядь! Вот сидишь, думаешь — ну что может пойти не так? А оно, сука, берёт и не работает, и всё тут.

Смотри, вот у тебя есть функция, которая должна возвращать сумму двух чисел. Вроде бы всё просто, как три копейки, да? Но нет же, пишем вот так:

def add(a, b):
    return a + b

И вроде бы работает, но потом приходит какой-то умник и говорит: "А давайте проверим, что будет, если передать строки?" И тут начинается пиздец, потому что функция сложит строки, а тебе-то нужно числа складывать! И вот ты уже сидишь, чешешь репу, думаешь: "Ёпта, а ведь правда, нахуй так можно?"

И начинаешь городить проверки:

def add(a, b):
    if isinstance(a, (int, float)) and isinstance(b, (int, float)):
        return a + b
    else:
        raise ValueError("Оба аргумента должны быть числами, блядь!")

А потом ещё кто-то подсказывает: "А что, если None передать?" И ты такой: "Да иди ты нахуй со своими None!" Но проверку всё равно добавляешь, потому что иначе потом сам же и будешь ебаться с ошибками в три часа ночи.

И вот уже функция раздулась, как пузо после новогоднего застолья, а ведь изначально-то всё было просто! Вот в чём парадокс, блядь: чем больше думаешь о краях да углах, тем больше говнокода пишешь. А если не думать — потом получаешь в проде такие косяки, что волосы дыбом встают.

Короче, вывод такой: пиши код так, будто его потом будет поддерживать психопат, который знает, где ты живёшь. И да, документацию тоже пиши, а то потом сам же забудешь, нахуя этот параметр flag=True нужен был.