Как стать автором
Обновить

Комментарии 45

О, только захотел прочитать эту статью на английском, как ее перевели!
Такие статьи всегда лучше читать в оригинале.
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
Не, ну я гоготнул над «реактивным твиттером», например. Спасибо.
Ну я к примеру вам минусов не накидал, но с вашим мнением в корне не согласен. Молча сделать — оно конечно хорошо для пользователей сейчас, но уже в обозримом будущем эти архитектурные ошибки (да и просто ошибки) повылазят и страдать будут и разработчики, и пользователи. Вся история развития интернета тому подтверждение.
>Пока другие уже наслаждаются реактивным твиттером, скруглениями краев и прочими няшками,… а пользователи Opera наседают на верстальщиков и вебмастеров всего мира, требуя делать для них специальные хаки для обеспечения нормальной работы и отображения их современных сайтов в запаздывающей или не уверенной в какой-то новой технологии Opera.

Просто вы выглядите как ещё один критик, который где-то что-то прочитал, или же последний раз юзал Оперу 2-3 года назад, и спешит донести своё авторитетное мнение.
Я вам порекомендую сначала поставить Оперу и поюзать её, а потом браться за её критику.
И да, очень интересно читать такое о браузере, который дал своим современным «конкурентам» большую часть их стандартных фишек, и разработчики которого вообще являются одними из авторов HTML5.

Чтобы вы понимали ситуацию, единственное, чего из +- существенных популярных современных фишек не поддерживает Opera — CSS3 Animations (которые даже в последних вебкитах и ФФ требуют префикса), WebGL — который пока что используется исключительно для лулзов демонстрации того, как можно на него портануть Quake 3, ну и да, SPDY. Причём 2 первые опции поддерживаются в следующей, 12 версии браузера.
Назовите мне другие опции CSS3 / HTML5, которые ещё не поддерживаются Оперой, при этом поддерживаются в большинстве других браузеров и при этом не имеют статус Draft.
Я промолчу про сферу мобильных браузеров, где ситуация для вебкитов по сравнению с Оперой выглядит плачевно на данный момент.

Да, есть сайты, которые полностью игнорируют альтернативные браузеры, и разрабам Оперы приходится подставлять юзерскриптные костыли. Но их выраженное меньшинство, и в повседневном использовании с большинством страниц нет никаких проблем, а преимущества Оперы перед другими браузерами преобладают.
И ещё это, как написал nsinreal выше:
>Молча сделать — оно конечно хорошо для пользователей сейчас, но уже в обозримом будущем эти архитектурные ошибки (да и просто ошибки) повылазят и страдать будут и разработчики, и пользователи. Вся история развития интернета тому подтверждение.
В современном вебе есть крайне разрушительная тенденция — считать что есть два пути развития — «усё как у вебките» и неправильный.
Это опасно, чему мы были свидетелями ещё 10 лет назад, благо сам Мелкософт отпраздновал смерть IE6. Пусть Гугл — более продвинутая контора, чем мелкомягкие, но и они не боги. Топик, собственно — это подтверждает. Или вы считаете что инженер норвежской компании предложил улучшения для текущей реализации SPDY просто чтобы привлечь к себе самому и к своему браузеру внимание?
Дробные проценты, даже не знаю к какой версии спецификации они относятся (CSS1?) — внедрены вот только-только недавно. И то, кажется, пока только в бете.
Вообще история с этими несчастными процентами уже дичайший и несмешной баян. Но я считаю её очень показательной иллюстрацией к принципу «а мы пойдем другим путем» (о котором и писал автор первого коммента в ветке).
Для симметрии давайте вспомним, как в хроме рисуются скроллбары прозрачных элементов, как рисуется фон строк таблицы и т.д. и т.п.
Собственно, никто и не говорит, что есть «святые» браузеры. Баги есть везде.
Только одно дело «частные» баги, проявляющиеся в редких специфических ситуациях, и совсем другое — неподдержка одной из древних и фундаментальных штук. Причем под многолетнюю(!) ругань разработчиков.
Фон tr — это и есть древняя и фундаментальная штука под многолетнюю ругань разрабов.

Зачем так остро нужны дробные проценты — представляю с трудом. Да, делить проще без округления и ручного расчёта, но как часто нужно именно 80.375% и 19.625%, но ни в коем случае не 80% и 20%? В среднем — никогда.
Ладно, про tr поверю, хотя в реальных проектах ну не сталкивался до сих пор.

Про дробные проценты — мне они нужны постоянно. Обычно ситуации 2 сортов:

1. Многоколоночная верстка. Чаще всего это 3 колонки (каждая по 33.33%). Вот недавно мне были нужны 8 колонок (по 12.5%).
Аргумент «да кто там заметит эту погрешность в доли процента...» — не принимается. Если блок очерчен какими-то линейками или подсвечен контрастным фоном, смещение даже на десяток пикселей уже очень заметно и выглядит неряшливо. Кроме того, округление там идет не к ближайшему, а всегда вниз. В упомянутом 8-колоночном случае это давало погрешность уже 8*0,5=4% экрана. Это уже просто катастрофа.
Да, есть методы обхода (через дополнительную html-разметку), но оно мне надо?

2. Когда эти проценты рассчитываются скриптом в анимациях, округление процентов приводит к дерганью.
НЛО прилетело и опубликовало эту надпись здесь
Давайте хоть на минутку вспомним, что в опере до сих пор нельзя поменять курсор мышки, а это позвольте всё ещё CSS 2.1.

developer.mozilla.org/en/CSS/cursor
Вы к чему это?
CSS-свойство «cursor:...» работает в Опере с незапамятных времён.
Даже по вашей ссылке указано, что Опера поддерживает большинство курсоров ещё с бородатых версий 7-9.
Это всё к тому, что не работает курсор с url(). Собственно без этого и эказанной ниже функции для анимации, невозможно делать нормальные игры (да возможно, но это уже точно будет не то, что можно сделать в Хроме или Лисе).
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
Назовите мне другие опции CSS3 / HTML5, которые ещё не поддерживаются Оперой, при этом поддерживаются в большинстве других браузеров и при этом не имеют статус Draft.
Список тех фич, которые популярны среди браузеростроителей, однако на сегодняшний день никак не поддерживаются Оперою, хорошо известен:

  • атрибуты async и defer для изменения поведения при загрузке внешних скриптов;
     
  • Cross-Origin Resource Sharing (посылка XMLHttpRequest в другой домен) — впрочем, её обещают реализовать в Opera 12;
     
  • HTML5 drag and drop — впрочем, его обещают реализовать в Opera 12;
     
  • Navigation Timing API (это уж никак не Draft: это Candidate Recommendation!);
     
  • XMLHttpRequest 2;
     
  • современная версия вебсокетов;
     
  • CSS-свойство resize;
     
  • API matchMedia для применения медиазапросов джаваскриптом;
     
  • 3D-преобразования CSS3;
     
  • Flexible Box Chrome поддерживает по современной версии спецификации, Firefox по предыдущей, а Opera никак — так что и костылём не подпереть;
     
  • API requestAnimationFrame;
     
  • база данных IndexedDB;
     
  • CSS-функция calc().

Некоторые из этих фич и впрямь пребывают в состоянии Working Draft. Однако заботит ли это читателя? Нет. Читатель видит только, что в ряде популярных браузеров они работают, а в Opera не работают.
Да, есть фичи, которые не поддерживаются в Опере.

Но не всё из упомянутого вами популярно среди, собственно, сайтостроителей.
И в CSS1-2 были непопулярные фишки, которые реализованы в других браузерах и при этом не пользуются популярностью веб-разработчиков. И Оперу с её считанными процентами пользователей в глобальном масштабе в этом винить непоследовательно. Что плохого в отсутствии реализации этих фишек в ней в такой ситуации?

Другое дело, что, собственно, измерение популярности веб-браузерных фишек — как минимум, не совсем тривиально, особенно если пытаться рассматривать не определённую выборку, а весь интернет.

И кстати, говоря о неподдерживаемых свойствах CSS — нельзя не отметить, что львиная доля неподдерживаемых Оперой свойств на данный момент в вебкитах и ФФ требует префикса. Это я к «двум путям развития», упомянутым выше.
Ну, это возражение справедливо. Многие из новых возможностей никак не используются сайтостроителями, притом, уж конечно, не Opera, а Internet Explorer им главный тормоз — а пуще того невозможность поставить свежий Internet Explorer на операционную систему Windows XP, до сих пор вполне популярную, хотя давно уж на менее чем у половины компьютеров стоящую.

И всё же во Хроме да в Файерфоксе можно найти выше мною перечисленные новинки (хотя бы и с префиксами — это нормально, это даже и следует так по стандарту для реализаций тех свойств, которые только в черновике ещё существуют), а в Опере нет.

Это печально, тем более что есть, напротив, такие свойства, которые сейчас в одной Опере только и реализованы тóлком (например, многоколоночная вёрстка в точности по спецификации, или формы HTML5, или ещё ввод дат и времён и значений цвета, или CSS3-свойства object-fit да object-position), да ведь и есть же ещё примерно столько же таких свойств, которые первыми появились в Опере и затем лишь оказалися подхвачены прочими браузерами.

То-то и выходит, что сочинять новинки авторы Оперы умеют, а вот подхватывать чужие новинки у них получается не так хорошо и не так быстро.
> уж конечно, не Opera, а Internet Explorer им главный тормоз
Это, кстати, тоже небесспорный постулат.

В абсолютном исчислении проблем в IE безусловно больше, намного больше. Но:
1. В большинстве совсем они подробно изучены, масса материала в сети, для многих найдены и отлажены пусть и костыльные, но пути обхода.
2. Сам IE любезно предоставляет кучу инструментов для решения своих же багов: фильтры, условные комментарии, CSS-хаки, VML, behaviors, expressions и прочая и прочая.
3. Есть много способов удобно и надежно определить, что посетитель пришел именно через IE и подсунуть ему персональные стили. В Опере единственный известный мне рабочий способ — JS.

В итоге проблем с Оперой, конечно, меньше. Но уж если случается… бывает упираешься в проблему и тратишь по нескольку дней на поиск/изобретение костыля.
То же самое можно сказать про блоги, касающиеся Firefox и Chrome…
> Вместо того, чтобы точно так же взять SPDY «as is», внедрить и отрапортовать об этом пользователям, они проводят анализ протокола и публикуют подобные отчеты.

Нахера? По принципу «шо бы было»? SPDY критикуют все, кому не лень, причем примерно с тех же позиций, что и Опера, с фактами на руках.
Одно дело сделать и критиковать другое — просто критиковать
Еще раз спрошу. Зачем делать? Чтобы было? Зачем тратить силы на протокол, проблемы которого видны и могут быть объективно оценены без реализации?

Давайте я буду генерить по стандарту в день, а вы, вместо того, чтобы их разбирать, будете реализовывать?
У всех стандартов есть проблемы. так что не поддерживать вообще никакие? Опера все же догоняющий браузер, и если у всех конкурентов эта фугнция есть, чтобы удержаться на рынке, надо ее поддерживать. а дальше, в меру сил, развивать и улучшать.
> У всех стандартов есть проблемы. так что не поддерживать вообще никакие?

С каких пор SPDY стал стандартом?

> если у всех конкурентов эта фугнция есть

Ага, ага. Прям-таки у всех

> чтобы удержаться на рынке, надо ее поддерживать.

Чтобы удержаться на рынке, SPDY даром не нужен.

Ну и вся эта демагогия никак не относится к бредятине типа «Одно дело сделать и критиковать другое — просто критиковать»
Ну и да, к вопросу о «сперва добейся»

lists.w3.org/Archives/Public/ietf-http-wg/2012AprJun/0546.html
We have Opera Mini that uses several different protocols, both similar to
HTTP as well as of the persistent TCP connection type. These are all
binary protocols using different versions of request-response, RPC, push
features, as well as compression of different sorts. We have Opera Turbo,
which is essentially a modified HTTP with prioritized, out-of-order
pipelining and some simple compression. Finally we have integrations with
different 3rd party technologies, some of which are mentioned on the press
release pages
www.opera.com/press/releases/2004/11/04/
www.opera.com/press/releases/2007/02/06/


То есть ВНЕЗАПНО Опера реализует толпу похожих технологий и вполне может оценить недостатки протокола, не реализуя его.

Но да, но да, надо обязательно ломиться реализовывать все, что появляется в интернете ибо!
Не знаю, SPDY или не SPDY, но уже давным давно пора жать всю текстовую инфу (HTML/CSS/что там еще) любым пакером на уровне протокола. Во времена диалап мопедов так и делали, только жаль ethernet не подхватил инициативу.
Большинство веб-серверов отдают контент ужатый gzip-ом.
>но уже давным давно пора жать всю текстовую инфу

Вообще-то все так давно и происходит. Промониторье запросы браузера, например, к хабру — везде Content-Encoding:gzip
Заголовки не жмутся. Это проблема, особенно, если cookie большие.
>Заголовки не жмутся.

Соглашусь, но мне кажется что без накопления словаря между сообщениями это не сильно поможет.
Зачем вам большие cookie?
Мне — незачем, а вот сайтам, которые я посещаю, они зачем-то нужны.
Интересно, по каким причинам они решили заниматься мультиплексированием по TCP вместо гораздо более подходящего SCTP?
1) Очевидно же. Просто TCP поддерживается (можно смело делать такое предположение что) везде и всегда. А заверни это все в SCTP мы сразу уткнемся в кучу софта и оборудования которое просто не умеет с ним работать. Вот например, вы уверены что ваш роутер умеет NATить и Файерволить SCTP? А роутеры на тех вай-фай точках где вы бываете? А в интернет-кафе? А еще на миллионах машин?
2) Кстати, в SCTP «завернуть» и сам HTTP можно ведь он намертво не «приклеен на эпоксидке» к TCP. Вот например, так называемый «https» из себя представляет ничто иное как HTTP «завернутый» в ssl-соединение.

НЛО прилетело и опубликовало эту надпись здесь
> Ну как появится спрос, сразу научаться.

Не появится, и не научаться! Вы хоть себе примерно представляете количество миллиардов строк кода, которые надо переписать во всем софте по всему миру чтобы перейти с TCP на SCTP? Поэтому SCTP как был, так и останется узко-нишевым протоколом, который будут использовать не по принципу «давайте использовать, потому что лучше», а по принципу «в данной конкретной системе эффект от SCTP реально окупит трудозатраты и геморой на его внедрение».

> А так, можно деградировать до нынешнего TCP.

А вот тут, пожалуйста, поподробнее. У вас есть на руках результаты каких-то новых, ранее неизвестных, подробных исследований «деградации TCP» о которых до сих пор не знает широкая общественность? Я вам могу привести всего лишь несколько реальных (и общеизвестных) примеров, когда «особенности TCP» могут представлять собой «более-менее узкое место» НО… и при всем этом, насколько вам известно, до сих пор «суммарная весомость» этих примеров так и не набрала настолько «критическую массу» нареканий, чтобы началось массовое «бурление» по поводу массового отказа от TCP.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории