Pull to refresh
1
0
Трапенок Виктор Викторович @Levhav

Разработка realtime чатов

Send message

Миллион видеозвонков в сутки или «Позвони маме!»

Reading time 26 min
Views 18K
С точки зрения пользователя, сервисы звонков выглядят довольно просто: заходишь на страницу к другому пользователю, звонишь, он снимает трубку, вы с ним разговариваете. Снаружи кажется, что все просто, но немногие знают, как сделать такой сервис. А вот Александр Тоболь (alatobol) не только знает, но и охотно делится своим опытом.



Далее текстовая версия доклада на HighLoad++ Siberia, из которой вы узнаете:

  • как работают сервисы видеозвонков под капотом;
  • как красиво пробить NAT — это будет интересно и специалистам из игровой сферы, которым необходимо peer-to-peer соединение;
  • как устроен WebRTC, какие протоколы в него входят;
  • как можно тюнить WebRTC через BigData.


О спикере: Александр Тоболь руководит разработкой платформ Видео и Ленты в ok.ru.
Total votes 47: ↑46 and ↓1 +45
Comments 16

Мне не страшен ваш NDA

Reading time 14 min
Views 119K
Это громкая и страшная аббревиатура из трёх неприличных букв. Хотите поучаствовать в тендере, устраиваетесь на работу, нужно получить данные — вам подсовывают эту бумажку, мол, подпиши сначала, а то нашли дураков без NDA тебе что-нибудь рассказывать. При этом в большинстве случаев вы ничего сверхсекретного или коммерчески важного не узнаете, но процедура подписания NDA стала неким таинством посвящения, которое стороны выполняют не особо задумываясь над смыслом.

Это так же как вы неизбежно получите требование вместе с учредительными документами предоставить выписку из ЕГРЮЛ не старше 30 дней. Хотя всё доступно в онлайне, все распечатывают эту выписку из интернета, заверяют её и передают контрагенту, который даже не смотрит её, потому что всё есть в интернете. Ну, вы поняли, короче, отечественную любовь к таинствам.

image
Читать дальше →
Total votes 130: ↑130 and ↓0 +130
Comments 113

Мифы про инфраструктуру в облаке: с какой неграмотностью мы сталкиваемся в России каждый день

Reading time 6 min
Views 35K


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

В половине случаев это не самые развитые в ИТ ребята. Некоторые живут в прошлом веке. К ним приходят знакомые, рассказывают, что есть облачные провайдеры. Потом начинается общение с нами.

Мой любимый эпизод — это просчёт цен на новое оборудование в офисе (стойка из серверов дешёвого сегмента или переделанных ПК) и облака:
— Так. Лицензия на гипервизор. Зачем за неё платить? Мы никогда лицензию не покупали… Россия же, хе-хе! Поддержка на железо в стойке? К чёрту, без поддержки обойдёмся, у нас админ шарит. Что там ещё, бекап? У нас уже есть палёный...
Еще есть популярный миф, что если сервер в офисе, то, когда придёт проверка, можно взять и залить его кипятком из чайника, и тогда данные никто не заберёт. Он настолько распространён, что иногда мне кажется, что на нём прямо держится отечественный рынок low-end серверов.
Читать дальше →
Total votes 64: ↑51 and ↓13 +38
Comments 209

Как правильно читать состав косметики

Reading time 8 min
Views 81K


Ингредиенты перечисляются по понижению массовой доли: что ближе к началу, того больше по массе. Вещества, которых в составе менее 1% считаются равнозначными для этого списка, и их можно указывать после основных в любом порядке. В РФ по закону указывается всё без исключения (нет ситуации, когда при малом содержании можно пропускать вещество), и на практике это соблюдается. Почему — чуть ниже.

Нельзя писать «консервант» без указания, что это именно такое, нельзя писать «минеральный комплекс кислот» без детализации, что это такое, но можно писать коммерческие названия. То есть регистрируете свой минеральный комплекс кислот или консервант как товарный знак — и пишете уже его. Можно писать химические наименования или торговые, причём можно и латиницей, и на русском. В непонятных веществах, например, часто прячут то, что мнительные женщины не хотят увидеть на этикетке.
Читать дальше →
Total votes 84: ↑84 and ↓0 +84
Comments 115

Создание игры на Unreal Engine 4 за 150 часов (видео + исходники)

Reading time 6 min
Views 186K
Приветствую, Хабр! Хотел бы познакомить вас с относительно небольшим проектом, который я сделал c нуля примерно за 150 часов (50 заходов ~3 часа каждый) на Unreal Engine 4. Проект я делал в прямом эфире только на стримах раз в неделю (в общей сложности ушел год), попутно отвечая на вопросы пользователей.

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

  • Планирование и прототипирование проекта
  • Продумывание и реализация архитектуры проекта и отдельных его компонентов
  • Реализация интерфейса пользователя
  • Отладка и исправление ошибок
  • Работа с ассетами и графикой

image

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

Если вам интересны подробности проекта, записи стримов, исходники и прочее, читайте далее.
Total votes 103: ↑99 and ↓4 +95
Comments 45

Теория близости: главное правило дизайна, которое помогает перейти от субъективных ощущений к конкретике

Reading time 3 min
Views 71K
Впервые о теории близости я прочитал в 2007 году. Она была сформулирована так: «объекты, расположенные близко друг к другу, воспринимаются связанно». Тогда я подумал: «спасибо, Кэп! Я как-то и сам догадался, что букву “М” нужно вешать ближе к мужскому туалету, а не к женскому». Тогда я не осознал, что это одно из главных правил дизайна, которое помогает подбирать расстояния между элементами, размеры полей, расположение кнопок, размер логотипов и многое другое. А главное, теория позволяет быстро понять, хороший перед вами дизайн или нет, даже если вы не дизайнер.
image
Читать дальше →
Total votes 64: ↑60 and ↓4 +56
Comments 23

Приглашаем на Russian AI Cup 2016

Reading time 5 min
Views 18K
image

Седьмого ноября стартует Russian AI Cup 2016. Это ежегодный чемпионат по программированию искуственного интеллекта, организуемый Mail.Ru Group. Russian AI Cup проводится в форме игры, чтобы получилось наглядно, понятно и просто. Вкратце: участники создают алгоритм, который описывает игровую стратегию. Получившийся бот сражается с другими такими же, а лучший из них побеждает в раунде. Таким образом, из серии раундов организуется турнир, проходящий в несколько этапов.

С одной стороны, основная механика игры довольно проста и минимально рабочую стратегию реально написать за пару часов (для быстрого старта в чемпионате можно заглянуть сюда, там же можно найти небольшой tutorial). С другой же — в игре получилось много нюансов, и оттачивать стратегию, поднимаясь вверх по турнирной таблице, можно до бесконечности. В этом году предлагаем вам на месяц стать магом и сразиться на средневековом поле боя в MOBA-игре CodeWizards. Впрочем, обо всем по порядку.
Читать дальше →
Total votes 65: ↑64 and ↓1 +63
Comments 39

HighLoad++ 2015 глазами иностранного докладчика

Reading time 3 min
Views 8K
Всем привет!

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

Заявку подавал я 19 января этого года, а 5го октября ее одобрили. Радости, конечно же было много и пришла пора готовиться к докладу.
Читать дальше →
Total votes 14: ↑12 and ↓2 +10
Comments 6

По ту сторону онлайн-консультанта

Reading time 11 min
Views 48K
image

Все видели окошко онлайн-консультанта в интернет магазинах. Оно в каком-то смысле стало стандартом, к нему все привыкли. Оно может помогать, может раздражать, но мало кто знает, что происходит с обратной стороны фразы “Здравствуйте! Чем я могу Вам помочь?”


А с обратной стороны (во всяком случае, в моем офисе) происходит Лена!


Гость: Добрый день! Чем я могу Вам помочь?
Лена: Добрый день! Чем я могу Вам… Твою мать!

Читать дальше →
Total votes 127: ↑107 and ↓20 +87
Comments 101

Пишем фоновый процесс на Apache Cordova

Reading time 7 min
Views 25K

Два года назад я увлекся мобильной разработкой под Android. Тогда я писал простенькие приложения для парсинга веб-сайтов. Программный код писался на Java. Это очень мощный язык, но для написания простых легковесных приложений, не выполняющих сложных задач, его объектно-ориентированная парадигма показалась мне не слишком кстати. В то время я только начинал знакомиться с JavaScript. Изначально он привлек меня своей простотой, затем я стал открывать в нем все большие и большие возможности. Я был знаком с HTML5 и CSS3, удовольствия ради создавал симпатичные веб-страницы.

Читать дальше →
Total votes 16: ↑16 and ↓0 +16
Comments 13

15 нестандартных инструментов продвижения приложения

Reading time 23 min
Views 34K
Ненавижу статьи про продвижение мобильных приложений. Потому что в 99% процентах из них будет одна вода, избитые, всем известные инструменты, без живых цифр и примеров. Не для этого я захожу на Хабр.

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

Запасайтесь чаем и добро пожаловать под кат

Читать дальше →
Total votes 35: ↑28 and ↓7 +21
Comments 11

Правила хорошего тона при написании плагина на jQuery

Reading time 7 min
Views 32K
Правила хорошего тона при написании плагина на jQueryЯ написал уйму плагинов на jQuery. Если посмотреть код всех плагинов, сортируя их по дате публикации на github, то можно проследить эволюцию кода. Ни в одном из этих плагинов не соблюдены все рекомендации, которые будут описаны ниже. Все что будет описано, лишь мой личный опыт, накопленный от проекта к проекту.
Писать расширения на jQuery довольно просто, но если хотите узнать как написать их так, чтобы потом их было просто поддерживать и расширять, добро пожаловать под кат.
Читать дальше →
Total votes 31: ↑27 and ↓4 +23
Comments 36

Нейрореволюция в головах и сёлах

Reading time 8 min
Views 93K
В последнее время всё чаще и чаще слышишь мнение, что сейчас происходит технологическая революция. Бытует мнение, что мир стремительно меняется.



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

Я работаю в области связанной с анализом изображений. Это одна из областей которую новые идеи затронули сильнее всего. Одна из таких идей — свёрточные нейронные сети. Четыре года назад с их помощью впервые начали выигрывать конкурсы по обработке изображений. Победы не остались незамеченными. Нейронными сетями, до тех пор стоящими на вторых ролях, стали заниматься и пользоваться десятки тысяч последователей. В результате, полтора-два года назад начался бум, породивший множество идей, алгоритмов, статей.

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

Кто лишится в ближайшие лет десять работы, а у кого будут новые перспективные вакансии.
Читать дальше →
Total votes 78: ↑76 and ↓2 +74
Comments 124

Verone — статический анализатор для C++ с анализом на лету

Reading time 6 min
Views 18K
Меня зовут Владимир Пляшкун и в сегодняшней статье я собираюсь представить бесплатный статический анализатор Verone для C++03/C++11/C++14, главной особенностью которого является анализ на лету.
Читать дальше →
Total votes 55: ↑53 and ↓2 +51
Comments 35

Зачем нужен свободный код и как на нем зарабатывать

Reading time 5 min
Views 67K
Linux Torvalds
Мы наблюдаем бум свободных проектов. В основном, благодаря Гитхабу. 23 декабря 2013 года на сервисе был создан 10-миллионный проект. К 23 декабря 2015 года количество проектов более чем утроится: прямо сейчас на Гитхабе 28 миллионов проектов.

Многих привлекает идея свободности, потому что она перекликается с идеей «улучшения мира», как основной мотивации продуктивной деятельности человека.

Но так как обычная работа программистов в конторах очень далека от open source, возникает вопрос, как кормиться (а желательно, и разбогатеть!), большую часть времени занимаясь свободными проектами.

Судя по последним вопросам на Тостере, у людей много ожиданий, но мало понимания в этой области. Поэтому я решил написать это эссе.

Само по себе выкладывание проекта не является улучшением мира


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

Вы выложили код. Чем вы помогли экономике в этот момент? Ничем, поэтому и миру вы пока ничем не помогли.

Ваш проект может спасать людей от рака, быть бесплатным, экономить миллионы долларов, и при этом быть закрытым.

Сконцентрируйтесь не на том, чем вообще полезен ваш проект, а чем полезна его свободность.

Синергетический эффект свободного кода


Читать дальше →
Total votes 89: ↑68 and ↓21 +47
Comments 108

Издание в Стиме с минимальными затратами

Reading time 3 min
Views 58K
Исправление от 07.05.2016
В сети слишком часто ссылаются на этот мой текст, поэтому я хочу предостеречь людей: я не несу никакой гарантии за достоверность данных, рассказанных тут полгода назад. По хорошему, я хотел бы удалить эту статью, но не вижу такой кнопки в интерфейсе сайта. Тем не менее, я счел необходимым удалить некоторые пункты этим исправлением.


Эта статья мой личный опыт размещения игры в Стиме, и в ней я расскажу о тех моментах, которые беспокоили меня самого в процессе этого дела. Надеюсь, она поможет тем, кто решит пройти этим же путём. Этим немного особенным образом, дорогой минимальных усилий.
Читать дальше →
Total votes 107: ↑102 and ↓5 +97
Comments 66

Смажь колеса времени не для первой премии © Высоцкий. Топ-10 самых необычных часов

Reading time 4 min
Views 24K
Доброго дня!

Сегодня предлагаю посмотреть на необычные модели часов как серийного производства, так и модели «Сделай сам». Ниже вспоминаем Tix, собираем часы из деталей Lego, «залипаем» на девайс бывшего инженера NASA и параллельно смотрим на дизайнерские циферблаты.


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

$3 миллиарда на постройку Минас Тирита в натуральную величину

Reading time 1 min
Views 28K
На Indiegogo начался сбор средств на самый дорогой проект в истории краудфандинга: постройку реплики Минас Тирита из «Властелина колец» в натуральную величину. Группа архитекторов-толкиенистов посчитала, что для этого нужно £1,85 млрд ($3 млрд), что на 700 миллионов фунтов стерлингов больше, чем предыдущий самый масштабный проект (тоже, кстати, размещённый на Indiegogo) — €1,6 млрд на выплату греческого долга.


Читать дальше →
Total votes 32: ↑26 and ↓6 +20
Comments 36

Нейробиологам удалось объединить в работающую сеть мозги нескольких животных

Reading time 2 min
Views 21K
image

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

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

В одном эксперименте объединённые в сеть мозги трёх макаков-резусов управляли виртуальной рукой, которая должна была схватить некий движущийся объект. На движения руки влияла мозговая деятельность всех животных. Каждая из обезьян контролировала движения виртуальной руки по двум осям. В связи с этим удачно двигать рукой и схватить виртуальный объект они могли только в том случае, если хотя бы две из них синхронизировали мозговые сигналы.
Читать дальше →
Total votes 34: ↑33 and ↓1 +32
Comments 26

Любительская компиляция видеороликов с борта МКС

Reading time 1 min
Views 6.6K
image

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


Читать дальше →
Total votes 33: ↑22 and ↓11 +11
Comments 5

Information

Rating
Does not participate
Location
Владивосток, Приморский край, Россия
Date of birth
Registered
Activity