Когда-то я был евангелистом мозилловских технологий... Нет, дети, Firefox'а тогда еще не было :-). И даже Firebird'а и Phoenix'а не было... Я пользовался ночными сборками Mozilla 0.6, следил за обсуждениями багов в b.m.o., пытался всем вокруг рассказывать, что этот браузер гораздо лучше IE5, потому что это не просто браузер, а целая платформа (браузера-то как раз за ней еще видно не было). И тоже тогда считал, что XML — это будущее веба, ага :-). Все это продолжалось довольно долго, и многих людей я действительно на Mozilla, а потом и Firefox, пересадил.

Потом, правда, пыл поутих. Отчасти из-за того, что инноваций в ядре Gecko стало поменьше, а отчасти из-за того, что Аса Доцлер не по делу наехал на меня в комментариях своего блога, и я обиделся :-). Но все же периодически слежу за тем, что происходит в мозиллной стране. Через Burning Edge, в основном. И как раз вчерашний пост там заставил меня снова порадоваться за то, что Gecko жив и становится лучше. Хочу поделиться.

Исправлен bug 18333 — "XML Content Sink should be incremental". Да, это тот самый баг, из-за которого Gecko не показывал настоящий XHTML, пока страница полностью не загрузится. И да, этому багу больше 7 лет :-). Именно из-за него большая масса веб-разработчиков уверена, что XML нельзя начинать обрабатывать, пока он целиком не загружен... Но ведь пофиксили! Спасибо, Henri Sivonen!

Реализован getElementsByClassName! Который, кстати, часть стандарта HTML5. В смысле, нативно реализован. В движке, на C++. То есть работать будет существенно быстрей, чем современные javascript-реализации. Спасибо, Robert Sayre!

Реализован inline-block (а за ним и inline-table до кучи). Именно из-за того, что их нет, нам приходится хачить горизонтальные меню float'ами и inline'ами. Этому багу еще больше времени, чем XML-ному, и для реализации таких древних вещей разработчикам ядра приходится переделывать концептуальные части движка, при этом еще и обеспечивая его готовность к выпуску текущих версий браузера. Спасибо, David Baron!

Что меня очень радует, это то, что есть люди, которые без всякой особенной помпы потихоньку делают возможным то, чтобы через пару лет кто-нибудь вдруг написал какой-нибудь замечательный "веб-три-нольный" хак, даже не зная о том, что пару лет назад он бы просто не заработал.

Комментарии: 16

  1. FX Poster

    Хм. Спасибо за то, что рассказал про inline-block :) Щас будем пробовать.
    Кстати, Opera и IE хоть какой-нибудь это будут поддерживать?

  2. FX Poster

    И еще - не знаешь, где можно найти документацию-мануал к последнему JavaScript? А то я слышал, что в FF уже поддерживается JS1.7, но доков по нему как-то не нашел.

  3. Michael Yakovis

    И только одно обидно — все эти нововведения действительно "отложенного действия", нескоро можно будет ими воспользоваться.

  4. Иван Сагалаев

    Документации по Javascript просто полно. Я обычно смотрю здесь: http://developer.mozilla.org/en/docs/JavaScript

    А Опера inline-block поддерживает уже довольно давно. А радуюсь я по поводу Gecko, потому что одной Оперы слишком мало, чтобы его использование вышло из стадии экспериментов...

  5. Kildor

    как раз гекконы были отстающими в плане поддержки инлайн-блок.
    Опера его поддерживает с каких-то совсем древних версий, ИЕ 6 точно его держит.
    А гекконы — только -moz-inline-block, поведение которого отличается от inline-block.

    Рад за гекконов ;)

  6. Иван Сагалаев

    Нет-нет, вот IE inline-block не поддерживает. Это значение используется в каком-то-забыл-каком хаке, но оно не работает как именно inline-block должен работать.

  7. Roman Cheplyaka

    Что меня очень радует, это то, что есть люди, которые без всякой особенной помпы потихоньку делают возможным то, чтобы через пару лет кто-нибудь вдруг написал какой-нибудь замечательный “веб-три-нольный” хак, даже не зная о том, что пару лет назад он бы просто не заработал.

    Красиво написал :) Поддерживаю.

  8. S

    А когда HTML 5 стал стандартом?

  9. Иван Сагалаев

    Ай, не ловите на словах :-). Он, конечно, юридически не стандарт (равно как и рекомендации W3C), но по сути раз это направление поддерживают разработчики браузеров, то именно это и имеет в итоге значение.

  10. FX Poster

    За линк спасибо, но reference по JS 1.7 нет :) есть только "What's new"... :(
    Какие-нибудь блоги типа того, что ты написан по мозилле по IE есть?

  11. S

    Я если честно даже не предполагал что Вы пропустите этот странный упрёк в эфир…
    Если не w3c, которая управляет развитием сети, то какой стандрт будет легитимным?
    ISO? IEEE? Или может вообще ANSI?

  12. Иван Сагалаев

    Я не воспринял это как упрек, сам буквоед тот еще :-)

    Легитимность стандарта — интересный вопрос. Если брать юридический смысл, то легитимность имеет смысл только при возможности принудить людей ее соблюдать. В государстве законы не работали бы, если бы не было милиции. В технической стандартизации ничего такого нет, никого нельзя, скажем, оштрафовать за то, что браузер неверно поддерживает какую-то спецификацию (и очень хорошо).

    Поэтому я склонен рассматривать этот вопрос только с практической стороны, то есть как стандарт де-факто, который имеет смысл, если он реально применяется. Потому что тогда можно поставить свои деньги на разработку чего-то под такой стандарт и знать, что усилия не пропадут втуне. В данный конкретный момент мы имеем ситуацию, когда производители всех браузеров, которые развивают свои движки, какое-то время назад задвинули на W3C, которая их игнорировала, и организовали WHAT WG, чтобы сделать все самим. Поэтому в данный конкретный момент WHAT WG'шные спецификации — ближе всего к реальному понятию стандарта (я сейчас беру именно классические веб-стандарты, исключая отсюда, например, Flash).

    Ситуация эта, вообще-то, вынужденная, и особенно никому не нравится. Потому что все понимают, что просто так взять и выкинуть десяток лет опыта работы, евангелизма и авторитета W3C нельзя. Конечная цель WHAT WG — как раз перенести свои стандарты в W3C, чтобы устранить политические вопросы.

  13. FX Poster

    А разве веб развивается по стандартам? Что-то я такого не припомню. W3C предлагает и ничего больше. А развитие идет по своему и никто не знает, к чему все прийдет. Есть только наметки, конкретной дороги нет. Все ИМХО.

  14. Arlekino

    Нет-нет, вот IE inline-block не поддерживает...

    Ну почему же не поддерживает, еще как поддерживает. Но только для инлайн элементов (к примеру span).

  15. S

    За разьяснения про легетимность спасибо.

    Да, Обозреватель Интернет задвинул на W3C в некоторых моментах и долго не поднимал этот вопрос. Но разве они в WHAT WG? Обозреватели же спешно развивают свой движок.
    Что для Вас понятие реального стандарта (классических веб-стандартов)? У многих расходиться мнение.

    Мне нравится видение W3C стандартов, не принимаю пока что этот Веб Аппз 1.0. HTML надо отключать. Если будет валидный (технически) XHTML, появиться возможность создавать аппаратные парсеры… Да и тех профи кто могут выдавать валидный код не так уж и мало, на мой взгляд.

  16. Иван Сагалаев

    Но разве они в WHAT WG? Обозреватели же спешно развивают свой движок.

    Нет, Microsoft не в WHAT WG. Но они до недавнего времени вообще не проявляли интереса к этому процессу, а сейчас заняты доведением движка хотя бы до соврменного уровня.

    Что для Вас понятие реального стандарта (классических веб-стандартов)

    Реальный — которым все пользуются. "Классические" — это HTML, CSS, Javascript. К ним старательно присоединяется SVG: есть уже и в Gecko, и в Опере, и в Safari). К остальным можно отнести, например, XBL, который реализован только в одном браузере и, например, Flash, который не особенно связан со всеми остальными, а развивается сам по себе.

    Мне нравится видение W3C стандартов

    В смысле, 5-6 лет разрабатывать стандарт, которым никто не пользется? :-)

    не принимаю пока что этот Веб Аппз 1.0. HTML надо отключать

    Интересно, откуда у всех мнение, что Web Apps — это возвращение синтаксиса HTML? Спецификация WHAT WG предусматривает оба синтаксиса равнозначно: XML'ный и HTML'ный. Вы можете пользоваться любым, который нравится. Смысл Web Apps в обратной совместимости, а синтаксис — это совершенно мелочный вопрос.

Добавить комментарий