Как стать автором
Обновить
3
0
Никита Дудинцев @mediagenia

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

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

Полнотекстовый нечеткий поиск с использованием алгоритма Вагнера-Фишера

Время на прочтение3 мин
Количество просмотров24K
Статья написана об использовании алгоритма вычисления расстояния Левенштейна для нечеткого поиска в тексте, без использования вспомогательного словаря.

Расстояние Левенштейна используется для сравнения двух слов или двух строк, чтобы определить их схожесть. Некоторое время назад передо мной встала схожая задача — в заданной строке искать вхождение слов, словосочетаний и формул, похожих на образец.
Читать дальше →
Всего голосов 23: ↑21 и ↓2+19
Комментарии7

Букмарклеты: если XPath недоступен, а селекторов и методов навигации по DOM не хватает

Время на прочтение5 мин
Количество просмотров6.3K
Недавно я пытался написать несколько условно кроссбраузерных букмарклетов с выборками и навигацией средней сложности. Решил ограничиться последними версиями Google Chrome, Firefox и Internet Explorer. Приступив к проверке в последнем браузере, с грустью обнаружил, что даже в IE 11 всё ещё нет поддержки XPath.

Вроде бы полная поддержка обещана в Edge: «Microsoft Edge supports the XML Path Language Version 1.0 with no variations or extensions». И уже даже, кажется, реализация добавлена в Internet Explorer Developer Channel (никто не проверял?). Но это пока недостаточное утешение.

(P.S. Проверка через виртуальную машину подтверждает реализацию XPath в MS Edge версии 11.00.10240.16397 от 7.22.2015 (по версии файла), она же 20.10240.16384.0 (по информации в настройках)).

Следующим шагом стало обнаружение библиотеки от Google. Я даже для очистки совести проверил способ с вживлением библиотеки на странички в IE 11 (по описанному здесь методу) — всё замечательно работает даже на параноидальных сайтах вроде Твиттера (к слову, если вы вдруг не знали, в Firefox всё ещё нельзя запустить букмарклет в Твиттере или, например, в Гитхабе, из-за до сих пор не исправленного бага). Но метод этот очень громоздкий. Он хорошо подходит для разработки сайтов, но маленькие пользовательские букмарклеты он отягощает лишней асинхронностью, усложнением логики и дополнительным временем на загрузку файла.

Пришлось искать более простые замены для некоторых не хватавших мне инструментов XPath.
Читать дальше →
Всего голосов 7: ↑7 и ↓0+7
Комментарии6

Получение участников сообщества vk.com за считанные секунды

Время на прочтение2 мин
Количество просмотров115K
Ни для кого не секрет, что VK API возвращает за один запрос к методу groups.getMembers не более 1 000 участников. В одну секунду вы можете получить максимум 3 000 участников, так как установлено ограничение на количество запросов в секунду до 3. Эту проблему решает метод execute, с помощью которого вы можете получить более 100 000 участников за одну секунду и до 25 000 участников за один запрос. В этой статье я расскажу Вам, как я это реализовал.
Читать дальше →
Всего голосов 57: ↑43 и ↓14+29
Комментарии26

Локализация для Бразилии: советы и рекомендации

Время на прочтение5 мин
Количество просмотров9.4K
Конкурентный рынок мобильных приложений Европы и США стабильно растет, а значит, растут и расходы на привлечение новых пользователей. Естественно, что в этой ситуации в центре внимания оказываются самые быстрорастущие игроки мирового рынка мобильных технологий: Китай, Юго-Восточная Азия, Латинская Америка, Россия, Восточная Европа, Ближний Восток и Южная Африка.

Один из наиболее интересных рынков для экспансии – Бразилия. Однако, чтобы завовевать его, необходимо понимать тонкости процесса локализации для этой страны. Мы в Alconost, например, часто сталкиваемся с тем, что разработчики выходят на бразильский рынок с европейской португальской версией продукта или приглашают европейских португальских переводчиков переводить тексты, предназначенные для бразильских пользователей. Так что когда мы нашли дельную статью об особенностях локализации для бразильского рынка, то поспешили перевести ее на русский.


Читать дальше →
Всего голосов 13: ↑11 и ↓2+9
Комментарии3

Оптимизируем страницу при помощи собственных социальных кнопок

Время на прочтение5 мин
Количество просмотров28K
Здравствуйте,

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

image

В статье рассматриваются доступные, готовые для использования социальные кнопки, проблемы с которыми мы столкнулись при их использовании, и описан простой способ как сделать свои кнопки для нескольких популярных социальных сетей.
Читать дальше →
Всего голосов 27: ↑21 и ↓6+15
Комментарии21

Телевизор в качестве монитора

Время на прочтение2 мин
Количество просмотров8.3K
Решил себе купить новый монитор, побольше размером, чем мой Samsung 215TW. Хотелось что-то в районе 24-27 дюймов с нормальной матрицей (*VA, IPS) и RCA-входом (нужен временами), потратить был готов тысяч пятнадцать.

В принципе, в район 10 тысяч сейчас неплохой выбор 23-24" мониторов на IPS и *VA. А вот с 27" хуже, за эти деньги только TN. Когда же добавил в поисковик наличие RCA, то даже среди 24" остались только TN. Либо цена подскакивала до 20-30 тысяч. Стало грустно.

Читать дальше →
Всего голосов 68: ↑50 и ↓18+32
Комментарии105

«Стартап без бюджета»: про бизнес неуютный, но интересный

Время на прочтение3 мин
Количество просмотров4.2K
Краткое содержание: «Стартап без бюджета» = «книга-пинок под зад» + практическое руководство. Энергичным людям — must read.

Я расскажу о книге, написанной авантюристом для авантюристов. Майк Михалóвиц, 30-летний предприниматель, основатель 3 успешных компаний. Он не гений, не вор, не наследник миллионера и совсем не «завоеватель друзей»с приклеенной улыбкой.

Он — ТББ, «туалетно-бумажный бизнесмен». Термин неожиданный и резкий, в этой книге таких много. Он описывает модель поведения. Вы встаете с унитаза и видите — на рулоне с туалетной бумагой остались три сиротливых обрывка. Что будете делать? Высунете голову из двери и позовете на помощь? Сердито натянете штаны «как есть»? ТББ найдет способ обойтись подручными средствами.

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

Предприятия этих людей и сейчас не слишком известны и доходны. Но своих создателей и их семьи они обеспечивают. С запасом.



«Стартап без бюджета» — учебник по предпринимательству такого рода. Как всякий учебник, начинается с теории. Как всякая современная стартаперская книжка, рекомендует найти свое призвание. А вслед за рекомендацией дает четкие пошаговые инструкции — как это сделать.
Читать дальше →
Всего голосов 46: ↑39 и ↓7+32
Комментарии36

Могу копать, могу не копать

Время на прочтение2 мин
Количество просмотров1.8K
imageСтартапы Кремниевой Долины сегодня напоминают старых генералов, которые, как известно «никогда не умирают». Они продолжают свой путь на бескрайних просторах Интернета, подпитываемые средними прибылями и капиталом инвесторов, постепенно уходя за горизонт и пропадая из поля зрения.

Сегодня уже всем понятно, что Digg, некогда бывший одним из самых ярких представителей диаспоры, уплывает вдаль от наших глаз. Компания еще не мертва, но ее душа практически улетучилась — на днях Кевин Роуз, один из самых необычных представителей технологической молодежи, заявил об уходе из Digg и уже закрыл очередной миллионный раунд финансирования нового проекта Revision3.

imageНапомню, что Digg был запущен в декабре 2004 года, почти сразу же став хитом. Он и сегодня генерирует гигабайты траффика, но это уже лишь отголоски былой славы. Крупнейшие игроки IT-рынка долго боролись за право откупить этот бизнес, вплоть до середины 2008 года, когда Google и Digg шли к алтарю, но в последнюю минуту венчание было прервано. Говорят, что Google давала около $200 млн. за Digg, и интервьюировала каждого сотрудника Digg. Заслуга второго со-основателя компании, Джея Адельсона, заключалась в том, что он удержал почти всю команду в компании после того, как сделка была отменена.

Это было замечательное время, но со временем новые сервисы, типа Twitter'а и Facebook'а стали более популярны и удобны. Роуз и Адельсон отдалились от дел, Роуз, по слухам, бывал в офисе не чаще раза в месяц, поэтому Адельсону пришлось тащить лопату на своем горбу. Прошлой весной ребята наняли Мэтта Уильямса для выполнения функции CEO, что позволило им обоим заняться новыми проектами.

Во вторник, 22.03, на Хабре будет опубликована большая заметка о том, чем на самом деле был Digg и какое наследие он оставил за собой. Следите за обновлениями блога!
Всего голосов 60: ↑43 и ↓17+26
Комментарии45

Теория игр

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

В последнее время много внимания уделяется идее вирусного распространения контента, но согласно исследованию, опубликованному недавно в PNAS — ведущем научно-исследовательском журнале США, это далеко не единственный путь, которым могут распространяться идеи, инновации и технологии.

Два исследователя провели занимательную теоретическую работу, протестированную с помощью фокус-групп и пришли к выводу, что изменения быстро распространяются не только потому, что становятся открытыми большому количеству людей. Наоборот, подобное распространение чаще проходит по игровым правилам; и игроки решают, принять ли им нечто новое, только на том основании, что все вокруг это уже сделали.
Читать дальше →
Всего голосов 53: ↑44 и ↓9+35
Комментарии15

Акинатор и математика

Время на прочтение6 мин
Количество просмотров112K
На Хабре уже несколько раз всплывала тема Акинатора, в том числе и с тегом не знаю как оно работает. Я на него наткнулся недавно и, разумеется, был восхищен. Затем, как вероятно и многим другим, мне в голову пришла мысль: «А как же это работает?» Ответа на этот вопрос я нигде не нашел, а потому задался целью написать аналогичную по функциональности программу, разобравшись по ходу дела что к чему.
Читать дальше →
Всего голосов 103: ↑95 и ↓8+87
Комментарии78

AMQP теперь и в PHP

Время на прочтение3 мин
Количество просмотров12K
типа Введение
Протокол AMQP хорошо был описан в статьях AMQP по русски, RabbitMQ: Введение в AMQP AMQP — практика использования и мне не хотелось бы повторяться.

AMQP используется в серверах очередей: ZeroMQ, ActiveMQ, RabbitMQ.

Преимущество RabbitMQ перед прочим свободным ПО:
— более полно представлен протокол,
— поддерживает кластер,
— реализован как многопоточный сервер, высокая производительность

Широкое распространение AMQP в WEB разработках разработках сдерживается двумя причинами: отсутствием необходимых навыков (практики) его использования и малой клиентской поддержкой. В основном есть клиенты на языках с, java, python, с#. Большая популярность РНР в WEB разработках жалала бы видеть и свой AMQP-клиент.
Читать дальше →
Всего голосов 19: ↑12 и ↓7+5
Комментарии15

Альфа-Банк для android

Время на прочтение1 мин
Количество просмотров5K
Сегодня наконец-то Альфа-Банк выпустили приложение Альфа-Мобайл для платформы Android.
Приложение полностью повторяет внешний вид и функционал своего собрата с iPhone.

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

Скачать его можно тут:
ссылка
image

Наконец-то на android рынок стали обращать внимание крупные российские банки.
Читать дальше →
Всего голосов 58: ↑45 и ↓13+32
Комментарии166

Youtube Remote для Youtube Leanback

Время на прочтение2 мин
Количество просмотров4.4K
image
Некоторое время назад на Хабрахабре уже писали про сервис Youtube Leanback. Сегодня же я обнаружил приложение для Android, которое превращает ваш телефон в пульт дистанционного управления Youtube Leanback. Хоть приложение и появилось около месяца назад, новость о нём здесь вроде не появлялась, посему решил поделиться. Сразу, сходу, ссылка на программу, ну а подробности под хабракатом.

image

Читать дальше →
Всего голосов 9: ↑4 и ↓5-1
Комментарии17

Библиотека для обмена событиями, данными и задачами между вкладками браузера

Время на прочтение11 мин
Количество просмотров20K
Приветствую, уважаемое Хабрасообщество!

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

Сейчас библиотека выложена с парой примеров на GitHub, а под хабракатом хотелось бы осветить некоторые тонкости её применения и часть внутренней логики. Буду рад, если моя библиотека поможет кому-то сэкономить n-ое количество времени и позволит избежать изобретения собственного велосипеда.

Кому интересно — добро пожаловать под кат.
Читать дальше →
Всего голосов 36: ↑34 и ↓2+32
Комментарии16

Оптимизируем LIMIT offset

Время на прочтение2 мин
Количество просмотров83K
Везде, где используется LIMIT offset для больших таблиц, рано или поздно начинаются тормоза. Запросы вида

SELECT * FROM test_table ORDER BY id LIMIT 100000, 30

могут выполнятся очень долго. Например, в моем случае, на одном из сайтов кол-во комментариев перевалило за 200к и постраничная навигация по комментариям начала ощутимо тормозить, а в mysql-slow.log все чаще стали попадать запросы с временем выполнения 3-5сек.
Читать дальше →
Всего голосов 77: ↑61 и ↓16+45
Комментарии30

Переходы наличности и переходы на личности

Время на прочтение12 мин
Количество просмотров85K
Представьте, что мы живем в мире криптографии, электронной коммерции и свободных экономических отношений. Пользуемся электронными средствами платежей, где в корзине и кошельке операции осуществляет калькулятор, где микроскопические суммы и огромные средства проводятся в многочисленных транзакциях без каких-либо проблем за ничтожное количество времени, с автоматическим учетом налогов, сборов и отчислений, где нам привычны покупки в электронных супермаркетах и доставка до порога по одному прикосновению к экрану телефона или клику мышкой. И вот, в наш прекрасный, удобный и отлаженный мир электронных платежей, построенный на принципах безопасности и криптографии, со всеми присущими ему технологиями и образу мышления, впитанными с молоком матери, приходит причудливый и странный механизм, которым, как говорят средства массовой информации, пользуются только анархисты, конспираторы и преступники.
Любопытное нажатие для путешествия в этот мир
Всего голосов 288: ↑263 и ↓25+238
Комментарии229

Iodine: DNS туннель через закрытый WiFi

Время на прочтение9 мин
Количество просмотров104K
Дано: полное отсутствие интернета и виднеющийся WiFi hot-spot, в котором предлагают ввести логин-пароль. Или 3G, в котором нет интернета (потому что закончились деньги), но есть страничка провайдера с предложением дать оных денег.
Задача: получить интернет (легальным?) методом посредством туннелирования его через DNS.
Решение: linux+ iodine + routing + NAT + squid, и всё это под управлением network manager'а.
В статье: описание организации DNS туннеля посредсредством программы iodine, нюансы организации маршрутизации через образовавшийся туннель, самописный помощник для iodine и network manager.

Лирика: Занесла меня судьба на славный остров Кипр, кой славен своим П/пафосом, фраппэ и таким интернетом, после которого российские опсосы начинают выглядеть ангелами во плоти. В частности, попытка подключиться к интернетам закончилась ожиданием, что местный провайдер (Сyta) смилостивится, таки закончит пить оный фраппэ и дотянет до меня поганый ADSL 4Мб/768кбит всего-навсего за €151 (подключение) + €40 в месяц (за 4 мегабита! >_<). Ожидание тянулось и тянулось (как бы уже третья неделя пошла), а рядом был славный PrimeTel, который предлагал за €4/час (172р/час) осчастливить меня интернетом прямо тут и сейчас через едва видный WiFi. Я бы даже и согласился, но видна точка доступа была только на балконе, а в квартире связь была нестабильной и часто терялась. Так что оставалось одно решение (помимо взлома WEP-сети соседей, что уж совсем уголовщина) — это злоупотребить сервисом DNS, который безвозмездно, то есть даром, предоставляет PrimeTel для своих незарегистрировавшихся подлюченцев.

Те, кому интересно «howto» — решение далее по тексту, а пока что начнём с теории процесса.
Читать дальше →
Всего голосов 136: ↑134 и ↓2+132
Комментарии75

Ответный вызов разработчикам Telegram

Время на прочтение3 мин
Количество просмотров111K
Об авторе: Moxie Marlinspike — хакер-исследователь, придумавший атаку SSL-stripping (и нашедший ещё полдюжины уязвимостей в SSL), разработчик системы Convergence, призванной заменить списки «доверенных сертификатов», а также со-основатель компании Whisper Systems, купленной Twitter в 2011 году. Также стоит почитать обсуждение на Hacker News.



На этой неделе некая компания под названием Telegram анонсировала «защищённый» мессенджер. Насколько защищённый? Если верить их FAQ, «очень защищённый». Мне стало интересно, и я решил почитать описание их протокола. У меня тут же появились некоторые сомнения и опасения (как мягко сказано! а всего-то полчаса назад было «сначала я подумал, что это Томас Пташек решил постебаться» — прим. пер.) Однако, когда из них попытались вытянуть технические подробности, они начали перечислять учёные степени разработчиков вместо того, чтобы вступить в диалог. Кроме того, они отклонили все мои предложения о сотрудничестве.
Читать дальше →
Всего голосов 210: ↑181 и ↓29+152
Комментарии87

Майнинг и как он работает: матчасть

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

Привет, %username%!
Я расскажу и покажу как работает основа генерации денег в криптовалютах — майнинг. Как создается первый блок, новые блоки и как появляются деньги из ниоткуда.
Чтобы было проще понять, мы напишем свой импровизированный майнер для импровизированной криптовалюты HabraCoin.
Читать дальше →
Всего голосов 274: ↑252 и ↓22+230
Комментарии482

Поиск кропнутых дубликатов изображений с помощью перцептуальных хешей

Время на прочтение6 мин
Количество просмотров71K
В этой статье пойдет речь о том, как решалась небольшая задачка поиска дубликатов по фрагменту или кропу картинки.



Читать дальше →
Всего голосов 129: ↑118 и ↓11+107
Комментарии39

Информация

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