Противостояние W3C и WHATWG: Apple, Google, Microsoft, Mozilla возражают против DOM 4.1

    Как всем известно, существует две спецификации HTML: W3C (консорциум World Wide Web) и WHATWG (компании Apple, Google, Microsoft и Mozilla, де-факто авторы стандарта HTML5). На этой неделе между создателями спецификаций состоялся открытый конфликт.

    Ситуация развивалась следующим образом. Началось всё с того, что W3C сделала форк спецификации живого стандарта WHATWG DOM и назвала его DOM 4.1. Затем W3C внесла в неё несовместимые изменения и объявила форк официальной спецификацией, хотя по факту вся важная работа производилась в версии WHATWG.

    Прошло некоторое время, и месяц назад стартовало публичное обсуждение предложения W3C сделать спецификацию Кандидатом в рекомендации (после неё существенные изменения по сути уже не вносятся, только уточняются детали дизайна в PR, рекомендация принимается официально). Прочитать это познавательное обсуждение можно на Github по адресу.

    Логично предположить, что у некоторых членов W3C возникли вполне обоснованные возражения по поводу несовместимости двух версий DOM. Здесь в вопрос вмешался CEO W3C, который вступил с ними в спор и отклонил все их возражения, продвинув спецификацию до статуса Кандидата в рекомендации (Candidate Recommendation, CR) и объявив призыв к консенсусу.

    Разумеется, членам WHATWG такой поворот событий не понравился. После того, как директор W3C отказался изменять спецификации, эти компании несколько дней назад выступили с официальным возражением (Formal Objection) против DOM 4.1, пообещав W3C, что в текущем виде данную спецификацию ни один из движков браузеров реализовывать не собирается — поскольку две несовместимые версии DOM не нужны ни разработчикам, ни пользователям.

    В своём возражении Google указала на конкретные технические проблемы несовместимости с новой спецификацией W3C:
    Использование некорректного Web IDL (языка определения веб-интерфейса), несовместимости Event Dispatch, интеграции Shadow DOM, интеграции отдельных элементов, Ranges и обхода дерева DOM
    .В итоге W3C была вынуждена взять тайм-аут и пообещала сначала рассмотреть технические проблемы, после чего вернуться к принятию DOM 4.1.

    Возникает вопрос — зачем всё это нужно W3C? Как утверждается, дело в том, что помимо членов WHATWG, в организации W3C состоит ещё 450 компаний, которые не имеют особого влияния на мир браузеров, но регулярно приносят W3C доход в виде взносов. В прошлом году W3C провернула похожий трюк с DRM (Encrypted Media Extensions), который, со слов инженера Google Яна Хиксона, «невозможно реализовать практически» — ради того, чтобы привлечь в консорциум несколько компаний, у которых до этого момента не было причин спонсировать W3C.

    Многострадальный черновик W3C DOM 4.1 можно скачать по ссылке. Самая первая версия спецификации DOM была подготовлена W3C почти двадцать лет назад — 1 октября 1998 года. Ссылки на возражения: возражение Mozilla, возражение Apple, возражение Microsoft, возражение Google.
    Поделиться публикацией
    Ой, у вас баннер убежал!

    Ну, и что?
    Реклама
    Комментарии 22
    • +17

      А зачем вообще нужен W3C, если все разработчики браузеров дружно состоят в конкурирующей организации? Я бы понял, если бы часть разработчиков была в W3C, а часть в WHATWG или ни в одной из этих организаций, то кому-то нужно было выступать посредником, стандартизировать всё это и разрешать конфликты.

      • +2
        Я так понимаю разработчикам браузеров только волю дай, интернет превратится в 1 корпоративный сайт. А так вроде какой-то противовес этим монстрам индустрии
        • 0
          Так если не успели w3c подготовить свою спецификацию вовремя, то уже поезд ушел, тем более более 90% браузеров под гуглом, куда денуться?
          • +9
            Противовес почему-то действует по схеме «на зло маме уши отморожу».
            • +5
              а какой тут противовес? какие рычаги давления есть у w3c?
              • 0

                Раньше была гарантия патентной чистоты публикуемых стандартов. Теперь, похоже, уже никакой (с прошлого декабря у WHATWG своя патентная система).

              • +17
                Я так понимаю разработчикам браузеров только волю дай

                Пока не появился WhatWG — интернет стоял на месте — W3C погряз в бюрократии и занимался никому не нужной фигней. Это абсолютно бессмысленная компания, которой уже лет 10 пора на свалку. Еще в статье 2011-ого года я говорил, что им пора на свалку — они только тормозят веб. За 7 лет ничего не изменилось. WhatWG — двигают веб, W3C — занимаются фигней за спонсорские деньги
                • –2
                  Весьма спорный вопрос что лучше — стоять на месте как W3C, или то, что получилось сейчас — помойка в веб-движке, постоянная обратная несовместимость сайтов со старыми версиями браузеров, а авторы браузеров вместо того чтобы хоть раз реализовать стабильную спецификацию и до конца её отладить, гонятся за добавлением ненужных фич с багами.
                  • +2
                    Веб двигался вперед, стоял на месте только В3Ц. В итоге — что-то (вроде видео) делалось флешем. Вместо прекрасных флексов мы верстали таблицами/дивами-абсолютно/дивами-плавающе, в ИЕ6 применяли фильтры и остальной мусор.

                    постоянная обратная несовместимость сайтов со старыми версиями браузеров

                    И в чем проблема, если новые версии браузеров — доступные? А старые, обычно, применяются с graceful degradation?

                    а авторы браузеров вместо того чтобы хоть раз реализовать стабильную спецификацию и до конца её отладить, гонятся за добавлением ненужных фич с багами

                    А можно примеры? Потому что примеры ненужных фич w3c с багами я могу назвать. Те же xhtml1.1 и drm, которые уже тут вспомнены
                    • +1

                      Проблема в том, что нормальный софт должен работать, будучи разово установленным, и в крайнем случае — получать обновления с фиксами критических багов (но само их наличие уже означает, что софт, скорее всего, недоделаная бета). Текущая же ситуация, созданная участниками WHATWG, всячески препятствует осуществлению вышенаписанного. Тот же Debian, до, кажется, 6 версии пытался поддерживать стабильную, по их понятиям, версию firefox на протяжении всего мажорного релиза системы, что с их стороны было совершенно правильно, но на 7 версии сдались, потому как срок работы одной версии, даже при поддержке её security патчами из следующих версий, сократился до неадекватно коротких периодов времени.


                      А можно примеры?

                      Примеры чего? Багов — посмотрите в багтрекерах. Ненужных фич — в changelog'ах.

                      • +2
                        Ну это было отчасти верно, пока цена выпуска новой версии (включая её доставку конечным пользователям) была непомерно высока. Сейчас это не так. Просто смотрите на Chrome не как на череду 60 различных программ, а как на одну программу, которая постоянно развивается, а 60 это просто её показатель развития (типа возраста у человека).
                        • 0
                          Пользователю от этого не легче. Я пользователь FF, а не хрома, и мне больно от постоянных и не нужных мне изменений в интерфейсе, функуиях и совместимости дополнений, от которых нельзя отказаться, так как они связаны с поддержкой постоянно меняющихся и расширяющихся стандартов. Я реально хочу, чтобы новые версии стандарта выпускались раз в пять лет, а между этими промежутками никаких добавлений новых фич по части нового синтаксиса не было, кроме девелоперских версий.
                          • +2
                            Могу вам только посочувствовать, хотя и не разделяю вашу боль. Но все в этом мире течёт, всё меняется. Так проще и естественней для большинства окружающих нас сущностей.
                    • 0

                      Проблема в том, что «стабильной» спецификация может стать только после того, как она была опробована в браузерах, покрыта тестами и учитывает реальные практические потребности разработчиков, а не только идеализированные теоретические представления своих авторов. Иначе будет как с CSS2.0 — по-бырому приняли 20 лет назад, не реализовали нигде никогда, 13 лет доводили до ума, по факту разгребают до сих пор:)

                      • 0
                        Проблема в том

                        Описания каких бы то ни было проблем в последующем тексте не видно. Опробовали, работает — исправьте все найденные баги на этой ступени а потом уже придумывайте следующие.

                        • 0

                          Тут в целом согласен. Чехарда, когда спеку уже из статуса CR отзывают обратно в WD, крутят, плющат и колбасят несколько лет до полной несовместимости с исходным вариантом и потом заново выкатывают в CR под тем же названием и с той же цифрой (особенно CSS-ники этим грешат) — это маCSSаракш какой-то!

                • +18
                  По идее для независимости. Но после того как они одобили DRM в стандарт я не понимаю зачем они нужны.
                  • 0
                    До этого ещё был push api.
                  • 0

                    До прошлого декабря у WHATWG не было своей официальной патентной политикой, что было неприемлемо для завзятых патентных тролл «догоняющих» браузерных компаний (прежде всего Микрософта). В декабре такая политика у WHATWG появилась и W3C стал действительно по большому счету не нужен. Посмотрим, как дальше вырулит..:)

                  • 0

                    А chaals продолжает взаимодействовать с Яндексом?

                    • +3
                      Спасибо за ссылку на обсуждение, очень интересно.
                      • 0
                        Интересно, что Тим-Бернерс Ли — директор W3C, а CEO — Jeffrey Jaffe.

                        Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

                        Самое читаемое