• Пассивный фингерпринтинг для выявления синтетического трафика

      imageimageЯ достаточно долгое время вынашивал идею рассмотреть клиентов публичного web-сервиса, браузер которых посылает заголовок User-Agent как у браузера в Windows, и которые при этом имеют все признаки сетевого стэка *nix-систем. Предположительно, в этой группе должна быть большая концентрация ботов, запущенных на недорогих хостингах для накрутки трафика или сканирования сайта.
      Читать дальше →
    • Нативные приложения обречены (часть 1)

      • Translation
      image

      Отныне я не буду больше создавать нативные приложения. Все мои приложения в дальнейшем будут прогрессивными веб-приложениями (PWA, Progressive Web Apps). Это такие приложения, которые предназначены для еще более органичной работы на мобильных устройствах, чем нативные приложения.

      Что я имею ввиду под «более органичной работой»? Большая часть веб-траффика исходит от мобильных устройств и пользователи устанавливают в среднем от 0 до 3 новых приложений в месяц. Это означает, что люди не тратят много времени на поиск новых приложений в App store, но они проводят много времени в сети, где могут найти и использовать ваше приложение.

      Прогрессивные веб-приложения начинают свою работу как любое другое веб-приложение, но когда пользователь возвращается в приложение и показывает (фактом использования), что он заинтересован в более регулярном обращении к приложению, браузеры предложат пользователю установить приложение на свой домашний экран. PWA также могут использовать push-уведомления как и нативные приложения.
      Читать дальше →
    • Могут ли PWA (Progressive Web Apps) образца 2018 года составить достойную конкуренцию нативным приложениям?


        Когда изменения происходят постепенно, шаг за шагом, порой бывает трудно заметить насколько они драматичны и всеобъемлющи. Казалось бы всего несколько лет назад web платформа проигрывала нативным приложением практически по всем фронтам, и пропасть между тем, что можно было сделать в браузере, и тем, что было доступно приложениями, загружаемым из магазинов, таких как Apple App Store или Google Play Store, была ужасающе огромной. Одним из свидетельств этой пропасти является то, что в 2007 году web по факту был основной платформой разработки приложений для первого iPhone, но эта платформа явно не взлетела. App Store же появился только год спустя со второй версии операционной системы, и сразу же случился бум нативных приложений, который и сформировал рыночный ландшафт таким, каким мы его знаем теперь.


        Многое изменилось с тех пор, и web технологии на месте не стояли. Они шли по пути снятия ограничений, и то, что раньше было принципиально невозможно — работа оффлайн, фоновая синхронизация данных, push-нотификации, поддержка входа в один клик и оплаты с помощью кредитных карт, Apple Pay, Google Pay и других методов, встроенная в браузер — теперь реальность. Эти функции органично дополняют основную часть платформы — HTML/CSS и JavaScript, которая в последние годы развивалась более чем активными темпами. Например новый проект Houdini, который ещё находится на достаточно ранней стадии, снимает почти все ограничения на то, что можно сделать с помощью CSS, давая возможность среди прочего создавать свои лэйауты и использовать их наравне с Grid и Flexbox, и открывая программный доступ к внутренностям CSS движка. Но даже и без Houdini уже сейчас можно создавать CSS анимации, работающие со скоростью 60 FPS (frames per second).

        Читать дальше →
      • Как рекламные ищейки идут по вашему следу в Интернете

        • Translation
        Прихожу домой, а отец мне:
        — Курил?
        — Нет, стоял, где курили.
        — Да я смотрю, ты и сидел там, где пили, и лежал там, где сексом занимались…

        Бородатый анекдот

        От переводчика


        Таргетинг рекламы не всегда направлен персонально на конкретного пользователя. Зачастую реклама таргетируется на группу пользователей, имеющих те или иные общие признаки. Что и приводит к тому, что, как в старом анекдоте, вы видите рекламу сигарет не потому что курите, а потому что стояли рядом с теми, кто интересовался сигаретами.

        Автор рассказывает о множестве техник таргетирования рекламы и делает неожиданные выводы о том, что это — не так уж и плохо. Просто нужно больше работать над прозрачностью подобных механизмов, чтобы исключить злоупотребления.
        Читать дальше →
        • +12
        • 8.9k
        • 9
      • Web PUSH Notifications быстро и просто

        • Tutorial

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


        Информации по этой теме в интернете полно, но она фрагментирована, разбросана по разным ресурсам и перемешена с уведомлениями для мобильных устройств с примерами на Java, C++ и Python. Нас же, как веб-разработчиков, интересует JavaScript. В этой статье я постараюсь саккумулировать всю необходимую и полезную информацию.


        Web PUSH Notifications


        Я думаю, вы уже знаете что такое push-уведомления, но я всё же напишу коротко о главном.


        Пользователь, заходя на сайт, вытягивает (pull) с него данные. Это удобно и безопасно, но с развитием интернет ресурсов, появилась необходимость оперативно доставлять информацию пользователям не дожидаясь пока те сами сделают запрос. Так и появилась технология принудительной доставки (push) данных с сервера клиенту.

        Читать дальше →
      • Пишем расширение для Chrome «загрузка аудиозаписей с Вконтакте», часть 2

        Продолжим писать наше расширение для Chrome, которое добавляет ссылку «Скачать» для каждой аудиозаписи вконтакте.
        В прошлый раз мы изменяли наш раздел Мои Аудиозаписи так.
        Было изначально: Стало с расширением:
        Оригинал Результат


        Но, в тот раз, у нашего расширения был существенный недостаток: оно не работало при переходе со страницы на страницу.
        Если зайти на главную страницу, потом перейти в Мои Аудиозаписи, то ссылки у песен не появлялись.
        Напомню, вконтакте при переходе со страницы на страницу не обновляет страницу в классическом понимании, а программно изменяет разметку страницы, и обновляет адресную строку. Это не является классическим браузерным переходом на новую страницу, и поэтому наше расширение не обновлялось.
        Давайте это исправим.

        Как и прежде, наше расширение будет состоять из трех файлов — файла описания (manifest.json), внедряемого js скрипта (vk_inject.js), и внедряемого файла стилей (vk_styles.css).
        Читать дальше →
        • +3
        • 16.1k
        • 5
      • Архитектура растущего проекта на примере ВКонтакте



          Алексей Акулович объясняет жизненный путь высоконагруженного проекта на PHP. Это — расшифровка Highload ++ 2016.

          Меня зовут Лёша, я пишу на PHP.

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

          Начнём.
          Читать дальше →
        • 31 мая и 1 июня в кампусе бизнес-школы Сколково будет жарко вне зависимости от погоды - на одной площадке соберутся около 1500 участников. Повод собраться более чем подходящий - профессиональный фестиваль "Российские интернет-технологии". Это событие, по масштабам не просто превосходящее конференцию, а включающее в себя целых 7 конференций, объединённых вокруг отраслевой выставки. На фестивале не будет скучно никому: от уставшего от опыта системного администратора или программиста высоконагруженных систем до начинающих тестировщиков и прожжённых продажников. Почти как на обновлённом Хабре :-) Участников будут встречать конференции: по серверной и фронтенд-разработке, по управлению и предпринимательству, по разработке мобильных приложений, по эксплуатации и devops, по высоконагруженным системам и конференция на стыке enterprise и web-культур. Кстати, кто дочитает до конца, кроме примеров, видео и бесплатного учебного курса получит неплохую скидку по волшебному коду HabrCode2016.
          Читать дальше
        • Чек-листы для Google AdWords и Яндекс.Директ и ещё пара секретов

            Вот уж никогда не думали, что будем подробно писать о контекстной рекламе в своём блоге! Однако совершенно недавно в нашей системе для web-студий Ptysh появился тип задач «Контекстная реклама» и мы решили выяснить, насколько она популярна. Ещё как популярна! Но. Многие представители российского бизнеса избегают контекст, а некоторые и вовсе разочаровываются в онлайн-рекламе после пары не слишком удачных заходов. Мы смело заявляем: он эффективная, вы просто не умеете её готовить! Сейчас мы вместе с коллегами из DFAKTOR, попробуем дать несколько простых рецептов.
            Читать дальше →
          • Уязвимость «ВКонтакте» позволяла получить прямые ссылки на приватные фотографии



            tl;dr
            Была обнаружена уязвимость в закладках ВК, которая позволяла получать прямые ссылки на приватные фотографии из личных сообщений, альбомов любого пользователя/группы. Был написан скрипт, который перебирал фотографии пользователя за определенный период и затем, через эту уязвимость получал прямые ссылки на изображения. Если коротко, то: можно было за 1 минуту получить все ваши вчерашние фотографии, за 7 минут — все фото, загруженные на прошлой неделе, за 20 минут — прошлый месяц, за 2 часа — прошлый год. Уязвимость на данный момент исправлена. Администрация ВКонтакте выплатила вознаграждение в 10к голосов.

            История началась с того, как мне в личку во «Вконтакте» кинули изображение. Обычно, если вещь важная, я её загружаю в облако, но в моём случае в этом не было необходимости, и я решил воспользоваться функцией закладок «Вконтакте».
            Читать дальше →
          • Построение признаков и сравнение изображений: локальные признаки. Лекции от Яндекса

              Сегодня мы публикуем пятую лекцию из курса «Анализ изображений и видео», прочитанного Натальей Васильевой в петербургском Computer Science Center, который создан по совместной инициативе Школы анализа данных Яндекса, JetBrains и CS-клуба. Всего в программе девять лекций, из которых уже были опубликованы:

              1. Введение в курс «Анализ изображений и видео».
              2. Основы пространственной и частотной обработки изображений.
              3. Морфологическая обработка изображений.
              4. Построение признаков и сравнение изображений: глобальные признаки.



              Под катом вы найдете план этой лекции, слайды и подробную расшифровку.
              Читать дальше →
              • +32
              • 14.8k
              • 1
            • Делаем свой персональный Skype, пошаговая инструкция создания WebRTC приложения

                WebRTC

                WebRTC позволяет реализовать real-time аудио/видео связь через браузер (firefox и chrome).

                В этом топике я расскажу как реализовать простейшее WebRTC приложение.
                Читать дальше →
              • Как мы открывали магазин в ТЦ МЕГА: история ошибок

                  Интерес к рознице был заметен изначально — с самых первых статей на хабре и на других сайтах мы начали получать запросы на франшизу. Запросы шли со всей страны — Питер, Новосибирск, Краснодар, Ростов-на-Дону, Пермь, Хабаровск, Сочи и так далее. Даже страной дело не ограничилось — люди из Украины, Беларуси и Казахстана тоже хотели открыть у себя магазин Madrobots. Но франшиза — это в первую очередь отлаженные процессы. Как мы могли объяснять, как открыть магазины в других городах, если сами этого толком не умели?

                  Мы решились открыть наш магазин в большом торговом центре, и теперь готовы рассказать вам о проблемах, косяках, процессах, решениях и выводах. Заходите, под катом интересно.
                  Читать дальше →
                • Может ли социальная сеть быть коммерческой и приносить прибыль?

                     

                    Only registered users can participate in poll. Log in, please.

                    Может ли социальная сеть быть коммерческой и приносить прибыль?

                    • 57.3%Да, и это правильно35
                    • 13.1%Конечно! У меня уже на narod.ru такая.8
                    • 14.7%Мне НЛО приносит прибыль9
                    • 4.9%Не знаю, не задумавался/задумавалась3
                    • 9.8%Нет, это убьет саму идею социальной сети6
                  • Постраничная верстка rel=«next|prev»

                    • Translation
                    Наряду с использование атрибута rel=«canonical» для указания поисковому боту на дублирование контента, теперь возможно использовать для HTML ссылок значение rel=“next” и rel=“prev” для обозначения положения текущей страницы в отношении соседних в рамках навигационного блока. В рамках веба встречаются различные варианты использования постраничной навигации — статья, разделенная на несколько страниц, либо категория товаров распределенных по нескольким страницам, либо ветка форума, разделенная на последовательность URL-ов. Теперь, включив rel=“next” и rel=“prev” в верстку страниц, мы можем указать Google:
                    • Создать консолидированный индекс страниц, чтобы ссылки не рассеивались между отдельными страницами page-1.html, page-2.html, и так далее
                    • При поиске направить пользователя на наиболее релевантную страницу среди всех остальных, например в начало статьи, разбитой на несколько страниц
                    Подробности и нюансы использования
                  • Music Beta by Google запущен

                      image

                      Для жителей США и по инвайтам.

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



                      Читать дальше →
                    • Поддержка OAuth 2.0 платформой ВКонтакте

                        Вчера во ВКонтакте появилась поддержка открытого стандарта авторизации OAuth 2.0. Теперь интегрировать сайты и клиентские приложения с социальной сетью стало значительно проще.

                        Читать дальше →
                      • OCR в Google Docs теперь поддерживает русский язык



                          В июне прошлого года команда Google Docs представила возможность распознавания текста (OCR). OCR анализирует изображения и PDF-файлы, извлекает текст (пытаясь сохранить форматирование) и позволяет редактировать документ в Google Docs.

                          Тогда поддерживались тексты только на английском, французском, итальянском, немецком и испанском языках.

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

                          Поддержка языков, которые поддерживались и ранее, также улучшена. Усовершенствовано и сохранение форматирования документов.