• Пить пиво на улице запрещено – спасибо за демократию
    0
    Да? Интересно, дайте ссылку, пожалуйста.
  • Десять вымирающих профессий в сфере IT
    0
    Четыре года назад мы видели MySQL не в сладких снах, а на серверах. А вот лет так 10 назад я на сервере видел miniSQL ( http://www.hughes.com.au/ )
  • Десять вымирающих профессий в сфере IT
    0
    Видимо, когда-то знания базового языка Cи было достаточно.
  • Билл Гейтс vs Стив Джобс, 30 мая 2007 года
    0
    А разве IBM не разошлась с MS в начале 90х или около того?
  • Голая, грязная правда о удалённых сотрудниках
    +1
    Гм. Ну голые и голые. В чём прикол-то?
  • Какую операционную систему вы используете больше всего?
    0
    Поставил. Два монитора на ATI не заводятся вне зависимости от дистрибутива.
  • Служба «ГорВоздух» в мрачных тонах
    0
    Далековато от нас до подмосковья :)
  • Поколение Pepsi сказало нет книгам?
    0
    С PSP
  • Исскуственный интеллект — автоматическая генерация научных статей.
    0
    + можно вспомнить как Остап Бендер продавал свою "рыбу" для написания всяческое билиберды :)
  • Поколение Pepsi сказало нет книгам?
    0
    Присоединяюсь к предущему оратору. Читал с КПК, потом с двух телефонов, сейчас — с экрана PSP. Читаю в электронном виде много лет, ничего не утопил.
  • Поколение Pepsi сказало нет книгам?
    +2
    Аналогично. Тоже много читаю, несмотря на отсутствие времени. Читаю в маршрутках, очередях и так далее.
  • Даёшь UTF-8!
    0
    Почитайте changelog PHP6
  • Microsoft задаёт головоломки на собеседовании
    0
    Безногие только и делают, что получают "удовольствие" от катания.
  • Кодировки must die
    0
    substr — это PHP, Perl, куча других языков. Но именно в PHP всё работает несколько иначе (смотрю исходник в данный момент). И длина, конечно же, не ищется поиском \0, она хранится — в PHP-строке могут встречаться эти символы.

    Так что, если говорить о Си, то это будет тормозить чуть, для PHP/Perl/Ruby/Python и прочих языков, где \0 — обычный символ тормоза будут серьёзнее.

    А так — думаю, нам каждому по звезде :)
  • Кодировки must die
    0
    Вы, кажется, невнимательно читали, что я писал. Разве я говорил, что он будет больше, я говорил, что он будет сложнее. Причём, налегаю я не на strlen, который медленее несущественно, а на substr
  • Кодировки must die
    0
    Говорю ж — проигрываю я тут. Хотя, при нынешних каналах это скоро будет совсем несущественно. Но в обработке UTF-8 всё равно кошмар.
  • Кодировки must die
    0
    про нормализацию я говорил в ключе utf-8 :)

    1) обратная совместимость на латинских буквам нам всем не впилась :)

    2) да, позабыл, что там два байта всего. что ж... UCS-4? :) тут я крепко проигрываю.

    а по поводу производительности — есть масса мест, где можно оптимизировать, то, что вы перечислили — верно, но это не значит, что низкая производительность utf-8 не важный фактор.
  • Кодировки must die
    0
    Вот! Перед измерением длины недурно ещё и нормализацию сделать :)


    1) А зачем нам совместимость с ASCII? Что это даёт в нормальных условиях (а не когда надо быстро сделать совместимость)
    2) зачем нам весь range? сейчас там занято около 100 000.
    3) о каких потерях вы говорите? у нас тема — веб. какие там потери?

    на встречный вопрос такой вот ответ: UCS-2 позволяет создавать производительные Unicode-приложения. UTF-8 — нет. UTF-8 — это своеобразная компрессия, по сути.
  • Кодировки must die
    0
    strlen не будет работать так же быстро. Потому что в strlen мы не ищем признак конца, а считаем сколько символовов, а они переменной длины. Т.е. строку нужно будет парсить.

    Посчёт количества единиц в первых битах — это далеко не "несколько тактов", вы, видимо, в Ассемблере никогда не программировали. Сложность алгоритма получения символа по номеру, конечно же, сильно возрастёт. Вы, видимо, совершенно не представляете как это всё работает. В UCS-2 взять символ по номеру — это взять два байта из позиции N*2, где N — позиция, а 2 — размерность символа.

    Идём дальше, вы неверно себе представляете процесс поиска N-нного символа в 10Гб тексте. В случае UCS-2 его не нужно зачитывать полностью, fopen, fseek(.., N*2) и читаем два байта. В случае с UTF-8 его придётся читать целиком до нужной позиции.

    Вы тут всё говорите про "несущественную разницу", давайте же поговорим и про неё. БОльшая часть объёма страницы — графика, так что я утверждаю, что разница между объёмом страницы в UCS-2 и UTF-8 несущественна при существующих скоростях и gzip.

    Задам вам конкретный вопрос: какие проблемы решает UTF-8, что их не может решить UCS-2?
  • Кодировки must die
    0
    Я бы так сказал: "не надо заливать в мерседес 72й бензин, а в веб - UTF-8". Вот теперь ваша аналогия полностью к месту. UCS-2 — хорошая кодировка, а UTF-8 — нет.
  • Кодировки must die
    0
    Скорость? Если бы всех заботил этот показатель, на всех сайтах мы бы видели gzip. Кроме того, бОльшую часть объёма среднего сайта составляет не текст, а картинки.

    По поводу потерь... Что-то я не понимаю о чём вы. Какие потери байтов? Где? Назначение у UTF-8 одно - быстро добавить Unicode к программам, которые его не понимают. И ключевое слово здесь — быстро.
  • Кодировки must die
    0
    Странный вы человек. Вы знаете как устроена кодировка? Думаю, знаете. Разницу в алгоритме получения символа по номеру в UCS-2 и UTF-8 представляете? Какие ещё вам тесты нужны?
  • Кодировки must die
    0
    Каким бы не был внутренний способ кодирования, это никак не влияет на тот факт, что UTF-8 ужасная кодировка. Кстати, спросите у программистов на PHP как там строки хранятся.

    Метаинформация - это не только длина строки, это ещё и положение символа для substr и прочего.

    UTF-8 ужасен. Я вам привёл аргумент почему. Опровергающих аргументов я не вижу. На всё вы пишите или "и что с того" или "это не аргумент, потому что, когда мы работаем с USC-2...".

    Удачных выходных.
  • Кодировки must die
    0
    Для сети это не плюс. Так как трафик дешевеет со страшной силой. Выделенки по цене обеда — вполне себе реальность.

    по поводу сравнения UTF-8/USC спрошу ещё раз: это как-то противоречит моему утверждению, что UTF-8 ужасная кодировка?
  • Кодировки must die
    0
    Как это противоречит моему утверждению, что UTF-8 ужасен?
  • Кодировки must die
    0
    Выше уже писали, что UTF-8 был придуман ленивыми англоязычными программистами, чтобы не переделывать существующие приложения. Отсюда я бы убрал слово "ленивыми", а так — всё верно. Это и есть плюс UTF-8.

    Минусы существенны — кодировка имеет нефиксированную длину символа, поэтому все strlen, получение символа по номеру и прочее имеют низкую производительность, так как приходится проходить всю строку или нужно хранить метаинформацию, которую нужно расчитывать в момент записи. Т.е. куда не кинь — всюду расход ресурсов.
  • Кодировки must die
    –1
    UTF-8 — это ужасно. БД в Unicode не маразм. UTF-7, UTF-8 — есть и это Unicode.
  • Новый сервис «Mmm… tasty» для ведения мини-блогов — ТЛОГОВ
    0
    Только непонятно зачем для этого новое название. Когда блоги только появились - они такими и были. А позднее некоторые товарищи (начиная с меня) выключили на них комментарии.
  • Новый сервис «Mmm… tasty» для ведения мини-блогов — ТЛОГОВ
    0
    Ну надо же, я — владелец тлога. Те же яйца, только боком.
  • Я нашла дискету, которую ты вчера искал весь день…
    0
    А, вот оно что. У меня создалось впечатление, что человек говорит об установке драйверов в установленный уже Windows.
  • Я нашла дискету, которую ты вчера искал весь день…
    0
    Чем не выход?
  • Я нашла дискету, которую ты вчера искал весь день…
    +1
    а под Ubuntu уже есть диск A:?
  • Я нашла дискету, которую ты вчера искал весь день…
    –1
    win-R -> cmd.exe -> subst /?
  • Обновлённая «Информация о странице» в Firefox 3
    0
    Очень хорошо, но пока до настроек Оперы не дотягивает. Но буду присматриваться к FF3 повнимательнее - вполне может быть, что пересяду с Opera.
  • Альтернатива CAPTCHA.
    0
    Этой идее - сто лет в обед :) В интернете полно упоминаний.
  • Вышла Opera 9.2
    +2
    Может, у вас не интернациональная версия? У меня в интернациональной "Яндекс" по-умолчанию стоит и русские ищутся нормально.
  • Объём ящиков Gmail превысит бесконечность
    0
    Ага, мы в детстве тоже так говорили.
  • Первая попытка получить компенсацию за удаление WinXP в России
    +1
    Если это целостный товар, то, наверное, мне должны заменить в нём браузер, если тот, который там есть, некорректно работает?..
  • Битва за домен.nu
    0
    Ага, я тоже о том же подумал :)
  • Активацию Windows Vista можно отменить
    +1
    В такой корпорации правая рука не знает что творит левая и чем это кончится.