How I turned Zig into my favorite language to write network programs in 🔥 Горячее
Автор изначально не интересовался Zig, считая его нишевым языком для аудиопрограмм, но решил переписать индекс AcoustID на Zig как возможность изучить новый язык. Результат превзошёл ожидания — новая версия оказалась быстрее и масштабируемее, чем предыдущая на C++. Однако при добавлении серверного интерфейса возникли сложности с сетевыми возможностями Zig, что привело автора к созданию библиотеки Zio — асинхронной I/O и библиотеки для конкурентности в стиле Go.
Zio реализует стековые корутины с фиксированным размером стека, поддерживает асинхронную сетевую и файловую I/O, примитивы синхронизации и каналы в стиле Go. Главная особенность — контекстный переключение практически бесплатен, сравним с вызовом функции. В однопоточном режиме Zio обгоняет все протестированные фреймворки, включая Go и Rust Tokio. Интересно, что благодаря стандартным интерфейсам reader/writer, внешние библиотеки могут использоваться без модификаций, даже не зная, что работают внутри Zio.
Комментарии (116)
- Обсуждение показало, что Zig не имеет встроенной поддержки async/await, а вместо этого используется библиотечный код, что вызывает вопросы о том, как это скажется на производительности и удобстве использования.
- Участники обсуждения также отметили, что в отличии от Go, где стек горутин растет по мере необходимости, в Zig фиксированный размер стека может ограничить количество одновременно работающих сопрограмм.
- Участники обсуждения также отметили, что в отличии от Go, где стек горутин растет по мере необходимости, в Zig фиксированный размер стека может ограничить количество одновременно работающих сопрограмм.
- Участники обсуждения также отметили, что в отличии от Go, где стек горутин растет по мере необходимости, в Zig фиксированный размер стека может ограничить количество одновременно работающих сопрограмм.
- Участники обсуждения также отметили, что в отличии от Go, где стек горутин растет по мере необходимости, в Zig фиксированный размер стека может ограничить количество одновременно работающих сопрограмм.
How do I get into the game industry
Краткий путь в геймдев
-
Делай игры.
Не жди вакансий — пили прототипы, моды, демо. Любой код, который запускается, уже плюс в карму. -
Показывай.
Заливай на GitHub, пиши посты, записывай гифки. HR ищут не диплом, а живые примеры. -
Учись у сообщества.
Discord, Reddit, форумы. Задавай вопросы, ревьюь чужой код, участвуй в джемах. -
Специализируйся.
Выбери узкое: AI, рендер, сетевой код. Глубина ценится выше широты. -
Отправляйся в инди.
Маленькие студии берут джунов без опыта, если видят портфолио. Зарплата ниже, но опыт растёт быстро. -
Не сдавайся.
Отказов будет много. Каждый «нет» — шанс улучшить портфолио и попробовать снова.
Формула: игра в релизе > тестовое задание > резюме.
Комментарии (137)
- Войти в индустрию сейчас проще технически, но сложнее выделиться: рынок переполнен, зарплаты и студии сокращаются, особенно в США.
- Работодатели требуют показать небольшие законченные проекты (от «Виселицы» до «Тетриса») и подтвердить навыки онлайн-вниманием.
- Специализация в дефицитных нишах (физика, рендер, движки) повышает шансы, как и платформы вроде Roblox с готовой аудиторией.
- Корпоративная разработка игр требует «рабского» ритма; многие советуют остаться инди или вообще не лезть в AAA.
- ИИ и «holodeck-генераторы» пока вызывают споры: кто-то видит конец профессии, кто-то — лишь новый инструмент.