Pull to refresh
59
0
Send message

MMO на WebRTC

Reading time5 min
Views29K
image

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

image

Такая организация имеет свои неоспоримые достоинства, например синхронизация игровых состояний клиентов на сервере, простота в реализации и почти фиксированные задержки до пользователя. Там где есть плюсы, обычно обитают и минусы — это ограниченная пропускная способность сервера и довольно большие задержки, если клиент находится далеко от вашего сервера. Как с ними бороться подробно написано в блоге 0fps.net и есть возможность эти проблемы довольно эффективно решать оставаясь в любимой «звездочке» — купить больше серверов, но что делать если вы студент вы ограничены в финансах и горизонтальное/вертикальное масштабирование для вас не вариант?
Как же быть?
Total votes 36: ↑33 and ↓3+30
Comments26

Signed Distance Field или как сделать из растра вектор

Reading time12 min
Views59K
Речь сегодня пойдёт о генерации изображений с картой расстояний (Signed Distance Field). Данный вид изображений примечателен тем, что фактически позволяет получить «векторную» графику на видеоускорителе, причём даром. Одной из первых данный метод растеризации предложила компания Valve в игре Team Fortress 2 для масштабируемых декалей в 2007 году, но до сих пор он не пользуется особой популярностью, хотя позволяет рендерить прекрасного качества шрифты, используя текстуру всего 256х256 точек. Данный метод прекрасно подходит для современных экранов высокой чёткости и позволяет серьёзно сэкономить на текстурах в играх, он не требователен к железу и прекрасно работает на смартфонах.



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

Как же создавать такие изображения? Очень просто, ImageMagick позволяет сделать это одной командой:

convert in.png -filter Jinc -resize 400% -threshold 30% \( +clone -negate -morphology Distance Euclidean -level 50%,-50% \) -morphology Distance Euclidean -compose Plus -composite -level 45%,55% -resize 25% out.png

На этом можно было бы поставить точку, но так полноценного топика не получится. Что ж, под катом — описание быстрого алгоритма расчёта SDF, пример на C++ и немного шейдеров для OpenGL.
Читать дальше →
Total votes 115: ↑113 and ↓2+111
Comments61

JPHP — Новый движок php для Java VM + JIT

Reading time6 min
Views49K
Представляю вам свой open-source проект — JPHP. Это альтернативная реализация PHP для JavaVM с поддержкой JIT. Я начал проект в одиночку в октябре 2013 года и за 4 месяца реализовал компилятор php в байткод JVM. Язык поддерживается на уровне PHP 5.3, частично поддерживаются возможности PHP 5.4 и 5.5. По своей идеологии проект напоминает JRuby и Jython.

Я подготовил небольшую презентацию, которая расскажет о проекте и не отнимет у вас много времени:


Читать дальше →
Total votes 190: ↑185 and ↓5+180
Comments108

Реестр запрещённых сайтов как путь к информационной изоляции

Reading time3 min
Views41K
Вдохновлённый публикацией на Хабре (http://habrahabr.ru/sandbox/69290/) о производстве расходников для 3d-принтера, я решил зайти на сайт производителя (http://www.extrusionbot.net/) и… Бинго! «Доступ к запрашиваемому ресурсу ограничен». Я бы решил, что там и правда призывы к сепаратизму, детская порнография или рецепты амфетамина, но ребята всего лишь производят и продают промышленные станки для гиков и бизнеса. (UPD: как сообщают в комментариях, на этом ip сидят ещё 169020 сайтов) Зайдя через прокси я нашёл там тихий мирный стартап, пытающийся сделать мир лучше и, почему то, запрешённый, как и остальные 169019 ресурсов. В статье свободные рассуждения на тему и попытка разобраться в том, что обычно пропускают как известное.
Читать дальше →
Total votes 105: ↑80 and ↓25+55
Comments133

Единый != единственный? Реестр запрещенных сайтов

Reading time1 min
Views50K
Приветствую!

Сегодня жена пожаловалась на то, что ее любимый сайт (женский форум. думаю, его адрес не существенен) уже дня 3-4 не открывается.
Но открывается с телефона (3G Билайн), в т.ч. если телефон использовать в качестве точки доступа.
Провайдер ДОМ.ру Омск.
Решив, таким образом, что дело не в компе я сходил уже по-привычке (кто бы мог подумать, что такая привычка появится!) на сайт реестра.
Получил ответ «не значится».
Глянул FAQ
Как узнать причину, по которой ограничен доступ к ресурсу, если в реестре он не значится?
Ответ:
Причины отсутствия доступа к информационному ресурсу Вы можете узнать у обслуживающего Вас провайдера хостинга, оператора связи.

Связываюсь с поддержкой, и девочка мне говорит, что помимо федерального реестра запрещенных сайтов есть механизм блокировки сайтов по решению прокуратуры и судов отдельных городов. И искомый сайт заблокирован провайдером именно по этой причине.
Читать дальше →
Total votes 66: ↑60 and ↓6+54
Comments22

«Запретите им запрещать» или обратная сторона реестра запрещенных сайтов

Reading time3 min
Views126K


Быть может создатели реестра запрещенных сайтов не думали о том, что такое возможно. А может им было известно о такой возможности, но они не придали ей должного значения. А может им не было дела до возможных технических проблем при реализации реестра, и «лишь бы запретить». А может им было понятно, что избежать таких проблем нельзя, и к чему об этом волноваться раньше времени?..

Можно долго спекулировать о том, что они думали и чем они не думали, но факт есть факт: блокировкой любого сайта они невольно вручают мощное средство, если не сказать орудие, защиты и нападения в руки владельца домена, включенного в реестр.
Информационная война как она есть
Total votes 211: ↑199 and ↓12+187
Comments129

Простой мониторинг нагрузки на сервер в реальном времени с веб-интерфейсом

Reading time2 min
Views80K
Сегодня существует довольно много профессиональных инструментов для мониторинга состояния серверов с обилием настроек, плагинов, поддержкой сразу множества машин и т.д., это известные Nagios, Zabbix, Munin, Cacti и многие другие.


Но в этом посте речь пойдет об очень маленьком и простом, но от этого не менее полезном инструменте: инструменте для мониторинга Scout Realtime. Этот написанный на Ruby open source проект позиционируется разработчиками как современная замена консольной утилите top с выводом статистики использования диска, памяти, сети, CPU и запущенных процессов. Все это отображается в реальном времени с плавными графиками. Во время диагностики работы сервера, иногда полезно пару минут понаблюдать за показателями, и проследить их изменение во времени (в отличие от гирлянды мерцающих чисел в терминале, отображающих данные исключительно на текущий момент).
Читать дальше →
Total votes 42: ↑38 and ↓4+34
Comments34

Проблемы объёмных тестовых заданий при выборе работы

Reading time9 min
Views37K
Глядя в историю выполнения мной тестовых заданий, видятся закономерности, о которых хотелось бы предупредить коллег, потому что такие случаи встречаются регулярно и, скорее всего, независимо от специализации разработок. Например, к таким выводам я пришёл, имея на счету более десятка выполненных в разные годы заданий объёмом 2-5 рабочих дней каждое. А выводы — настолько парадоксальные, что, думаю, вызовут споры и удивление у тех, кто этого не прошёл. Сформулирую основной вывод для начала, а затем покажу обоснования на примерах из практики.

Вывод: (софизм) тестовое задание объёмом более дня с основной целью (поступления на работу) выполнять невыгодно.
Почему так?
Total votes 44: ↑33 and ↓11+22
Comments44

Переходы наличности и переходы на личности

Reading time12 min
Views85K
Представьте, что мы живем в мире криптографии, электронной коммерции и свободных экономических отношений. Пользуемся электронными средствами платежей, где в корзине и кошельке операции осуществляет калькулятор, где микроскопические суммы и огромные средства проводятся в многочисленных транзакциях без каких-либо проблем за ничтожное количество времени, с автоматическим учетом налогов, сборов и отчислений, где нам привычны покупки в электронных супермаркетах и доставка до порога по одному прикосновению к экрану телефона или клику мышкой. И вот, в наш прекрасный, удобный и отлаженный мир электронных платежей, построенный на принципах безопасности и криптографии, со всеми присущими ему технологиями и образу мышления, впитанными с молоком матери, приходит причудливый и странный механизм, которым, как говорят средства массовой информации, пользуются только анархисты, конспираторы и преступники.
Любопытное нажатие для путешествия в этот мир
Total votes 288: ↑263 and ↓25+238
Comments229

Об особенностях внедрения СПО в малом бизнесе

Reading time5 min
Views44K
Добрый день, уважаемое сообщество!

Существует большое количество малых и «маленьких, но гордых» организаций, которые при всей своей простоте вынуждены пользоваться определенной IT инфраструктурой. Хочу поделиться с вами некоторыми выводами по внедрению в них свободного ПО (СПО) и Линукса, которые я вынес для себя на базе многолетнего положительного опыта в этой области.

image


Слепок типичного заказчика



Обычно существовавшее изначально положение вещей характеризовалось следующим:

1. Организации с количеством компьютеров от 1 до 50 предпочитали использовать проприетарные решения для ОС одной хорошо всем известной заатлантической конторы.
2. Денег на покупку лицензий всегда не было. Предпочитали использовать «пиратчину».
Читать дальше →
Total votes 81: ↑58 and ↓23+35
Comments161

Священная борьба с михалковыми и акоповыми

Reading time3 min
Views39K
Вообще здесь должен был быть традиционный первый «корпоративный» пост о том, что мы уже ровно 7 лет занимаемся хостингом, что нашим профилем являются серверы, прежде всего, в Европе и США, что работая для русскоязычных клиентов и будучи международной компанией, мы сознательно отказываемся от серверов в России, и так далее. Однако новость прошлой пятницы заставляет поговорить о другом.

Читать дальше →
Total votes 86: ↑84 and ↓2+82
Comments26

Nginx boilerplate: Быстрая и изящная настройка nginx

Reading time1 min
Views38K
Хочу поделиться своими наработками по настройке nginx, которые, возможно, помогут кому-то при старте нового проекта или избавят от необходимости копипастить очередной vhost.

Я отметил две проблемы подавляющего числа конфигов nginx'а, попадавших мне на глаза:
  • «Всё в одном файле»
  • Дублирование настроек

С помощью моего подхода, надеюсь, эти и многие другие проблемы будут устранены.
Читать дальше →
Total votes 87: ↑77 and ↓10+67
Comments31

Чем плох свой Open Source проект

Reading time3 min
Views73K
Все мы знаем как хорошо и похвально принимать участие в разработке открытых проектов.
К тому же потом можно мерятся количеством коммитов в rails и зарплату попросить побольше.

А что если вы решили написать свой open source проект?

Читать дальше →
Total votes 301: ↑285 and ↓16+269
Comments140

Размышления о торрентах, легальном контенте и борьбе с пиратством

Reading time4 min
Views32K
Возьмём за аксиомы:
  • Пиратство, как не крути, — плохо.
  • Текущие методы копирастии — неадекватны.
  • Текущие форматы, типа ДВД и т.п. — медленно отмирают.
  • Torrent — реально удобно.
  • Всегда есть категория людей, которым нечем оплачивать, но посмотреть — хочется.


Все согласны? По отдельным пунктам гусары могут помолчать!

P.S. этакий предварительный. Специально для ленивых людей, которые дочитали ровно до строки про пиратство и рванули писать гневные комменты, не прочитав остального: СТАТЬЯ НЕ ОБСУЖДАЕТ, ХОРОШО ЧТО-ТО ИЛИ ПЛОХО! Она ищет путь решения вопроса, при котором «И овцы сыты и волки целы»!

Итак, что можно сварить из этакого «топора»?
Читать дальше →
Total votes 73: ↑38 and ↓35+3
Comments131

Проблемы роста в IT бизнесе

Reading time8 min
Views97K
проблемы
Я ничему не научу вас в этом посте. Может быть просто расскажу что-то о чем вы еще не знаете, или не догадываетесь. Но вы можете с этим столкнуться, и тогда вы будете предупреждены. А значит и вооружены. И еще я очень рассчитываю на советы тех людей, которые уже прошли через эти проблемы и решили их.

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

Вы работаете по 12 часов, вас прет, уже пошли первые доходы и уже можно сравнить их с зарплатой. И уже кажется, что жизнь налаживается. Жизнь просто изменилась. И теперь у вас будут другие проблемы. И они очень скоро дадут о себе знать.

Что же это за проблемы?
Читать дальше →
Total votes 151: ↑142 and ↓9+133
Comments73

Фотографии рабочих мест хабражителей и…

Reading time6 min
Views411K
image
Хабражители редко ходят друг к другу в гости. И, в то же самое время, хотят взглянуть на то, как устроились другие. Может быть, даже, позаимствовать разные интересности.

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

По возможности, описываем:
1. 7 любимых гаджетов.
2. 7 ежедневных программ.
3. 7 интересных открытий, которыми вы часто пользуетесь.

Приоткройте занавесу тайны в своей обители.

PS: Бонус для владельцев ноутбуков — подключаем 2 монитора.
Читать дальше →
Total votes 286: ↑210 and ↓76+134
Comments676
12 ...
21

Information

Rating
4,289-th
Registered
Activity