• Читаем подзамочные записи Livejournal.com в Google Reader

      До появления Google Reader я активно читал френд-ленту в Livejournal.com. А потом появился habr. А потом куча интересных standalone блогов.
      Постепенно greader стал основным инструментом чтения новостей. А с открытием Yahoo Pipes качество моих лент значительно возросло.
      Pipes позволили отфильтровать несколько лент только по интересующим меня топикам, позволили заполнить поле description в тех лентах, где авторы по каким-то причинам не стали их заполнять (новости с сайта IRN.ru, лента Компьютерры), и многое другое.

      Но была в бочке меда и ложка дегтя. Ни Pipes, ни Google Reader не умеют делать digest authentication. Pipes умеют только basic, greader не умеет и того. А digest — единственный тип аутентификации, который поддерживает Livejournal.com.
      Поэтому попытки залогиниться в ЖЖ и читать ленты с подзамочными записями были обречены на неудачу.
      Приходилось периодически заходить в ленту и просматривать, не написал ли кто-нибудь из друзей что-нибудь «под замком».

      Да, в интернете есть сервисы а-ля
      http://freemyfeed.com,

      решающие эту задачу, но доверите ли вы кому попало в интернете логин и пароль от своего ЖЖ? Да и как интегрировать с pipes этот сервис мне придумать не удалось. Но нет худа без добра: автор раскрыл исходники скриптов. Вооружившись терпением и мануалом по php, на основе исходных текстов freemyfeed я написал собственный скрипт — remove-authentication.php, который делает одну простую вещь: заменяет digest authentication на basic.
      C ним становятся возможными конструкции:
      http://user:pass@my.server/remove-authentication.php?feed=feed-url

      И эта штука замечательно интегрируется с pipes.
      Кому надо, забирайте. И читайте ЖЖ в Google Reader. )
      UPD: код надо сохранить как remove-authentication.php и выложить на любой сервер, поддерживающий php :) В идеале — свой.
      UPD2: перенес в блог RSS
      Читать дальше →
    • Устройство интернет-радиостанции

        В статье я расскажу, наконец, как устроена наша радиостанция изнутри.


        Речь пойдёт об основных используемых программах и общем подходе к организации круглосуточного вещания с возможностью прямых включений.
        Читать дальше →
      • Ускорение сайта «в 1 клик» — реальность

          С выходом новой версии WEBO Site SpeedUp (приложения для автоматического ускорения сайтов) — 1.3.0 — мы смогли, наконец, с уверенностью сказать: оно здесь. В смысле: идея автоматического ускорения сайтов реализована.

          Напомню, что все начиналось полтора года назад, когда возникла идея собрать воедино все методы ускорения сайта, побороть особенности хостинга множества провайдеров и особенности браузеров, завернуть это все в красивый интерфейс и сделать максимально простым. Последний пункт оказался наиболее трудоемким по реализации (порядка полугода ушло у нас на осознание, проектирование и реализацию окончательной концепции).
          Как мы это сделали?
        • Статистика Google Analytics на вашем сайте. Часть вторая. Использование GAPI

            С момента публикации первого топика о создании хабраподобной статистики (которую, кстати, почему-то тут не обновляют) с импортированием данных из Google Analytics прошел ровно год.

            image

            Весь этот год все работало, статистика обновлялась, графики рисовались… пока все не сдохло. Как это и присуще гуглу, сдохло оно не сразу у всех, а потихоньку, в течение недели. При беглой диагностике проблемы выяснилось, что она заключается в гугловой авторизации. Учитывая, что скрипт авторизации мною был заимствован, разбираться в нем не было никакого желания, и тут до меня дошло — ведь Google выпустил API для аналитикса! Поэтому было решено не обрабатывать напильником существующую версию, а просто получить данные цивилизованно, посредством API, тем не менее, оставив при этом «структуру» и основные моменты предыдущей версии.
            Читать дальше →
          • Раздобываем бесплатные шрифты для русского языка, чтобы пережить Вторую типографскую революцию в Паутине

              На минуту обратите свои мысли вспять, к прошлому, к завершившемуся тысячелетию. Отдайте должное утренней заре Всемирной Паутины, потому что заря эта готова ужé окончательно потухнуть, уступая место куда более яркому сиянию нового дня.

              Первая типографская революция произошла во Всемирной Паутине настолько давно, что приходится производить поиски, чтобы установить подробности. Кажется достоверным то, что пишет Ian Graham: в Netscape Navigator 2.0 впервые появился элемент <font> (тогда он позволял задавать только размеры шрифта, и только в условных единицах), а в Internet Explorer 3 у этого элемента появился атрибут face, позволявший задавать начертание, задавать шрифтовое семейство. Википедия подсказывает, что Netscape Navigator 2.0 появился в марте 1996 года, а Microsoft Internet Explorer 3 — в августе того же года. В язык HTML версии 3.2 даже не входил атрибут face, хотя и упоминалося, что такой атрибут существует.

              Тринадцать лет назад.

              Все эти тринадцать лет для начертания текста сайтов в основном использовались несвободные шрифты, являющиеся частью операционных систем и офисных пакетов. Сайтам приходилося гадать о том, какие шрифты установлены у читателя, а какие не установлены, и какова вероятность того или другого, какие шрифты можно считать безопасными. Сочинялись специальные плагины jQuery и создавались специальные страницы, способные выяснить набор шрифтов на компьютере читателя. Особый дух того времени прекрасно передал despoth, сочинив превосходную серию статей о такой веботипографике, которая основана именно на подборе несвободных шрифтов (часть I часть II часть III часть IV часть V).

              Наконец, это время кончилось: явствуют, зримо явствуют признаки Второй типографской революции, связанной с приходом @font-face.

              Джон Даггетт сочинил познавательную статью о том, как все мы совсем скоро (после появления Safari 3.1, Firefox 3.5, Opera 10) сможем использовать загружаемые шрифты во всех популярных браузерах, а не только в одном наиболее популярном.

              Марк Пилгрим грубо обрисовал ситуацию с лицензированием собственнических шрифтов. Ситуация эта немало напоминает глухой тупик. Даже создателям прекрасной демонстрации возможностей Firefox 3.5, чтобы изготовить страницу, пришлось специально связаться со шрифтопроизводителями и изготовлять такие особые (усечённые) версии использовавшихся шрифтов, чтобы их не было смысла копировать нелицензионно. А вон там предлагают раздавать особые паутинные обкусанные ужатые копии купленных шрифтов (которые сам покупатель вывешивать не имеет никого права, а только ссылаться). Остроумно. Открывает широкую дорогу в сторону Большого Брата: типа как недавно читальники Kindle удаляли книги Оруэлла за нелицензионность (даже честно купленные — просто оставляя стоимость их на счету покупателя в уплату). Так и тут. Внешний шрифт может неожиданно подохнуть, даже купленный заранее.

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

              Англоязычному люду этот переход дастся достаточно просто: достаточно обратиться к белке-шрифтелке, чтобы получить буквально сотни шрифтов, каждый из которых можно без лицензионных проблем использовать в своей работе, на своём сайте. Тем же, кто пользуется русским языком (или, тем паче, другими языками на основе расширенной кириллицы), придётся гораздо, гораздо похуже. Свободных кириллических шрифтов совсем мало, а русского аналога белки-шрифтелки, похоже, вообще не существует в природе.

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

              Список пошёл.
            • Статистика Google Analytics на вашем сайте

                Помню, как-то проскакивала пара записей (здесь и здесь) по поводу импортирования данных из Google Analytics для отображения сводных диаграмм на сайте, в общем, как на хабре. Прочитав вышеупомянутые топики и не обратив особого внимания тогда, я о них успешно «забыл» и пошел себе дальше. И вот сейчас, появилась необходимость реализовать нечто подобное на одном из своих проектов.

                image

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

                UPDATE:
                Добавил еще одну версию, подробности и линк под катом.

                Читать дальше →
              • Ограничения на названия логинов

                  Добрый день. В этой заметке я хотел бы поговорить об ограничениях, которые выставляются в сервисах на логины.

                  Создавая очередной сервис, я исхожу из следующих соображений:
                  1. Логин не должен быть слишком короткий (у меня сейчас от 3 символов включительно, для более крупных систем, типа GMail, используется от 6).
                  2. Логин не должен быть слишком длинный, иначе в каком-нибудь интерфейсе он начнёт что-нибудь неправильно распирать. Я использую логины до 20 символов, но интересно выслушать ваши мнения по этому поводу.
                  3. Логин может использоваться в адресной строке, при интеграции с SMS и проч. Поэтому оставляем только латинские символы, цифры, подчёркивание, дефис и точку.
                  3а. Если логин может быть использован как имя поддомена, то эти условия сокращаются до символов латинского алфавита, цифр и дефиса (дефис не может быть первым и последним, он не может повторяться).
                  4. Иногда очень удобно использовать двойную навигацию: по логину и ID. Например, у нас на одном сервисе используется адрес domain.com/users/<login> для пользователей с логином и domain.com/users/<id> для тех, у кого нет логина (т. н. виртуальные профили, которые зарегистрированы администрацией или другими пользователями). Это приводит к тому, что логин не может состоять только из цифр, чтобы не путать его с идентификатором.
                  5. Слова-исключения: www, mail, ns1, ns2, ns3, ns4, admin, god, moderator, editor. Первые 6 являются исключениями для совместимости с поддоменами. А какие слова-исключения используете вы?

                  И основной вопрос к читателям: какие ограничения стоят у вас, и что я забыл?
                • Удобная навигация по тэгам

                    Недавно надо было найти на своём ресурсе информацию по CSS, которую я постил довольно давно. Какой там был заголовок я уже не помню, какими словами писал — тоже.

                    Днём ранее я выбирал вместе с Антоном Исайкиным Wiki при помощи wikimatrix.org, где реализована фасетная фильтрация и Wizard для выбора нужной системы по заданным критериям. Сама идея мне очень понравилась, а вот реализация — нет. Wizard был составлен вручную и естественно всех критериев не включал.

                    Это навело меня на мысль, что навигация у меня, мягко говоря, не очень: можно найти все посты о «CSS», можно о «IE», но нельзя найти те, что о «CSS» и «IE» одновременно.

                    Читать дальше →
                  • Вышел Sphinx 0.9.8

                      Sphinx search engineSphinx — созданный в России бесплатный поисковой движок с открытым кодом, который используется рядом популярных (Dailymotion, Mininova, ThePirateBay, NetLog, и т.д.) и рядом мифических (СуперХабр) сайтов — наконец добрался до очередной release-версии.

                      Читать дальше →