• Яндекс отключил расширения с аудиторией в 8 млн пользователей. Объясняем, почему мы пошли на такой шаг

      Сегодня мы приняли решение отключить расширения SaveFrom.net, Frigate Light, Frigate CDN и некоторые другие, установленные у пользователей Яндекс.Браузера. Совокупная аудитория этих инструментов превышает 8 млн человек.

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



      Читать дальше →
    • Android-приложение поверх других приложений

      • Tutorial
      В 2013-году Facebook выпустил функцию Chat Heads для своего мессенджера, который позволяет вести переписку, не открывая сам мессенджер путем нажатия на маленькое круглое окошко, которое всегда висит на дисплее даже поверх других приложений:

      image

      Facebook одним из первых продемонстрировал реализацию «Drawing over other apps». Данную возможность разработчики сейчас используют в различных типах приложений — от боковых смарт-меню до записи экрана. В этой статье, хочу продеменстрировать процесс написания приложения-поверх-других-приложений на примере «анти-шпионской» программы Khameleon.
      Читать дальше →
      • +10
      • 24.8k
      • 3
    • Делаем Android View Binding удобным c Kotlin

      Привет! Меня зовут Кирилл Розов. Я автор Telegram канала Android Broadcast. Очень люблю Kotlin и мне нравится с помощью его возможностей упрощать разработку. С такой задачей я недавно столкнулся, когда на новом Android проекте начали использовать View Binding.


      image

      Читать дальше →
    • Web PUSH Notifications быстро и просто

      • Tutorial

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


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


      Web PUSH Notifications


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


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

      Читать дальше →
    • Большие таблицы и уникальные ключи

        На днях у меня появилась задача — добавить новое поле в таблицу. Казалось бы, ALTER TABLE… Не тут-то было.

        Я запустил этот запрос в вечернее время, однако утром он всё ещё выполнялся (16 часов оказалось мало :)

        Я сразу предположил, что проблема скорее всего в построении уникального индекса и огромных размерах исходной таблицы. Как известно при ALTER TABLE сервер создаёт временный файл, в который копирует необходимые данные. SHOW PROCESSLIST это подтвердил.

        Приведу более подробную постановку задачи.
        Читать дальше →
      • SSL-сертификаты: всем, каждому, и пусть никто не уйдёт обиженным

        Как ранее сообщалось на GeekTimes, EFF при поддержке Mozilla, Cisco, Akamai, IdenTrust и исследователей из Мичиганского университета (University of Michigan) создали новый некоммерческий центр сертификации (Certificate Authority) Let's Encrypt [1]. Целью проекта является ускорение перехода всемирной паутины от HTTP к HTTPS.
        Подробности, часть из которых уже была описана на GeekTimes
      • Получаем бесплатный SSL сертификат

        • Tutorial
        Привет, хабр!

        О StartSSL я узнал от небезызвестного lissyara, в связи с чем ему очень благодарен.

        Для начала расскажу, что же за зверь это. Как известно, SSL сертификаты выдаются центрами сертификации, чьи корневые сертификаты хранятся в хранилище сертификатов браузера\ОС (либо другого ПО, использующего SSL). Цена на большинство сертификатов зашкаливает, и платить приходится за каждый сертификат. Но у StartSSL весьма интересный подход — сами сертификаты у них бесплатные, вы платите только за проверку вашей личности.

        Так же не может не радовать наличие русскоязычной поддержки.
        Читать дальше →
      • Госуслуги. Регистрация ИП или все не так прозрачно

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

          Первая проблема найти ссылку по которой можно получить услугу, ссылки в списке услуг встречаются с совершенно одинаковыми названиями «Государственная регистрация физического лица в качестве индивидуального предпринимателя». Привожу ссылки ссылка1 и ссылка2, мне удалось определить нужную только по последней странице мастера получения услуги, там необходимо прикрепить заявление о государственной регистрации (для регистрации ИП нужен документ с номером Р21001, по неправильной ссылке предлагается другой номер документа).



          Чтобы заполнить заявку, нужно знать номер своей «налоговой», ссылка которая дается на первой странице «Определение реквизитов ИФНС» никогда не откроется, не понятно зачем они указали в ней порт 8080, без указания порта узнать свой налоговый орган очень просто. Далее нужно скачать программу «Программа подготовки документов ИП», в ней стоит учесть, что не нужно заполнять поля «Данные индивидуального предпринимателя (заполняются латинскими буквами )», почему то в документе есть звездочка (которая означает что эти поля нужно заполнять только иностранцам), а в программе это не указано. В принципе, сложностей с этой программой нет, из нее нужно выгрузить документ который нужно прикрепить на последней странице (Р21001).
          Читать дальше →
        • Кен Нортон. Как работать с программистами

          • Translation
          Я работаю в сфере IT 20 лет, последние 13 — в качестве руководителя проектов. Так получилось, что за это время я заслужил репутацию менеджера, эффективно работающего с программистами. Благодаря этому навыку я вошел в историю как один из трех величайших руководителей проектов и направлений – наряду с Николо Маккиавели и Стивом Джобсом.

          Долгие годы я держал свои профессиональные секреты при себе. Но время пришло: сегодня я поделюсь с вами «Десятишаговой инструкцией по работе с программистами». Или, если ближе к сути, назовем ее так: «Как заставить программистов делать то, что вы хотите».
          Как заставить программистов делать то, что вы хотите
        • Вебмастер! Уплатил ли ты налог с Google AdSense?

            Председатель комиссии Совета Федерации по развитию информационного общества Руслан Гаттаров обратился в ФНС (Федеральная налоговая служба — прим. авт.) с запросом относительно деятельности корпорации Google.

            Цитата:
            «Р.Гаттаров просит главу ФНС дать оценку правовому механизму, который предусмотрен в пользовательском соглашении Googlе AdSense между интернет-корпорацией Google и владельцами веб-сайтов, а также проверить российское подразделение Google на предмет проведения через компанию выплат гражданам РФ за пользование сервисом контекстной рекламы и перечисления с них налогов. Сенатор предлагает ФМС запросить у головного офиса Google информацию об объеме денежных средств, которые были перечислены российским гражданам за все время работы сервиса, и об уплате НДФЛ с указанных средств.»
            Читать дальше →
          • Быстрое возведение чисел от 1 до 100 в квадрат

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


            *квадраты до сотни

            Для того, чтобы бездумно не возводить в квадрат по формуле все числа, нужно максимально упростить себе задачу следующими правилами.
            Читать дальше →
          • Виртуальная прогулка по датацентрам Google

              Компания Google, ранее ревниво охранявшая свои датацентры от посторонних взглядов, опубликовала впечатляющую подборку фотографий, сделанных в святая святых. Более того, по датацентру в городе Ленор (Северная Каролина), теперь можно прогуляться в Google Street View или посмотреть видеотур. Пожалуй, слова тут излишни. Смотрите сами.



            • Статистика Хабрахабра

                Почти неделя прошла с исполнения хабрахабру 6 лет. Было бы очень интересно посмотреть на графики роста показателей сайта. Т.к. стандартная статистика малоинформативная, решено было собрать всю информацию своими руками и проанализировать. И так, почти неделя парсинга и сбора информации и получены следующие интересные данные(скрытые/удаленные посты/пользователи и их комментарии не учтены):
                • Больше всего постов написал alizar — 4298, рекорд 12 постов в день поставлен 18 октября 2006
                • Больше всего комментариев написал VolCh — 19323, установив личный рекорд 27 июля 2011 года в количестве 140 комментариев.
                • Больше всех опубликовал постов в день freetonik —21 топик 26 августа 2007
                • Максимальная активность хабры в день — опубликовано 105 топиков: 18 февраля 2010 и 22 июня 2008 года.
                • Максимальная активность хабры в месяц — опубликовано 2055 топиков в марте 2010
                • Среднее значение кармы: +7,83
                • Средний рейтинг топика: +24,75
                • Всего комментариев: 3 703 022.
                • Средний рейтинг комментария: +0,98
                • Максимальное количество оставленных комментариев — 1 июля 2011 в количестве 4936 штук.
                • 25% из всех опубликованных топиков были перенесены в черновики
                • Самый комментируемый топик habrahabr.ru/post/123157 собрал 2252 комментария

                Красивые графики, методы измерения, база с полученными данными, «хаброаномалии» — все это под катом.
                Читать дальше →
              • Из html в pdf – легко! Обзор конвертеров

                  Ежедневно в процессе деятельности регистратора REG.RU, в котором я работаю программистом, совершаются сотни операций, требующих оформления каких-либо официальных документов. Среди них — различные договоры, счета, сертификаты и т.п., которые необходимо печатать как компании, так и клиентам. Для таких целей хорошо подходит формат PDF, который на сегодняшний день стал де-факто основным для обмена и распространения документации. Основными преимуществами этого формата можно назвать: кроссплатформенность, аппаратную независимость и безопасность. Все вышеперечисленное позволило PDF завоевать популярность среди пользователей и стать одним из самых распространенных.

                  Как можно создавать документы в формате PDF на лету, из скрипта?
                  Читать дальше →
                • Мгновенное умножение

                    Некоторые приемы сокращенных вычислений знать очень полезно. Кроме того, эти приемы часто любопытны и сами по себе. Поэтому считаю не лишним познакомить с ними и читателей Хабра.

                    итак…
                    Читать дальше →
                  • Публикация на стене Вконтакте средствами php

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

                    В действительности всё оказалось довольно просто, и чтение документации по API часто помогает сэкономить время.

                    Читать дальше →
                  • История заблокированного приложения

                      Несколько дней назад я писал в этой статье о деталях того как можно скачать видео с YouTube. В этой же статье была ссылка на Android-приложение, использующее описанный алгоритм. В комментариях к той статье меня предупреждали, что приложение могут скоро заблокировать, так как оно нарушает правила использования сервиса YouTube. Так и случилось… Через двое суток после публикации приложение стало недоступно для установки из Android маркета. Цель написания этой статьи: показать на своем примере, какие реальные санкции со стороны Google ожидают разработчика если его приложение окажется «вне закона».
                      Если интересно, добро пожаловать под кат.

                      Читать дальше →
                    • Веб-приложение — ну почти без бек-энда: Flask, Redis, API через JSONP, JSFiddle.net

                        Данная статья — так называемый «proof-of-concept» создания фронт-енд приложения, работающего с API посредством JSONP, то есть, как говорят, «cross-origin». Также описана организация данных в Redis.

                        Например, можно с легкостью разместить на jsfiddle.net некое приложение, бек-энд которого будет находится на другом домене.

                        Согласитесь, что полноценный работающий конечный продукт (требующий наличие некоего сервера для централизации обмена данными), находящийся внутри JSFiddle, выглядит забавно!



                        Цель статьи — поделится своим сегодняшним опытом с двух сторон:
                        • Имплементацией JSONP + Long Polling
                        • Работой с замечательной Redis


                        Кое-чем подобным занимаются ребята из BackendLess.
                        Если интересно - искренне прошу под кат.
                      • «Нет времени объяснять!» или Как реализовать трансляцию с IP камеры на сайт?

                        image


                        Пожалуй, мне везет на идиотские задачи в самый неподходящий момент. Это что, карма такая?! Ну да ладно…
                        В данном «отпускном» посте речь пойдет о том, как при наличии 3g модема и ноутбука реализовать трансляцию с IP-камеры на сайт.
                        Сам пост я бы не написал, если бы не задал вопрос на «Тостере», где мне подсказали, что гуглить.

                        Что мы имеем?


                        1. Недешевая IP камера AXIS Q1755, которую я даже в руках не держал. Сама камера находится в городе «А» и подключена через тормозной 3g модем.
                        2. Сервер на Debian 7, который крутится на почти дохлом Core2Duo. Хотя не такой уж он и дохлый, но для данных задач подходит не очень. Ах, да, сам сервер живет в городе Б.
                        3. Сайт, на который необходимо повесить плеер. Находится на другом, более производительном сервере, в том же городе Б.
                        4. Я, который находится в городе В, с ноутбуком, 3g-модемом и ограниченным трафиком в 4gb.

                        Читать дальше →
                      • Разбор протокола World Of Tanks

                        Часть первая: инструментарий мелкосерийного изобретения велосипедов

                        Почему и зачем: длинная и необязательная преамбула

                        Хорошо, что опыта игрового модостроительства у меня было немного — так, пару кастомных прицелов для Deer Hunter 2005 и «нелицензионный» недоклиент VATSIM/FSD с сопутствущим «взломом» протокола последнего. Ещё лучше, что ни разу не приходилось с головой погружаться в сколь-нибудь трудоёмкую и длительную отладку и дизассемблирование. То есть, с IDA и OllyDBG я поверхностно знаком, но не как с ежедневными рабочими инструментами.

                        В WOT играю с начала 2011 года. Не запоем, а, скорее, набегами — по 5-6 боёв вечером. Было время 2 года назад, наш клан состоял в Красном Альянсе, ходил на глобалку по ночам, выполнял какие-то тактические задачи на европейском ТВД, устраивал тренировки и спарринги, вовсю бурлили внутриигровые политические страсти, отпочковывались учебные кланы. Сейчас всего этого уже нет, и наш золотой ёжик превратился в табличку над «Домом Ветеранов».

                        Впадать в ересь сравнения танков с другими MMO не буду, так как хорошо знаком только с танками. Тем более не знаком ни с одним другим проектом, использующим BigWorld, поэтому искренне верю WarGaming'у на слово, что существуют и (не)тривиально (не)преодолеваются различные техномагические ограничения движка — на размер карты, на максимальную скорость юнита, на численность команд и прочее. Оставаясь в рамках внутренней критики, я также понимаю, что, с точки зрения целевой аудитории танков вообще, и их активного игрового коммьюнити в частности, каждое нововведение из очередного патча, безусловно, гораздо более востребовано и обосновано, сколь бы малым оно ни было. И что оптимизировать Motion Blur на несколько процентов это, безусловно, важнее, чем отменить принципиальную неизменяемость привязки действий на кнопки мыши для тех, кто привык на них ставить движение вперёд-назад (DOOM-стайл, да).

                        Итак, я уверен, что в обозримом будущем никаких планов по введению полноценного режима спектатора в WOT нет и не будет. Под полноценным режимом спектатора я понимаю множественные подключения игроков в сеанс боя изначально как невзаимодействующих на игру «привидений»-наблюдателей, а не на технике. Это тот самый режим, из-за отсутствия которого комментаторы на чемпионатах WOT вынуждены заходить в бой 15-м танком, убиваемым своими на базе. Это тот самый режим, из-за которого появились моды «командирского zoom» и «кинематографической камеры» — по сути, просто костыли. А нужен такой режим затем, чтобы командир роты занимался командованием, а не скакал впереди на лихом танке по-чапаевски, чтобы он видел ситуацию на карте в целом непрерывно, а не отвлекался на неё в пылу нападения из засады. В идеале, командиру даже не нужны красоты трёхмерного мира — достаточно одной большой карты на весь монитор с игровой ситуацией в реальном времени — HP, повреждениями модулей, членов экипажа, направлениями стволов и прицелов союзной техники, засвеченных в каждый момент вражеских юнитов и прочей вспомогательной информации.

                        WOT предоставляет широкие возможности модостроительства, но такая идея выходит за рамки классического «заменить пару swf-файлов на свои». Потребуется перехват и разбор самого игрового протокола для того, чтобы иметь возможность передать на командирский планшет своё видение игровой ситуации.
                        Читать дальше →