• Скованные одной цепью, или добавим комфорта комментариям Вконтакте

    Скованные одной цепью

    Обычным вечером заглянул в комментарии одного из сообществ Вконтакте и решился поучаствовать в дискуссии. Но не тут-то было! Чтобы прочесть „беседу“ нескольких ораторов потребовалось пролистать обсуждение и отсеять десятки лишних реплик, не участвовавших в нужном мне диалоге. Очевидная рутина, которую очень хочется спихнуть на механические мозги. Но инструмента, позволяющего вычленить только нужное у Вконтакта почему-то нет. „Что ж? За дело!“ — прокричал один из внутренних голосов, а остальные единогласно поддержали.

    Так я начал пилить расширение для браузера Google Chrome‎, позволяющее смотреть цепочки связанных комментариев в обсуждениях Вконтакта.
    Описание сего действа под катом
  • Не поставил favicon на сайте — получи двойной трафик от Chrome

    Впервые за пять лет разработки интернет-сайтов я столкнулся с весьма неожиданной проблемой, стоившей мне многих часов поиска, нервов и волос на голове. Внезапно я обнаружил, что на новом сайте, который у меня сейчас в разработке на локалхосте, дублируются INSERT запросы к БД. Отправляю один комментарий через форму, а в базу вставляются два. Если вы не знаете, как связана эта проблема с Chrome, favicon.ico и ModRewrite, то добро пожаловать под кат.
    Читать дальше →
  • Random User-Agent — версия вторая

      Прошло два года с того момента, как вышла первая версия этого расширения для Chromium-based браузеров (работает в Google Chrome, Yandex.Browser и т.д.), задача которого проста и понятна — скрывать настоящий User-Agent. На данный момент это расширение работает у +6.000 пользователей (что очень скромно), и несколько дней назад получил на почту письмо с просьбой его немного доработать. Оценив состояние кода, к которому два года никто не притрагивался, было решено — переписывать его с нуля. Четыре дня работы, и вуаля — встречаем свежую мажорную версию, значительно улучшенную и с новым функционалом.


      image


      Под катом будут некоторые мысли как по поводу чуть-более анонимного веб-серфинга, так и настройке браузера Google Chrome, и почему это расширение может быть полезно. Чуть-чуть опытные анонимусы не найдут в посте для себя чего-либо интересного, поэтому как для них, так и для самых нетерпеливых, традиционно — исходники на GitHub и расширение в Google Webstore.

      Читать дальше →
    • Персональный рейтинг депутатов каждому при помощи JavaScript и браузера Chrome

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


        Голоса депутатов находятся на vote.duma.gov.ru. Нам остаётся проголосовать за важные для нас законопроекты в соответствии со своим видением и получить рейтинг на основе которого и делать выбор на выборах.


        Я выбрал наименее затратный путь и написал JavaScript расширение для Chrome. Работа с ним организованна через консоль браузера (Ctrl + Shift + J). Бонусом я протестировал поддержку русского языка в JavaScript без препроцессоров.


        Под катом вас ждёт код с комментариями и комментарии к статье.


        Читать дальше →
      • Уведомления в браузере и пример того, как их можно использовать с пользой



          Вероятно, вы все уже слышали про технологию «Веб-push» в составе Push API и Notifications API. Я уверен, что среди вас есть те, кто возлагает надежды на эту технологию, как на новый канал коммуникации с пользователем. И я не исключаю возможность, что данную статью будут читать основатели тех немногочисленных стартапов, которые всерьёз занялись окучиванием технологии «Веб-push» для рекламы и маркетинга. Сегодня я вам расскажу, о том как можно использовать данную технологию.
          Читать дальше →
        • Собираем ваш первый WebAssembly-компонент

          • Перевод
          Когда я впервые услышал о технологии WebAssembly — она сразу показалось мне крутой вещью и мне сразу захотелось попробовать её в деле. От первого желания, до чего-то работающего мне, однако, пришлось потратить немало времени и порой испытать кое-какие разочарования. Для того, чтобы сохранить ваше время и ваши нервы, если вам захочется повторить тот же путь, и написана данная статья.

          image
          Предупреждение читателю

          Эта статья написана 24-го июня 2016-го года. Поскольку WebAssembly очень молодая и динамично развивающаяся технология, со временем многие описанные в данной статье вещи устареют или полностью изменятся — учитывайте это.

          А теперь поехали.

          Что такое WebAssembly?

          Официальная документация говорит следующее: «WebAssembly или wasm это новый портабельный, эффективный по размеру и скорости загрузки формат компиляции для веба». Эм-м-м-м… Что? Формат чего? Текстовый или бинарный? Да, это откровенно плохое описание. Так что убирайте уже ваши баззворд-бинго карточки и я, на основе моего опыта, дам своё определение:

          «WebAssembly или wasm это спецификация байткода для написания производительных, браузеро-независимых компонентов для веба». Это определение, тоже, конечно, не вершина эпистолярного жанра, но я попробую его дополнить. WebAssembly позволяет повысить производительность с помощью использования статически типизированных переменных, которые обходятся на рантайме значительно дешевле динамических. WebAssembly разрабатывается W3C Community Group и планируется быть внедрённым во все основные браузеры. И с этого момента на стол выкладывается киллер-фича: вы сможете писать код веб-компонентов на любом языке программирования.

          Теперь звучит лучше, неправда ли?
          Читать дальше →
        • AdBlock похитил этот баннер, но баннеры не зубы — отрастут

          Подробнее
          Реклама
        • Google не отказывается от Flash

            Данная краткая заметка решила появиться после того, как ко мне посыпались вопросы относительно новостей Google и того, что они якобы собираются умертвить флеш окончательно.

            На вопрос будущего Flash в рамках браузера Google Chrome отвечает Chris Campbell — продукт менеджер Adobe Flash Runtime Project.

            Я не слышал, чтоб кто-то предложил полное блокирование Flash для использования.
            Решение Google заключается в простой модели «Нажми для запуска» на уровне домена.
            Если Вы один раз разрешили запустить Flash контент на конкретном сайте, то весь этот сайт (включая его iframe-ы) будет
            запускать Flash содержимое без каких-либо дополнительных действий со стороны пользователя и при последующих визитах.
            Google так же продолжит поставлять Flash Player в своих установках и обновлениях.


            Под катом небольшая картинка на тему «Как работают журналисты».
            Читать дальше →
          • Project Tofino — новый браузер от Mozilla

              image
              Концепт дизайна и функционала нового браузера. Кликабельно

              Компания Mozilla тихо, без лишнего шума, анонсировала в эту пятницу запуск нового проекта — Project Tofino в его собственном блоге на medium, который некоторые уже успели окрестить «убийцей Firefox».

              Для подобного мнения есть все основания. Последние годы Firefox стремительно теряет свою долю на рынке, не выдерживая натиска Google Chrome. Project Tofino призван радикально изменить облик браузера от Mozilla и обновить его, тем самым положить начало «возвращению» утраченной доли рынка. Команда Tofino пока состоит всего из шести человек. Именно они и займутся проектированием и дизайном нового продукта компании.
              Читать дальше →
            • Яндекс убивает бизнес, или будьте осторожны с блоком #main

                UPD 16.03.2016: Новая версия аддона больше не убивает!

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

                Суть в том, что пару месяцев назад нам стали поступать запросы от пользователей, с жалобой, что они не могут разместить объявление на сайте, потому что футер наезжает на кнопку «добавить», со скриншотами, типа таких:



                Казалось бы, просто поехала верстка, футер стал наезжать на контент, при чем тут Яндекс?
                При чем же здесь Яндекс?
              • Концепция Physical web. Bluetooth маячки. Сравнение стандартов iBeacon, AltBeacon и Eddystone

                image

                Последние несколько лет я занимаюсь R&D в области интернета вещей и распределенных систем, а так же являюсь Google developer expert IoT. В этой статье я хочу поделиться своим опытом и рассказать про новую концепцию Physical Web. Так же расскажу про разные маячки (англ. Beacon — маяк) и сравню основные стандарты iBeacon, Altbeacon и Eddystone.
                Читать дальше →
                • +12
                • 18,6k
                • 6
              Самое читаемое