Как стать автором
Обновить
59
0
Roman Lugovkin @RomanL

Пользователь

Отправить сообщение

Задача N тел или как взорвать галактику не выходя из кухни

Время на прочтение 34 мин
Количество просмотров 46K



Не так давно я прочёл фантастический роман «Задача трёх тел» Лю Цысиня. В нём у одних инопланетян была проблема — они не умели, с достаточной для них точностью, вычислять траекторию своей родной планеты. В отличии от нас, они жили в системе из трёх звёзд, и от их взаимного расположения сильно зависела «погода» на планете — от испепеляющей жары до леденящего мороза. И я решил проверить, можем ли мы решать подобные задачи.
Читать дальше →
Всего голосов 177: ↑177 и ↓0 +177
Комментарии 127

Как сжать модель fastText в 100 раз

Время на прочтение 12 мин
Количество просмотров 20K

Модель fastText — одно из самых эффективных векторных представлений слов для русского языка. Однако её прикладная польза страдает из-за внушительных (несколько гигабайт) размеров модели. В этой статье мы показываем, как можно уменьшить модель fastText с 2.7 гигабайт до 28 мегабайт, не слишком потеряв в её качестве (3-4%). Спойлер: квантизация и отбор признаков работают хорошо, а матричные разложения — не очень. Также мы публикуем пакет на Python для этого сжатия и примеры компактной модели для русских слов.


Читать дальше →
Всего голосов 43: ↑43 и ↓0 +43
Комментарии 4

SSLH: Прячем SSH/HTTPS/OpenVPN/Telegram за единым портом 443

Время на прочтение 3 мин
Количество просмотров 117K
image

SSH/HTTPS/OpenVPN/Telegram и всё на одном порту?! Что?!
— Да!
  • Хотите скрыть наличее у вас некоторых сервисов?
  • В публичной wi-fi сети блокируется всё кроме 443 (https) порта?
  • Настроили Telegram Proxy/OpenVPN и не хотите его «светить» ?
  • SSH подключение к своему серверу из стран с цензурой?

На все эти вопросы ответ один — Мультиплексирование SSL/TLS соединений, или SSLH.

В посте мы рассмотрим как в 1 команду спрятать кучу сервисов за 1 портом.
Читать дальше →
Всего голосов 83: ↑79 и ↓4 +75
Комментарии 100

Новый MTProto-прокси сервер от Telegram

Время на прочтение 5 мин
Количество просмотров 159K
Прокси-сервер является посредником между клиентом и сервером. Для обхода ограничений прокси-сервер должен быть установлен там, где нет ограничений доступа к требуемой информации, при этом не должно быть таковых ограничений и между клиентом и прокси-сервером.

image

Обновлённая поддержка прокси-серверов в клиентах Telegram


  • Новый MTProto-прокси. Работает с родным для Telegram протоколом MTProto
  • Открытый исходный код сервера на GitHub
  • Docker-образ на DockerHub
  • В мобильных клиентах появилась возможность добавлять несколько прокси-серверов каждого типа. Пользователь может выбрать наиболее подходящий
Читать дальше →
Всего голосов 106: ↑98 и ↓8 +90
Комментарии 261

Telegram MTPROTO Proxy — всё что мы знаем о нём

Время на прочтение 4 мин
Количество просмотров 278K
image

Сразу после событий с блокировками Telegram в Иране и России, в бета-версиях мессенджера начал появлятся новый тип Proxy, а если быть точным, новый протокол — MTProto Proxy.

Этот протокол был создан командой Telegram для решения проблем обхода блокировок, но так ли он хорош?
Читать дальше →
Всего голосов 69: ↑60 и ↓9 +51
Комментарии 166

Универсальный API для получения информации по чекам

Время на прочтение 9 мин
Количество просмотров 110K
Привет жителям Хабра.

В данной статье хотелось бы рассказать про API для получения чеков, которое нам не предоставила всеми любимая ФНС.

Когда только появились QR-коды на чеках я подумал «Вау, как круто! Ты сканируешь код и видишь если не всю инфу по чеку, то ссылку на него». И какого же было мое разочарование, когда просканировав такой код я увидел что-то вроде

t=20180518T220500&s=975.88&fn=8710000101125654&i=99456&fp=1250448795&n=1

Но расстраиваться я не стал и подумал, что ФНС позаботилась о нас и предоставила API для получения такой информации. Погуглив некоторое время я понял, что ФНС нам предоставила только мобильное приложение для проверки чека и просмотра той информации, что поступила к ним от магазина.
Читать дальше →
Всего голосов 35: ↑33 и ↓2 +31
Комментарии 84

Обработка изображений: Tensorflow Object Detection API

Время на прочтение 6 мин
Количество просмотров 23K
Последние несколько лет в развитии глубоких нейронных сетей происходит настоящая революция: возникают новые архитектуры, совершенствуются фреймворки для разработчиков, а железо для экспериментов можно получить совершенно бесплатно — например, в рамках проекта Google colaboratory. Всем, кому интересно как применить предобученные модели из репозитория Tensorflow Object Detection API к решению своей задачи, используя мощности Colaboratory — добро пожаловать под кат.

Если не хочется читать статью — можно сразу познакомиться с ноутбучеком в репозитории
Читать дальше →
Всего голосов 14: ↑12 и ↓2 +10
Комментарии 2

Мысли про порог входа в технологии в 2018, пример простого мобильного приложения и не только

Время на прочтение 3 мин
Количество просмотров 27K

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

В этой короткой статье я на примере простого мобильного приложения для iPhone хочу показать, насколько доступны технологии.
Читать дальше →
Всего голосов 52: ↑43 и ↓9 +34
Комментарии 33

Настройка BGP для обхода блокировок, или «Как я перестал бояться и полюбил РКН»

Время на прочтение 11 мин
Количество просмотров 139K

Ну ладно, про «полюбил» — это преувеличение. Скорее «смог сосуществовать с».


Как вы все знаете, с 16 апреля 2018 года Роскомнадзор крайне широкими мазками блокирует доступ к ресурсам в сети, добавляя в "Единый реестр доменных имен, указателей страниц сайтов в сети «Интернет» и сетевых адресов, позволяющих идентифицировать сайты в сети «Интернет», содержащие информацию, распространение которой в Российской Федерации запрещено" (по тексту — просто реестр) по /10 иногда. В результате граждане Российской Федерации и бизнес страдают, потеряв доступ к необходимым им совершенно легальным ресурсам.


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

Читать дальше →
Всего голосов 124: ↑120 и ↓4 +116
Комментарии 301

«Герои Меча и Магии» в браузере: долго, сложно и невыносимо интересно

Время на прочтение 22 мин
Количество просмотров 103K
Как реализовать в браузере игру, на которой годы назад залипал без всякого браузера? С какими сложностями столкнёшься в процессе, и как их можно решить? И, наконец, зачем вообще это делать?

В декабре на конференции HolyJS Александр Коротаев (Tinkoff.ru) рассказал, как он сделал браузерную версию «Героев». Ранее уже появилась видеозапись доклада, а теперь для Хабра мы сделали ещё и текстовую версию. Кому удобнее видео — запускайте ролик, а кому текст — читайте его под катом:

Читать дальше →
Всего голосов 214: ↑210 и ↓4 +206
Комментарии 63

Упали с AWS? Заезжайте без вопросов, документы потом, сейчас не до того

Время на прочтение 3 мин
Количество просмотров 22K
Пока я ехал на работу и слушал новый альбом Дельфина, кто-то блокировал IP адреса Amazon и Google целыми подсетями. Роскомнадзор назвал недостоверной информацию о блокировании сайтов, не имеющих отношения к Telegram, но арендующих IP-адреса на тех же, что и мессенджер, сервисах, и создал горячую линию для противодействия распространения таких сообщений.

Поэтому я даже не догадываюсь, почему нам пришлось в течение вчерашнего дня помогать нескольким сервисам. Кого-то задело совсем немного, а кому-то пришлось мигрировать.

Если очень коротко — мы умеем быстро мигрировать из AWS. У нас совместимый API. Мигрировать клиентов из Google тоже можем. И в ближайшие недели мы готовы делать миграцию бесплатно и давать месяц на тесты в нашем облаке без договора и без гарантийного письма, просто по карточке компании. Не понравится — ничего платить не надо.

Ниже — howto для разных типов выгрузки ВМ с Амазона.
Читать дальше →
Всего голосов 93: ↑53 и ↓40 +13
Комментарии 47

Почему не нужно всегда получать согласие на обработку персональных данных в рамках GDPR

Время на прочтение 8 мин
Количество просмотров 30K
Статья для тех, у кого клиенты в Евросоюзе. Я работаю юристом в компании ISPsystem и уже пару месяцев разбираюсь в тонкостях GDPR. В этой статье поделюсь своими мыслями о нем и расскажу, почему не надо по любому поводу спрашивать у клиента разрешение на обработку персональных данных.



Лайфхак по 152-ФЗ


Для начала небольшое, но важное отступление.

Недавно знакомый из торговой компании попросил посмотреть их договор с веб-студией. Те собирались дорабатывать сайт магазина. Первым делом я открыл техзадание и увидел, что ребята планируют зарегистрировать владельца сайта в Роскомнадзоре как оператора персональных данных. Я подумал: «Они это серьезно?» И сам же ответил: «К сожалению, да».
Читать дальше →
Всего голосов 51: ↑51 и ↓0 +51
Комментарии 50

GDPR. Практические советы

Время на прочтение 5 мин
Количество просмотров 63K
Все слышали о General Data Protection Regulation (GDPR) (Regulation (EU) 2016/679), который вступает в силу 25 мая 2018 года. Штрафы большие и придётся соответствовать. Как и любой официальный документ, он написан сухо и может трактоваться по-разному. За последние полгода провел анализ десятка различных веб-систем на соответствие GDPR, и везде встречались одни и те же проблемы. В связи с этим цель этой статьи не разъяснить, что такое GDPR (об этом уже много написано), а дать практические советы техническим людям, что необходимо сделать в вашей системе, чтобы она соответствовала GDPR.

Пару интересных моментов по регламенту:

  • Если есть хоть один клиент из Европы, чьи персональные данные вы храните, вы автоматически попадаете под GDPR
  • Регламент базируется на трёх основных идеях: защита персональных данных, защита прав и свобод людей в защите их данных, ограничение перемещения персональных данных в рамках Евросоюза (Art. 1 GDPR)
  • UK всё ещё в EU, поэтому подпадает под действие GDPR, после Brexit-а GDPR будет заменён на Data Protection Bill, который по своей сути очень схож с GDPR (https://ico.org.uk/for-organisations/data-protection-bill/)
  • Серьезно ограничивается трансфер данных в третьи страны. Европейская комиссия определяет, в какие “третьи” страны или в какие сектора или организации в этих странах разрешён трансфер персональных данных Art. 45 GDPR. Вот список разрешённых стран.
Читать дальше →
Всего голосов 45: ↑44 и ↓1 +43
Комментарии 41

Операционные системы с нуля; уровень 2 (старшая половина)

Время на прочтение 19 мин
Количество просмотров 46K

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


Нулевая лаба


Первая лаба: младшая половина и старшая половина


Младшая часть. Продолжение под катом.

Читать дальше →
Всего голосов 47: ↑47 и ↓0 +47
Комментарии 4

Как решить 90% задач NLP: пошаговое руководство по обработке естественного языка

Время на прочтение 16 мин
Количество просмотров 109K
Неважно, кто вы — зарекомендовавшая себя компания, или же только собираетесь запустить свой первый сервис — вы всегда можете использовать текстовые данные для того, чтобы проверить ваш продукт, усовершенствовать его и расширить его функциональность.

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

Как вам может помочь эта статья


За прошедший год команда Insight приняла участие в работе над несколькими сотнями проектов, объединив знания и опыт ведущих компаний в США. Результаты этой работы они обобщили в статье, перевод которой сейчас перед вами, и вывели подходы к решению наиболее распространенных прикладных задач машинного обучения.

Мы начнем с самого простого метода, который может сработать — и постепенно перейдем к более тонким подходам, таким как feature engineering, векторам слов и глубокому обучению.

После прочтения статьи, вы будете знать, как:

  • осуществлять сбор, подготовку, и инспектирование данных;
  • строить простые модели, и осуществлять при необходимости переход к глубокому обучению;
  • интерпретировать и понимать ваши модели, чтобы убедиться, что вы интерпретируете информацию, а не шум.

Пост написан в формате пошагового руководства; также его можно рассматривать в качестве обзора высокоэффективных стандартных подходов.
Всего голосов 38: ↑36 и ↓2 +34
Комментарии 11

Знакомство с гео-библиотекой S2 от Google и примеры использования

Время на прочтение 15 мин
Количество просмотров 25K
Привет, Хабр!

Меня зовут Марко, я работаю в Badoo в команде «Платформа». Не так давно на GopherCon Russia 2018 я рассказывал, как работать с координатами. Для тех, кто не любит смотреть видео (и всех интересующихся, конечно), публикую текстовый вариант своего доклада.



Введение


Сейчас у большинства людей в мире есть смартфон с постоянным доступом в Интернет. Если говорить в цифрах, то в 2018 году смартфон будет у почти 5 млрд людей, и 60% из них пользуются мобильным Интернетом.

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

Всем нам известны компании типа Uber, игры, покорившие мир, такие как Ingress и Pokemon Go. Да что уж там, в любом банковском приложении есть возможность увидеть банкоматы или скидки поблизости.

Мы в Badoo также очень активно используем координаты, чтобы предоставлять своим пользователям лучший, актуальный и интересный для них сервис. Но о каком именно использовании идёт речь? Давайте посмотрим на примеры сервисов, которые у нас есть.
Читать дальше →
Всего голосов 75: ↑74 и ↓1 +73
Комментарии 20

Щи, или Распознавание 330 млн лиц на скорости 400 фото / сек

Время на прочтение 11 мин
Количество просмотров 42K

Распознаванием лиц в 2018 году никого не удивишь – каждый студент, может, даже школьник, его делал. Но всё становится немного сложнее, когда у вас не датасет на 1 млн пользователей, а:


  • 330 миллионов пользовательских аккаунтов;
  • ежедневно заливается 20 млн пользовательских фотографий;
  • максимальное время на обработку одного фото не должно превышать 0.2 сек;
  • ограниченные объемы оборудования для решения задачи.


В этой статье мы поделимся опытом разработки и запуска системы распознавания лиц на пользовательских фотографиях в социальной сети Одноклассники и расскажем про все ”от А до Я”:


  • математический аппарат;
  • техническую реализацию;
  • результаты запуска;
  • и акцию StarFace, которую мы использовали для PR-а нашего решения.

Распознавание лиц Одноклассников в деталях
Всего голосов 65: ↑63 и ↓2 +61
Комментарии 25

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

Время на прочтение 11 мин
Количество просмотров 29K

Однажды я наткнулся на интерактивную карту lastfm и решил обязательно сделать подобный проект для фильмов. Под катом история о том, как собрать данные, построить граф и создать своё интерактивное демо на примере данных с кинопоиска и imdb. Мы рассмотрим фреймворк для скрапинга Scrapy, пробежимся по методам визуализации больших графов и разберёмся с инструментами для интерактивного отображения больших графов в браузере.

Читать дальше →
Всего голосов 67: ↑65 и ↓2 +63
Комментарии 18

Лабораторная работа: введение в Docker с нуля. Ваш первый микросервис

Время на прочтение 26 мин
Количество просмотров 336K
Привет, хабрапользователь! Сегодня я попробую представить тебе очередную статью о докере. Зачем я это делаю, если таких статей уже множество? Ответов здесь несколько. Во-первых не все они описывают то, что мне самому бы очень пригодилось в самом начале моего пути изучения докера. Во-вторых хотелось бы дать людям к теории немного практики прямо по этой теории. Одна из немаловажных причин — уложить весь накопленный за этот недолгий период изучения докера опыт (я работаю с ним чуть более полугода) в какой-то сформированный формат, до конца разложив для себя все по-полочкам. Ну и в конце-концов излить душу, описывая некоторые грабли на которые я уже наступил (дать советы о них) и вилы, решение которых в докере просто не предусмотрено из коробки и о проблемах которых стоило бы задуматься на этапе когда вас распирает от острого желания перевести весь мир вокруг себя в контейнеры до осознавания что не для всех вещей эта технология годна.

Что мы будем рассматривать в данной статье?

В Части 0 (теоретической) я расскажу вам о контейнерах, что это и с чем едят
В Частях 1-5 будет теория и практическое задание, где мы напишем микросервис на python, работающий с очередью rabbitmq.
В Части 6 — послесловие
Читать дальше →
Всего голосов 108: ↑107 и ↓1 +106
Комментарии 36

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

Время на прочтение 6 мин
Количество просмотров 61K
Изучающие английский язык рано или поздно сталкиваются с неправильными глаголами: ненавистной как минимум сотней необходимых в быту глаголов, которые имеют по три формы. И все эти три формы надо зубрить, зубрить, зубрить! Неужели английский без них не может обойтись? И вообще, почему в русском неправильных глаголов нет, а в английском есть? Можно ли как-нибудь обойтись без них? Для ответов на все эти вопросы нам надо обратиться к истории языка.


Читать дальше →
Всего голосов 36: ↑33 и ↓3 +30
Комментарии 68

Информация

В рейтинге
Не участвует
Откуда
Владимирская обл., Россия
Дата рождения
Зарегистрирован
Активность