Pull to refresh
-11
0
bask @bask

User

Send message

Node.js в бою (создание кластера)

Reading time9 min
Views71K
Когда вы используете приложения на node.js в продакшене, вам приходится задумываться о стабильности, производительности, безопасности и удобстве поддержки. Данная статья описывает мои мысли о лучших практиках использования node.js в бою.

К окончанию данного руководства вы получите систему из 3 серверов: балансировщик (lb) и 2 сервера приложений (app1 и app2). Балансировщик будет следить за доступностью серверов и распределять между ними траффик. Серверы приложений будут использовать комбинацию systemd и кластеризации node.js для балансировки траффика между несколькими процессами ноды на сервере. Вы сможете выкатывать код с помощью одной команды со своей машины, и при этом не будет перерывов в обслуживании или необработанных запросов.
Все это можно представить в виде схемы:


Читать дальше →
Total votes 37: ↑35 and ↓2+33
Comments17

Стойкое шифрование данных в PNG

Reading time2 min
Views13K
Доброго утра Хабру. Читал вчера статью о хэш-стеганографии через социальные сети, и пришла мне в голову мысль сделать что-то более оптимальное в плане объёма выходных данных. Получилось что-то более-менее работоспособное и даже оптимизированное (в отличие от proof-of-concept romabibi), поэтому, как и обещал, пишу статью.

Что ж, поздороваюсь с вами ещё раз: , и добро пожаловать под кат.
Поехали!
Total votes 27: ↑18 and ↓9+9
Comments24

Конференция DEFCON 19. «Искусство троллинга». Мэтт «Опенфлай» Джойс

Reading time11 min
Views5.7K
Как я уже сказал в своей биографии, это выступление посвящается двум великим людям, которых мы недавно потеряли – Рэнди Сэвидж Мачо Мену и Рональду Рейгану. И ещё недавно умершему парню по имени Буба, который сыграл в «Полицейской академии». Итак, добро пожаловать в искусство троллинга!



Я думал, что Вы воспримите идею доклада о троллинге как шутку, но Вы встретили это заявление с энтузиазмом, поэтому я расскажу Вам всё, что знаю по этому поводу. Я Мэтт Джойс, известный под прозвищем «openfly», тот, кто умеет троллить людей, доводя их до крайней степени раздражения. Я известен во многих кругах как профессиональный тролль, забанен в системе чатов IRC и Fark, а на видеоконференции Unreal 2004 меня представили как человека, «который забанен практически на каждом сервере и форуме, известном в Интернете». Кроме этого, я работаю над открытым ресурсом федеральной программы облачных технологий, и участвую в создании образов Fonera 2.0n для проекта ChaosVPN.
Total votes 23: ↑19 and ↓4+15
Comments1

Делаем приём платежей криптовалютой с использованием агрегатора PayKassa

Reading time8 min
Views11K

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


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

Читать дальше →
Total votes 9: ↑9 and ↓0+9
Comments1

Обзор первого дня Data Science Weekend 2018. Практика машинного обучения, новый подход к соревнованиям и многое другое

Reading time10 min
Views4.9K
Привет, Хабр! 2-3 марта на Мансарде наших партнёров, компании Rambler&Co, прошел уже традиционный Data Science Weekend, на котором было множество выступлений специалистов в области работы с данными. В рамках этой статьи расскажем вам о самых интересных моментах первого дня нашей конференции, когда все внимание было уделено практике использования алгоритмов машинного обучения, управлению коллективами и проведению соревнований в области Data Science.


Читать дальше →
Total votes 21: ↑19 and ↓2+17
Comments0

Военное ведомство США должно срочно переосмыслить стратегию в области машинного обучения

Reading time2 min
Views14K
— Скажите государю, что у англичан ружья кирпичом не чистят: пусть что бы и у нас не чистили, а то, храни Бог войны, они стрелять не годятся – внятно выговорил Левша, перекрестился и умер.
Читать дальше →
Total votes 24: ↑20 and ↓4+16
Comments89
Помните бесконечное «Давайте Dust 2!» в каждом CS-чате? Реиграбельность — важнейшая черта для онлайн-шутеров. Игрокам раз за разом приходится возвращаться на одни и те же локации, поэтому можно смело сказать, что работа левел-дизайнера не менее важна для проекта, чем код, на котором он написан. Нужно продумать баланс карты во всех ее точках; помнить о разных тактиках игроков и целых команд; расставить достаточное количество укрытий; не забыть о «снайперах»; провести ряд внутренних и внешних тестов; учесть пожелания игроков касательно сеттинга и визуала. И думаем, не только нам интересно, как можно решить все эти задачи.
Подробности – под катом
Total votes 45: ↑45 and ↓0+45
Comments20
Со времен палки-копалки рабочий инструмент человека претерпел множество изменений, сменил ипостась на виртуальную, мигрировал в облака. Теперь пришла пора искусственного интеллекта. AI-технологии проникают во все сферы нашей жизни и берут под свое крыло многие привычные нам операции. Но работа с ними требует не только большого багажа теоретических знаний — но и опыта. Который отлично нарабатывается в игровой обстановке. Например, на хакатоне AI.Hack.
Подробности – под катом
Total votes 27: ↑27 and ↓0+27
Comments0

Джон Кармак: Недельный отпуск, проведенный за программированием

Reading time5 min
Views32K
Вашему вниманию предлагается перевод поста Джона Кармака, опубликованный им в Facebook на прошлой неделе и обретший некоторую популярность.

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

В качестве смены обстановки после моей текущей работы на Oculus, я хотел написать с нуля на C++ несколько реализаций нейронных сетей, и планировал сделать это, используя строго систему OpenBSD. Кто-то из моих знакомых заметил, что это достаточно случайный набор технологий, но в итоге всё сработало хорошо.

Несмотря на то, что мне не приходилось использовать OpenBSD в своей работе, мне всегда нравилась её идея – это относительно минималистичная и самостоятельная система с целостными видением, а также акцентом на качество и мастерство. Linux способен на многое, но целостность – это не про Linux.

Я не являюсь ярым фанатом Unix. Я неплохо справляюсь с этой операционной системой, но комфортнее всего мне работается в Visual Studio под Windows. Я подумал, что неделя погружения в работу в стиле старой школы Unix по полной будет мне интересна — пусть даже если это и будет означать, что я буду работать медленнее. Это было своего рода приключение в духе ретрокомпьютинга — моими лучшими друзьями на время стали fvwm и vi. Заметьте — не vim, а самый настоящий настоящий vi из BSD.
Читать дальше →
Total votes 74: ↑73 and ↓1+72
Comments37

Yargy-парсер и библиотека Natasha. Извлечения структурированной информации из текстов на русском языке

Reading time12 min
Views84K
В 2020 году библиотека Natasha значительно обновилась, на Хабре опубликована статья про актуальную версию. Чтобы использовать инструменты, описанные в этом тексте, установите старую версию библиотеки pip install natasha<1 yargy<0.13.

Раздел про Yargy-парсер актуален и сейчас.


Есть стандартная задача извлечения именованных сущностей из текста (NER). На входе текст, на выходе структурированные, нормализованные объекты, например, с именами, адресами, датами:



Задача старая и хорошо изученная, для английского языка существует масса коммерческих и открытых решений: Spacy, Stanford NER, OpenNLP, NLTK, MITIE, Google Natural Language API, ParallelDots, Aylien, Rosette, TextRazor. Для русского тоже есть хорошие решения, но они в основном закрытые: DaData, Pullenti, Abbyy Infoextractor, Dictum, Eureka, Promt, RCO, AOT, Ahunter. Из открытого мне известен только Томита-парсер и свежий Deepmipt NER.

Я занимаюсь анализом данных, задача обработки текстов одна из самых частых. На практике оказывается, что, например, извлечь имена из русского текста совсем непросто. Есть готовое решение в Томита-парсере, но там неудобная интеграция с Python. Недавно появилось решение от ребят из iPavlov, но там имена не приводятся к нормальной форме. Для извлечения, например, адресов («ул. 8 Марта, д.4», «Ленинский проезд, 15») открытых решений мне не известно, есть pypostal, но он чтобы парсить адреса, а не искать их в тексте. C нестандартными задачами типа извлечения ссылок на нормативные акты («ст. 11 ГК РФ», «п. 1 ст. 6 Закона № 122-ФЗ») вообще непонятно, что делать.

Год назад Дима Веселов начал проект Natasha. С тех пор код был значительно доработан. Natasha была использована в нескольких крупных проектах. Сейчас мы готовы рассказать о ней пользователям Хабра.
Natasha — это аналог Томита-парсера для Python (Yargy-парсер) плюс набор готовых правил для извлечения имён, адресов, дат, сумм денег и других сущностей.
В статье показано, как использовать готовые правила из Natasha и, самое главное, как добавлять свои с помощью Yargy-парсера.
Читать дальше →
Total votes 87: ↑86 and ↓1+85
Comments33

Руководство по фоновой работе в Android. Часть 3: Executors и EventBus

Reading time5 min
Views24K


Приветствую, коллеги. Рад видеть вас снова в третьей части «Руководства по фоновой работе в Android». Если не видели предыдущие части, вот они:


В прошлый раз мы разобрались, как работают Loaders, а сразу после этого Google взял и сообщил, что они полностью переписали LoaderManager. Видимо, мне надо позже вернуться к этой теме, но пока что буду следовать плану и делиться подробностями того, как организовать фоновую работу в Android исключительно с помощью джавовых thread pool executors, а также как EventBus может помочь в этом, и как всё это работает под капотом.
Читать дальше →
Total votes 35: ↑32 and ↓3+29
Comments8

XPRIZE даст $10 млн тому, кто разработает робота-аватара

Reading time3 min
Views7.1K


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

Сейчас, похоже, сказка становится былью. XPRIZE объявляет конкурс с призовым фондом в $10 млн. Деньги достанутся компании или частному лицу, кто сможет разработать функционального аватара человека. То есть робота, который сможет передавать не только визуальные и аудиообразы всего, что происходит снаружи, но и тактильные ощущения. Регистрация открыта 12 марта, так что уже можно подавать заявку.
Читать дальше →
Total votes 19: ↑18 and ↓1+17
Comments37

Go 1.10 Release Party @ Badoo: как это было. Видео, фото, отзывы

Reading time2 min
Views8.5K


Привет, Хабр!

24 февраля мы устроили Go 1.10 Release Party @ Badoo по случаю свежего релиза. Спасибо всем, кто был с нами! Если вы пропустили встречу сообщества, под катом — видео выступлений, слайды, немного отзывов и фотоотчет.
Total votes 46: ↑46 and ↓0+46
Comments0

Мульти-классификация Google-запросов с использованием нейросети на Python

Reading time4 min
Views13K
Прошло уже достаточно времени с момента публикации моей первой статьи на тему обработки естественного языка. Я продолжал активно исследовать данную тему, каждый день открывая для себя что-то новое.

Сегодня я бы хотел поговорить об одном из способов классификации поисковых запросов, по отдельным категориям с помощью нейронной сети на Keras. Предметной областью запросов была выбрана сфера автомобилей.

За основу был взят датасет размером ~32000 поисковых запросов, размеченных по 14ти классам: Автоистория, Автострахование, ВУ (водительское удостоверение), Жалобы, Запись в ГИБДД, Запись в МАДИ, Запись на медкомиссию, Нарушения и штрафы, Обращения в МАДИ и АМПП, ПТС, Регистрация, Статус регистрации, Такси, Эвакуация.
Читать дальше →
Total votes 22: ↑20 and ↓2+18
Comments6

Новый рекорд сборки кубика Рубика: 0,38 секунды

Reading time3 min
Views42K

Робот-рекордсмен, разработанный в лаборатории биомиметической роботехники Массачусетского технологического института

Есть игры, в которые ИИ обыгрывает человека. А есть такие задачи, где человек вообще не рассматривается как конкурент. Здесь роботы соревнуются только друг с другом. Сборка кубика Рубика — типичная такая задача.

В ноябре 2016 года робот компании Infineon Technologies AG установил новый мировой рекорд по сборке кубика Рубика: собрал его за 0,637 секунды, побив предыдущий рекорд 0,89 с. Но европейских инженеров превзошли студенты лаборатории биомиметической роботехники (Biomimetic Robotics Lab) Массачусетского технологического института. Их робот справился с заданием за невероятные 0,38 секунды. Это «грязное» время, которое включает в себя нажатие клавиши «Старт», распознавание изображения и вычисление последовательности действий. Непосредственно механическая часть выполнения задачи заняла примерно 335 миллисекунд. Решение задачи в программе на базе min2phase и отправка инструкций — 45 миллисекунд.
Читать дальше →
Total votes 31: ↑31 and ↓0+31
Comments44

Создание анимаций переходов между Activity в Android

Reading time8 min
Views27K
Начиная с Android 4.4 в арсенале разработчиков появился дополнительный инструмент для создания анимаций — Transitions Framework. Изначально он предназначался для создания анимаций изменения состояния приложения путём манипулирования несколькими View. С выходом Android 5.0 набор доступных для использования анимаций был расширен, чтобы соответствовать представленной тогда же концепции Material Design.

Transitions Framework позволяет быстро и безболезненно создавать различные анимации. Поэтому в процессе работы над iFunny было невозможно пройти мимо этого инструментария. Вниманию читателей предлагается частный случай использования Transitions API — создание анимации перехода между Activity с эффектом «бесшовности».

image
Читать дальше →
Total votes 34: ↑34 and ↓0+34
Comments0

Всё простое опять стало сложным

Reading time10 min
Views33K
Это выступление состоялась 12 октября 2017 года на конференции Mirror Conf в Браге (Португалия) и ещё раз 9 февраля 2018 года на Awwwards Conference в Берлине.

Этим летом после лекции на веб-конференции у меня состоялась увлекательная беседа с молодой студенткой, которая изучает цифровой дизайн. Было интересно сравнить наши карьерные пути. У меня пятнадцать лет опыта дизайна для веб-клиентов, у неё — один год, но каким-то образом мы оказались в одинаковой ситуации: мы наслаждались работой, но были совершенно дезориентированы и обескуражены быстро растущей сложностью всего вокруг. Что за ерунда произошла? (Конечно, это риторический вопрос).

Для нас обоих стало облегчением взаимно признаться в разочаровании и замешательстве. И мне стало интересно — эта какая-то смешная ситуация или тут серьёзная тема. Ни у кого из нас не было ответа, но спустя немного времени мне стало понятно, что мы оба должны сделать. Я бы хотел сегодня продолжить этот разговор и попытаться сформулировать свою точку зрения по поводу этой неразберихи и во что она нам обходится.
Читать дальше →
Total votes 56: ↑56 and ↓0+56
Comments117

Удаление фона с помощью глубокого обучения

Reading time14 min
Views20K


Перевод Background removal with deep learning.

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

Несколько месяцев назад, после прохождения отличного курса Fast.AI, звезды совпали, и у нас появилась такая возможность. Современные достижения в технологиях глубокого обучения позволили осуществить многое из того, что раньше казалось невозможным, появились новые инструменты, которые сделали процесс внедрения более доступным, чем когда-либо.

Мы поставили перед собой следующие цели:

  1. Улучшить наши навыки работы с глубоким обучением.
  2. Совершенствовать наши навыки внедрения продуктов, основанных на ИИ.
  3. Создать полезный продукт с перспективами на рынке.
  4. Весело провести время (и помочь весело провести время нашим пользователям).
  5. Обменяться опытом.
Читать дальше →
Total votes 29: ↑25 and ↓4+21
Comments5

Итоги MentorHack: чат-бот по выделению тасков из диалогов, сервисы для построения карьерных траекторий и команд

Reading time9 min
Views4K
Недавно мы поучаствовали в организации MentorHack – хакатона по созданию сервисов для наставничества в корпоративной среде, предпринимательстве и образовании.

Под катом немного о хакатоне: сквозь будни, проверки ФСО и форум к победителях с чат-ботом для автовыделением тасков из переписок, сервисом для построения карьерных траекторий до желаемых позиций в перспективе и сборки команд под проекты.


Читать дальше →
Total votes 9: ↑9 and ↓0+9
Comments0

Реализация нечеткого поиска

Reading time6 min
Views42K


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

В данной статье описывается возможная реализация нечеткого поиска, которая была применена для поиска на сайте edatuda.ru.
Читать дальше →
Total votes 112: ↑105 and ↓7+98
Comments22

Information

Rating
Does not participate
Registered
Activity