Рубрика «Блог компании RUVDS.com»

Создание игры в стиле GameBoy в 13 КБ - 1


В прошлом году я решил поучаствовать в гейм-джеме js13kgames. Это длящееся один месяц ежегодное соревнование по созданию с нуля игры на JavaScript, которая должна уместиться в 13 КБ (в zip). Места как будто не очень много, но с достаточным количеством креативности при таких ограничениях можно достичь многого. Просто взгляните на потрясающие примеры прошлых лет:

Хотя в прошлом году моя игра заняла не такое высокое место, я всё равно хотел бы поделиться своими открытиями, сделанными в процессе её разработки.

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

Поиграть в мою игру можно на странице Gravepassing сайта JS13KGames. Полный код выложен на GitHub.
Читать полностью »

Почему нельзя доверять Google - 1

В 2005 году компания Google решила вступить в конкуренцию с ICQ, MSN и Skype — и выпустила мессенджер Google Talk (Gchat) на открытом протоколе XMPP с распределённой архитектурой. Казалось бы, замечательно: Google продвигает открытый свободный протокол! Как бы не так.

Google не уважала спецификации, не поддерживала все функции XMPP. В итоге разработка открытого стандарта затормозилась, чтобы адаптироваться к действиям Google. Классные новые функции (например, аватарки) никто не использовал, потому что их не поддерживал Google Talk. Разработчики XMPP стали выполнять роль сисадминов для серверов Google.

Финал немного предсказуем: в 2013 году Google решила закрыть Gtalk/XMPP и забыть о нём, что практически остановило развитие XMPP на долгие годы. Сообщество до сих пор не восстановилось от того удара. Это пример вреда, который Google/Meta*/Microsoft наносят IT-индустрии. И так у них во всём… Главное — собственные интересы, на остальных наплевать.
Читать полностью »

IPv6 — это катастрофа (но поправимая) - 1


В последнее время мы всё чаще слышим не самые приятные новости про IP-адреса. Компания AWS объявила, что будет брать по $0,005/час за каждый адрес IPv4, тем самым присоединившись к другим облачным провайдерам, сделавшим платным использование публичного адреса IPv4. GCP просит с клиентов по $0,004, а Azure и Hetzner — по €0,001/ч. Очевидно, что эпоха, когда облачные провайдеры расширялись, скупая дополнительное пространство IPv4, подходит к концу. Чем дальше, тем ценнее становятся эти адреса, и тем менее целесообразно предоставлять их бесплатно.Читать полностью »

Куда посылает игроков Гусь-матерщинник из Atomic Heart? Краткий путеводитель по мемам и отсылкам - 1


Отдельное удовольствие в компьютерных играх составляет наблюдать, как персонажи выходят за рамки своего сеттинга и становятся по-настоящему меметичными. В Atomic Heart это произошло минимум с четырьмя барышнями: робо-балеринами Левой и Правой, «пошлым холодильником» Элеонорой и суровой бабой Зиной с «калашниковым». Однако гусь из нового DLC «Инстинкт истребления» буквально сломал схему мемного персонажа.

За неполных две недели он не просто успел стать самым меметичным персонажем DLC, несмотря на присутствие всех полюбившихся героев первой части; он оказался буквально энциклопедией мемов, ходячим Лурком на лапках! Даже самому терпеливому игроку начинает хотеться пришибить назойливое пернатое уже после пары-тройки фраз. Для истории геймдева это не только свежо, но и в каком-то смысле уникально. Попробуем же разобраться: куда именно посылает и отсылает игроков Мемный Гусь?Читать полностью »

Эти прекрасные древовидные карты (альтернатива pprint) - 1


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

Секретная плата с китайской олимпиады по электронике - 1

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

Здесь и секретный код, который нужно расшифровать, и нестандартное применение десятичного счётчика-дешифратора К561ИЕ8 (CD4017), и две ошибки, намеренно внесённые в плату. К обычному мультивибратору на КР1008ВИ1 (NE555) добавлены RC-фильтры, позволяющие наблюдать изменение формы сигнала.

А ещё имеются тиристор и тональный декодер на специализированной микросхеме ФАПЧ УР1101XA01 (LM567). Так на печатной плате размером 112 на 68 мм разместился целый мир электронных приключений.Читать полностью »

За секунды: полировка металлов электричеством - 1


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

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

Дальше мы обзорно поговорим о ней, а желающие смогут задуматься о применении её в своих проектах.Читать полностью »

Что происходит, когда запускаешь «Hello World» в Linux - 1


Сегодня я задумалась о том, что происходит, когда запускаешь в Linux простую программу «Hello World» на Python.

print("hello world")

Вот как это выглядит в командной строке:

$ python3 hello.py
hello world

Но внутри происходит гораздо больше. Я объясню, что там творится, и, что гораздо важнее, расскажу об инструментах, при помощи которых вы сами сможете исследовать происходящее. Мы воспользуемся readelf, strace, ldd, debugfs, /proc, ltrace, dd и stat. Я не буду рассматривать относящиеся к Python части, только объясню, что происходит при выполнении динамически компонуемых исполняемых файлов.
Читать полностью »

Экосистема Hyper. Полный пиринг и шифрование - 1

В настоящее время резко выросла потребность людей в защищённых коммуникациях. А с ней и популярность сервисов для защиты связи и шифрования. Это VPN, mesh-сети и пиринговые приложения для прямого обмена зашифрованными сообщениями, файлами и т. д. Один из самых продвинутых наборов такого рода — экосистема Hyper. Есть и другие (о них ниже).Читать полностью »

Внутреннее представление и оптимизации строк в JavaScript-движке V8: «отмываем» строки, «обгоняем» C++ - 1


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

В этой статье я хочу рассмотреть, как могут быть представлены строки в движке V8. Попытаюсь продемонстрировать их эффект, обогнав C++ в очень честном бенчмарке. А также покажу, в каких случаях они могут, наоборот, привести к проблемам с производительностью, и что в таких случаях можно сделать.Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js