Хотя «Почту России» принято ругать, я ее для начала похвалю - все-таки за последние годы там достигнут большой прогресс в сервисе. Когда ты в отделении отправляешь пять посылок за две минуты, это впечатляет.

А теперь - к ругательствам. Для того чтобы за считанные минуты отправлять несколько посылок, нужно сначала с матами и проклятьями их оформить на сайте. Какое-то время назад там все работало нормально - разве что нельзя было заказное письмо или заказную бандероль оформить. Меня тогда еще насторожило, что пользователь не может оформить бандероль, а оператор - может, просто поменяв где-то в выпадающем меню тип отправления. Это означало, что использовались разные модули для одной и той же функции.

Теперь заказные письма можно оформлять заранее (бандероли - по-прежнему нет), и тут выяснилась вещь, которая ввергла меня в ступор. Обработка адреса и имени отправителя, а также адреса и имени получателя явно выполняется разными модулями для заказного письма и посылки. Начиная с того, что в одном случае она ставит фамилию, имя, отчество, а в другом — имя, отчество, фамилию (берет из одного и того же источника - твоей учетной записи). Но это еще полбеды. Один и тот же адрес вполне себе проходит в случае заказного письма и не проходит в случае посылки. Основания отказа самые дурацкие - например, "не указан номер дома", хотя номер дома выбран из предложенного самой системой списка.

Вот это уже повергло меня в ужас. Это показывает отсутствие у разработчиков софта «Почты России» двух вещей: во-первых, тестировщика (он такие вещи должен отслеживать "на раз"), а во-вторых, понимания модульности.

Оказывается, в XXI веке одна функция - обработка адреса, выполняется не одним модулем, а пишется отдельно для каждого вида отправления. Ну ладно, мы делали так в 1978 году, когда были совсем зелеными программистами. Но уже в 1979 году мы знали, что такое модуль (это понятие появилось как раз тогда), и тут же переписали всю систему заново. И вот прошло 40 лет, а программисты бодро наступают на те же самые грабли.

Боюсь спросить - а что, в вузах и колледжах понятие модуля нынче не дают? Тут дело даже не в криворуких почтовых программерах, а вообще. Ну то есть учат ли нынче программистов тому, что когда-то называлось технологией программирования?

Оригинал