Как стать автором
Обновить
2
0
Худер Пудис @huder

Обезьян

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

С 500 мс до нуля, или история о том, как я написал Node.js C++ addon и ускорил скидочный сервис в 500 раз

Уровень сложностиСредний
Время на прочтение18 мин
Количество просмотров19K

Приветствую тебя! Меня зовут Дмитрий и я работаю в LAD.
Сегодня я поведаю историю о том, как эволюционировал скидочный сервис одного из наших проектов. Пройдя путь от всеми нелюбимого, "тормозящего" сервиса, до сервиса,
который имеет наилучшие показатели на недельных графиках SLA.

Читать далее
Всего голосов 44: ↑43 и ↓1+42
Комментарии37

Невангеры: Division impossible

Время на прочтение5 мин
Количество просмотров4.2K
Доброго дня!

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


Всего голосов 20: ↑20 и ↓0+20
Комментарии13

«Сверить часы»: что известно о новом протоколе синхронизации времени серверов

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

Рассказываем о причинах появления Roughtime и особенностях его работы.


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

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

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

Предыстория


До начала работы с Алисой мне уже приходилось сталкиваться с разработкой чат-ботов для telegram, viber, вконтакте.


Чат-бот с расписаниями автобусов без Алисы


Чат-бот был разработан как дополнительный сервис к информационному порталу.

Продвигался через существующее мобильное приложение с расписанием.
Статистика использования была очень скучной: 1-20 чел. в день, при активныx ~2000 в моб. приложении. Как минимум, был один человек, для которого бот был нужен.

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

20 библиотек для эффектного iOS-приложения

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


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

Все анимации являются ссылками на свои полноразмерные версии.
Большой траффик - много гиф-анимации
Всего голосов 23: ↑22 и ↓1+21
Комментарии13

Вариант работы с вебсокетами в iOS на языке Swift / Написал менеджер для работы с websocket

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

4 года назад я уже разбирался с вебсокетами в iOS, тогда я решил задачу с помощью одной из библиотек cocoapods, статья есть на Хабре. А сегодня хочу продемонстрировать еще одно решение, нативное без cocoapods.

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

Воспользуюсь я для своих целей нативными средствами.
Читать дальше →
Всего голосов 9: ↑8 и ↓1+7
Комментарии17

HighLoad++, Андрей Гущин (Zabbix): высокая производительность и нативное партиционирование

Время на прочтение15 мин
Количество просмотров8.4K
Мы рассмотрим работу Zabbix с базой данных TimescaleDB в качестве backend. Покажем, как запустить с нуля и как мигрировать с PostgreSQL. Также приведем сравнительные тесты производительности двух конфигураций.



HighLoad++ Siberia 2019. Зал «Томск». 24 июня, 16:00. Тезисы и презентация. Следующая конференция HighLoad++ пройдет 6 и 7 апреля 2020 года в Санкт-Петербурге. Подробности и билеты по ссылке.

Андрей Гущин (далее – АГ): – Я – инженер технической поддержки ZABBIX (далее – «Заббикс»), тренер. Работаю более 6 лет в технической поддержке и напрямую сталкивался с производительностью. Сегодня я буду рассказывать о производительности, которую может дать TimescaleDB, при сравнении с обычным PostgreSQL 10. Также некоторая вводная часть – о том, как вообще работает.
Всего голосов 19: ↑19 и ↓0+19
Комментарии4

Kaggle и Titanic — еще одно решение задачи с помощью Python

Время на прочтение23 мин
Количество просмотров78K
Хочу поделиться опытом работы с задачей известного конкурса по машинному обучению от Kaggle. Этот конкурс позиционируется как конкурс для начинающих, а у меня как раз не было почти никакого практического опыта в этой области. Я немного знал теорию, но с реальными данными дела почти не имел и с питоном плотно не работал. В итоге, потратив пару предновогодних вечеров, набрал 0.80383 (первая четверть рейтинга).



Читать дальше →
Всего голосов 31: ↑30 и ↓1+29
Комментарии6

Многопоточность в Java

Время на прочтение14 мин
Количество просмотров1.1M
Здравствуйте! В этой статье я вкратце расскажу вам о процессах, потоках, и об основах многопоточного программирования на языке Java.
Наиболее очевидная область применения многопоточности – это программирование интерфейсов. Многопоточность незаменима тогда, когда необходимо, чтобы графический интерфейс продолжал отзываться на действия пользователя во время выполнения некоторой обработки информации. Например, поток, отвечающий за интерфейс, может ждать завершения другого потока, загружающего файл из интернета, и в это время выводить некоторую анимацию или обновлять прогресс-бар. Кроме того он может остановить поток загружающий файл, если была нажата кнопка «отмена».

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

Давайте начнем. Сначала о процессах.
Читать дальше →
Всего голосов 75: ↑59 и ↓16+43
Комментарии97

Создание игровых уровней: советы и хитрости (часть 2)

Время на прочтение11 мин
Количество просмотров87K
Это вторая часть моей статьи с левел-дизайнерскими Tips and Tricks, которые разработчик может использовать, чтобы повысить общее качество своей игры. Это ни в коем случае не пошаговое руководство, а только сборник идей и полезных советов, основанных на моём личном опыте. Первая часть статьи была больше ориентирована на визуальную составляющую дизайна уровней, в этот же раз мы поговорим о ещё более фундаментальных вещах, начиная с прототипирования и заканчивая плэйтестингом с аналитикой.

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

Как предсказать цену акций: Алгоритм адаптивной фильтрации

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


Группа бразильских ученых опубликовала исследование, посвященное созданию инструмента для предсказания поведения активов, торгующихся на фондовом рынке. В работе представлено подробное описание метода и способа расчетов для подобных прогнозов. Мы представляем вашему вниманию наиболее интересные моменты этого документа.
Читать дальше →
Всего голосов 25: ↑20 и ↓5+15
Комментарии4

Алгоритм Deflate на примере формата PNG

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


В рамках очередной лабораторной работы мы с коллегами столкнулись с задачей разбора шестнадцатеричного дампа файла PNG. По стандарту RFC 2083 формат PNG хранит пиксельные данные, сжатые алгоритмом Deflate. Поэтому при разборе дампа нам потребовалось распаковывать сжатые данные алгоритмом Inflate.
Читать дальше →
Всего голосов 31: ↑29 и ↓2+27
Комментарии2

GIF изнутри

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

Вам когда-нибудь было интересно, как устроены gif-ки? В данной статье попробуем разобраться с внутренним строением GIF-формата и методом сжатия LZW.

Структура GIF


Файл в формате GIF состоит из фиксированной области в начале файла, за которой располагается переменное число блоков, и заканчивается файл завершителем изображения.


Читать дальше →
Всего голосов 80: ↑74 и ↓6+68
Комментарии17

Kaggle: определение тональности текстов

Время на прочтение9 мин
Количество просмотров23K
Привет, хабр!



#{Data Science для новичков}

Меня зовут Глеб Морозов, мы с Вами уже знакомы по предыдущим статьям. По многочисленным просьбам продолжаю описывать опыт своего участия в образовательных проектах MLClass.ru (кстати, кто еще не успел — рекомендую скачать материалы, пока они еще доступны).
Читать дальше →
Всего голосов 23: ↑20 и ↓3+17
Комментарии4

Как мы учим машинному обучению и анализу данных в «Билайн»

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


После длительной подготовки, подборки материала и предварительных апробаций курса 19 октября мы запустились. Корпоративный интенсивный практический курс анализа данных от экспертов этого дела. В настоящий момент у нас прошло 6 занятий, половина нашего курса, и это краткий обзор того, что мы на них делаем.

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

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

Поэтому у нас главное – это практика. Открываем тетрадки IPython и сразу с ними работаем.
Читать дальше →
Всего голосов 27: ↑17 и ↓10+7
Комментарии10

Шесть лет Go

Время на прочтение2 мин
Количество просмотров12K
Ровно шесть лет назад в этот день язык Go был открыт миру в виде open-source проекта. С тех пор, более 780 разработчиков внесли более 30000 коммитов в 22 репозитория проекта Go. Экосистема продолжает расти, и сейчас на GitHub-е создано более 90000 репозиториев. В оффлайне же мы видим постоянный рост новых событий и пользовательских групп, посвященных Go по всему миру.


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

«Большие данные» — это скучно?

Время на прочтение7 мин
Количество просмотров13K
Продолжаем рассказ о методологиях разработки в области Больших Данных, применяемых в компании «МегаФон» (первая часть статьи тут). Каждый день приносит нам новые задачи, которые требуют новых решений. Поэтому и методики организации разработки постоянно совершенствуются.
Читать дальше →
Всего голосов 13: ↑9 и ↓4+5
Комментарии6

Нюансы создания аркады

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


И вот моя первая попытка выбраться на просторы Хабрахабр.

Недавно в свет вышла моя игра Evasion. Простая аркада, в которой нужно уклоняться от препятствия. Игра сама по себе легка в разработке, но в каждой простоте есть свои подводные камни. О парочке из них я и хочу поговорить в данной статье.
Читать дальше →
Всего голосов 10: ↑7 и ↓3+4
Комментарии0

Исследование результатов ЕГЭ, ГИА и олимпиад для московских школ. Из каких школ в какие ВУЗы поступают

Время на прочтение4 мин
Количество просмотров33K
Месяц назад я писал про наше участие в хакатоне по открытым данным.

После хакатона мы не остановились на достигнутом, как это обычно бывает, а продолжили работу. У нас на руках оказались данные, к которым раньше имели доступ, наверное, только сотрудники Министерства образования: результаты ГИА и победы на олимпиадах за 2014-2015 год для 90% московских школ. Для 55% школ удалось собрать данные по ЕГЭ за 2015 год. Прокачали все аккаунты московских школьников в Контакте, посмотрели, какие ВУЗы они указывают у себя в профайлах после окончания.

Естественно, было интересно поизучать такой датасет. Сначала тривиальные вещи, о которых люди из образования, наверное, хорошо знают:
  • Баллы по ЕГЭ по гуманитарным предметам выше, чем по техническим. История — исключение;
  • Естественно-научные дисциплины посередине.


Читать дальше →
Всего голосов 40: ↑39 и ↓1+38
Комментарии31
1

Информация

В рейтинге
Не участвует
Откуда
Рига, Латвия, Латвия
Зарегистрирован
Активность