Pull to refresh
2
0
YaIgrauNaGarmoshke @YaIgrauNaGarmoshke

User

Send message

Как Discord масштабировал Elixir на 5 млн одновременных пользователей

Reading time7 min
Views12K
С самого начала Discord активно использовал Elixir. Виртуальная машина Erlang стала идеальным кандидатом для создания высокопараллельной системы реального времени, которую мы собирались создать. Первоначальный прототип Discord был разработан на Elixir; сейчас он лежит в основе нашей инфраструктуры. Задача и предназначение Elixir простые: доступ ко всей мощи Erlang VM через гораздо более современный и дружественный язык и набор инструментов.

Прошло два года. Сейчас у нас пять миллионов одновременных пользователей, а через систему проходят миллионы событий в секунду. Хотя мы абсолютно не сожалеем о выборе архитектуры, пришлось проделать массу исследований и экспериментов, чтобы добиться такого результата. Elixir — это новая экосистема, а экосистеме Erlang не хватает информации о её использовании в продакшне (хотя Erlang in Anger — это нечто). По итогу всего пути, пытаясь приспособить Elixir для работы в Discord, мы извлекли некоторые уроки и создали ряд библиотек.
Читать дальше →
Total votes 19: ↑19 and ↓0+19
Comments7

Что может и чего не может нейросеть: пятиминутный гид для новичков

Reading time8 min
Views72K
С момента описания первого искусственного нейрона Уорреном Мак-Каллоком и Уолтером Питтсом прошло более пятидесяти лет. С тех пор многое изменилось, и сегодня нейросетевые алгоритмы применяются повсеместно. И хотя нейронные сети способны на многое, исследователи при работе с ними сталкиваются с рядом трудностей: от переобучения до проблемы «черного ящика».

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

Читать дальше →
Total votes 22: ↑21 and ↓1+20
Comments0

«Паровозик, который смог!» или «Специализация Машинное обучение и анализ данных», глазами новичка в Data Science

Reading time14 min
Views52K
Ранее в моей прошлой статье, посвящённой обучению Data Science с нуля, я обещал записаться на специализацию «Машинное обучение и анализ данных», на Coursera и поделиться моими впечатлениями о доступности этих знаний для практически абсолютного новичка в области науки о данных. Сказано – сделано! Хотя безусловно, на Хабре уже есть упоминания об этой и аналогичных специализациях, но думаю мои «пять копеек» не помешают.

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


Читать дальше →
Total votes 13: ↑12 and ↓1+11
Comments14

Внедряем безопасность в процесс разработки крупного проекта

Reading time21 min
Views21K



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

Читать дальше →
Total votes 46: ↑43 and ↓3+40
Comments6

У нас длинные руки: 7 зарубежных площадок, на которых можно найти удалённую работу

Reading time3 min
Views133K
Развитие телекоммуникационных технологий — это win-win для работодателей и работников: компании могут находить таланты по всему миру, а люди могут работать откуда угодно, лишь бы был Wi-Fi. И популярность удалённой работы лишь растёт. К примеру, согласно отчёту Gallup, в 2015 году 37% респондентов ответили, что работают удалённо частично или весь рабочий день. Это было на 7 процентных пунктов больше, чем в 2008. И нет причин считать, что эта тенденция сегодня изменилась.

Чем больше людей обращаются к подработке, фрилансу или удалённой работе на полную ставку, тем чаще возникает вопрос: где именно мне найти работу, которая позволит отказаться от поездок в офис? Предлагаем вашему вниманию семь зарубежных площадок, на которых можно найти удалённую работу.
Читать дальше →
Total votes 50: ↑49 and ↓1+48
Comments35

1000 и 1 репост: гайд по кнопке «поделиться» в русских соц сетях

Reading time6 min
Views29K


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

К сожалению, большая часть информации на эту тему, которую можно найти на хабре или stackoverflow — уже устарела, поэтому я постарался превратить этот в пост в актуальный мега-гайд по шерингу страниц в соц сетях. Я рассмотрел 5 наиболее популярных в России социальных сетей: контакт, facebook, твиттер, одноклассники и мой мир. Для каждой социальной сети приведен актуальный URL для шаринга, небольшие советы и рекомендации по использованию, а также JS код, позволяющий узнать количество шеров конкретного URL в каждой из соц. сетей.

В конце статьи есть сводная таблица со всеми ссылками и кратким описанием возможностей каждой из сетей.
Читать дальше →
Total votes 25: ↑21 and ↓4+17
Comments37

Почему открытые данные никому не нужны

Reading time4 min
Views27K

В процессе работы над проектом для открытых данных пришлось изучить множество государственных источников данных. Это и федеральные порталы и муниципальные ресурсы. Вот наиболее известные источники открытых данных:



У всех этих ресурсов одни и те же болезни. Вот они:


  • Невалидность данных.
  • Разрозненность данных и отсутствие стандартов.
  • Отсутствие единого механизма поиска.
  • Отсутствие API для доступа к данным.

Этого достаточно чтобы отбить желание пользоваться ими и данными размещенными на них.
Теперь подробнее по каждому пункту и что с этим делать.

Читать дальше →
Total votes 45: ↑43 and ↓2+41
Comments57

Яндекс открывает технологию машинного обучения CatBoost

Reading time6 min
Views102K
Сегодня Яндекс выложил в open source собственную библиотеку CatBoost, разработанную с учетом многолетнего опыта компании в области машинного обучения. С ее помощью можно эффективно обучать модели на разнородных данных, в том числе таких, которые трудно представить в виде чисел (например, виды облаков или категории товаров). Исходный код, документация, бенчмарки и необходимые инструменты уже опубликованы на GitHub под лицензией Apache 2.0.



CatBoost – это новый метод машинного обучения, основанный на градиентном бустинге. Он внедряется в Яндексе для решения задач ранжирования, предсказания и построения рекомендаций. Более того, он уже применяется в рамках сотрудничества с Европейской организацией по ядерным исследованиям (CERN) и промышленными клиентами Yandex Data Factory. Так чем же CatBoost отличается от других открытых аналогов? Почему бустинг, а не метод нейронных сетей? Как эта технология связана с уже известным Матрикснетом? И причем здесь котики? Сегодня мы ответим на все эти вопросы.

Total votes 216: ↑215 and ↓1+214
Comments128

Пишем симпатичные Node.js-API с использованием async/await и базы данных Firebase

Reading time5 min
Views24K
Мы уже рассказывали об основах работы с async/await в Node.js, и о том, как использование этого нового механизма позволяет сделать код лучше. Сегодня поговорим о том, как создавать, используя async/await, RESTful API, взаимодействующие с базой данных Firebase. Особое внимание обратим на то, как писать красивый, удобный и понятный асинхронный код. Можете прямо сейчас попрощаться с адом коллбэков.


Читать дальше →
Total votes 20: ↑18 and ↓2+16
Comments6

Почему я перешел с React на Cycle.js

Reading time9 min
Views19K

Нетрудно догадаться, что большинство разработчиков сейчас используют какие-либо фреймворки для разработки приложений. Они помогают нам структурировать сложные приложения и экономят время. Каждый день можно наблюдать большое количество обсуждений, какой фреймворк лучше, какой нужно учить, и тому подобное. Так что, в этот раз я поделюсь своим опытом и отвечу на вопрос: «Почему я перешел на Cycle.js с React?».


React, возможно, самый популярный frontend-фреймворк (на момент 2017) с огромным сообществом. Я большой фанат этого фреймворка и он мне помог изменить взгляд на веб-приложения и их разработку. Некоторые любят его, а кто-то считает, что он не так хорош.


Большинство использует React без мысли о том, что есть лучший инструмент или способ разработки веб-приложений. Это дало мне толчок попробовать Cycle.js, как новый реактивный фреймворк, который становится все более и более популярным изо дня в день.


И в этой статье я хочу объяснить:

  1. Что такое реактивное программирование
  2. Как работает Cycle.js
  3. И почему он, на мой взгляд, лучше React
Читать дальше →
Total votes 28: ↑24 and ↓4+20
Comments24

Как платить налоги и взносы ИП или зачем мы сделали бота-бухгалтера в Telegram

Reading time6 min
Views46K


Это статья для фрилансеров, которые работают как ИП или только планируют стать предпринимателями. Мы расскажем, как сэкономить максимум на налоге по УСН и как в этом поможет наш бот-бухгалтер в Telegram (и почему обычные онлайн-бухгалтерии для этого не подходят).


Но прежде, чем мы начнём, давайте разберёмся, сколько платят предприниматели на УСН.

Читать дальше →
Total votes 27: ↑25 and ↓2+23
Comments53

Как накрутить рейтинг на Хабре и уйти незамеченным

Reading time4 min
Views46K


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

Читать дальше →
Total votes 301: ↑293 and ↓8+285
Comments96

VK Streaming API Contest

Reading time1 min
Views11K
Привет! Мы запустили бета-тестирование нового продукта для получения публичных данных из ВКонтакте в реальном времени — Streaming API.



Он призван заменить методы публичного API для поиска и парсинга данных (newsfeed.search, wall.search, wall.get) и стать более удобным решением задачи аналитики упоминаний в соцсети.

Читать дальше →
Total votes 32: ↑29 and ↓3+26
Comments7

Руководство: как использовать Python для алгоритмической торговли на бирже. Часть 2

Reading time5 min
Views19K


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

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

Jupyter notebook этого руководства можно скачать здесь.
Читать дальше →
Total votes 13: ↑11 and ↓2+9
Comments2

Миллион WebSocket и Go

Reading time11 min
Views97K

image


Привет всем! Меня зовут Сергей Камардин, я программист команды Почты Mail.Ru.


Это статья о том, как мы разработали высоконагруженный WebSocket-сервер на Go.


Если тема WebSocket вам близка, но Go — не совсем, надеюсь, статья все равно покажется вам интересной с точки зрения идей и приемов оптимизации.

Читать дальше →
Total votes 119: ↑115 and ↓4+111
Comments78

Так ли страшен чёрт или как мы внедряли онлайн-кассу

Reading time10 min
Views68K

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


Онлайн-касса


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

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

Как заработать 80 000 $ на App Store

Reading time8 min
Views70K
Это проще, чем вы думаете: не нужно ни удачи, ни упорства.

На конференции WWDC Apple сообщили, что выплатили разработчикам уже 70 миллиардов долларов, причем 30% этой суммы (то есть 21 миллиард!) приходится на прошлый год. Такой резкий скачок меня удивил: не сказал бы, что я и мои друзья стали больше тратить на приложения в последнее время. Но это только мой личный опыт, поэтому я задался вопросом: откуда берется такая выручка? Я открыл App Store и стал просматривать список самых прибыльных приложений.



Шаг первый: На запах денег


Пролистывая список в категории «Производительность», я видел приложения от известных компаний, таких как Dropbox, Evernote, и Microsoft. Ничего удивительного. Стоп, а это что? Десятую позицию в списке самых прибыльных приложений для производительности (рейтинг от 7 июня 2017 года) занимало приложение под названием «Mobile protection :Clean & Security VPN».


Ужасно оформленное название (заглавные буквы вперемешку со строчными, съехавшее двоеточие, корявая грамматика) наводило на мысли, что в поисковом алгоритме случился сбой. Поэтому я отправился на Sensor Tower, чтобы посмотреть, сколько собрало приложение, и увидел… 80 000 $ за месяц?! Теперь мне стало по-настоящему интересно.
Читать дальше →
Total votes 72: ↑69 and ↓3+66
Comments48

Как запустить надстройку над биткойн-блокчейном

Reading time7 min
Views11K
Lightning Network (LN), вероятно, одно из самых ожидаемых нововведений для биткойн-блокчейна. Идея, впервые предложенная Джозефом Пуном (Joseph Poon) и Таджем Дрийа (Tadge Dryja) около двух лет назад. Lightning Network обещает поддержку неограниченного количества транзакций между пользователями, выполняемых в сети платежных каналов, развернутой поверх блокчейна. При этом система наследует надежность биткойн-блокчейна.

Над реализацией LN-протокола работают сразу несколько компаний, среди которых Lightning Labs, Blockstream, ACINQ, а также Bitfury. Эта технология позволит производить микроплатежи с использованием биткойнов, что существенно расширит возможности и сферу применимости криптовалюты. В этом материале мы поговорим, на чем строится концепция Lightning Network и как работает эта сеть.

Читать дальше →
Total votes 18: ↑17 and ↓1+16
Comments3

Типичные распределения вероятности: шпаргалка data scientist-а

Reading time11 min
Views126K

У data scientist-ов сотни распределений вероятности на любой вкус. С чего начать?


Data science, чем бы она там не была – та ещё штука. От какого-нибудь гуру на ваших сходках или хакатонах можно услышать:«Data scientist разбирается в статистике лучше, чем любой программист». Прикладные математики так мстят за то, что статистика уже не так на слуху, как в золотые 20е. У них даже по этому поводу есть своя несмешная диаграмма Венна. И вот, значит, внезапно вы, программист, оказываетесь совершенно не у дел в беседе о доверительных интервалах, вместо того, чтобы привычно ворчать на аналитиков, которые никогда не слышали о проекте Apache Bikeshed, чтобы распределённо форматировать комментарии. Для такой ситуации, чтобы быть в струе и снова стать душой компании – вам нужен экспресс-курс по статистике. Может, не достаточно глубокий, чтобы вы всё понимали, но вполне достаточный, чтобы так могло показаться на первый взгляд.
Читать дальше →
Total votes 86: ↑85 and ↓1+84
Comments28

Отслеживание отправки форм с помощью GTM

Reading time3 min
Views30K
image

Всем привет!

Краткое вступление:

Если у вас есть грамотные разработчики и формы на вашем сайте можно отследить с помощью стандартного триггера “Отправка формы” в Google Tag Manager или встроить событие в обработчик — я вам искренне завидую. Сегодня мы рассматриваем другой случай.

ПРОБЛЕМА:

Последнее время всё реже можно встретить ситуацию, когда после отправки формы пользователь перенаправляется на новую страницу. Все манипуляции обычно происходят по тому же адресу. То есть для отправки данных используется технология AJAX.

Неточные и малоэффективные способы отслеживания статистики будут существовать всегда.
Читать дальше →
Total votes 5: ↑3 and ↓2+1
Comments4

Information

Rating
Does not participate
Location
Москва и Московская обл., Россия
Date of birth
Registered
Activity