Куда катится этот мир?
Исследуем инфраструктуру Интернета во всех проявлениях
Публикуем результаты на сайте stat.nic.ru
Мониторинг распространенности веб-технологий — один из свежих проектов
Что, как и зачем
Вкратце
Исследуются российские и зарубежные веб-узлы
Анализируются десятки признаков и показателей
Накапливается и систематизируется интересная статистика
Технология
В основе — робот, «паук» , опрашивающий хосты из заданного списка по протоколу HTTP
Имеет собственный User-Agent
Поведение подробно задокументировано
Обработанные выборки. «Рунет»
Хосты в доменах второго уровня .RU
, делегированных и не размещенных на парковках — порядка 3 миллионов × 7 раз
Хосты в делегированных доменах .РФ
— 573 тысячи
Хосты в делегированных доменах .SU
— 95 тысяч
Обработанные выборки. «Общемировой веб»
Хосты в случайных делегированных доменах .COM
— 1 миллион , 3 миллиона
Веб-ресурсы, занимающие верхние позиции в общемировом рейтинге Alexa — 1 миллион × 2 раза
Исследуемые особенности стороны сервера
Доступность хостов по протоколу HTTP
Работоспособность алиасов с и без www.
Наличие индексных HTML -страниц
Наиболее общеупотребительные CMS и их версии
Наиболее популярные веб-серверы и их версии
Исследуемые особенности стороны клиента
Кодировки содержимого
Объемы HTML -кода
Длительности загрузки индексных страниц
Заданные конструкции HTML -кода, соблюдение веб-стандартов
Объекты исследования
HTTP -заголовок сообщения ответа на GET -запрос ресурса /
HTML -код индексной страницы
Коды статуса HTTP -ответов на HEAD -запросы нескольких десятков URL , характерных для различных CMS
Принципы анализа HTML -кода
Простейший tokenizer (как это по-русски?..) последовательно проходит HTML -код и разделяет его на составляющие
Интересные вхождения внутрь этих составляющих детектируются при помощи регулярных выражений
«Всякий раз, когда ты пытаешься парсить HTML регулярными выражениями , сын нечестивый умывается кровью девственниц, и русские хакеры павнят твое веб-приложение»
Пара слов об общей картине
Откликнувшиеся веб-узлы
100%
0%
.RU
, 79%
.COM
, 67%
Alexa , 86%
Обнаружения одной из популярных CMS
40%
0%
.RU
, 29%
.COM
, 10%
Alexa , 25%
Популярные CMS , .RU
50%
0%
Популярные CMS , .COM
100%
0%
Популярные CMS , Alexa
100%
0%
Доктайпы и режимы рендеринга
Доктайпы как таковые
100%
0%
.RU
, 82%
.COM
, 64%
Alexa , 90%
Standards-Mode -доктайпы
100%
0%
.RU
, 71%
.COM
, 56%
Alexa , 83%
Разновидности доктайпов, .RU
50%
0%
HTML5 , 15%
HTML 4.01 (SM ), 7%
XHTML 1.0 Strict , 10%
XHTML 1.0 Transitional , 37%
XHTML 1.1, 1%
HTML 4.0/4.01 (QM ), 7%
Другой, 4%
Никакой, 18%
Разновидности доктайпов, .COM
50%
0%
HTML5 , 11%
HTML 4.01 (SM ), 8%
XHTML 1.0 Strict , 9%
XHTML 1.0 Transitional , 26%
XHTML 1.1, 1%
HTML 4.0/4.01 (QM ), 5%
Другой, 5%
Никакой, 36%
Разновидности доктайпов, Alexa
50%
0%
HTML5 , 21%
HTML 4.01 (SM ), 6%
XHTML 1.0 Strict , 11%
XHTML 1.0 Transitional , 43%
XHTML 1.1, 1%
HTML 4.0/4.01 (QM ), 4%
Другой, 3%
Никакой, 10%
HTML5 завоевывает планету
Новые структурные элементы HTML5
<article>
, <aside>
, <audio>
, <bdi>
, <canvas>
, <command>
, <datalist>
, <details>
, <figcaption>
, <figure>
, <footer>
, <header>
, <hgroup>
, <keygen>
, <mark>
, <math>
, <meter>
, <nav>
, <output>
, <progress>
, <rp>
, <rt>
, <ruby>
, <section>
, <source>
, <summary>
, <svg>
, <time>
, <track>
, <video>
Новые структурные элементы HTML5 . Распространенность
15%
0%
.RU
, 7%
.COM
, 5%
Alexa , 13%
Новые типы полей ввода HTML -форм
Новые атрибуты элемента <input>
: autocomplete
, dirname
, list
, max
, min
, multiple
, pattern
, placeholder
, step
Новые разрешенные значения атрибута type
элемента <input>
: color
, date
, datetime
, datetime-local
, email
, month
, number
, range
, search
, tel
, time
, url
, week
Новые типы полей ввода HTML -форм. Распространенность
15%
0%
.RU
, 4%
.COM
, 3%
Alexa , 12%
«Проблемные» конструкции HTML
1. Опротестованные
Объявлены как deprecated в спецификации HTML 4.01 и в итоге упразднены в HTML5
Опротестованные элементы
<applet>
, <basefont>
, <center>
, <dir>
, <font>
, <isindex>
, <strike>
Опротестованные элементы. Распространенность
50%
0%
.RU
, 31%
.COM
, 19%
Alexa , 33%
Опротестованные атрибуты
align
, alink
, background
, bgcolor
, clear
, code
, color
, compact
, face
, hspace
, language
, link
, noshade
, nowrap
, object
, prompt
, text
, version
, vlink
, vspace
— без оговорок
border
— за исключением случая использования в контексте элемента <table>
со значением 1
2. Упраздненные
Не объявлены как deprecated , но в итоге все же исключены из HTML5
Упраздненные элементы
<acronym>
, <big>
, <tt>
Средняя распространенность — 1%
Упраздненные атрибуты
cellpadding
, cellspacing
, valign
Средняя распространенность — 36%
3. Реабилитированные
Объявлены как deprecated , но в итоге восстановлены в HTML5 в каком-либо новом качестве
Реабилитированные элементы
<menu>
, <s>
, <u>
Средняя распространенность — 6%
Реабилитированные атрибуты
start
, target
— без оговорок
value
— в контексте элемента <li>
Средняя распространенность — 57%
4. Фреймовые
Актуальны только в документах типа Frameset и не используются в HTML5
Фреймовые элементы
<frame>
, <frameset>
, <noframes>
Фреймовые атрибуты
marginheight
, marginwidth
, noresize
, scrolling
Средняя распространенность — 16%
5. Нестандартные
Не описаны ни в одной из официальных спецификаций HTML
Нестандартные элементы
<bgsound>
, <blink>
, <comment>
, <marquee>
, <multicol>
, <nobr>
, <noembed>
, <noindex>
, <plaintext>
, <spacer>
, <xmp>
Нестандартные элементы. Распространенность
20%
0%
.RU
, 17%
.COM
, 2%
Alexa , 8%
Нестандартные атрибуты
bottommargin
, leftmargin
, rightmargin
, topmargin
Средняя распространенность — 6%
6. Легитимизированные
Изначально нестандартные, «узаконены» в HTML5
Легитимизированные элементы
<embed>
, <wbr>
Средняя распространенность — 8%
Использование CSS
CSS в любом виде
100%
0%
.RU
, 93%
.COM
, 63%
Alexa , 95%
Внешние таблицы стилей
100%
0%
.RU
, 82%
.COM
, 48%
Alexa , 87%
Таблицы стилей внутри HTML -кода
100%
0%
.RU
, 39%
.COM
, 33%
Alexa , 50%
Inline -стили
100%
0%
.RU
, 79%
.COM
, 46%
Alexa , 84%
Интересные частности
Метатеги viewport
15%
0%
.RU
, 5%
.COM
, 8%
Alexa , 13%
Теме посвящен доклад «Прокрустовы окна»
Условные комментарии для IE
50%
0%
.RU
, 34%
.COM
, 16%
Alexa , 42%
БЭМ -классы
Имена классов, удовлетворяющие регулярному выражению : /^(b|i)-\S+__\S+$/
Речь идет, таким образом, об осторожной оценке снизу
Явление характерно скорее для Рунета
Выявлено 8596 сайтов , использующих БЭМ -классы, в доменах .RU
Кодировка UTF -8
100%
0%
.RU
, 50%
.COM
, 51%
Alexa , 54%
Концепты сайтов
Современные сайты
Используется доктайп HTML5
Не используется никаких нестандартных с точки зрения HTML5 элементов и атрибутов
Не используются inline -стили
Современные сайты. Распространенность
3%
0%
.RU
, 2,6%
.COM
, 2,5%
Alexa , 1,8%
Сайты разных эпох, сделанные с оглядкой на стандарты
Используется один из доктайпов : HTML5 , HTML 4.01 Strict , XHTML 1.0 Strict , XHTML +RDFa 1.0, XHTML 1.1
Не используются недопустимые в рамках доктайпа элементы и атрибуты
Сайты разных эпох, сделанные с оглядкой на стандарты. Распространенность
10%
0%
.RU
, 8%
.COM
, 7%
Alexa , 8%
Сайты темного прошлого
Доктайпа нет , либо он переключает браузер в quirks mode
Используются элементы или атрибуты, объявленные как deprecated в спецификации HTML 4.01 или являющиеся нестандартными
Сайты темного прошлого. Распространенность
40%
0%
.RU
, 22%
.COM
, 36%
Alexa , 12%
Дальнейшее чтение
«Мониторинг серверных и клиентских веб-решений» — подробнейший отчет о результатах исследований, включающий почти 40 тысяч знаков текста и более 20 диаграмм
Спасибо! Вопросы?
Презентация: lomov.ru/wsd