Comments 67
Уж не знаю, что там за API был, но хорошим тоном было бы перекодировать сообщения у себя и отдавать нормальный текст. А так весьма забавны бывают отголоски далекого прошлого.
Очевидно, что в общеизвестной кодировке, а не собственной придуманной (ибо фактически такую замену можно рассматривать, как еще одну кодировку...), которая, скорее всего, не была даже никак обозначена.
Очевидно, что в общеизвестной кодировке, а не собственной придуманной (ибо фактически такую замену можно рассматривать, как еще одну кодировку...), которая, скорее всего, не была даже никак обозначена.
Ну ДКОИ — это вполне себе стандартная, хотя и устаревшая и узкоспециализированная кодировка. Если верить вики, то «стандартизирована Госстандартом СССР в ГОСТ 19768-74 (СТ СЭВ 358-76)[2], заменённом в 1995 на году на ГОСТ 19768-93 (СТ СЭВ 358-88)».
ИМХО, понятно, что для условного Васи, который обычно клепает магазины — это дичь и археология, но ему вряд ли часто придётся напрямую работать с API РЖД. А тем, кто варится во всём в этом — для тех она хорошо знакома.
Надо ли переходить на новую, «современную» кодировку — а вот это вопрос уже другой. Так как в процессе можно наломать очень много дров, не говоря уж о трате моря денег.
Практика показывает, что если оставаться в Легаси, да ещё времён СССР (что это, в контексте ИТ?), то это как раз про дрова и потери денег
Я не скажу за Россию, но по моим наблюдениям в Европе, куча компаний спокойно живёт с кодом разработанным ещё на коболе для мейнфреймов (как раз дальние потомки тех самых IBM OS/360). А деньги там считать умеют.
Тут надо понимать, что отказываться от легаси, просто ради ещё одной модной современной технологии, то есть риск спустить все деньги на всё более новые и всё более интересные технологии.
в Европе, куча компаний спокойно живёт с кодом разработанным ещё на коболе
C Коболом вообще всё прекрасно до сих пор, это необычный, но очень удачный язык для всяких штук, связанных с денежными делами – компилится в быстрый компактный код, типизация прямо в именах переменных и тп штуки. Типа как Эрланг для телекома – тоже очень странный и ни на что не похожий, но для распределённых систем лучше ничего не придумали.
Да, здесь дело именно в непрофессионализме инженеров РЖД.
Ок, пусть внутри у них используется эта кодировка, но зачем ее отдавать в веб? Квалифицированный разработчик бекенда сделал бы удобные конвертации.
* межведомственные войны, проталкивание собственных стандартов — это «стандартная» практика любой конкуренции, что в СССР (где конкурировали административно), что при капитализме — достаточно почитать, сколько несовместимых форматов было в 60-80-ые годы. Уже потом, когда определяются лидеры — их результаты становятся стандартами не только de facto, но и de jure. Иначе слишком рано принятый стандарт или не будет никем использоваться, или создаст кучу проблем в своей реализации
* IBM с OS/360 среди всего прочего пришла в СССР в семидесятые, так что вероятно решение об использовании форматов совместимых с ним было принято как раз в расчёте на это. Но Афган и последующие за ним новые санкции поломали планы.
Было бы понятно, если бы проводились перспективные исследования в нескольких направлениях в разумных пределах, а затем выбиралось лучшее. А на деле выходило, что многотысячные коллективы пожирают неимоверные ресурсы, делая в общем-то параллельную, но несовместимую в итоге работу, а затем выбирается стандартом даже не лучший технически, а смотря кто кому сват-брат, а остальное идет а свалку.
В итоге ресурсов на такую конкуренцию тратилось гораздо больше, чем при капитализме.
В мемуарах той эпохи запомнился случай, как крупный институт получил финансирование: директор через знакомого журналиста вышел на редактора речей Брежнева, и тот вставил в программную речь съезда пассаж «Развивать и расширять такое-то научное направление...»
Но ведь советская плановая экономика как раз и задумывалась, чтобы упорядочить все эти усилия в едином русле, и не тратить силы зря на тупиковые ветви.
Ну гладко было на бумаге…
Было бы понятно, если бы проводились перспективные исследования в нескольких направлениях в разумных пределах, а затем выбиралось лучшее. А на деле выходило, что многотысячные коллективы пожирают неимоверные ресурсы, делая в общем-то параллельную, но несовместимую в итоге работу
Ну да, по факту оказалось, что конкуренция среди потребителей переместилась в конкуренцию перед чиновниками.
Но с другой стороны, ИМХО, очень сложно определить, что является тупиковой ветвью. Условно — можно выбрать перспективную технологию, которая кажется отличной в лаборатории, но которую практически невозможно масштабировать для массового производства или в долгосрочной перспективе она окажется неэкологичной.
а затем выбирается стандартом даже не лучший технически, а смотря кто кому сват-брат, а остальное идет а свалку
А это и при капитализме происходит регулярно. Кому-то удалось встретится с топ-менеджером и пропихнуть свою идею первым, кого-то поддержали чтобы не давать преимуществ конкурентам итп. Вспомните, сколько было несовместимых стандартов звуко-/видео-записи начиная с пластинок и заканчивая дисками для HD видео или конкурирующих форматов файлов.
Хотя капитализм в конечном итоге обеспечивал тестирование на более широкой выборке потребителей, что лучше сказывалось на итоговом варианте.
Но ведь советская плановая экономика как раз и задумывалась, чтобы упорядочить все эти усилия в едином русле, и не тратить силы зря на тупиковые ветви.
Проблема в том, что изначально не понятно, какие ветви тупиковые, а какие нет.
А поскольку решения зачастую принимались на уровне партийного руководства, то с водой выплескивали и ребенка.
Застал советский ДОС и там была кодировка koi8. В те времена было объяснение, что при передаче по 7 битной линии она превращалась с латиницу, схожую по написанию и текст расставался читаемым
Билетные принтеры вообще используют КОИ-7, до сих пор. Как минимум в спецификациях к ним так написано.
Стойте, как это?
Атрибут encoding
, набранный строчными, в КОИ-7 превратится в ЕНКОДИНГ
по идее, нет?
Это может быть какая-то кривая наколенная имплементация XML, типа мы processing instructions выдаём как ASCII, а всё остальное у нас в той кодировке, которая указана в этих PI. Я такое видел, но в прошлом веке ещё. Помню точно, что у какого-то сервиса ФНС был такой «типа XML» в котором атрибуты без кавычек и ни одним стандартным парсером он не разбирался.
$ echo 'INVALID DEVICE' | iconv -f KOI-7
инжалид дежице
Как-то так
КОИ-7 Это как раз КОИ-8 с отрезанным битом, насколько мне известно.
Нет, если от КОИ-8 отрезать старший бит останется 7 бит ASCII, полноценная латиница. В КОИ-7 Н2 в младших семи битах содержится и кириллица, с ASCII оно совместимо очень частично.
«Прошивка» представляет из себя 8 (5+3) металлических зубчатых линеек в нижней части аппарата, заказ и замена которых не представляла бы серьезной проблемы. Но причина, очевидно, не в этом.
заказ и замена которых не представляла бы серьезной проблемы
Заказать — Окей, можно. Но как заменить это на всех станциях одновременно в один день и в один час? Для этого нужны технические специалисты на всех странциях, чтобы разом все обновить, либо простой в несколько дней, пока специалисты объедут все станции и поменяют оборудование, так как новое оборудование несовместимо со старым. А если снова окажется, что нужны ещё более современные машинки? А если где-то стоят серверы-ретрансляторы (или скажем телеграфные центры)? В них тоже все надо разом поменять.
Как минимум, это всё — проблемы. Да, заказ новых 10 000 машинок — самая лёгкая часть!
Так что причина, конечно, чисто организационная.
скорее чисто экономическая… как переработка ПО под новую кодировку, так и разработка и закупка новых устройств — это деньги, даже если одно устройство обойдется в несколько десятков или сотен рублей, то десятки тысяч устройств — это миллионы в итоге только на железо. А зачем тратить, если всё уже стабильно работает? Чтобы порадовать любителей кодировок?
Заказать — Окей, можно. Но как заменить это на всех станциях одновременно в один день и в один час?Зачем? Для старых станций оставить прежний сервер, на него просто дублировать данные с нового, пока не закончатся станции с протухшими железками. Другое дело, что стоит ли такая мелкая проблема всей возни в принципе?
Мне после просмотра у CuriousMarc серии видео о восстановлении телетайпа модели 19 (https://www.youtube.com/playlist?list=PL-_93BVApb5-9eQLTCk9xx16RAGEYHH1q) показалось, что это адский геморрой – там механически довольно сложный узел, который в весьма бойком ритме должен без заеданий работать. То-есть заменить-то может и можно, но вот сделать это в режиме «вынул-вставил» точно не получится.
Плюс это всё надо на несколько моделей распространить, в общем, мне не кажется, что это беспроблемный процесс.
Люди принимавшие эти решения в Минтрансе всё ещё живы, кстати.
в новом украинском загране все поля продублированы на англ, кроме места рождения.
Я родился в городе Херсон, которое в паспорте тоже написано капсом (м — місто — город) «М.ХЕРСОН/UKR». Доблестные немецкий сотрудники проигнорировали мои слова, что город должен был Cherson и вбили всё как в паспорте. Вот так у меня и появилась в правах строчка M. Xepcoh. пруф и пример паспорта под катом
А вот пример бедняги, которого тоже ожидает эта судьба (пример взят гуглфото)
Так что у меня в 2 разных загранах разные фамилии.
Еще и с окончаниями "-ский" есть проблемы с транслитерацией
В российской Карелии есть места, где на дорожных знаках старые финские названия населённых пунктов написаны один раз в русской транскрипции (ну это понятно), а второй раз из русской транскрипции финских слов транскрибированы обратно в латиницу по правилам английского языка (и вот это действительно чудовищно). Финский язык и исходно отнюдь не отличается компактностью орфографии, а после русско-английского перевода это что-то с чем-то.
Почему не Ukr написали?)
Я недавно ради фана решил отправить телеграмму с поздравлением своей жене ( у почты России есть онлайн шлюз, так что это было несложно ), и вот они букву Ч меняют на 4. Тоже где то Легаси код в середине сидит.
Ну и лирическое отступление — телеграф работал на великолепной скорости в 50 бод (были варианты 100 и 200, но не прижились). И кое-где до сих пор продолжает работать на 50 бод.
Все это без какой-либо коррекции ошибок — если принимающий телеграфист видел, что в тексте что-то не то, просил перепослать телеграмму.
Есть автоматический контроль стоп-бита — если количество символов с битым стоп-битом превышает пороговое значение, телеграмма автоматически перезапрашивается.
Вообще интересно, на какой инфраструктуре работает современный телеграф? Своей девушке отправлял телеграмму в небольшое село, она получила по всей видимости телефонограмму, от руки на спецбланке.
Но обычно телеграммы бывают распечатаны матричным принтером.
В моем случае были классические жёлтые полосочки с литерными символами а-ля печатная машинка, наклеенные на поздравительный бланк. От оконечного оборудования на принимающей стороне зависит, может, где-то и на нормальном принтере распечатывают с компа.
Всегда с4итал что это молодежь под х@керов косила, оказывается нет? Происки по4ты?
я теперь в толк взять не могу, почему я видел похожую дичь в номенклатуре и техпроцессах, которую нам экспортировали с одного завода. т.е. у них тоже попытки автоматизации тянулись еще с ЕС?
Вообще в техпроцессах заводов с давней историей глубокой автоматизации наверное можно найти много чего интересного. Например — АвтоВАЗ, там своего легаси должно быть немало. Если что, там ещё в 1982 г. была применена логическая бомба, остановившая главный конвейер :).
Мы на одном заводе заменяли физическую ЕС ЭВМ её эмулятором в 2004 году. Софт остался тем же. Там вся технология производства сидит в мейнфреймовских программах с давно утерянными исходниками, десятки тысяч технологических процессов. А этот завод всякие металлоконструкции производит, которые со временем не особо меняются.
Можно ещё добавить, что, когда расширяли EBCDIC и превращали его в ДКОИ, не добавили в него все русские буквы, а только те, которые отличались по начертанию от латиницы, скорей всего, для экономии места на барабанах принтеров (число рядов на барабане соответствует числу печатаемых литер, соответственно, меньше символов -- меньше барабан, а значит, при прочих равных, принтер дешевле, а печать -- быстрей, ведь для печати одной строки нужен полный поворот барабана). О том, что будут возникать проблемы, в частности, с сортировкой, особо не думали: в СССР латиница особо не требовалась. Да и за бугром тоже не особо в те времена думали, а иногда и сейчас не думают (из-за чего даже в относительно современном ПО могут быть проблемы с символами, отличными от английского алфавита -- включая западноевропейскую латиницу со всякими там ударениями и умляутами). В общем, было бы ошибкой думать (с)
Билет без некоторых русских букв