Понадобилось мне разобраться, как внутри реализована одна из функций самого обыкновенного zip'а. Возрадовался я, значит, опенсорсности его, позволяющей мне это сделать, и скачал тарбол с исходниками. Открыл файл с бесхитростным названием zip.c и начал искать нужный кусок.
За 20 минут копания в куче фекалий я так и не смог отыскать нужный кусок или даже намек на него. Все 6 с лишним тысяч строк - сплошная индусская лапша. Код весь перекопал вдоль и поперек условными директивами, форматирование практически отсутствует (формально отступы конечно есть, но читать мало помогают). Имена переменных - тихий ужас, за который студентам-первокурсникам нужно отрывать руки. Наряду с осмысленными, но краткими 'display_volume', 'tempath', 'filelist' и прочими, везде кишат классические индусские 'd', 's', 'kk' и прочие нечленораздельные звуки.
Как это портянку можно вообще поддерживать в рабочем состоянии? Кто будет копаться в этом по доброй воле (а я бы теперь не стал и за деньги), если разработчик отойдет от дел? Я уже не говорю о простых смертных, которые захотят написать патч для этого ведра лапши.
И вообще, правомерно ли кучу индусокода гордо именовать опенсорсом?