Xpoint
   [напомнить пароль]

Статистика присутствия в броузерах версий JVM

Метки: [без меток]
[арх]
2005-07-14 09:49:58 [обр] Даниэль Алиевский(35/125)[досье]

Меня давно интересовал вопрос, насколько распространена ситуация, когда в броузере посетителя уже имеется Java и какова сравнительная популярность разных версий. SpyLOG и подобные счетчики такую статистику не предоставляют. Вчера я реализовал сбор подобной статистики самостоятельно, на главной странице проекта WebWarper. Хочу поделиться первыми результатами (за период около суток).

Нет Java либо JavaScript: 305
  из них нет JavaScript: 158
Java 1.1: 2223
  из них Java 1.1.4: 2216
    из них в User-Agent есть подстрока MSIE: 2124
Java 1.2: 0
Java 1.3: 54
Java 1.4: 337
Java 1.5: 357

Интересно?

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

Метод сбора статистики такой:

<script language="JavaScript"><!--
var hasJava;
if (msieversion()==3) hasJava= true;
else hasJava= window.navigator.javaEnabled();
if (hasJava) {
  document.write('<applet codebase="/wwgz/serv/" code="AppletLogJavaVersion.class"'
    +' width="1" height="1">'
    +'<param name="Color" value="1A6BBB">'
    +'<param name="LoggingScriptURL" value='
    +'"http://webwarper.net/clicklog.pl/WW_Java_%VERSION%/webwarper.net/wwgz/serv/images/empty.gif">'
    +'</applet>');
} else {
  document.write('<img width="1" height="1" src='
    +'"http://webwarper.net/clicklog.pl/WW_Java_NONE/webwarper.net/wwgz/serv/images/empty.gif">');
}
//--></script><noscript><img width="1" height="1"
src="http://webwarper.net/clicklog.pl/WW_Java_NOJavaScript/webwarper.net/wwgz/serv/images/empty.gif">
</noscript>

Апплет в методе start() обращается к LoggingScriptURL, заменяя подстроку %VERSION% на версию Java. Скрипт clicklog.pl регистрирует обращения и позволяет получить статистику по переданным ему параметрам. Приведенные выше цифры - это количество обращений к скрипту clicklog.pl. (Если добавить анализ уникальности хоста, картина радикально не меняется.)

Если JavaScript выключен, возможное наличие Java игнорируется. (Да и кому нужна Java без JavaScript.)

Вот. Наберу побольше статистики, опубликую.

Предварительные выводы.

  1. Не надо думать, что у современных пользователей в броузере нет JVM. Как правило, есть, причем встроенная микрософтовская JVM 1.1.4.
  2. А вот современные версии Java, увы, пока имеются у немногих. Если в апплете важно применять Java 2, то надо делать теги object/embed для автозагрузки нужной версии.
спустя 2 часа 22 минуты [обр] Давид Мзареулян(7/1003)[досье]
Может, всё-таки не надо автозагрузку? Некоторые за трафик платят…
спустя 22 минуты [обр] Даниэль Алиевский(35/125)[досье]

Давид Мзареулян[досье] Это уже от конкретной задачи зависит. Я с трудом представляю, зачем в апплете вообще необходима Java 2. Но если таки необходима, наверно, решаемая задача сложна и тяжела - какой-нибудь коммерческий online-сервис.

У меня был один случай, когда понадобилась автозагрузка. Это была коммерческая дорогая программа, реализованная в виде апплета, для серьезных заказчиков. И хотя мне не нужна была Java 2, все же необходима была гарантия, что апплет заработает, даже если Java отсутствует. Трафик же никакого значения не имел.

спустя 2 часа 4 минуты [обр] Давид Мзареулян(7/1003)[досье]
Даниэль Алиевский[досье] Увы, есть гораздо более прозаичный вариант — апплет пишет серверный явщик, который привык ко всем вкусностям 1.4 или даже 1.5. И не хочет от них отказываться. А сам живёт на толстом канале, и ему пофигу.
спустя 1 час 18 минут [обр] Даниэль Алиевский(35/125)[досье]
Давид Мзареулян[досье] Что за "явщик"? ;-)
спустя 39 минут [обр] Давид Мзареулян(7/1003)[досье]

Программист-явист!:) Впрочем, это всё уже оффтопик.

На самом деле, вот что было бы интересно: распределение наличия Явы по версиям IE.

спустя 3 дня [обр] Robinzon(12/14)[досье]

Давид Мзареулян[досье]

Я с трудом представляю, зачем в апплете вообще необходима Java 2. Но если таки необходима, наверно, решаемая задача сложна и тяжела - какой-нибудь коммерческий online-сервис.

???!! А вы когда-нибудь писали на Swing?

спустя 6 минут [обр] Robinzon(12/14)[досье]
Даниэль Алиевский[досье]
А какова цель исследования?
В принципе ведь это все весьма специфично, я имею ввиду апплеты и java web start. К тому же они как правило сами лезут с предложениями установить конкретную версию jdk, даже если у вас уже установлена более высокая версия )
спустя 2 дня 2 часа [обр] Даниэль Алиевский(35/125)[досье]

Robinzon[досье]

    Я с трудом представляю, зачем в апплете вообще необходима Java 2. Но если таки необходима, наверно, решаемая задача сложна и тяжела - какой-нибудь коммерческий online-сервис.

???!! А вы когда-нибудь писали на Swing?

Это вы, кажется, по ошибке к Давиду адресовали, а заявление было мое. Люблю резкие суждения.

На Java 2 (разумеется, Swing) написан основной сегодняшний софт нашей компании, если уж так интересно. Но в апплетах другая ситуация. Броузер и HTML - это уже пользовательский интерфейс, живущий по своим законам, и вряд ли дело апплета замещать его. Вот показать в прямоугольной области что-то не предусмотренное, скажем, специфическую трехмерную модель или игру, это пожалуйста. Но для этого обычно Swing не нужен.

А какова цель исследования?
В принципе ведь это все весьма специфично, я имею ввиду апплеты и java web start. К тому же они как правило сами лезут с предложениями установить конкретную версию jdk, даже если у вас уже установлена более высокая версия )

Цель - разобраться, насколько преувеличены слухи о смерти Java-апплетов как платформы для написания нетривиальных решений. Если у 90% пользователей, несмотря на все войны технологий, по сей день стоит микрософтовская Java 1.1.4, то это очень серьезный аргумент в пользу написания апплетов под 1.1 во всех случаях, где это почему-либо уместно. Самый очевидный пример - апплет как сокращенная демо-версия нормального коммерческого приложения. Я уже не говорю, что апплет иногда может выступать в роли серьезного приложения - если предусмотрена соответствующая авторизация.

спустя 18 часов [обр] Robinzon(12/14)[досье]

Даниэль Алиевский[досье]

Если у 90% пользователей, несмотря на все войны технологий, по сей день стоит микрософтовская Java 1.1.4, то это очень серьезный аргумент в пользу написания апплетов под 1.1

3и возражения

  1. Вот такой я невезучий - если приложению, скажем, нужна версия 1.3.1, а у меня стоит 1.4, то мне настойчиво предлагают установить 1.4. Причем если я всех посылаю и сотавляю свою 1.4 - компоненты просто не грузяться.
  2. Аплеты умирают не потому что в IE как правило встроена Java 1.1.4, а в силу всем известных restrictions that fact lead to.
  3. Вы правильно заметили что Swing нужен только для серьезных приложений. Но мне кажется в том-то и соль - если это что-то light weight'ое то тут workaround'ов куча - те же AciveX; а если что-то серьезное, то те ограничения, которые накладывает апплет заставляют задуматься о полноценном GUI-клиенте.
спустя 15 минут [обр] Robinzon(12/14)[досье]
Даниэль Алиевский[досье]
  1. 1 относился не к апплету а к JWSD приложениям (кажется так называются, вобщем к которым java web start) относится )
спустя 1 час 20 минут [обр] Даниэль Алиевский(35/125)[досье]

Robinzon[досье]

  1. А я как раз про апплеты говорю. Когда я указывал в теге object, что мне нужна 1.4, а на самом деле стояла 1.5, все было нормально: апплет загружался без всяких докачек.
  1. На самом деле непонятно, почему апплеты умирают. Единственная весомая причина, которая моглы бы быть: сегодня на большинстве или хотя бы на половине компьютеров никакой Java изначально нет. (Если бы Java непременно требовалось скачивать, то, как правило, было бы логичнее предложить явно скачать нормальное приложение. Или Web-start.) Эксперимент показывает, что эта причина недействительна: Java 1.1+ есть у подавляющего большинства.

Все прочие минусы апплетов совершенно неубедительны. Больший риск заразиться? Так дыр полно и в других компонентах. Из потенциальных посетителей лишь доли процента настолько параноидальны, что аккуратно отключают Java и JavaScrpipt - причем, как правило, эта аудитория слабо пересекается с целовой аудиторией сайта. Глюкавость и тормознутость Java-машины? Так это было до 1.1.4. А если кому-то надо максимальную скорость, он всегда может поставить 1.5 - алгоритмика ускорится раза в полтора-два. Отсутствие доступа к ресурсам компьютера? Но это неизбежная плата за безопасность, тут закачиваемое приложение - единственный разумный вариант.

  1. ActiveX не заменяют Java. Это, по сути, обычные программы, со всеми рисками заражения, которые несет скачивание и запуск неизвестного бинарного кода. При этом, с не очень-то очевидной механикой закачки и запуска. ActiveX годится, только если он написан общеизвестными компаниями вроде Microsoft, а еще лучше, если он сделан стандартным и включен в состав современных броузеров (как Macromedia). Остальные ActiveX - это сегодня почти всегда вирус.

А кроме ActiveX я не знаю никаких аналогов апплета. JavaScript+DHTML, скрипты в MacroMedia - это не полноценные языки высокого уровня с адекватной производительностью. То, для чего их достаточно, делать в апплете и правда глупо. Но нормальное приложение (с понятными ограничениями песочницы, отсутствующими в downloadable-версии) в них не реализовать. Экспресс-диагностика заболевания, анализ и распознавание каких-либо объектов, моделирование физических процессов, обучающие системы, игру в шахматы, да что угодно...

Кстати, вот более свежая статистика (уже за неделю).
Нет Java либо JavaScript: 3136

Java 1.1: 20559
Java 1.2: 0
Java 1.3: 482
Java 1.4: 3360
Java 1.5: 3906

Т.е. Java отсутвует (либо выключен JavaScript) лишь у 11%. Вполне приемлемая потеря аудитории, если речь идет как о бизнесе (зарабатывание на аудитории в любой форме), так и об энтузиазме (хочу, чтобы как можно больше народу славили меня, играя в мою суперигру). Тем более, что обычно нет большой проблемы предложить, как вариант, эквивалентное downloadable-приложение.

спустя 21 час [обр] Robinzon(12/14)[досье]

Даниэль Алиевский[досье]
Не, на счет ActiveX - я предлагал их лишь как альтернативу примитивным вещам - графика там всякая и т.п. На самом деле есть и еще варианты, тот же JS - но все это когда нам надо что-то простенькое

На самом деле непонятно, почему апплеты умирают. Единственная весомая причина, которая моглы бы быть: сегодня на большинстве или хотя бы на половине компьютеров никакой Java изначально нет.

А вот мне кажется Вы сильно ошибаетесь. Я же говорил про restrictions - вы не можете обращаться к любому другому хосту кроме того с которого загружен апплет - одно это создает серьезные проблемы особенно для распределенных архитектур. В итоге у вас появляется узкое место + нездоровая централизованная архитектура. Что касается security - не знаю, но подозреваю что тут может быть больше дыр, чем в обычных GUI App.

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

И еще на счет глюков. Вот у нас например есть апплет, причем охрененно навороченный, это полноценная серьезная графическая среда. IE процесс жрет порядка 160М. Но вечно возникают проблемы с кэшами, при закрытии апплета, может оставаться ie процесс все с теми же 160M и как следствие - иногда запускаются 2-а инстанса. Вобщем весело ;)

спустя 2 часа 52 минуты [обр] Даниил Иванов(36/63)[досье]
Даниэль Алиевский[досье]
Java-апплеты умирают, наверное потому, что красивый интерфейс (который для большинства юзеров всё-таки важен) быстрее и проще реализовать на flash, чем на Java 1.1
спустя 3 месяца 7 дней [обр] Даниэль Алиевский(35/125)[досье]

Привожу статистику еще раз. Недавно обнулял счетчики, так что при желании можно судить о тенденциях :)
Java_1.1: 6264 (51%)
Java_1.3: 236 ( 2%)
Java_1.4: 1527 (12%)
Java_1.5: 2428 (20%)
Нет Java/JS: 1911 (15%)
Итого: 12366

Наверно, апплеты таки не умирают, просто применяются сравнительно редко: для системных нужд или там, где нужна серьезная алгоритмика. Для украшений, конечно, Flash больше подходит.

спустя 3 месяца 21 день [обр] Даниэль Алиевский(35/125)[досье]

К сожалению, я вынужден сознаться, что вся предыдушая статистика была ошибочна. Что ж, простите великодушно. Допущенная ошибка описана здесь: Правильный способ определить наличие/отсутствие JVM в броузере

Привожу новую статистику, пока приблизительно за сутки. Через неделю постараюсь привести уточненные данные.

Java_1.1:         хиты 6310 (56%), хосты 1837 (38%)
Java 1.2:         по нулям
Java_1.3:         хиты 68   ( 0%), хосты 34   ( 1%)
Java_1.4:         хиты 657  ( 6%), хосты 490  (10%)
Java_1.5:         хиты 1508 (13%), хосты 937  (20%)
Java отключена:   хиты 454  ( 4%), хосты 305  ( 6%)
Java отсутствует: хиты 1876 (17%), хосты 1055 (22%)
Выключен JS:      хиты 323  ( 3%), хосты 113  ( 2%)
Итого:            хиты 11196,      хосты 4771

Значения процентов округлены к ближайшему целому.
"Java отключена" означает, что navigator.javaEnabled() возвращает false. Для MSIE и FireFox это означает, что выключен флаг "Java Enabled"; для Opera (по крайней мере 8.5) - что либо выключен флаг, либо JVM фактически отсутствует.
"Java отсутствует" означает, что navigator.javaEnabled() возвращает true, но маленький <img...> внутри <applet...>...</applet> рендерится - т.е. что JVM фактически отсутствует, хотя в настройках броузера Java включена. Ранее эта ситуация не анализировалась.
"Выключен JS" - это ветка <noscript>...</noscript>; в этом случае наличие и версия Java не проверяются.

Итого, получается, что Java имеется и включена лишь примерно у 70% пользователей, или в 75% случаях загрузки страницы.

спустя 3 дня [обр] Даниэль Алиевский(35/125)[досье]

Еще разок, теперь за 4 дня.

Java_1.1:         хиты 31620 (56%), хосты 8026 (39%)
Java 1.2:         по нулям
Java_1.3:         хиты 399   ( 1%), хосты 157  ( 1%)
Java_1.4:         хиты 3195  ( 6%), хосты 1901 ( 9%)
Java_1.5:         хиты 7058  (13%), хосты 3946 (19%)
Java отключена:   хиты 2282  ( 4%), хосты 1325 ( 6%)
Java отсутствует: хиты 10264 (18%), хосты 4990 (24%)
Выключен JS:      хиты 1277  ( 2%), хосты 436  ( 2%)
Итого:            хиты 56095,       хосты 20781

Еще маленькая оговорка: данные по "Выключен JS" занижены. В одном из мест, где я подсчитываю статистику, эта ветка не отрабатывается. Впрочем, на общей картине это отражается не сильно.

Итак, картина примерно ясна. Вряд ли дальнейший сбор статистики сильно изменит проценты.

Уважаемые коллеги, у кого есть популярные ресурсы - может быть, реализуете у себя аналогичный подсчет статистики? Интересно сравнить. Если не хотите возиться, можно просто вставить в конец страницы вот такой код:

    <script language="JavaScript"><!--
    if (window.navigator.javaEnabled()) {
        window.___javaVersionAppletCode= '<applet codebase="/wwgz/serv/" code="AppletLogJavaVersion.class"'
            +' width="1" height="1">\n'
            +'<param name="BackgroundColor" value="1A6BBB">\n'
            +'<param name="LoggingScriptURL" value='
            +'"http://webwarper.net/clicklog.pl/LALALA_Java_%VERSION%/webwarper.net/wwgz/serv/images/empty.gif">\n'
            +'<img width="1" height="1" src='
            +'"http://webwarper.net/clicklog.pl/LALALA_Java_NONE/webwarper.net/wwgz/serv/images/empty.gif">\n'
            +'</applet>';
        if (document.getElementById==null) {
            document.write(window.___javaVersionAppletCode);
        } else {
            document.write('<div id="containerJavaVersionApplet"></div>');
            window.___containerJVA= document.getElementById("containerJavaVersionApplet");
            if (window.___containerJVA==null || window.___containerJVA.innerHTML==null)
                document.write(window.___javaVersionAppletCode);
            else
                setTimeout('window.___containerJVA.innerHTML= window.___javaVersionAppletCode;',3000);
        }
    } else {
        document.write('<img width="1" height="1" src='
            +'"http://webwarper.net/clicklog.pl/LALALA_Java_DISABLED/webwarper.net/wwgz/serv/images/empty.gif">');
    }
    //--></script>
    <noscript>
    <img width="1" height="1"
    src="http://webwarper.net/clicklog.pl/LALALA_Java_NOJavaScript/webwarper.net/wwgz/serv/images/empty.gif">
    </noscript>

заменив LALALA на какое-нибудь осмысленное кодовое слово (латинские буквы и цифры). Тогда я обязуюсь посмотреть и опубликовать вашу статистику здесь. Думаю, 1-2 недель вполне достаточно, потом можно будет убрать.

Только должен предупредить: старт JVM, кроме микрософтовской 1.1.4, ощутимо подтормаживает броузер. Таймаут я добавил специально, чтобы сгладить неприятный эффект.

спустя 6 дней [обр] Даниэль Алиевский(35/125)[досье]

К сожалению, я опять оказался неправ: см. Правильный способ определить наличие/отсутствие JVM в броузере (327153)
Теперь у меня получается завышенный процент отсутствия Java - ибо в броузерах FireFox / Opera, как выяснилось, размещение img внутри <applet...>...</applet> не препятствует обработке этого img даже при наличии Java.

Теперь использую более надежный вариант:

    <script language="JavaScript"><!--
    if (window.navigator.javaEnabled()) {
        window.___javaVersionAppletCode= '<applet codebase="/wwgz/serv/" code="AppletLogJavaVersion.class"'
            +' width="1" height="1">\n'
            +'<param name="BackgroundColor" value="1A6BBB">\n'
            +'<param name="LoggingScriptURL" value='
            +'"http://webwarper.net/clicklog.pl/LALALA_Java_%VERSION%/webwarper.net/wwgz/serv/images/empty.gif">\n'
            +'</applet>'
            +'<img width="1" height="1" src='
            +'"http://webwarper.net/clicklog.pl/LALALA_Java_ENABLED/webwarper.net/wwgz/serv/images/empty.gif">\n'
        if (document.getElementById==null) {
            document.write(window.___javaVersionAppletCode);
        } else {
            document.write('<div id="containerJavaVersionApplet"></div>');
            window.___containerJVA= document.getElementById("containerJavaVersionApplet");
            if (window.___containerJVA==null || window.___containerJVA.innerHTML==null)
                document.write(window.___javaVersionAppletCode);
            else
                setTimeout('window.___containerJVA.innerHTML= window.___javaVersionAppletCode;',3000);
        }
    } else {
        document.write('<img width="1" height="1" src='
            +'"http://webwarper.net/clicklog.pl/LALALA_Java_DISABLED/webwarper.net/wwgz/serv/images/empty.gif">');
    }
    //--></script><noscript><img width="1" height="1"
    src="http://webwarper.net/clicklog.pl/LALALA_Java_NOJavaScript/webwarper.net/wwgz/serv/images/empty.gif">
    </noscript>

Все то же самое, но теперь я не пытаюсь подсчитывать случаи отсутствия Java (раз не умею их определять абсолютно надежно). Вместо этого подсчитываются все случаи, когда JavaScript разрешен и javaEnabled() вернул true - код LALALA_Java_ENABLED. После сбора статистики, останется вычесть из этого числа количество случаев, когда найдена одна из версий Java - т.е. когда апплет реально отработал.

Приношу извинения за дезинформацию. Буду публиковать новые результаты. И повторяю просьбу владельцам популярных ресурсов - присоединиться к сбору статистики :)

спустя 17 дней [обр] Даниэль Алиевский(35/125)[досье]

Как обещал, публикую новую статистику - приблизительно за пару недель.

Сейчас статистика более сложная. Во-первых, на главных страницах сервиса собирается статистика использования JavaScript. Эта информация известна и так; у меня получилось:

Включен JS:            хиты 79369 (96%), хосты 38370 (95%)
Выключен JS:           хиты 3526  ( 4%), хосты 1096  ( 5%)
Итого:                 хиты 82895, хосты 39466

Неожиданно много без JS...

Далее, в другом месте, в случае, если JavaScript включен, я собираю уже статистику исключительно по Java. Общее число хитов здесь меньше - почти вдвое. Видимо, дело в том, что попытка добавить апплет происходит не сразу, а через 3 секунды, к тому же для этого должен загрузиться дополнительный js-файл. Вот, оказывается, как высока вероятность, что посетитель уйдет со страницы в первый же десяток секунд...

Здесь прежде всего проверяется результат navigator.javaEnabled(). Если true, то делается попытка (через 3 секунды) добавить апплет (<applet...>), проверяющий версию Java и собирающий статистику. Разница между общим количеством найденных версий Java 1.1-1.6 и числом случаев, когда javaEnabled()==true - это, фактически, число ситуаций, когда Java физически отсутствует либо по каким-то причинам JVM не загрузилась. Ниже это соответствует строке "апплет не сработал". Если добавить сюда число ситуаций с javaEnabled()==false, получится общее число "неблагоприятных" случаев. (Напоминаю, что javaEnabled()==false в Opera, если Java отсутствует, независимо от настройки флажка в броузере.)

javaEnabled()==true:   хиты 44804 (92%), хосты 15217 (90%)
    Java_1.1:              хиты 29487 (60%), хосты 4599  (27%)
    Java 1.2:              по нулям
    Java_1.3:              хиты 1178  ( 2%), хосты 198   ( 1%)
    Java_1.4:              хиты 3126  ( 6%), хосты 1560  ( 9%)
    Java_1.5:              хиты 7769  (16%), хосты 3612  (21%)
    Java_1.6:              хиты 1     ( 0%), хосты 1     ( 0%)
    апплет не сработал:    хиты 3243         хосты 5247  (31%)
javaEnabled()==false:  хиты 3963  ( 8%), хосты 1647  (10%)   
Итого:                 хиты 48767,       хосты 16864
Итого неблагоприятных: хиты 7206  (15%), хосты 6894  (41%)

Теперь видна большая разница между хитами и хостами. Очевидно, хитам доверять вообще не стоит. Мой способ подсчета (загрузка img 1x1), очевидно, подвержен сильным искажениям из-за кэширования броузером (теперь статистика собирается на многих моих страницах, а не только на одной, как раньше). Хосты, возможно, более объективны, хотя и их могут искажать популярные прокси.

В общем, все достаточно неутешительно для любителей апплетов.

Далее, если javaEnabled()==true, я пытаюсь определить отсутствие Java (Правильный способ определить наличие/отсутствие JVM в броузере) Если это удается, я фиксирую данную ситуацию. У меня получилось в этом случае 15797 хитов и 5488 хостов. Сравнивая с предыдущими цифрами, видим еще раз, что количество хитов ничего не отражает, а количество хостов тоже весьма примерно (или же мой метод определения отсутствия Java, несмотря на долгую отладку, безбожно глючит).

Если я обнаружил, что Java нет, либо что javaEnabled()==false, я добавляю на страницу известную комбинацию object/embed для автозагрузки JRE 1.3. После чего загрузившийся апплет опять же сообщает о себе. Таким образом я узнал, что JRE 1.3 успешно скачали и запустили:

через object:          хиты 1527  ( 3%), хосты 651   ( 4%)
через embed:           хиты 170   ( 0%), хосты 61

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

В моем случае, апплет на самом деле посетителю абсолютно не нужен - он не делает ничего полезного, кроме сбора статистики. И никаких подсказок пользователю ("скачайте, пожалуйста, Java") я не даю. Так что на самом деле есть надежда, что когда апплет действительно полезен, до вместо 4% JRE скачают гораздо больше.

Такие вот результаты... Хотелось бы, конечно, сравнить с чьими-то еще. Может таки поучаствуете, коллеги?

спустя 47 минут [обр] 30-ый(59/584)[досье]

Я немного не в тему, но думаю меня простят.

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

Так вот вопрос: А что изменится, если выяснится, что определенная Java распространена на 10% меньше (или больше), нежели указано в вашей статистике? На мой взгляд - ничего.

спустя 2 часа 26 минут [обр] Даниэль Алиевский(35/125)[досье]

Странная точка зрения :) А разве разработчикам не важно, к примеру, какой броузер популярнее? Какие версии OS? Каково типичное разрешение экрана?

Java - из той же серии. Если она есть у 90% (как я думал раньше), то ее можно смело требовать для достаточно важных элементов сайта. Пусть те, у кого нет, скачивают или игнорируют сайт. А если 50-60%, то так делать нельзя, разве что скачивание Java в данном контексте не представляется проблемой (скажем, апплет демонстрирует возможности дорогого коммерческого Java-приложения).

Powered by POEM™ Engine Copyright © 2002-2005