Pull to refresh
-1
0
ravenous @Ravenous

Пользователь

Send message

«Once you go Rust, you never go back»: создаем игру для программистов на Bevy

Reading time7 min
Views9.3K

Привет, Хабр! В прошлой статье я рассказал о своем переходе в геймдев и моей концепции «хакерской» игры. Здесь же сосредоточился именно на разработке, а также на инструментах Bevy и Rust, которые использовал для игрового движка. Интересно узнать из первых уст, как создаются отечественные инди-игры? Тогда добро пожаловать под кат.
Читать дальше →
Total votes 45: ↑44 and ↓1+43
Comments21

Flutter на ОС Аврора

Level of difficultyMedium
Reading time21 min
Views9K

В августе 2023 года компания «Открытая мобильная платформа» опубликовала Flutter SDK с начальной поддержкой ОС Аврора. Статья поможет разобраться, как настроить инструменты разработки, а также раскроет секрет написания плагинов для расширения возможностей работы с платформозависимым API.

Читать далее
Total votes 14: ↑13 and ↓1+12
Comments15

SQLx: raw SQL в Rust

Reading time9 min
Views6.7K

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

Читать далее
Total votes 24: ↑18 and ↓6+12
Comments21

Быстрое клонирование окружений с OpenStack с внешним DHCP

Level of difficultyMedium
Reading time10 min
Views1.8K

Привет, Хабр. Сегодня мы, Дмитрий Романовский и Дмитрий Тарасов, расскажем о возможности создания окружения с гипервизором OpenStack (далее по тексту - базовая ВМ с предустановленным и настроенным OpenStack), которое можно клонировать с сохранением работоспособности.

Читать далее
Total votes 2: ↑2 and ↓0+2
Comments0

Отказоустойчивая архитектура: почему Tarantool не падает?

Reading time8 min
Views6.7K


Основная проблема в высоконагруженных приложениях — отказоустойчивость. Нагрузка с упавших узлов в кластере должна переключаться на живые. Это кажется несложной задачей, но на практике появляется много подводных камней. Мы с yngvar_antonsson потратили много времени на поддержку различных кластеров, построенных на Tarantool и наших кластерных фреймворках Cartridge и TDG, и сегодня расскажем вам, как обеспечивается отказоустойчивость в наших приложениях. Будет интересно всем, кто хочет подробнее узнать, как устроен фейловер в Cartridge, и тем, кто хочет узнать о нашем опыте создания автоматических фейловеров.
Читать дальше →
Total votes 45: ↑43 and ↓2+41
Comments0

Записки архитектора. Как давать имена приложениям и сервисам

Level of difficultyMedium
Reading time31 min
Views8.8K

Если порыться на внутренней кухне софтверных компаний, то можно обнаружить, что разрабатываемые приложения и сервисы часто имеют весёлые имена. Это могут быть имена мультперсонажей, мифических героев, космических объектов, географических объектов, героев книг, героев комиксов и фильмов… Пожалуй, это наиболее популярные категории имён, но есть и другие. Разработчики софта – люди креативные, чего только не придумают. Мне попадались даже названия ягод и элементарных частиц.

Справедливости ради подчеркну, что не во всех компаниях, где разрабатывают софт, ему дают весёлые имена. Но во многих.

Насколько хороши весёлые имена? Какие есть альтернативы? Как лучше всего называть софт? Какие имена используют в зрелых софтверных компаниях?

Об этом и поговорим…
Total votes 5: ↑5 and ↓0+5
Comments11

Пссс… нужен RISC-V-ноутбук для разработчиков? Встречаем Lichee Console 4A и другие модели

Reading time3 min
Views8.2K

Архитектура RISC-V становится всё более популярной. Не такой, конечно, как ARM, но с течением времени она всё более актуальна и востребовафна. Производители понемногу выпускают устройства на базе RISC-V-чипов, и одно из них — лэптоп Lichee Console 4A, который создан разработчиками для разработчиков. Интересные подробности — под катом.

Читать далее
Total votes 30: ↑25 and ↓5+20
Comments13

Мнение три года спустя: стоил ли того переход с JavaScript на Rust?

Level of difficultyMedium
Reading time7 min
Views38K

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

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

Спустя три года, выполнив несколько развёртываний в продакшен, написав электронную книгу и выпустив примерно сто пакетов на crates.io, я решил, что настало время поделиться своими мыслями о Rust.

Читать далее
Total votes 55: ↑54 and ↓1+53
Comments63

Голосовая почта и качественный скачок услуги благодаря Google (FreeSWITCH edition)

Reading time4 min
Views11K
При использовании современных телефонных платформ услуга голосовой почты стала настолько привычной и востребованной, что разработчики «софтовых» АТС создают модули голосовой почты, производители «железных» АТС создают целые платы голосовой почты, а операторы связи предлагают ее как услугу. Все, как говорится, просто и понятно. Не дозвонился до абонента, система тебя переадресует на голосовую почту и предлагает оставить сообщение. Далее есть несколько вариантов — абоненту высылается оповещение (чаще это письмо) о том что оставлено голосовое сообщение, мол — зайди в систему и послушай. В более продвинутом варианте на почту сразу приходит файл с записью, что позволяет не теряя времени на посещение интерфейса системы — сразу из письма прослушать файл. Но можно сделать услугу еще удобнее и качественнее.

FreeSWITH+Google=Voicemail 2.0

Читать дальше →
Total votes 37: ↑33 and ↓4+29
Comments17

Лучшие инструменты для тестирования API в 2023 году

Reading time9 min
Views8.8K

Тестирование API — это тестирование ПО, при котором API тестируются на уровне сообщений, например, веб-сервисы SOAP, REST API и т.д.  

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

Тестирование API особенно полезно при agile с ее короткими циклами разработки, что повышает необходимость автоматизировать тестирование.

Читать далее
Total votes 15: ↑14 and ↓1+13
Comments2

Linux для игр, Windows для работы. С чего начать, как установить и настроить

Level of difficultyEasy
Reading time12 min
Views69K

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

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

Читать далее
Total votes 87: ↑83 and ↓4+79
Comments196

Диаграммы без боли и страданий: PlantUML

Level of difficultyMedium
Reading time9 min
Views37K

Системный аналитик всегда и везде сталкивается с бесконечным количеством диаграмм разного вида, с нотациями (правилами), чтобы нарисовать данные диаграммы и с бесконечным количеством инструментов для их описания. Но мало кто говорит о таком инструменте, как PlantUML. 

Лично мне завесу тайны приоткрыл Альфа-Банк, здесь документация ведется рядом с кодом, и схемы логичнее описывать тоже кодом. Но это не так страшно и не так сложно (почти) как кажется. Давайте я приоткрою ящик Пандоры и сниму кармическое проклятье с  этого инструмента. 

Читать далее
Total votes 76: ↑75 and ↓1+74
Comments35

Создание сервера для онлайн ММО игр на PHP ч.13 — Event-driven паттерн, JSON-RPC и почему не сервисная (SOA) архитектура

Level of difficultyMedium
Reading time4 min
Views4K

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

В этой статье я без привязки к коду объясню простым языком и в картинках как можно применять в разработке архитектуры авторитарного сервера для онлайн игр шаблон проектирования Event-driven.

Читать далее
Total votes 11: ↑9 and ↓2+7
Comments7

FusionPBX, или снова-здорово, FreeSWITCH

Reading time14 min
Views26K

В ту же реку


Относительно недавно я написал себе шпаргалку по настройке FreeSWITCH. Описанный там процесс настройки привел к работоспособной в тестовых условиях конфигурации. Тест был необходим для составления предварительного представления о том, с чем придется иметь дело после переезда организации и запуске телефонии в продакшн. Однако, когда переезд состоялся и началось подключение в рабочем режиме, то первое же включение показало неработоспособность конфигурации: перестали ходить внутренние вызовы.
Читать дальше →
Total votes 9: ↑9 and ↓0+9
Comments5

Установка и настройка сервера Matrix Synapse + PostgreSQL + Admin UI + Element WEB. Ubuntu 20 LTS / Ubuntu 22 LTS

Level of difficultyMedium
Reading time11 min
Views31K

Всем привет. В данном гайде я постарался пошагово, подробно и доступно описать процесс установки на свой сервер Matrix Synapse + Element WEB + Admin UI на базе Ubuntu 20 LTS / Ubuntu 22 LTS.

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

Разобравшись с данным вопросом и затратив не мало усилий я решил поделиться своими результатами с сообществом habr.

Читать далее
Total votes 28: ↑27 and ↓1+26
Comments34

Основные linux-команды для новичка

Reading time14 min
Views778K
Linux — это операционная система. Как винда (windows), только более защищенная. В винде легко подхватить вирус, в линуксе это практически невозможно. А еще линукс бесплатный, и ты сам себе хозяин: никаких тебе неотключаемых автообновлений системы!

Правда, разобраться в нем немного посложнее… Потому что большинство операций выполняется в командной строке. И если вы видите в вакансии «знание linux» — от вас ожидают как раз умение выполнять простейшие операции — перейти в другую директорию, скопировать файл, создать папочку… В этой статье я расскажу про типовые операции, которые стоит уметь делать новичку. Ну и плюс пара полезняшек для тестировщиков.

Я дам кратенькое описание основных команд с примерами (примеры я все проверяла на cent os, red hat based системе) + ссылки на статьи, где можно почитать подробнее. Если же хочется копнуть еще глубже, то см раздел «Книги и видео по теме». А еще комментарии к статье, там много полезного написали)
Читать дальше →
Total votes 80: ↑65 and ↓15+50
Comments170

WebAssembly: Docker без контейнеров

Level of difficultyMedium
Reading time16 min
Views14K

«Если бы WASM+WASI существовали в 2008 году, нам бы не пришлось создавать Docker. WebAssembly на сервере — будущее компьютерных технологий», считает Соломон Хайкс, соучредитель корпорации Docker и автор Docker Open Source Initiative.

Сравнительно недавно Docker объявил о поддержке WebAssembly на базе WasmEdge. А мы перевели фундаментальный, но практичный материал о том, как пользоваться этой технологией в экосистеме Docker и чем Wasm-контейнер отличается от классического. 

Читать далее
Total votes 53: ↑51 and ↓2+49
Comments35

Systemd для продолжающих. Part 2 — Триггеры на различные события

Reading time5 min
Views15K

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

Попробовать стащить сыр!
Total votes 48: ↑48 and ↓0+48
Comments31
1
23 ...

Information

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

Specialization

Specialist
Designing application architecture
High-loaded systems
Software development
Database design
Linux
Kubernetes
PostgreSQL
Java
REST
Git