Как стать автором
Обновить
4
0

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

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

Обрабатываем заказы из интернет магазина с помощью RabbitMQ и TypeScript

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


Всем привет! Популярность интернет коммерции постоянно растет, как и доля информатизации всех смежных с торговлей видов деятельности. Вместе с этим растет и сложность обработки информации. Каждый заказ, сделанный клиентом интернет магазина, порождает за собой большое количество интеграций с различными сервисами. Такими сервисами могут быть сервисы обработки платежей, доставки, системы учета и лояльности. Каждый заказ должен быть оплачен, учтен, собран и доставлен, а также доступен для последующего анализа. Эту, и так не простую ситуацию, усложняет и тот факт, что пользователь интернет магазина не хочет долго и мучительно чего-то ждать при оформлении заказа. Отклик от интернет магазина должен быть быстрым, ведь каждая миллисекунда задержки увеличивает шанс потери клиента, а в последствии и прибыли. В этой статье я хочу рассказать про брокер сообщений RabbitMQ и как с его помощью можно организовать процесс обработки заказов используя Node.js и TypeScript. Добро пожаловать под кат.

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

Импорт OpenStreetMap. От бинарного исходника к таблице в БД в несколько шагов

Время на прочтение 5 мин
Количество просмотров 15K
Обычно, когда кто-то говорит про OSM, то в голове всплывает какой-нибудь из веб-сервисов, или приложение вроде Maps.me, основанные на данных OSM. На самом деле проект OSM — это в первую очередь данные, всё остальное по сути частные случаи их использования. Сервисы предоставляют обычно только часть информации, отрисованной по своим правилам.

Исходно OSM — это набор точек, связей между точками, и тегов к ним. Исходники сообщества имеют два формата. Первоначально XML использовался как приоритетный способ распространения данных, но, файл Planet.osm в несжатом виде уже перевалил за терабайт, и я не вижу смысла использования его для относительно объёмной информации. PBF имеет большое преимущество — он бинарный и файл всей земли имеет размер около 50Гб (сжатый XML порядка 80 Гб).

Речь пойдет об импорте данных OSM из «родного» формата с помощью инструмента Osmosis.

Также нам понадобится PostgreSql с расширением Postgis, в который мы и будем импортировать OSM данные.

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


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

Как вырезать сабсет города (любого отношения) из OSM данных

Время на прочтение 2 мин
Количество просмотров 11K
Однажды мне потребовалось получить из сырых ОСМ данных чистый сабсет города (потому что так удобно, компактно и просто красиво). К моему удивлению я не нашел готового рецепта, из-за чего для выполнения этой задачи потребовалось немного попотеть.

Ввиду вышеизложенного считаю своим долгом поделиться накопленным опытом.

Кишинев OSM
Читать дальше →
Всего голосов 30: ↑26 и ↓4 +22
Комментарии 17

Интерактивная карта субъектов России для новичка. Ошибки, которые допустил я и которые не должны допустить вы

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

В этой статье я расскажу, как мы столкнулись с типовыми ошибками при создании интерактивной карты, а главное — дам вам ссылки на нормальные, актуальные карты субъектов РФ.



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

Читать дальше →
Всего голосов 74: ↑63 и ↓11 +52
Комментарии 136

Разработка приложения для потокового вещания с помощью Node.js и React

Время на прочтение 21 мин
Количество просмотров 47K
Автор материала, перевод которого мы сегодня публикуем, говорит, что работает над приложением, которое позволяет организовывать потоковое вещание (стриминг) того, что происходит на рабочем столе пользователя.

image

Приложение принимает от стримера поток в формате RTMP и преобразует его в HLS-поток, который может быть воспроизведён в браузерах зрителей. В этой статье будет рассказано о том, как можно создать собственное стриминговое приложение с использованием Node.js и React. Если вы привыкли, увидев заинтересовавшую вас идею, сразу же погружаться в код, можете прямо сейчас заглянуть в этот репозиторий.
Читать дальше →
Всего голосов 39: ↑37 и ↓2 +35
Комментарии 6

Android, Rx и Kotlin или как заставить сжиматься клешню из Lego. Часть 1

Время на прочтение 5 мин
Количество просмотров 8.9K
Привет, любители Habr! По счастливой случайности в августе 2018 года мне посчастливилось вместе с моим товарищем(kirillskiy) начать работать над потрясающим по своей интересности проектом. И вот, днем мы были обычными программистами, а ночью с̶у̶п̶е̶р̶г̶е̶р̶о̶я̶м̶и̶ снова программистами, которые бьются над вопросами распознавания движений для людей имеющих ограничения функциональности своих конечностей, естественно этим могли бы пользоваться и здоровые люди, используя подобную технологию самыми разными способами.
Всего голосов 22: ↑21 и ↓1 +20
Комментарии 4

Пятница. Бредни программиста

Время на прочтение 11 мин
Количество просмотров 35K
Привет, Хабр! Иногда в голове начинают бродить разные мысли. Кое-что записал. Получилось что-то вроде рассказа. Не судите строго — ведь это всего лишь фантазии.

image

Странные танцы


Пятница после работы. Я в ночном клубе. Пригласил девушку с приятным именем Алла, и мы танцуем под довольно приятную композицию.

— Так кем же Вы работайте, Михаил?
Читать дальше →
Всего голосов 87: ↑77 и ↓10 +67
Комментарии 127

Корпоративный Das Experiment

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

16.01


— Коллеги, у нас серьезные проблемы с управляемостью. – с серьезным видом сказала Светлана Владимировна. – Если так пойдет дальше, компанию можно закрывать.

— Что вы имеете в виду, Светлана Владимировна? – спросила Марина, директор по качеству.

— А вы не знаете, Марина? – удивилась директор.

— Ну, я догадываюсь, конечно. – не захотела выглядеть глупо Марина.

— Исполнительская дисциплина – вот ключевая проблема. – не стала развивать тему Светлана Владимировна. – Пока сотрудники не делают то, что им велено, в срок, который им указан, мы – в огромной опасности.

— Тогда нам нужна система! – восторженно сказала Марина.

Остальные понуро молчали.
Читать дальше →
Всего голосов 43: ↑36 и ↓7 +29
Комментарии 35

Google объявляет конкурс атак на алгоритмы машинного зрения

Время на прочтение 3 мин
Количество просмотров 13K
Распознавание изображений с помощью нейросетей становится лучше, но до сих пор исследователи не побороли некоторые его фундаментальные недостатки. Там, где человек четко и ясно видит, например, велосипед, даже передовой натренированный ИИ может увидеть птицу.

Часто причина в так называемых «вредных данных» (или «соревновательных элементах», или «вредоносных экземплярах» или еще куче вариантов, поскольку «adversary examples» так и не получили общепринятого перевода). Это данные, которые обманывают классификатор нейросети, подсовывая ему признаки других классов — информацию не важную и не видную для для человеческого восприятия, но необходимую для машинного зрения.

Исследователи из Google опубликовали в 2015 году работу, где проиллюстрировали проблему таким примером:


На изображение панды наложили «вредный» градиент. Человек на полученной картинке, естественно, продолжает видеть панду, а нейросеть распознает ее как гиббона, поскольку в те участки изображения, по которым нейросеть научилась определять панд, специально намешали признаки другого класса.

В сферах, где машинное зрение должно быть предельно точным, а ошибка, взлом и действия злоумышленников могут иметь тяжелые последствия, вредные данные — серьезная помеха развитию. Прогресс в борьбе идет медленно, и компания GoogleAI (подразделение Google занимающееся исследованием ИИ) решила привлечь силы сообщества и устроить соревнование.
Читать дальше →
Всего голосов 28: ↑28 и ↓0 +28
Комментарии 17

5 приемов работы с CSS, о которых вам следует знать

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


Наблюдая за потоком вопросов по CSS на Тостере уже давно заметил, что многие из них повторяются много-много раз. Да, есть совсем глупые вопросы, на которые так и тянет ответить RTFM! Но есть и более занятные. Они связаны с не совсем стандартной версткой. Не такой, чтобы глаза на лоб лезли, но и заметно выходящей за рамки условного бутстрапа и традиционных туториалов для новичков. Похожие вопросы довольно сложно загуглить — обычно вся суть в картинке, но и отвечать каждый раз надоедает. В этой статье мы постараемся посмотреть некоторые приемы, охватывающие довольно широкий круг подобных вопросов. Информация в первую очередь адресуется начинающим верстальщикам, но возможно и опытным будет, чем вдохновиться.

Всего голосов 60: ↑58 и ↓2 +56
Комментарии 25

React Native с точки зрения мобильного разработчика

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


Статья ориентирована на iOS и android разработчиков, которые уже достаточно хорошо разбираются в своей области и поглядывают в сторону React Native.

Впервые узнав про React Native, я воспринял его как повод для веб-разработчиков вторгнуться на мою территорию (нипазволю!) и заодно испортить хорошо работающий crash-free-60-fps продукт. Так оно и произошло. Конец. Реальная история оказалась длиннее.
Читать дальше →
Всего голосов 32: ↑30 и ↓2 +28
Комментарии 24

GitLab Container Registry

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

В мае этого года вышел релиз ГитЛаба 8.8. Частью этого релиза был запуск встроенного Docker Container Registry. Ниже перевод майской статьи, посвященной этому.


Недавно нами был выпущен GitLab версии 8.8, в которой поддержка CI стала еще лучше. Теперь в GitLab можно строить конвейеры (pipelines) для визуализации сборок, тестов, развертывания и любых других этапов жизненного цикла вашего ПО. Сегодня мы представляем вам следующий этап: GitLab Container Registry .


GitLab Container Registry — это безопасный приватный реестр для образов (images) Docker, разработанный с помощью ПО с открытым кодом. GitLab Container Registry полностью интегрирован в GitLab.


Ключевыми особенностями GitLab являются непрерывность процесса разработки и взаимная интеграция различных элементов; эти принципы сохраняются и при работе с нашим реестром. Теперь при помощи GitLab Container Registry вы можете использовать ваши Docker-образы для GitLab CI, создавать специальные образы для отдельных тегов и веток, а также многое другое.


Стоит отметить, что GitLab Container Registry является первым реестром Docker, полностью интегрированным в систему управления Git-репозиториями. Кроме того, GitLab Container Registry не требует отдельной установки, так как является частью GitLab 8.8; c его помощью можно легко скачивать и загружать образы на GitLab CI. И еще он бесплатный.


Для того, чтобы узнать, как включить использование GitLab Container Registry, обратитесь к документации для администратора.


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

Конкурс по программированию: Торговля

Время на прочтение 7 мин
Количество просмотров 28K
UPDATE: Объявления для участников.
UPDATE 2: Промежуточные результаты и объявления.

Компания Hola вновь объявляет конкурс по программированию! Победителей ожидают призы:

  1. Первое место: 3000 USD.
  2. Второе место: 2000 USD.
  3. Третье место: 1000 USD.
  4. Жюри может присудить по своему усмотрению специальный приз в 400 USD.
  5. Если Вы отправите кому-то ссылку на этот конкурс, поставив наш адрес в CC, и этот человек займёт призовое место, Вы получите половину суммы приза (разумеется, не в ущерб награде победителя). За одного победителя такую награду может получить только один человек — тот, кто отправил ссылку первым.

Авторы интересных решений будут приглашены на собеседования.



Правила


Условия конкурса на английском языке размещены на GitHub. Ниже — перевод на русский язык.
Читать дальше →
Всего голосов 42: ↑37 и ↓5 +32
Комментарии 207

Telegram выпустил официальный MTProto Proxy Server

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

Наконец-то дождались, после пристального рассматривания и реверс инжениринга протокола MTProto Proxy, Telegram решил выпустить официальный вариант, с поддержкой монетизации promoted каналов, да еще и сразу в Docker образе.
Читать дальше →
Всего голосов 72: ↑66 и ↓6 +60
Комментарии 87

Обновления Material Design: как жить дальше

Время на прочтение 5 мин
Количество просмотров 67K
Могут ли кнопки быть шестиугольными?
image

Google I/O 2018 оставила огромное количество материала для осмысления. Что нового? Как жить дальше? Устарело ли моё приложение? Могут ли кнопки быть шестиугольными? Дизайнеры снова больше не нужны? Осмысливать приятней не спеша и маленькими порциями. Эта порция — про дизайн.
Читать дальше →
Всего голосов 41: ↑41 и ↓0 +41
Комментарии 29

Управленческая истерика

Время на прочтение 9 мин
Количество просмотров 51K
– Нет, коллеги, так дело не пойдет! С этого дня мы вводим новый порядок совещаний, отчетности и управления. Иначе наша компания на полной скорости угодит в пропасть. Такие ситуации, как на прошлой неделе, недопустимы! Это и моя, и ваша вина. С себя я ответственности не снимаю, и вам настоятельно рекомендую – нет, не рекомендую, а приказываю немедленно изменить отношение к своим служебным обязанностям! Вы – руководители, а не линейные исполнители!

В комнате совещаний повисла неловкая пауза. На директора никто не смотрел – это чревато внезапным вниманием и выбором в качестве мальчика для битья. Главный инженер внезапно заинтересовался своим блокнотом, спешно перелистывал страницы, будто искал что-то. Финансовый директор очень внимательно рассматривала свой маникюр – так внимательно, как никогда. Только ИТ-директор, работавший в своей должности менее полугода, никак не мог найти себе занятия, откровенно нервничал, ерзал на стуле, опустил голову и поглядывал исподлобья на своих коллег.
Читать дальше →
Всего голосов 116: ↑108 и ↓8 +100
Комментарии 101

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

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

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



Введение


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

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

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

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

Видео с митапа UralJS #6 — избавляемся от this, типизируем Redux-приложение и пишем на Реакте без тормозов

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

image


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


По традиции было три спикера — фрилансер, контуровец и злой марсианин. Вот что мы обсуждали:

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

Почему вам должно быть скучно на работе

Время на прочтение 3 мин
Количество просмотров 60K
Эти советы, возможно, не все найдут полезными. Они адресованы тем, кому на работе бывает скучно. Так скучно, что уныние немного скрашивают лишь утренний контактик и послеобеденный ютубчик. Вот именно от них вам придется отказаться. Зачем? Сейчас узнаете.
Чтобы стало еще скучнее, конечно же!
Всего голосов 128: ↑114 и ↓14 +100
Комментарии 116

Как AI вставляет Николаса Кейджа в фильмы и делает порно со знаменитостями

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


Теперь нельзя верить политикам, говорящим что-то в YouTube-роликах, и «сливам» секс-видео звёзд. Реддит-юзеры научили AI заменять лица на видео, и в последние недели это так взорвалось, что ни одна знаменитость не осталась нетронутой. Больше всего досталось Нику Кейджу, который, с его экспрессивностью, давно стал золотой жилой для создателей мемов. Благодаря искусственному интеллекту и возможностями машинного обучения это вышло на новый уровень, так что сейчас к технологии присматриваются и в Голливуде. Эффекты иногда получаются лучше, чем в последних блокбастерах. Вот только у некоторых пользователей другие интересы…

Всего голосов 53: ↑48 и ↓5 +43
Комментарии 106

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность