Автор: Хищник
Дата публикации: 08.01.2009
Мифы Форта. Часть 2: стандартизация
Итак, для затравки, картина маслом. Швейная фабрика, пошив беретов. В одно прекрасное утро секретарша выходит на работу в форме «зеленого берета» вооруженных сил США. Немая сцена. Почему? Собственно, еще и дресс-код на фирме, кроме общих соображений. Ответ: потому что береты. (????) Ну как же — мы шьем береты, а тут вот нашелся стандарт на форму «зеленого берета». Тут береты, и там береты. Так что это — стандарт! И нечего на меня смотреть, у такой одежды свои плюсы. Допустим, застряли вы в болоте под артогнем, да еще и комары кусают. А тут и маскировка, и комары ткань не прокусят. Заодно унификация и экономия. И еще всех сотрудников можно отправлять закупаться в один магазин, а то они непроизводительно тратят время на выбор одежды. Да, я блондинка, а при чем тут это?
Вобщем, уже смешно. А, собственно, почему смешно? Да потому что нашей секретаршей был проигнорирован один немаловажный вопрос — применимость стандарта. То есть для военнослужащего определенного рода войск и подразделения, да еще и в условиях боевых действий это действительно стандарт. А вот для гражданского лица в коммерческой организации, да еще и другого государства...
Посмотрим теперь на «ANS-Форт», а точнее, на документ, обозначенный как X3J14. Прежде всего, что такое ANSI? Это нетрудно найти - «American National Standard Institute — частная организация...». Интересный сюрприз. Оказывается, организация частная, то есть, по сути своей, никакого официального статуса ее документы не имеют. То есть нечто вроде родословной на собаку, выданную клубом любителей собаководства. Все зависит от престижа данного клуба — другие собаководы, может, и примут.
Кстати, в этом плане существенно больший интерес представляет ISO. Смотрим, что это такое: «Международная организация по стандартизации (International Organization for Standardization - ISO (ИСО)) - организация, ответственная за разработку международных стандартов, координирует деятельность национальных органов стандартизации из 90 стран мира.»
Вот еще небольшой списочек «межгосударственных и отраслевых объединений и групп по развитию и применению международных стандартов», найденный навскидку
Группа содействия разработке и применению стандартов (Standards Promotion and Application Group - SPAG);
Европейская рабочая секция по открытым системам (European Workshop on Open Systems - EWOS);
Группа пользователей протокола автоматизации производства (Manufacturing Automation Protocol - MAP);
Корпорация открытых систем США (Corporation for Open Systems - COS);
Группа ИТ международного общественного сектора (International Group Public Sector Information Technology - IPS IT).
В конечном итоге оказывается, что «стандарт ANSI» является слабым подобием «стандарта ФИПС». А ФИПС — это Федеральный Институт Промышленной Собственности (российский). Почему слабым подобием? Давайте разберемся, что такое промышленная собственность. Если зайти на сайт данной организации, оттуда нетрудно скачать бланки заявлений о регистрации программы или базы данных. Скачиваем, регистрируем (заполняя бланки, оплачивая, переписываясь). Получаем номер государственной регистрации (!). Теперь наш программный продукт зарегистрирован на территории РФ. Это дает право в любой момент представить официальную бумагу, из которой будет следовать, что данный программный продукт действительно существует, и авторскими/имущественными правами на него обладает такое-то лицо или организация. Это некий плюс по сравнению с простым exe, выложенным на сайт, потому что авторство такого файла доказать довольно сложно. Незарегистрированной программы как бы и нет, с юридической точки зрения. Зарегистрированная обладает тем преимуществом, что при нарушении авторских прав обладатель документа о регистрации может обратиться в суд. Суд возьмет документы из ФИПС, сравнит изложенный в них программный код с тем, который будет получен в результате оперативных мер (например, изъяли у хакера взломанную или переделанную программу), и на основании этих данных вынесет официальное решение. Все. Никаким доказательством эффективности, правильности, коммерческой пригодности наличие государственной регистрации не является. Смысл один — государство приняло на хранение документы по программе и готово официально подтвердить, что такие документы им сдавал такой-то человек.
Кстати, совершенно аналогичная ситуация оказывается с патентами, авторскими свидетельствами и (отчасти) сертификатами. Патент и авторское свидетельство не являются доказательством исключительной эффективности, они только подтверждают, что такого раньше не было, а автор сделал первым, и государство готово это подтвердить (за деньги, выплачиваемые патентообладателем). С сертификатом вообще есть показательный пример. Есть телефон (эпохи «АОН на Z80, переделанный из Спектрума»). В документации написано: «телефон комплектуется телефонным кабелем.... бубубу... имеется сертификат». Что может подумать покупатель? Что телефон сертифицирован — то есть чуть ли не все Министерство Связи поставило на него разрешающий штамп и готово обеспечить высочайшее качество связи по данному аппарату. А сертификат действително есть... на кабель! Что он при горении не выделяет ядовитых веществ. Сертификат? Да. Смысл в том, что получить такой сертификат существенно дешевле, чем документ на весь телефон, который подтверждал бы возможность его использования в российских телефонных сетях. В данном случае производители эффективно воспользовались малым уровнем информированности основной массы населения в области документов, регламентирующих эксплуатацию оборудования.
Хорошо, а тогда что же относится к официально действующим нормативным документам на территории РФ? Смотрим
http://www.ostgost.ru/
«ГОСТ, ГОСТ Р, ГОСТ Р ЕН, ГОСТ ИСО, ГОСТ ИСО/МЭК, ГОСТ МЭК, ГОСТ ЭД ОСТ, ТУ, СниП, СанПиН, ВСН, РД, РДС, СП, ГЭСН, ФЕР, ТЕР, ГН сертификаты.»
Среди стандартов имеется определенная иерархия. Например, предприятие-изготовитель может выпустить на свое изделие ТУ (Технические Условия). Однако если эти ТУ вступят в противоречие с ГОСТ (ГОСТ Р), пользоваться изделием в соответствующей сфере применения будет нельзя. Зато в других, где сведения ТУ удовлетворят требованиям других ГОСТ — пожалуйста. Например, прибор может быть применен в быту, но не может — в медицине. Вопросы применимости соответствующих стандартов регламентируются опять-таки официальными документами. Обращаем внимание, что в списке есть ГОСТ ИСО, но нету ANSI ни в каком виде. Действительно, зачем бы на территории Российской Федерации действовал документ Американского Национального Института Стандартов?
Итак, переходим собственно к мифу.
«ANS-94 — важный документ, являющийся существенным подспорьем в обеспечении развития Форта вообще и среди российских фортеров в частности».
Данный миф базируется на нескольких «китах»
1) «Стандарт» - это нечто официальное, утвержденное после всесторонней проверки уполномоченными лицами, которые приняли на себя часть ответственности за получение всеми пользователями стандарта правильных и эффективных результатов.
В действительности: существует множество частных организаций, выпускающих документы, в названии которых есть «стандарт».
2) ANSI — это официальная организация, за которой стоит вся компьютерная индустрия.
В действительности: в настоящий момент ни один компилятор Си не соответствует требованиям ANSI C полностью.
3) Стандарты проходят всестороннюю экспертную оценку, гарантирующую их корректность.
В действительности: регистрация программы в ФИПС никоим образом не означает официального подтверждения ее эффективности или коммерческой ценности.Собственно, даже элементарной правильности. ФИПС просто принимает в архив передаваемые документы, регистрируя фамилию и дату передачи, присваивая им номер. Производится формальная проверка правильности заполнения бланков.
В конечном итоге оказывается, что ANSI X3J14 является «раком на безрыбье», поскольку хоть как-то перечисляет слова Форта. Использовать его, конечно, можно. Но не требуется — нет ни одного документа, предписывающего пользоваться транслятором Форта, соответствующим ANSI X3J14. А без этого аргумент «ANS-совместимость» является не аргументом, а скорее показателем некомпетентности в области организации разработки программного обеспечения. Поскольку юридически оно имеет тот же вес, что и одобрение кружком кройки и шитья деревни Малые Трансляторы.
Вопрос следующий, проистекающий из изложенного: а тогда стоит ли вообще что-то писать и фиксировать? Ответ тут такой: для себя — да. Для «официальности» - нет, потому что юридический вес будет ровно такой же, нулевой. А для понимающего человека аргумент «у нас RuFIG-совместимо!» будет выглядеть опять-таки показателем некомпетентности собеседника в вопросах разработки программных продуктов. Мало того, отраслевой РД, или даже СтП (Стандарт Предприятия) мгновенно перекроет по значимости любые подобные построения на бумаге. Потому что СтП предусмотрен в качестве документа, а ANSI — нет. Опять же, RuFIG — общественная группа, даже не имеющая регистрации как некоммерческая организация. На деле такая регистрация просто предоставляет право иметь свою печать и собирать оргвзносы с членов организации на некоммерческие нужды — оно кому-нибудь надо? Иными словами, даже формирование оргкомитета, принятие устава, заполнение массы бумажек, подача заявления и длительные действия по госрегистрации никоим образом не способствуют появлению какого-либо «веса». Стандарт ANSI Forth имеет вес строго для людей, для которых группа разработчиков видится авторитетной. Стандарт RuFIG Forth — строго аналогично, имеет смысл делать только для себя, ориентируясь на его содержание, а не на возможные регалии, которые он мог бы предоставить.