Социальные сети Рунета
Среда, 1 мая 2024

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

Вперед в будущее: Wayland против X11 Доброго времени суток, дорогие читатели! Сегодня я затрону одну интересную тему — графические дисплейные сервера и протоколы в Linux. В этой статье я расскажу вам о архитектуре X11 и Wayland, историю их создания и наконец-то сделаем вывод: Иксы на мороз, или вейланд на помой...

Эволюция системы разработки на SQL Мы — SQL команда Срочного рынка Московской Биржи, занимаемся разработкой и сопровождением бэкофиса торгово-клиринговой системы Spectra с момента ее возникновения. Срочный рынок Московской Биржи — это более 500 фьючерсных и 30000 опционных инструментов, несколько миллионов сд...

Книга «Гейм-дизайн: как создаются игры» Привет, Хаброжители! Узнайте, как придумать и создать свою первую игру. Загляните за кулисы гейм-дизайна и глубоко погрузитесь в теорию и техническую сторону разработки видеоигр. Книга затрагивает теорию гейм-дизайна, практические особенности реализации игр в различных жа...

ч.15 Игровой авторитарный сервер на процессах и его архитектура в картинках — Создание сервера для онлайн ММО игр на PHP В предыдущей статье я рассказывал об архитектуре приложения , где ее отдельные компоненты могли бы работать параллельно не блокируя выполнения друг друга.В этой статье я расскажу о причинах , по которым пришлось сменить взаимодействие между потоками на процессы и выделить ко...

Unreal Engine vs Unity vs GoDot. Что нужно знать, если ты не программист Доброго времени суток, дорогие хабражители. Продолжаем разбор строения игр, игровых движков и их особенностей с точки зрения человека, которому никогда в жизни не говорили «тыжпрограммист». Сегодня на повестке дня выбор игрового движка из двух гигантов игростроя: Unity и U...

Архитектурные нюансы OpenStack. Базы данных как сервис, реализация Trove Привет, Хабр. Это вторая статья в цикле, в котором мы рассматриваем архитектуру основных сервисов OpenStack. Первая, в которой я рассказывал о Nova и общих паттернах построения платформы, находится здесь. Сегодня погрузимся в детали реализации сервиса DBaaS, который в платфо...

Программист мало пишет, но много читает Здравствуйте, меня зовут Александр, я backend-разработчик. Цель данной публикации – проанализировать затраты времени при разработке приложений. Расчеты приведены на основе web приложений на языке Python. Так же не рассматривается ситуация разработки MVP для получения различн...

Какого специалиста искать для озвучания игры? Звуковая команда: структура и обязанности Приветствую всех, кто интересуется разработкой игр!Начиная с момента, когда я впервые попал в мир геймдева в 2008 году, я увидел, как игровой саунд-дизайн совершенствуется и становится важной частью игр. Мой путь в области игрового аудио начинался с работы техническим с...

Лучшие игровые движки 2024 для 2D разработки Defold - это бесплатный движок для создания 2D игр и других интерактивных приложений. Он разработан компанией King (известной по игре Candy Crush) и предлагает простой и эффективный способ создания кроссплатформенных проектов. 1. Язык программирования: Defold использует язык...

Сравнение сборщиков мусора в Unity и .NET В этой статье я хотел бы рассказать о различиях между сборкой мусора в Unity (IL2CPP) и .NET. Несмотря на то что IL2CPP существует более 10 лет, я до сих пор встречаю недоумение, когда беседа заходит на тему Garbage Collector (GC) касательно Unity. Считать реализацию GC в .N...

Разработка простого DNS сервера на Go, согласно RFC Привет, Хабр!В этой статье я хочу рассказать о своем опыте создания DNS сервера. Разрабатывал я его "чисто повеселиться", при разработке будем придерживаться спецификации RFC. Читать далее

Как мы разрабатываем игры для Pixel Quest, публикуем исходники и делимся частью выручки Полгода назад я писал про наш путь к открытию первой пиксельной игровой Pixel Quest: путь от прототипа до первого игрового заведения. Сегодня хочу рассказать, как мы решили проблему разработки игр путём перехода с Go на Lua и публикации исходников, а также о планах делиться ...

Когда-либо давал. F#-сервер из скрипта на примере локального брокера сообщений В ходе разработки на F# поднимать локальные web-серверы приходится гораздо чаще, чем это принято на C#. Связано это с большим количеством нехарактерных для C# активностей. То, что в C# делают плагины для IDE, у нас делают скрипты, причём их сферы ответственности пересекаются...

От конструктора до облака: какие есть способы разработки мобильных приложений Привет! На связи Вася Крючков, уже больше 7 лет я занимаюсь разработкой мобильных приложений и сейчас работаю в компании IMSHOP.IO, где за 5 лет разработали больше 150 приложений для ритейла. За эти годы часто встречал случаи, когда е-com менеджеры и технические директора сл...

Сам написал, сам погонял: Как я написал 3D-гонки «на жигулях» за неделю, полностью с нуля? Статьи про инди-разработку игр — это всегда интересно и занимательно. Но статьи про разработку игр с нуля, без каких-либо игровых движков — ещё интереснее! У меня есть небольшой фетиш, заключающийся в разработке минимально играбельных 3D-демок, которые нормально работали б...

Особенности и проблемы mock-сервера Swordfish API Emulator Эта статья — продолжение истории про разработку Ansible-модулей для взаимодействий с системами хранения данных (СХД) через API, которое удовлетворяет спецификации Swordfish. Эти модули в перспективе облегчат управление парком СХД от разных производителей.Чтобы тестирова...

Pixel Quest: путь от прототипа до первого игрового заведения Полгода прошло с момента публикации моей статьи о прототипе интерактивной светодиодной игровой платформы «Пол — это лава». Самое время рассказать, что с проектом и куда движемся сейчас. Мы основали компанию, запустили в Москве первую пиксельную игровую и даже успели ста...

Об одном способе реализации архитектуры крупного Flutter-приложения Привет! Меня зовут Олег Скирюк, я лидирую контент-разработку в одной из команд билайна. Сам я перешёл в мобильную разработку из веба три года назад, после чего собрал и обучил одну из первых Flutter-команд в компании. Вместе с этой командой мы постоянно экспериментируем и пр...

SQL инъекции для продолжающих: ломаем настоящий сайт Про SQL-инъекции написано огромное количество статей. Все знаю про пресловутые ‘ OR 1 = 1 и аналогичные конструкции, но далеко не все реализовывали их на практике. В этой статье мы разберем на практике некоторые способы реализации SQL-инъекций на примере уязвимого сайта.Стат...

Signal Integrity of DDR4 Доброго времени суток! Наверное, вы все знакомы с компьютерной оперативной памятью DDRx (где x - поколение). Я бы хотел вам рассказать о ней с точки зрения SI (Signal Integrity - целостность сигналов) и принципов трассировки этого интерфейса. Читая документацию на различны...

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

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

Игровая легенда из нулевых: каким был Nokia N-Gage QD? Обзор, аппаратный ремонт и программирование под Symbian Друзья! Многие ли из вас помнят такой телефон, как Nokia N-Gage? В начале нулевых финская компания сделала смелую попытку ворваться на рынок игровых консолей, создав устройство, которое сочетало в себе сразу две функции: полноценный смартфон на базе аппаратной платформы WD...

Модульные механики на Unity Привет, Хабр! Меня зовут Игорь, и я Unity Developer. В этой статье хотел бы рассказать, как можно делать модульные механики для игровых объектов, за счет разделения данных и логики без ECS. Читать далее

В России «бросили вызов» Sony, Microsoft и Nintendo: первые игровые разработки В России полным ходом идет разработка игровых гаджетов и аксессуаров, пишут «Известия». И очень надеемся, что они будут способны составить конкуренцию мировым гигантам, таким как Sony, Microsoft и Nintendo.

Игровая экономика Premium игр на примере PC 4х стратегии Как спроектировать экономику для вашей игры? Это вопрос, ответ на который может занять небольшой цикл лекций или статей. Принципиальная разница в подходе основана в первую очередь на модели монетизации: F2P или B2P. Второе, что определяет подход к разработке экономической си...

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

Нет, мы так не работаем В предыдущем примере я затронул самый рискованный и простой способ отказаться от чего-либо – сказать: «мы так не работаем». Хотят вашу команду засунуть в лютый стафог – мы так не работаем; хотят внедрить непонятные решения – мы так не работаем. Сказали, отказались, всё по кр...

Press start Все хотят выпустить игру-мечты, но бывает так, что от начала до конца разработки происходит столько событий, недель, месяцев и лет, что от первоначального замысла, механик, сюжета и побочных активностей остается хорошо если треть. А остальные задумки переносятся в DLC и след...

Как мы решали вопрос многоязычности в боте Русский или English? Что для бота хорошо, то разработчику работа :)ВведениеВ этой статье я поделюсь своим опытом реализации многоязычности в телеграм-боте, World for Life Bot расскажу о принципах выбора языков, которыми я руководствовался, технических аспектах реализации и ...

Хеш-функция Стрибог. Особенности аппаратной реализации на System Verilog На просторах интернета есть несколько статей об алгоритме получения хеш-функции Стрибог (ГОСТ 34.11-2012), в том числе и на Хабре. Однако везде в качестве примера приводится реализация на языках программирования C, C#, Python и других. То есть идет последовательное выполнен...

«Кабанчик» и консистентность кэша Листал на днях «Высоконагруженные приложения» Мартина Клеппмана — хорошую книга, которую стоит прочитать всем современным разработчикам, которые имеют дело с программированием и поддержкой производительных приложений.Не смотря на то, что книга написана еще в 2014-2016 годах ...

Актуальные методы проверки работоспособности больших и высоконагруженных сетей. Протоколы мониторинга Привет, Хабр!В данной статье мы рассмотрим актуальные методы проверки работоспособности сетевого оборудования. Конкретно в этой статье мы поговорим про протоколы мониторинга. Статья является переваренным опытом компании Netopia, которая занимается разработкой программного о...

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

Мёртвое время. Как не ошибиться при настройке ШИМ в Renesas Synergy Продолжение разработки сервоконтроллера MC50. В предыдущем проекте управления DС мотором специалисты в комментариях высказали сомнения относительно способа изменять состояние линий ШИМ путём переназначения функций портов в реальном времени. Этот способ был применён в связи с...

[Перевод] Новое в SQL Server 2022: Get more out of Reporting Services with an improved user experience В новой версии SSRS мы проделали значительную работу по обеспечению лучшего уровня доступности, и добавили новые возможности, которые включают в себя:• Расширенную поддержку Windows Narrator1 для новых клиентских операционных систем Windows и Windows Server.• ...

Разработка HID-драйвера: шаг за шагом Предлагаем погрузиться в мир Human Interface Device (HID) в контексте операционной системы реального времени «Нейтрино». В статье мы расскажем про архитектуру HID и коснемся практических аспектов создания драйверов для устройств ввода. Кроме того, затронем вопросы системной...

Как увеличить шрифт так, чтобы контейнер не поехал? Адаптация UI/UX для людей с проблемами зрения в XML и Compose Я — Денис, Android-разработчик в «Лайв Тайпинге». В этой статье я продолжу рассказывать о современных подходах разработки адаптивного UI /UX для людей с ограниченными возможностями, разных национальностей и особенностями развития. В этой статьей я расскажу про разработку инт...

Navmesh, lightmaps и lightprobes: реализация и использование в Playcanvas В этой небольшой заметке хотелось бы поделиться результатами реализаций нескольких технологий из gamdev-а. В основном коснёмся двух тем. Первая тема - это использование navmesh-ей для нахождения путей в пространстве трёхмерной сцены. Вторая тема - это использование lightmap ...

«Галоп пикселя — часть шестая» — Анимация персонажей. Бег «Галоп пикселя», часть I — базовые понятия, этапы взросления, прикладные упражнения (линк) «Галоп пикселя», часть II — перспектива, цвет, анатомия и прикладные упражнения (линк) «Галоп пикселя», часть III — Анимация (линк) «Галоп пикселя», часть IV — Анимация света и тени ...

Обзор инструмента DefectDojo: почему его выбирают? Практика ASOC (Application Security Orchestration and Correlation, оркестрация и корреляция безопасности приложений), интегрирующая инструменты анализа защищенности со стеком разработки ПО, сегодня широко известна в сфере безопасной разработки. О ней много писали мы и другие...

Тестовые серверы Telegram: инструкция по эксплуатации Про разработку ботов в Telegram написано много текстов, а про «тестовый дата-центр» практически ничего. Ранее Pavelgram освещал этот вопрос: он кратко рассказал, что такое тестовые серверы и как с ними работать. Я продолжу это начинание. Эта статья — сборник разбросанной д...

Разработчики Dragons Dogma 2 озвучили ближайшие планы по поддержке игры В последнее время игровая индустрия была озабочена состоянием Dragons Dogma 2 после её запуска, когда игроки столкнулись с техническими проблемами и вопросами микротранзакций. Однако разработчики не остались в стороне и активно работают над улучшением игрового процесса.

Опыт внедрения компонентной разработки Привет! Меня зовут Александр Омельяненко, я работаю тимлидом Flutter-команды в AGIMA. Расскажу, как и почему на одном из наших проектов мы внедрили компонентный подход к разработке и какие плоды нам это дало. В статье покажу основные плюсы и минусы нашего решения. А еще затр...

Как мы тестируем серверы Привет! Меня зовут Олег Рябов, я главный эксперт Управления исследований и разработок новых решений компании «Ростелеком-ЦОД» и автор программы и методики испытаний (ПМИ) серверов. В этой статье расскажу, как мы проводим тестирование серверов и какие утилиты и методы использ...

Опыт использования бизнес-процессов Битрикс в рамках крупного корпоративного портала Наша команда специализируется на разработке и развитии функционала корпоративного портала группы компаний НЛМК.На практике мы сталкиваемся с самыми разными задачами: от вывода ленты новостей компании и простейших форм обратной связи до функционала оценки качества работы сотр...

API vs ABI: разницу видят не только лишь все Привет, дорогой читатель! Думаю, ты точно знаешь, что такое API и как сделать, чтобы твои изменения были API-совместимыми. На самом деле я сам никогда не задумывался, что существует ABI-совместимость, до момента, пока не столкнулся с разработкой библиотеки. У нас в компании ...

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

Книга «Как сочинить видеоигру: 201 совет от сценариста Broken Sword и Resident Evil» Привет, Хаброжители! Разработка сценария для видеоигры — увлекательное дело. Но игровым писателям приходится постоянно учиться и бросать вызов ограничениям. Это связано с тем, что игровая индустрия развивается и становится все более зрелой. Тут и стремительное совершенств...

Реализация многооконного приложения на Vue 3 В наше время чуть ли не каждое приложение использует браузерный клиент. Это просто в написании, это кроссплатформенно, это легко в использовании. Браузерные решения уже активно используются и в промышленной сфере: аналитиками, операторами. WEB-приложения для управления промы...

Всё под контролем! История игровых устройств ввода: от привычных до самых странных Привет, Хабр! Меня зовут Сергей Милосердов, и я работаю системным аналитиком Nau Engine. Как часть команды часть корабля продукта, предметно я очень глубоко погружен в игровую индустрию и ее историю. До того, как я присоединился к разработке движка, у меня был большой опыт р...

От винта! Рычаги и винты в Unity Всем привет! Меня зовут Григорий Дядиченко, и я разрабатываю разные проекты на заказ. Сегодня хотелось бы поговорить про рычаги и винты, и их реализацию в Unity. Сейчас как раз на хайпе Apple Vision Pro, а подобные штуки бывают весьма полезны в проектах с виртуальной и допол...

Как мы работаем с ресурсами в веб-приложениях Приложения, созданные на платформе 1С:Предприятие, могут быть развернуты в трёхзвенной архитектуре (Клиент – Сервер приложений – СУБД). Клиентская часть приложения может работать, в частности, как веб-клиент, в браузере. Веб-клиент – это довольно сложный фреймворк на JavaScr...

Аутентификация для WebSocket и SSE: до сих пор нет стандарта? WebSocket и SSE появились более десяти лет назад, однако до сих пор в стандартах отсутствуют рекомендации по решению задачи аутентификации для подобных соединений.В статье разберем особенности аутентификации применительно к протоколу WebSocket и технологии Server-Sent Events...

97 откликов, 2 тестовых, 3 технических собеседования — и оффер в IT-компанию у меня в кармане Привет, я Настя — младший разработчик в «Метре квадратном». Это статья о том, как я пришла в разработку практически с нуля в 2023 году. Знаю, на «Хабре» таких уже много, но когда-то подобная статья помогла мне начать свой путь, и я решила, что этот текст тоже может быть поле...

Разработка Tower Defense на Unity — часть 1 Доброго времени суток, ребята. Это моя первая статья вообще и первая в цикле статей о том, как я решил создать игру в жанре Tower Defence. Данный текст я пишу как человек неопытный и только исследующий сферу, так что он может показаться вам интересным, если вы уже давно проф...

Слух: Новое поколение приставок Xbox может стать портативным В Сети продолжает появляться всё больше информации о работе игрового подразделения Microsoft над улучшением их консоли Xbox. Так всплыли слухи о том, что многие эксклюзивные проекты потеряют этот статус и выйдут на консолях от Sony и Nintendo — подтверждение этой информации ...

REST API сервер на Bash с использованием сокетов и Apache Всем привет! Ранее рассказывал о том, как создать REST API и Web-сервер на PowerShell для Windows, а также упоминал, что подобный сервер будет работать и в системе Linux, благодаря кроссплатформенной версии PowerShell Core. Безусловно, для подобных целей лучше используются с...

Анемичная модель предметной области и логика в сервисах Анемичная модель предметной области (Anemic domain model) это такая модель, где сущности содержат только свойства, а бизнес-логика находится в сервисах. Ее противоположность это богатая модель предметной области (Rich domain model), где логика находится в сущностях, а cервиc...

Что скрывается в коде игрового движка, написанного на Java? Вы когда-нибудь интересовались игровыми движками, написанными на Java? В этой статье мы рассмотрим и проверим на наличие ошибок в исходном коде один из популярных игровых движков — jMonkeyEngine. Возможно, мы даже узнаем, почему игры пишутся на C# и C++, а не на Java. Читать...

«Слово из трёх букв», или Пишем SMS-аналог Wordle с помощью MTС Exolve Привет, Хабр! Сегодня поговорим об игре «Угадай слово» и её вариациях, например Wordle («Вордли»). Скорее всего, вы с ней сталкивались, а если нет, поясню: она похожа на старую добрую «Виселицу» — есть загаданное слово, и надо за ограниченное количество попыток его угадать. ...

Как работает кнопка Mute на Яндекс Станции. Подробный разбор логики и схем Привет! На связи Геннадий «Крэйл» Круглов из команды, которая разрабатывает аппаратную часть Яндекс Станций. С кем-то из читателей Хабра мы уже могли познакомиться в рамках мероприятий Я.Железа, где делимся опытом разработки устройств.  Последние несколько лет мы с...

Как использовать Spring в качестве фреймворка для Flink-приложений Всем привет, меня зовут Александр Бобряков. Я техлид в команде МТС Аналитики, занимаюсь Real-Time обработкой данных. Недавно мы начали использовать фреймворк Apache Flink, и я решил поделиться на Хабре своим опытом внедрения этой технологии в наши продукты в цикле статей. В ...

Как работает физика в играх В мире видеоигр игровая физика играет важную роль, определяя реалистичность и взаимодействие игрового мира с игроком. Что же происходит под капотом? Какие алгоритмы и подходы используются в современных движках? И что же значит «застрять в текстурах»? ...

Разработка опросов для анализа Customer Effort Score (CES) Customer Effort Score (CES) — показатель, который измеряет усилия, приложенные клиентом для взаимодействия с компанией или использования продукта/услуги. Этот показатель становится не просто числом, а ценным инструментом в руках бизнеса для оптимизации процессов и повышения ...

Временное хранилище данных на Apache Druid: почему это эффективно сработало для загрузки табличных файлов Всем привет! Меня зовут Амир, я Data Engineer в компании «ДЮК Технологии». Расскажу, как мы спроектировали и реализовали на Apache Druid хранилище разрозненных табличных данных.В статье опишу, почему для реализации проекта мы выбрали именно Apache Dr...

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

Создаем I2C Master Controller на Verilog. FSM, Clock, Output Logic, etc После длительного перерыва я продолжил разработку I2C Master Controller на Verilog. В прошлых статьях я рассмотрел основной теоретический материал, необходимый для реализации изначальной задумки. В этом материале переходим к более интересному содержанию: я последовательно ра...

Новое железо или тонкости интеграции RoCEv2 в VMware vSAN ESA В этом году руководство приняло решение обновлять железо в серверной. Но, с учетом уго древности, требовалось обновить если не всё, то почти всё.На момент принятия решения об обновлении мы имели полку HP C3000 с блэйд серверами g6-g7 поколений, подключенную к дисковым хранил...

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

100 вопросов для подготовки к собесу Python Доброго времени суток!Представляю подборку из 100 вопросов с собесов на позицию джуна Python-разработчика. На Хабре есть неплохие статьи на тему подготовки к собеседованию и всё в таком духе, но прямо набора вопросов/ответов на понимание Python в формате чек-листа не встреча...

Плагин для анализа планов PostgreSQL в IDE JetBrains и его разработка Для пользователей explain.tensor.ru - нашего сервиса визуализации PostgreSQL-планов, мы создали плагин "Explain PostgreSQL" для всех IDE от JetBrains, теперь есть возможность форматировать запросы и анализировать планы непосредственно в IDE.Как использовать плагин и детали ...

Недельный геймдев: #158 — 28 января, 2024 Из новостей: Microsoft уволит 1900 сотрудников игрового подразделения, появился игровой акселератор Narwhal, Apple вводит Run‑Time Fee, топ‑менеджеры спрогнозировали спад в индустрии.Из интересностей: подробности разработки Palworld, 13 лет работы над одн...

Секреты технического собеседования от СТО с опытом 1000+ интервью Привет, меня зовут Артём Пулявин, с 2022 года я занимаю позицию технического директора в Ситидрайве и отвечаю за всё IT в компании — от закупки серверов и ноутбуков до разработки и найма новых членов команды. За 20-летнюю карьеру я провёл более 1 000 собеседований и взял на ...

Графика древности: палитры, часть 2/2 В предыдущей части цикла статей мы рассмотрели историю эволюции палитр в цветной компьютерной графике домашних компьютеров и игровых консолей, а также причины, почему они оказались именно такими и содержали те или иные цвета. Однако тема палитровой графики ещё не исчерпана....

[Перевод] Генезис-файлы. Часть II: Hashcash или как Адам Бэк разработал сердце Биткоина Это – вторая публикация в серии материалов, посвященных становлению движения шифропанков. Эти статьи призваны познакомить сообщество с технологиями, предшествующими киберкоммерции, которую мы сегодня наблюдаем. Понимание истории, осознание мотивов и методов достижения целей ...

Как я написал свой первый классификатор эмоций Всем привет! Немного о себе. Меня зовут Максим, я работаю специалистом по Machine Learning в компании SimbirSoft. Последние два года я углубленно изучал область машинного обучения и компьютерного зрения и сегодня с удовольствием поделюсь с вами опытом разработки личного пет-...

Как написать ТЗ на разработку чат-бота или AI-ассистента  Привет, Хабр! Меня зовут Элина Тедеева, и я тимлид команды внедрения в команде Just AI. В идеальном мире разработка бота или голосового ассистента начинается с технического задания — именно оно должно определять все этапы: от идеи до реализации. О том, почему...

[Перевод] Генезис-файлы. Часть I: eCash Дэвида Чаума и зарождение мечты шифропанков Это – первая публикация в серии материалов, посвященных становлению движения шифропанков. Эти статьи призваны познакомить сообщество с технологиями, предшествующими киберкоммерции, которую мы сегодня наблюдаем. Понимание истории, осознание мотивов и методов достижения целей ...

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

Опыт автоматизации управления FPGA-стендами для распределенной команды: отказ от готового решения и работа над ошибками В software-разработке с автоматизацией обычно все неплохо: более-менее понятно, как настроить CI и автоматизировать отдельные этапы CI-конвейера. Есть множество готовых решений и практик. Но, когда речь заходит об автоматизации тестирования на «железе», появляется множество ...

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

Простыми словами про обработку текстовых запросов пользователя в Телеграмм ботах на java Тем, кто так или иначе уже сталкивался с разработкой Telegram-ботов на java, известно, что бот должен уметь отправлять запросы Telegram-серверу и получать от него обновления (updates). В настоящее время существует два способа получения обновлений:- использование LongPolling ...

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

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

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

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

Редизайн игрового интерфейса. Как, а главное зачем? Обновление дизайна UI в проекте, который уже запущен в релиз - тема скользкая. Когда, как, а главное — зачем это делать? В этой статье я расскажу, как этот вопрос решался в нашем конкретном случае и поделюсь своими мыслями и советами на эту тему. Читать далее

Создание библиотек и публикация в npm Занимаясь веб-разработкой в it-компании Intelsy на аутсорс- и аутстафф-проектах, я постоянно подключаю и использую библиотеки. Решил собрать воедино всю накопленную информацию по этой теме и поделиться с теми, кому это может быть нужно: с опытными или начинающими разработчик...

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

Будьте в курсе развития RISC-V: обсуждаем обновления в разработке и изучаем бенчмарки серверов на открытой архитектуре Если вы интересуетесь развитием открытой архитектуры или занимаетесь разработкой систем под нее, не пропустите бесплатный митап российского Альянса RISC-V. Он объединяет независимых разработчиков вычислительной техники и программного обеспечения на основе свободной архитекту...

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

Погружаемся в PEB. DLL Spoofing В предыдущей статье мы в первом приближении рассмотрели PEB и разобрались, как подменить аргументы командной строки.Продолжая разбираться с PEB, рассмотрим еще один способ повлиять на исполнение программы, и попробуем подменить вызываемую из DLL функцию. Читать далее

Квест по синхронизации аналитического и оперативного хранилищ в реальном времени без потерь на сотнях терабайт данных Я работаю в компании STM Labs, где мы строим большие высоконагруженные системы класса Big Data. Эта статья написана по мотивам моего выступления на конференции Saint Highload 2023. Хочу рассказать вам увлекательную историю про то, как мы искали лучшее решение по синхронизаци...

Celery: изучаем на реальных примерах ч.1 Лучший способ что-то понять - попробовать на практике, а лучшая практика - это реальные примеры. В этой статье мы узнаем шесть основных сценариев использования Celery. Разберем основные методы и аргументы, которые точно пригодятся. От асинхронной обработки задач до управлени...

.NET+Safeguard: Реверсинг без ассемблера Сегодняшняя статья будет посвящена реверсингу приложений, написанных с использованием фреймворка .NET. Сначала мы немного поговорим о том, что такое .NET, чем код на нем отличается от других сред разработки и затем разберем один обфусцированный Crackme, попутно рассмотрев ря...

Удаленно следим за состоянием газового котла. Продолжение Хочу поделиться с читателем печальной, но в тоже время забавной историей, которая произошла накануне Нового Года. Эта история печальна, так как её пришлось пережить, а насколько она забавна, судить вам. Так или иначе, будет затронута тема газового котла на даче и вопрос стаб...

Нужен ли продакт в ML-команде? Мнение изнутри Пять лет назад из обычного продакт-менеджмента я перешла в команду с дата-сайентистами. И весь процесс моей работы сильно изменился. Раньше после определения потребностей пользователя я приходила к команде разработки с готовой задачей и дизайн-макетами. А после разработ...

Выполняем сторонние программы на микроконтроллерах с Гарвардской архитектурой: как загружать программы без знания ABI? Зачастую в процессе разработки собственных устройств или моддинга уже существующих, встаёт задача выполнения стороннего кода: будь то ваши собственные программы с SD-флэшек, или программы, написанные другими пользователями с помощью SDK для вашего устройства. Тема компилят...

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

[Перевод - recovery mode ] Глубина вашего виртуального кошелька: Что финтех-приложения знают о вас? Доброго времени суток. Хотел предложить вашему вниманию перевод интересной статьи о расследовании, связанном с персональными данными компаниями Maldita.es, Tactical Tech и SocialTIC на территории ЕС. Расследование затронуло приложения связанные с финансами, так называемый фи...

Как я попробовал написать авиасимулятор Давным-давно, в 2015 году я написал свою первую статью на хабр: Пишем простую* игровую физику самолёта Статья появилась не сама по себе — я писал игру, но так её и не доделал. За предыдущие девять лет я несколько раз возвращался к проекту, что-то улучшал, но по-факту он так...

[Перевод] Города в киберпространстве: образ города и разработка ПО Уже почти 200 лет урбанисты проектируют города с учетом потребностей людей. UI/UX дизайнерам есть чему у них научиться.Эта статья — вторая часть моего исследования связи между городами, теорией градостроительства, современными практиками разработки цифровых продуктов и польз...

Хороший, плохой, никакой: почему важно проектировать дизайн и как это делать? Всем привет! Меня зовут Владислав Шиханов, я ведущий программист в CDEK. В этой статье я хочу рассказать о том, как мы пришли к проектированию и review плана разработки до начала реализации задачи, что это дало и как повлияло на с...

«Трудности перевода»: как ChatGPT справился с задачей адаптации сложных текстов Привет, Хабр! Меня зовут Сергей Кулабухов, я занимаюсь внедрением ИИ в бизнес-процессы компании Fix Price. С появлением моделей обработки естественного языка (natural language processing) изменился и подход к реализации подобных задач. Теперь мы не программируем и не обучаем...

Unreal Engine 5: Nanite — Z-тест для самых маленьких Доброго времени суток,Неожиданной для себя, обнаружил, что по какой-то причине, присутствует не так много содержательных статей о работе технологий Unreal Engine 5 на русском языке. Я решил исправить эту несправедливость. И чтобы не повторятся с англоязычными статьями или не...

Ограничения в телеграм-бот (Bot API), о которых никто не расскажет Привет! Меня зовут Оля, я программист учебного центра компании «Тензор».В декабре 23-го мне поступила творческая задача разработать телеграм-бот для проведения новогоднего марафона-тренинга по личностному росту.В этой статье расскажу о проблеме, с которой столкнулась при раз...

Кто такие специалисты по безопасной разработке и где на них учиться Привет, Хабр! В этой статье мы разберемся, кто такой специалист по безопасной разработке, какие требования к нему предъявляют работодатели, сколько специалисты этой профессии сегодня зарабатывают и куда можно пойти учиться на AppSec-специалиста. Давайте знакомиться! Меня зов...

Наш опыт Android- и iOS-разработки в проекте Посмотрим на текущую ситуацию с разработчиками Android и iOS‑приложений. Обсудим варианты разработки мобильных приложений. Разберемся, как мы в стартапе NFCKEY работаем в этом направлении. Затронем особенности, которые возникают в связи с у...

Первое приложение на SolidJS В этой статье познакомимся с SolidJS − JavaScript-библиотекой для создания пользовательских интерфейсов без виртуального DOM. Мы создадим легкий список задач с использованием TypeScript и разберем некоторые особенности библиотеки. Читать далее

[Перевод] Разработка под Android в 2024 году Эта статья отражает моё личное мнение и профессиональные взгляды, учитывающие различные точки зрения в сообществе Android-разработчиков. Кроме того, я регулярно просматриваю руководства от Google для Android.Важно подчеркнуть: некоторые хорошие инструменты, паттерны и архите...

«Разгоняем» HashSet, HashMap и циклы на примере Dart Если вы занимались профилированием своего приложения, то, глядя на CPU Flame Chart, вероятно, испытывали смесь досады и азарта, глядя на особо «жирный» метод. Досады – что ваша программа всё ещё не идеальна по скорости. Азарт – от того, что вы можете докопаться до причины пр...

Проектирование экономики F2P игр на основе продуктовых метрик Несмотря на то, что универсального алгоритма проектирования игровой экономики сформулировать не получится: уж слишком разные механики в разных играх, - мы можем попробовать сформулировать один из подходов, которым можно руководствоваться, начиная работу над экономикой вашей ...

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

Еда из воздуха и стейк без мяса: фудтех-стартапы и их разработки В предыдущем материале мы рассказали о технологиях 3D-печати пищи и альтернативному кофе без кофе. Но некоторые идеи фудтех-стартапов кажутся реализацией фантазий научных фантастов, настолько необычными они кажутся. О некоторых из них — в этой статье. Читать далее

Безопасность Okta под угрозой: утечка затронула всех пользователей службы поддержки Okta сообщила, что взлом ее системы клиентской поддержки в октябре затронул всех пользователей, а не меньше 1%, как изначально предполагалось

Торговый бот на Python с нуля (с использованием Binance API), часть 2 Продолжение первой части статьи о создании торгового бота на python с нуля с использованием Binance API!В данной статье мы напишем полностью рабочую реальную стратегию с использованием биржевых данных. Я расскажу что такое линии Боллинджера, а также о других популярных страт...

Как сделать NeoVim самым удобным текстовым редактором: туториал по настройке В этой статье затронем редакторы семейства Vi и разберем базовые сценарии работы с NeoVim. Начинающие специалисты смогут использовать материал в качестве туториала, а опытные разработчики, возможно, отметят для себя что-то новое.Почему именно NeoVim? Всё просто: этот те...

Разработка системы управления электроприводом постоянного тока. Часть 1 — математическая модель Статья про разработку системы управления робототехнического устройства на примере привода рулевой поверхности малогабаритной ракеты. Читать далее

Вступление в мир разработки игр Исследуйте путь профессионала в области машинного обучения и его команды, погружаясь в разработку мобильных игр. Статья рассказывает о переходе от участия в соревнованиях на Kaggle к созданию мобильного приложения «Угадай фильм». Узнайте о проблемах разработки MVP для Androi...

Разработка и тестирование целочисленного сумматора с AXI-Stream интерфейсами. Часть 1 В данном цикле статей будет представлен процесс разработки и тестирования RTLмодулей на языке Verilog. В качестве примера будет рассмотрен целочисленный сумматор с AXI-Stream интерфейсами. Мы разберем некоторые приемы и паттерны, часто используемые при проектировании цифровы...

Динамический шеринг GPU в Kubernetes: разбор взлетов, падений и существующих решений Привет, Хабр! С вами снова Антон, все еще DevOps-инженер в отделе Data- и ML-продуктов Selectel, который все еще исследует тему шеринга GPU. В предыдущей статье я рассказал, как можно использовать шеринг видеокарт в Kubernetes. В комментариях была затронута тема динамическ...

Микросотовые IP-DECT-системы Yealink: сбор требований и проведение радиопланирования Вторая статья посвящена особенностям работы с микросотовой системой Yealink на этапе ее внедрения.Внедрение — важнейший этап построения стабильно работающей высоконагруженной микросотовой DECT-системы. В этой статье рассмотрим следующие вопросы:• что такое радиопланиров...

История «Dark Mode»: как «баг» стал «фичей» «Темная тема», «темный режим», «ночной режим», «дарк мод» — опция, которая сейчас есть практически в каждой операционной системе, приложении, браузере, сайте. Она окрашивает фоновые элементы графического интерфейса в темный цвет, а текст — в белый.Многие текстовые редакторы ...

Разгоняем Ignite в облачной инфраструктуре. Часть 2 Привет! С вами Дмитрий Пшевский и Семён Попов, технические лидеры юнита Data в Сбере. Это вторая часть нашего материала о производительности сервисов при работе с Ignite. В первой части мы рассказали, как перешли от монолита к микросервисной архитектуре, попробовали поработ...

Спутник как IT-проект. Что нужно разработчику для создания и запуска своего кубсата Привет, Хабр! Меня зовут Людмила, я SDET-специалист в компании SimbirSoft. Свои школьные и студенческие годы я провела в студенческом аэрокосмическом конструкторском бюро, занимаясь проектированием малых космических аппаратов и разработкой софта и алгоритмов для них. Им...

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

Обзор современных подходов персонализации диффузионных нейронных сетей Задача персонализации text-to-image модели состоит в донастройке предобученной нейронной сети так, чтобы она могла генерировать изображения заданного объекта в выбранных сценах. Несмотря на то, что подходы к решению этой задачи существуют, для их применения в высоконагруженн...

Тестирование сборки: Supermicro X13SAE-F Intel Core i9-14900KF 6.0 GHz В этой статье мы поделимся результатами тестирования компьютерной сборки на базе материнской платы Supermicro X13SAE-F и нового процессора Intel Core i9-14900KF с возможностью разгона до 6.0 GHz.HOSTKEY — хостинговая компания, поэтому нам важно своевременно обновлять оборудо...

Готовим Telegram Mini App без туннеля и с Hot Module Reload на React, TypeScript В этой статье разберем как собрать комфортную девелопмент среду для разработки Telegram Mini App. Под комфортом я понимаю ситуацию когда тебе не нужно выгружать свое приложение в облако, чтобы увидеть результат работы в телеге, или запускать туннель типа ngrock, который посл...

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

Рекомендации при работе с PostgreSQL Доброго времени суток. Основываясь на своём опыте хочу представить некоторые рекомендации при разработке кодовой базы на SQL.Данные рекомендации получены горьким опытом, так что надеюсь, они Вам помогут :) Читать подробнее и больше не косячить

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

Разработка и применение систем разграничения доступа на базе атрибутов Привет! Меня зовут Михаил, в Positive Technologies я руковожу бэкенд-разработкой метапродукта MaxPatrol O2. В этой статье я расскажу, зачем нам в компании понадобилось разграничение доступа на основе атрибутов. Его еще называют ABAC (attribute-based access control). Рассмотр...

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

Разработка Tower Defense на Unity — часть 2, проектирование И так, в прошлой статье цикла тут мы определились с концепцией игры, геймплеем и программными средствами. Самое время поговорить об архитектуре, организации игрового процесса, что и как будет происходить. Чтобы определиться с организацией всех процессов в игре необходимо раз...

Опросы для Определения Индекса Лояльности Клиентов (CLI) Индекс лояльности клиентов (CLI) – это не просто метрика; это комплексный индикатор, который отражает удовлетворённость, преданность и эмоциональное вовлечение клиентов. В этой статье мы углубимся в методологию опросов, которые помогают определить CLI, и обсудим, как эта инф...

Почтовый сервер на Debian / ALT / Astra / RedOS — опыт портирования Ansible Playbook История начинается в 2017-м году - когда мне потребовался самодельный почтовый сервер на связке Postfix + Dovecot + Roundcube + LDAP-каталог (AD на тот момент). Сказано - сделано - времени ушло прилично (делалось для FreeBSD), но зато много в чем получилось досконально разоб...

Инструкция по переезду и миграции данных с Google Firebase на Self-hosted Supabase Всем доброго дня! Комментарии к моей предыдущей статье о том, как я развиваю свой pet-проект, а также различные законы, подразумевающие локализацию персональных данных на серверах, размещенных на территории РФ (в частности Федеральный закон от 21.07.2014 № 242-ФЗ «О внесении...

Don't Repeat Yourself: Как правильно использовать принцип DRY в разработке ПО Принцип “Не повторяйся” (Don't Repeat Yourself, или DRY), то есть избегай дублирования кода, часто относят к обязательным практикам в программировании. Однако в реальности часто можно увидеть, как в общем коде оказываются концептуально разные блоки, которые похожи только по ...

[Перевод] В нас нет ничего особенного Споры вокруг традиционной и программной инженерии сводятся, как правило, к обсуждению различий между ними. Речь в этой статье пойдет вовсе не о том, что делает инженера инженером. Сам подход к объяснению понятия «инженерия», часто работает на маргинализацию сферы разработки ...

Опровергаю пять архитектурных заблуждений Привет! Я Алексей, iOS-разработчик в Тинькофф. Участвую в развитии архитектуры приложения, провожу собеседования и занимаюсь менторингом разработчиков.За мой рабочий опыт у меня сложилось ощущение, что в среде мобильной разработки есть недопонимание ключевых принципов архите...

Перехват трафика мобильных приложений Часто случается так что на необходимом сайте установлена защита от ботов. Например: QRATOR, Cloudflare, Akamai Bot Manager и пр. Можно потратить множество ресурсов на обход этих систем, но если у вашего ресурса есть мобильное приложение, то можно пойти другим путём. В подавл...

Frontend внутри Bitrix. Использование и написание экстеншенов + SPA приложение на Vue или React В данной статье мы рассмотрим правильный подход к Frontend разработки в Bitrix. А именно разделение на расширения которые сможем подключать в любой момент времени. + напишем SPA приложение на React. Читать далее

Интервью с Валентином Бартеневым: как бывшие сотрудники Nginx разрабатывают отечественный веб-сервер Angie Уже больше года в информационном пространстве появляется компания «Веб-Сервер», разрабатывающая отечественный открытый веб-сервер Angie и его коммерческую версию Angie PRO. Информационная служба Хабра пообщалась с руководителем отдела разработки «Веб-Сервера» Валентином Барт...

Шаблонизируй это или Как ускорить разработку при помощи одного документа Привет! На связи лид команды аналитиков Magnus Tech Владислава Никитина.В заказной разработке каждый проект начинается со сбора бизнес-требований к будущей системе. Это важный этап, ведь именно здесь определяются контуры задач, которыми займутся разработчики. И с ним связан ...

Async/await, There is no thread – легко обмануть тех, кто сам обманываться рад Когда нам показывают на некотором примере, что асинхронная операция не создает потока, нам пытаются внушить, что асинхронная операция НИКОГДА не создает потока и в принципе не может его создать, но это не правда! Простой пример с работающим кодом доказывает обратное. Давайте...

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

Определяем оптимальный размер групп при множественном А/Б тестировании Привет, Хабр! В этой статье мы затронем один из аспектов множественного тестирования, а именно определение оптимальных размеров групп в случае общей контрольной группы. Докажем теоретически, что предлагаемый способ является оптимальным и сравним его с другими популярными под...

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

Как я зарабатывал $10,000 в месяц на серверах ARK: Survival Evolved Я — ведущий гейм дизайнер с опытом разработки крупных, хардкорных проектов в жанрах от MMORPG и CRPG до мобильной MOBA. Почти три года мы с лучшим другом продюсировали, дизайнили, разрабатывали и занимались живым оперированием своих серверов по игре ARK: Survival Evolved. За...

Testplane в опенсорсе: автоматизируем пользовательские сценарии в веб-интерфейсах Привет! Меня зовут Евгений Константинов. Я занимаюсь разработкой инструментов автоматического тестирования в Яндексе. В этой статье хочу рассказать про историю создания инструмента TestplaneTestplane поможет вам:- протестировать разные сценарии в любом браузере; - прове...

Спринт с багами, или как (не) создать себе проблем В этой статье постараюсь описать своё видение планирования спринта с учетом тестирования спринтовых задач и исправления багов по итогам тестирования. Внезапно для меня тема вызвала дискуссию на проекте, в разработке которого я участвую. Читать далее

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

[Перевод] Модить или не модить: Пользовательский контент — это будущее игровой индустрии В этой небольшой статье я хочу поговорить с вами о новой эре, которую игровой индустрии пора полностью принять, поскольку она не только приводит к созданию лучшего контента для игроков, но и способствует более глубокому вовлечению игровых студий. Читать далее

Кому и зачем нужны разработчики мобильных приложений в 1С Платформа 1C:Enterprise — самый простой способ перейти в сферу мобильной разработки. Научиться писать приложения на 1С проще, чем освоить Swift, Java или Kotlin. Обучение займёт всего пару месяцев. При этом специалист с такими знаниями всегда будет востребован на рынке благо...

Производителей ARM-процессоров становится больше: теперь и AMD с Nvidia. А вот у RISC-V проблемы ARM-архитектура год от года становится всё популярнее. Сейчас уже не только Apple, но и другие крупные компании используют её для разработки современных чипов для ноутбуков и ПК. На днях стало известно о том, что AMD и Nvidia независимо друг от друга занялись разработкой име...

Неочевидные моменты TypeScript и способы их решения Разрабатывая на TypeScript, можно столкнуться с ситуациями, в которых код будет работать не так, как ожидается. В статье разберем несколько таких моментов. Часть просто придется иметь ввиду, часть решается обновлением, а часть исправляется – обо всем по порядку. Если вам бу...

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

Система иконок на React Очень часто при разработке React-приложения нам приходится работать с большим количеством иконок в проекте. Наверное, каждый разработчик стремится максимально упростить и автоматизировать подобные рутинные задачи. Есть несколько способов работы с иконками в веб-приложениях, ...

Разработка мобильного клиента СДУ «Приоритет» под ОС «Аврора» на фреймворке Qt Всем привет! Меня зовут Илья, и я разработчик ПО в области автоматизации документооборота в компании «Диджитал Дизайн». Так получилось, что изначально я iOS-разработчик, но по воле случая мне удалось поучаствовать в создании мобильного приложения — клиента СДУ «Приоритет» (д...

Дообучение ruGPT-3.5 13B с LoRA Добрый день, уважаемые читатели и авторы Хабра!Сегодня я рад представить вам подробное руководство по обучению модели ruGPT-3.5 13B с использованием датасетов модели Saiga-2/GigaSaiga, технологии Peft/LoRA и технологии GGML. Эта статья призвана стать полезным и практичным ре...

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

В сети раскрыты первые технические характеристики Nintendo Switch 2 Игровая консоль получит значительный технический апгрейд по сравнению с предыдущими моделями.

[Перевод] Прекратите клепать базы данных В жизни каждого инженера-фронтендера наступает момент, когда осознаёшь: далее не обойтись без кэширования данных из API. Всё может начаться с самых невинных вещей: сохраняем предыдущую страницу с данными, чтобы кнопка «Назад» срабатывала мгновенно; реализуем простенькую логи...

Укрощаем DNS в Wireshark. Часть 2 В предыдущей статье мы начали рассматривать использование анализатора пакетов Wireshark для работы с DNS. В этой мы продолжим рассмотрение данной темы и поговорим о рекурсии DNS. Здесь принцип обмена пакетами будет немного сложнее, потому что помимо обмена DNS пакетами между...

Графика древности: пятая волна. Аутсайдеры и современность (часть 4/4) В предыдущих частях этого лонгрида мы узнали всё про лидеров пятого поколения игровых консолей и про параллельную реальность 3D-ускорителей на персональных компьютерах. Казалось бы, тема исчерпана. Но не спешите расслабляться. В заключительной, самой объёмной части статьи м...

Попросил нейросети собрать игровой ПК за 100 000 рублей. Вот что из этого получилось Говорят, что нейросети могут все. Они пишут дипломы, знакомятся с девушками, рисуют картины и в считанные минуты делают то, на что профессионалам, возможно, потребовались бы часы, дни или даже недели. Многие верят, что такими темпами развития им совсем скоро удастся заменить...

Как систематизировать работу с входящими документами в компании с помощью OCR-инструментов. Часть 1 Ежедневно компании выполняют операционную и административную работу – неинтересную рутину, но без которой в действительности невозможен никакой бизнес. Крупная часть этой истории – входящий и исходящий документооборот, который может достигать тысяч бумажных копий. Чем быстре...

И вот она явилась: представлен новый выпуск свободной ОС OpenBSD 7.5 Прошло не так много времени с момента появления предыдущего релиза OpenBSD, и вот сейчас представлен новый. Стоит напомнить, что операционная система известна не только сама по себе, её разработчики создали немало полезных и востребованных компонентов, включая LibreSSL (форк...

Похоже, Sony Bend готовится к выпуску Days Gone 2 Источник информации, тесно связанный с одной из студий Sony, подтвердил слухи о разработке продолжения Days Gone. С успехом предсказывавший детали Destiny 2 инсайдер теперь сообщает о работе Sony Bend над новой главой популярной игровой серии

FAQ по Shadowsocks/XRay/XTLS/Reality/Nekobox/etc Эта статья - сборник разных вопросов и ответов на них, которые звучали в комментариях к моим предыдущим статьям (Современные технологии обхода блокировок: V2Ray, XRay, XTLS, Hysteria, Cloak и все-все-все, Bleeding-edge обход блокировок с полной маскировкой: настраиваем ...

Разработка игр с использованием Go и библиотеки Ebiten Go является мощным и эффективным языком программирования, который можно использовать для создания игр. В этой статье мы рассмотрим разработку простой игры с использованием языка Go и библиотеки Ebiten, предназначенной для создания 2D игр. Читать далее

От Kubernetes в мечтах к Kubernetes в проде. Часть 4. Хранилище секретов ― HCP Vault В серии статей по теме DevOps мы вместе с Lead DevOps инженером департамента информационных систем ИТМО Михаилом Рыбкиным рассказываем о проверенных инструментах выстраивания инфраструктуры, которыми с недавнего времени пользуемся сами. В предыдущих статьях мы уже рассмотрел...

Рекомендации по разработке баз данных и клиентских приложений Привет, Хабр! Представляю Вашему вниманию небольшой список рекомендаций по разработке и сопровождению баз данных, надеюсь будет полезным! Читать далее

Pgpool-II Привет, Хабр!Pgpool-II позволяет юзерам PostgreSQL управлять пулами соединений БД, реализовывать репликацию данных между серверами БД. Pgpool-II работает как прокси-сервер между клиентскими приложениями и серверами PostgreSQL, перехватывая запросы от клиентов и направляя их ...

Недельный геймдев: #170 — 21 апреля, 2024 Из новостей: Brackeys вернулся, продажи Buckshot Roulette превысили миллион копий за 4 месяца, исходники Descent 3 выложили в опенсорс, Take-Two уволит около 600 сотрудников, Andreessen Horowitz потратит еще $600 млн на игровые инвестиции.Из интересностей: DOTS и 100к ани...

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

[Перевод] Реальность обладает поразительным числом деталей Мой отец эмигрировал из Колумбии в Северную Америку, когда ему было 18. Сделал он это в поисках лучшей жизни. Для меня и моего брата это значило — проводить много времени на уличном холоде. Отец выбрал путь улучшения своей судьбы через улуч...

Даешь магнетрон: микроволновка для советского общепита В предыдущей статье мы подробно рассказали об истории изобретения микроволновки американским инженером Перси Спенсером. Не менее увлекательны были разработки советских ученых.  Читать далее

Как я стал ментором за пределами компании Всем привет! Меня зовут Юра Тюрин, я CTO, управляю разработкой SaaS-приложения для ритейла с командой из трёх десятков разработчиков, тестировщиков, DevOps-инженеров. Специализируюсь на разработке клиент-серверных мобильных и веб-приложений. Наставничеством внутри компании я...

Отладка в SQL Developer Привет! Меня зовут Алексей Маряхин, я разработчик на Oracle. В этой статье продолжим знакомиться с темой отладки PL/SQL-кода.  В предыдущей статье мы изучили возможности отладки в PL/SQL Developer. В этой предлагаю рассмотреть ещё один инструмент — SQL Developer (версия...

[Перевод] Реализация случайности в CSS при помощи тригонометрии В прошлых статьях я рассматривал тему реализации псевдослучайности в CSS при помощи операции целочисленного деления и использовал простые числа для создания автоматического счётчика, при помощи которых можно генерировать разные значения для каждого объекта. Благодаря этому ...

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

Дизайн уровней в The Last Guardian: пример геймплейного повествования The Last Guardian поражает своим уникальным подходом как в плане геймплея, так и сюжета, обеспечивая игроку захватывающий опыт и не оставляя равнодушным к второстепенному, но не менее важному, неиграбельному персонажу. Увлекательная реализация искусственного интеллекта живот...

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

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

Обзор архитектуры Compose с использованием паттерна «координатор» В этой статье рассмотрим, пример реализации архитектуры UI-слоя на Compose, которая основывается на Uni-directional data flow и state hoisting с использованием паттерна «координатор» для навигации. Вдохновением для меня послужила эта публикация, но я решил подробнее разверну...

[Перевод] Обслуживание HTML из MS-DOS Отсутствующий в MS-DOS стек протоколов TCP/IP всегда был поводом для жарких дискуссий – и это при том, что изначально его поддержка в ОС не планировалась вовсе. И дело вовсе не в том, что MS-DOS он был бы не по силам. TCP/IP на момент разработки DOS еще не был реализован сам...

[Перевод] Вероятно, вы неправильно используете метод __init__ в Python Автор статьи обращает внимание на проблему, которая заключается в использовании метода __init__ для сложной логики создания объектов, что приводит к разрастанию и усложнению кода. Статья предлагает использовать вспомогательные методы, чтобы разделить логику создания объектов...

Обзор публикации MITRE «11 стратегий SOC-центра мирового уровня». Часть 3 Коллеги, в двух предыдущих публикациях были рассмотрены стратегии 0-3 и 4-7 документа MITRE «11 стратегий SOC-центра мирового уровня». В сегодняшней публикации завершим рассмотрение данного документа финальным набором стратегий MITRE: Стратегия №8 «Используйте инструменты ав...

[Перевод] Сравнение технологий WebSockets, Server-Sent-Events, Long-Polling, WebRTC и WebTransport При работе с современными веб-приложениями реального времени незаменима возможность отправлять события с сервера на клиент. Именно этой необходимостью продиктовано то, что за годы работы было изобретено несколько методов для этой цели, каждый с собственным набором достоинств...

Графика древности: пятая волна. Nintendo 64 и PC (часть 3/4) В предыдущих двух частях статьи (тут и тут) мы обсудили общие черты пятого поколения игровых консолей и подробно разобрали особенности первой тройки лидеров поколения — 3DO, Sega Saturn и Sony PlayStation. Однако, всего лишь через три года после начала поколения в новейши...

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

Детектируем горизонтальное перемещение с WMIExec Привет, Хабр!Ранее мы рассказывали о возможных способах выявления горизонтального перемещения (Lateral Movement) с помощью таких инструментов, как PsExec, SMBExec и AtExec. Сегодня мы продолжим "работать" с данной техникой и рассмотрим еще один инструмент - WMIExec. В статье...

Подписываем образы контейнеров с помощью cosign, garantir и skopeo Открытые контейнерные платформы, такие как OpenShift, стали неотъемлемой частью современной разработки и управления приложениями. Они обеспечивают удобство и надежность развертывания приложений в контейнерах, обеспечивая изоляцию, масштабируемость и управление ресурсами. Одн...

Как использовать ChatGPT для разработки и учебы. Четыре сценария Привет, Хабр! В 2023 году искусственный интеллект (далее ИИ)  вышел на тот уровень популярности, когда о нем не говорил только ленивый. Все больше компаний активно начали обсуждать свои разработки в этой области, а такие модели как Midjourney, ChatGPT, Gemini (ex-Bard),...

[Перевод] Неожиданное открытие может пролить свет на космическую тайну 13.01.2024, Роберт Ли, space.com«Мы обнаружили гораздо более сильный сигнал, чем тот, который искали, причем в другой части неба». Читать далее

KISS your website или как написать уважаемый сайт на аутсорсе, глава первая Добрый день. Меня зовут Тимофей, я фронт-тимлид в диджитал-продакшене ДАЛЕЕ. В данном цикле статей я поделюсь подходами и инструментами фронтенд-разработки на аутсорсе, которые помогут создать качественный продукт без кошмарного instant-legacy и значительно облегчат жизнь ко...

Вкатываемся в Machine Learning с нуля за ноль рублей: что, где, в какой последовательности изучить Всем доброго времени суток. Я давно обещала выложить сюда подробный гайд на тему того, как можно изучать Machine Learning самостоятельно, не тратя деньги на платные курсы, и, наконец, выполняю свое обещание. Надеюсь, этот гайд станет подсказкой, которая поможет найти правиль...

ТОП бесплатных OSINT-инструментов по версии T.Hunter в 2024-м году Всем привет! Публикуем подборку лучших бесплатных OSINT-инструментов по версии T.Hunter в 2024-м году. В ней и уже знакомые сервисы и софт, сохранившие свои позиции с прошлых лет, и новые инструменты, которые будут полезны любому специалисту по OSINT.Кроме того, в статье наш...

Руководство по проектированию дизайна и юзабилити интерфейсов с Drag and Drop Всем привет! Меня зовут Александр Григоренко, я фронтенд-разработчик, и я часто сталкиваюсь с разработкой веб-интерфейсов с использованием Drag and Drop. В своей предыдущей статье про Drag and Drop я рассказывал про историю появления и развития этого подхода: появившись в пе...

Почему Accelerate — это не страшно Всем привет! Я Игорь Белов, iOS-разработчик в Тинькофф Бизнесе, выпускник Университета Иннополис и энтузиаст в области Computer Science. Занимаюсь iOS-разработкой почти четыре года, мне нравится изучать фундаментальные темы программирования и разбираться, как все работает по...

Инсайдеры предположили разработку Hogwarts Legacy 2 из-за найденной вакансии Обозреватели портала Wccftech рассказали, что обнаружили вакансию игровой компании Avalanche Software, разработчика нашумевшей игры Hogwarts Legacy, которая косвенно подтверждает начало разработки следующей части — Hogwarts Legacy 2.

Хотите присоединить Windows к домену ALD Pro (FreeIPA)? Спросите меня как Конечная цель проектов импортозамещения в ИТ — полный отказ от операционной системы Windows. Но, как говорится, гладко было на бумаге, да забыли про овраги. Может так оказаться, что быстро заменить какие-то клиентские корпоративные приложения, написанные под эту операционну...

Самодельные портативные игровые консоли и ESPboy С некоторых пор в среде самодельщиков обрёл популярность новый формат — портативные игровые устройства на основе недорогих микроконтроллеров и OLED или TFT-экранчиков, подражающие популярным портативным игровым системам прошлого, таким как Game Boy компании Nintendo 1989 го...

FineBI под микроскопом: Обзор новых функций и улучшений в Q1 2024 Хабр, привет! Меня зовут Александр Ларин, я являюсь руководителем центра технической поддержки и обучения в GlowByte, а также лидером самого большого в России сообщества FineBI.Сегодня в нашем фокусе – обновления, которые не оставят равнодушными ни одного бизнес-аналити...

Недельный геймдев: #164 — 10 марта, 2024 Из новостей: Apple восстановит аккаунт разработчика Epic Games, Warner Bros. меняет стратегию, K-D Lab открыла код игрового движка qdEngine, хакеры не взламывали Epic Games.Из интересностей: как Persona сочетает 2d и 3d арт, разработка игр с использованием Go и библиотеки...

Разработка первой «суперигры» от Sega продвигается и выйдет за традиционные игровые рамки Она будет охватывать несколько игр ААА-класса во всем широком техническом диапазоне Sega и нарушит традиционное понимание игр, а ее развитие идет стабильно.

Переход с Vue-CLI на Vite: ускоряем разработку Vue 3 Одним из новых инструментов в арсенале Vue 3 является Vite - быстрый и легковесный бандлер, который значительно упрощает процесс разработки и ускоряет сборку проекта. В этой статье мы рассмотрим, как перейти от стандартного подхода с использованием Vue-CLI и Webpack к более ...

Разработка игры мечты, или немного о Space Nomad Survival Всем привет!Это мой полу-девлог, полу-рассказ о том, как я взялся за разработку "игры мечты"! Прогресс по разработке и немного планов на будущее. Но обо всем по порядкуЯ в курсе, что разработку «игры мечты» в гейм деве принято считать заран...

Игровой стартап в области ИИ Atlas получит 4,2 миллиона евро Игровой стартап в области искусственного интеллекта привлекает несколько миллионов инвестиций для развития бизнеса. Компания может изменить способ разработки видеоигр.

Анти-легаси архитектура для UI приложений В предыдущих статьях мы пришли к выводу, что для того, чтобы UI‑код не превращался в легаси, нам нужно отделить представление от бизнес‑логики и немного иначе, чем это делают Redux и Elm, так как оба подхода не позволяют сделать э...

Об особенностях электротехнических (и не только) сообществ: опасная сделка 2 Данная статья продолжает цикл о юридических особенностях контрактной разработки электроники, при которой обеими сторонами являются физические лица. Как и в предыдущей статье, будет взгляд со стороны заказчика, со стороны исполнителя, а также комментарии юриста. Подать исков...

[Перевод] Что нового во Flutter 3.16, ч.1 Hola, Amigos! На связи Саша Чаплыгин, Flutter-dev агентства продуктовой разработки Amiga. Это статья-перевод от автора Kevin Chisholm. Оригинал статьи читайте по этой ссылке. Мы решили разбить материал на несколько частей для удобства восприятия. Читать далее

[Перевод] Тестирование с помощью Compose В последние годы в разработке Android наметился заметный сдвиг в сторону декларативных UI-фреймворков, и последним дополнением к этой экосистеме стал Jetpack Compose. Декларативные UI-фреймворки предлагают структуры контроля, с помощью которых можно менять способ отрисовки п...

Делаем разработку на Rust еще более потной с помощью git Rust же создавали, чтобы держать программиста в ежовых рукавицах? Так почему бы не заставить git скооперироваться с Rust и не издеваться над программистом на пару?На самом деле статья не сколько про Rust, сколько про git, поэтому если вы не особо знакомы с Rust, не смущайтес...

Тесты с проходным баллом: разработка и анализ результатов В этой статье мы погрузимся в мир разработки и анализа результатов таких тестов, обсудим их значимость и поделимся секретами создания эффективных тестовых заданий.Эта статья будет особенно интересна специалистам в области HR, образования, тренинга и развития, а также всем, к...

Дешево и сердито: геймдев на Godot 4.2 для тех, кто знает Python Привет, Хабр! Меня зовут Матвей, я уже несколько лет хочу научиться создавать игры. Скажу честно: все никак не хватало времени и, возможно, целеустремленности, чтобы изучить Unreal Engine, Cry Engine и им подобные движки. Но я знаю Python. Оказывается, для любителей парсел...

[Перевод] Не стоит недооценивать HTML «HTML – это просто», «Разрабатывать фронтенд проще, чем бэкенд», «После реализации бэкенда обновление UI не должно составлять труда», – за время работы в сфере веб-разработки вокруг меня то и дело звучали эти и другие аналогичные утверждения. И очень часто они вызывали у м...

Экзоскелет «Норникеля»: как он таким стал Всем привет! Меня зовут Владислав Давыдов, я главный менеджер центра развития цифровых технологий компании «Норникель».Возможно, вы уже знаете, что «Норникель» ведет разработку промышленного экзоскелета. У вас могли возникнуть закономерные вопросы: Почему экзоскелет именно т...

Разработка Tizen-приложения для Samsung Smart Signage Platform(SSSP): гайд для js-разработчиков В этой статье я хочу рассказать о своем увлекательном путешествии в мир ОС Tizen. В ней я постараюсь подробно описать не только основные шаги по установке Tizen Studio и созданию проекта, но и поделюсь с вами ценными практическими советами по разработке приложений, освещая к...

[recovery mode] Разработка расширения для PHP на C++. Хуки встроенных функций и методов PHP - это мощный и широко используемый язык программирования для веб-разработки. Однако, иногда требуется расширение функциональности или модификация стандартного поведения PHP с использованием более низкоуровневых языков, таких как C++. В этой статье мы рассмотрим, как с...

Игровым приставкам пришел конец. Sony не выпустит PlayStation 6 Японская корпорация Sony является одним из ключевых игроков на рынке видеоигр, а обусловлен такой ее статус тем, что компания активно вот уже как более чем 30 лет подряд выпускает на рынок игровые приставки, одновременно с Читать полную версию публикации Игровым приставкам ...

Релиз без ошибок. Невозможное возможно? Привет! Меня зовут Сергей, я технический эксперт в компании Bercut. Когда-то увлекался Delphi и J2ME, издал несколько книг на эти темы, а сейчас создаю высоконагруженные приложения для баз данных.Первой СУБД, с которой я познакомился — случилось это в далеком 2002 году, ...

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

Реализация многофункционального терминального интерфейса для МК AVR В данной статье речь пойдёт о разработке многофункционального терминального интерфейса для МК (на примере МК Atmega32 и терминала HyperTerminal. Многофункциональность в моём случае будет заключаться в обработке управляющих символов и управляющих последовательностей с целью р...

Прокси-сервер для Android на Go Реализация простого HTTP CONNECT прокси-сервера на Go, квест с маркировкой сетевых пакетов и запуск программы в Android. Читать далее

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

Как тимлиду оценить «КПД разработки». 4 работающих способа — без хрустального шара и гадания на кофейной гуще Привет, Хабр! Я Аня Анциферова, продакт «Цифрового вагона». Я уже рассказывала о том, зачем ПГК пошли в разработку и какие продукты мы делаем. Несмотря на то, что сейчас у ПГК существует «дочка» — ПГК Диджитал, и там трудится порядка 400 человек, мы — не ИТ-гигант. А это зна...

5 способов писать эффективный код на Go: от названий переменных до архитектуры Если вы задумывались, какие практики использовать, чтобы писать код на Go быстро и качественно, этот материал для вас. Руководитель группы разработки подсистем Геннадий Ковалев и эксперт по разработке ПО Даниил Подольский обсуждают пять способов повысить эффективность разраб...

Игровая консоль Nintendo Switch 2 получит магнитный контроллер Joy-Cons и увеличенный экран Nintendo планирует перенести дату выпуска Switch 2 на начало 2025 года, чтобы предоставить разработчикам игр больше времени для разработки большей линейки игр.

Flutter: история успеха Кроссплатформенный фреймворк Flutter появился в 2017 году. С тех пор он стал одним из самых популярных инструментов для разработки мобильных приложений. Мы в Friflex работаем с Flutter с первого релиза, следим за его развитием и каждый год проводим большую конференцию о крос...

Простейший пример kafka + golang В данной статье представлен простой способ реализации микросервисной архитектуры с использованием Kafka, Golang и Docker. Читать далее

Агротех на телефоне: Гана, или фермеры, у которых нет Интернета, но есть ИИ Мы продолжаем серию публикаций об агротехнологиях и их развитии в других странах. В предыдущих статьях (посвященных сельхозинновациям в Бразилии, Саудовской Аравии, ОАЭ, Сингапуре) почти всегда упоминалась колоссальная поддержка государства или компании в...

Frontend и цветовая слепота или путь в IT длиною 15 лет с дальтонизмом Доброго времени суток, меня зовут Юрий, мне 38 лет и я фронтендер. А еще у меня имеется генетическое нарушение, которое влияет на способность различать определенные цвета, в частности, я плохо различаю некоторые оттенки зеленого и красного. Как при этом мне удается совмещать...

Проблематика Open Source: профиль риска, лицензирование, как выбирать продукт и подход к разработке решений Привет, я Ольга Свитнева, идеолог и менеджер продукта «Платформа данных» в VK Cloud. В современном мире ИТ тема Open Source поднимается довольно часто. Особенно когда речь идет о работе с данными. И тому есть ряд объективных причин. В этой статье я предлагаю взглянуть на Op...

Про Vim — Neovim (Lua) PHP IDE По большому счету единственной незакрытой темой в рубрике "Про Vim" осталась тема об альтернативе Conqueror of Completion для Neovim в Lua исполнении. Причиной перерыва между данной и предыдущей статьей в рубрике стало отсутствие необходимости в этой самой альтернативе. Ну и...

Обычный Client Side с необычной эксплуатацией Это статья о клиентских уязвимостях, которые мне показались интересными.Целью статьи является показать, что иногда из, казалось бы, скучных уязвимостей с низким импактом, можно выжимать больше, чем кажется. Читать далее

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

Фабрика должна расти: настраиваем игровой кластер Factorio Игроки Factorio делятся на две группы. Одни отвергают игру в первые часы, а другие «залипают» на несколько суток и строят масштабные производственные линии. Несмотря на отличную оптимизацию игры, некоторые базы настолько велики, что даже самый мощный компьютер перестает спр...

Игровая механическая клавиатура Cooler Master CK720: создана профессионалами для энтузиастов. Что это за новинка? Когда мы говорим об игровых клавиатурах, то обычно представляется полноразмерная система с механическими переключателями и подсветкой во всех возможных (а иногда и весьма неожиданных) местах. Конечно, это лишь штамп, на самом деле, игровые клавиатуры могут очень сильно отлич...

Универсальные датасорсы в iOS-разработке В мире iOS-разработки, коллекции – это основной инструмент для представления данных в упорядоченной форме, таких как списки, таблицы, галереи фотографий или медиа-файлов. Они широко используются в различных сервисах, от социальных сетей до медицинских приложений.&n...

Рамка по-современному узкая, но в этом смартфоне это может быть проблемой. Появились качественные рендеры игрового Asus ROG Phone 8 Pro Смартфон Asus ROG Phone 8 Pro засветился на новых качественных рендерах. Теперь и спереди.  И если обычно вид сзади выглядит интереснее, так как спереди у смартфонов нет никакого дизайна, то в данном случае важнее именно фронтальная часть. Дело в том, что на ренд...

Кастомные иерархии в Breadcrumbs В статье я покажу как с помощью иерархической логики и плагина Breadcrumbs можно упорядочивать базу знаний в Obsidian. Способ хоть и весьма специфический, но, я думаю, любителям Obsidian о нём будет весьма любопытно узнать. Иерархическая логика – это папки что ли?

Разработка веб-приложений Многие популярные сайты на самом деле являются веб-приложениями. Обычно пользователи не замечают разницы, но, с системной точки зрения, различия довольно сильные. Программа открывает множество возможностей: от функции онлайн-покупок до сбора информации. В статье расскажем по...

Книга «Разработка приложений на базе GPT-4 и ChatGPT» Привет, Хаброжители! Эта небольшая книга представляет собой подробное руководство для разработчиков на Python, желающих научиться создавать приложения с использованием больших языковых моделей. Авторы расскажут об основных возможностях и преимуществах GPT-4 и ChatGPT, а та...

Тысячи игровых разработчиков захотели попробовать отечественный аналог Unreal Engine 5 и Unity Российский игровой движок Nau Engine, который финансируется холдингом VK, привлёк внимание многих разработчиков.

Ручная пила для PHP-монолита Привет! Это третья и заключительная часть истории поиска надёжного способа работы с транзакциями в распределённых системах. В первой части мы поставили задачу, определили критерии оценки и набросали варианты. Во второй части я подробно разобрал решение на Temporal. В этой с...

Microsoft объявила о крупном сокращении в своем игровом подразделении Microsoft объявила о значительных увольнениях, затронувших около 1900 сотрудников ее игрового подразделения. Под сокращение попали такие подразделения, как Xbox, Activision Blizzard и ZeniMax (Bethesda). В результате этого объявления общее число увольнений в начале года сост...

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

Оценка пространственного разрешения при помощи фантомов В прошлой нашей статье про томографию мы задались вопросом: "А знаете, кто получает самую большую дозу при томографии?" Конечно, ответ мы получили: медицинские тестово‑калибровочные фантомы, специальные объекты, моделирующие структуру органов и тканей человека и используемые...

Документация как сервис: как мы генерируем документы независимо от стека разработки Привет, Хабр. Меня зовут Наталья Павликова, в YADRO я работаю в команде DocOps. У нас обширная инфраструктура вокруг задач документирования, которая немного напоминает ходячий замок Хаула. Сегодня я расскажу о небольшой ее части — процессе автоматической генерации и публикац...

Разбор светодиодной лампы CTORCH В продолжение темы про светодиодные лампы. Это самые простые, маломощные лампы. Что у них внутри? К чему сейчас сводится их разработка и производство? Читать далее

Семь оптимальных комбинаций процессора и видеокарты для игровых компьютеров в 2024 году Баланс между производительностью процессора и видеокарты — главный вопрос при выборе конфигурации игрового ПК и сегодня мы попробуем его решить.

Проверяем YTsaurus. Доступность, надёжность, open source В этой статье мы расскажем вам о результатах проверки кода проекта YTsaurus статическим анализатором PVS-Studio и разберём найденные ошибки. Уже больше полугода назад YTsaurus — мощная BigData-система — стала Open Source. Её разработка и использование направлены на расширени...

Удалёнка в ИТ-2023: золотая пуля или преграда для карьеры? В чём хранить деньги, в рублях, твёрдой валюте или золоте? Кто круче, Александр Овечкин или Уэйн Гретцки? Что лучше, удалённая работа, гибрид или офис?В жизни множество вечных вопросов, попробуем ответить на последний. На эту тему написано уже немало статей, но тема не ...

Кулинарный гид по Vue.js: всё о props Привет, Хабр! В этой статье разберемся, как frontend-разработчику готовить на «кухне» props. Выбирайте подходящий уровень сложности: джуны-поварята смогут лучше разобраться в работе и применении props на фреймворке Vue.js, а еще мы затронем тему валидации. Для мидлов и более...

Wolfram Language JavaScript Frontend Wolfram Language JavaScript Frontend - это проект, цель которого в создании бесплатной альтернативы для Mathematica с открытым исходным кодом, но со своими особенностями и преимуществами, а если точнее то в реализации пользовательского интерфейса для ядра Wolfram Language (W...

Разработка тензорного компилятора под RISC-V CPU с помощью OpenVINO и MLIR Привет, Хабр! Меня зовут Владислав Виноградов, я инженер группы исследований и разработки ПО глубокого обучения в YADRO. Моя команда создает и оптимизирует связанное с искусственным интеллектом программное обеспечение. Сегодня я расскажу, как можно разработать тензорный комп...

Что общего между раком крови, лазерами и нейронными сетями? Доброго времени суток, дорогой Habr, надеюсь вы успели заскучать после 3-х месяцев паузы (ссылка на прошлую статью). На связи снова Николай Иванов и сегодня вы узнаете, что общего между раком крови, лазерами и машинным обучением.  В этой статье мы поговорим с вами о мет...

Code smells — обзор на примере PHP Hola, Amigos! Меня зовут Евгений Шмулевский, я PHP-разработчик в агентстве заказной разработки Amiga. В этой статье хотелось бы рассмотреть вопрос качества кода и что из рекомендаций по нему лично для себя использую. Статья адресована начинающим разработчикам. Читать далее

[Перевод] Не бойтесь бросать свои пет-проекты Веб-индустрия переполнена историями о пет-проектах, которые переросли в успешный бизнес. Вот и я нередко увлекаюсь какими-нибудь идеями после основной работы. И хотя это определённо заманчивая перспектива, работа над личным проектом не всегда столь лучезарна – порой они пр...

[Перевод] С алгоритмами в духе LeetCode на собеседованиях пора кончать Современная разработка охватывает широкий диапазон от работы с алгоритмами до системного дизайна. По большей части разработка ПО укладывается в эти рамки. Основная масса разработчиков занимается созданием приложений, что ближе с системному дизайну, чем к низкоуровневым алгор...

OpenAI GPTs: пошаговое руководство для создания с практическими примерами, ACTIONS и внешние API Я часто использую ChatGPT в повседневных задачах. Он реально помогает в обучении, разработке и решении небольших проблем, которые легко описать. Но с другой стороны бывает сложно дать ему нужный контекст, чтобы он начал делать то, что нужно вам, а не выдавал ложь за действит...

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

Игровой системный блок Raskat Strike 520: мощное и относительно недорогое решение c Core i5-13400F и GeForce RTX 4070 Ti Raskat Strike 520 — это реализация практически беспроигрышной концепции: Core i5 в недорогом окружении, но с мощной видеокартой позволяет без лишних переплат построить мощный игровой компьютер. Некоторые детали реализации оптимальными не являются, и в первую очередь это отно...

CVE-2024-1709 и массовая атака на медицинские учреждения США В данной статье рассказывается о 0-day уязвимости CVE-2024-1709, позволяющей обойти аутентификацию и получить неограниченный доступ к серверам и машинам, которые управляются с помощью ПО удаленного рабочего стола ConnectWise ScreenConnect. Данное ПО повсеместно используется ...

Где мне это пригодится в жизни или применение Nothing в Kotlin на примере В данной статье я хочу показать, почему развитая система типов в языке программирования это здорово. Я попробую провести небольшой ликбез о таких на первый взгляд сложных вещах, как sealed-иерархии, ковариантность и тип Nothing на понятном практическом примере создания своей...

CD Projekt ведёт переговоры со студиями по разработке мобильных игр Во время финансового отчёта перед инвесторами польской студии CD Projekt задали вопрос: «Вы думали над продажей прав на разработку мобильных игр по своим крупным франшизам третьим студиям?». Ответ дал генеральный директор, Михал Новаковски. Он сказал, что CD Projekt действит...

Градиентный бустинг. Реализация с нуля на Python и разбор особенностей его модификаций (XGBoost, CatBoost, LightGBM) На сегодняшний день градиентный бустинг (gradient boosting machine) является одним из основных production-решений при работе с табличными, неоднородными данными, поскольку обладает высокой производительностью и точностью, а если быть точнее, то его модификации, речь о которы...

[recovery mode] Как стать Flutter-разработчиком бесплатно? Всем привет! Я Даниил Беликов, мобильный разработчик в крупной российской компании. Мои знакомые часто интересуются, стоит ли им входить в IT и на кого учиться. Обычно я отвечаю, что если человек визуал, есть смысл попробовать Flutter. Во-первых, это востребовано. Во-вторых,...

[Перевод] Clean architecture и MVVM в iOS разработке В этой статье мы покажем на примерах проектов как паттерны MVVM и Clean Architecture могут быть применены в iOS приложении. Читать далее

Линеаризация: зачем и как укрощать ratio-метрики в A/B-тестах Привет, Хабр! В прошлой статье я указал, что в A/B-тестах используются три основных типа метрик, а именно пользовательские конверсии, средние метрики пользователей и ratio-метрики. К последним обычно относят средний чек, CTR баннера, среднюю длину сессии и др. Такие ме...

Пишу Minecraft сервера с нуля. Часть 1. Пинг Этот цикл статей о разработке серверного ПО совместимого с протоколом Minecraft: Java Edition.В этой части я акцентирую внимание на основных вещах: типы данных, структура пакетов и как клиент получает информацию о сервере. Читать далее

Разбираем самый маленький JPEG в мире Недавно на Хабре была опубликована статья Разбираем самый маленький PNG в мире. Интересно, а какой самый маленький файл JPEG? В ответах на StackOverflow и Reddit можно встретить размеры 107, 119, 125, 134, 141, 160 байтов. Все они представляют серый прямоугольник 1 на 1. И к...

NBA протестирует гигантский дисплей GlassFloor для игры в баскетбол Уже до конца этого месяца NBA протестирует огромный дисплей GlassFloor в качестве полноценного игрового поля. Компания ASB потратила на его разработку несколько лет — на нем могут отображаться различные данные об игре. Это может быть статистика, повторы игровых ситуаций и пр...

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

[Перевод] Три беды рынка консольных игр Несмотря на недавнюю волну увольнений, игровая индустрия продолжает процветать: выходит все больше признанных тайтлов, и рекорды продаж бьются направо и налево!  Влияние игровой индустрии распространяется далеко за пределы 3.4 миллиарда игроков и 187.7 миллиарда долларов ...

«Я никогда не воспринимал её как MMO»: сотрудник Fntastic рассказал о разработке The Day Before После официального объявления о закрытии студии Fntastic издание DualShockers смогло связаться с одним из её сотрудников для дачи небольшого интервью. На условиях полной анонимности сотрудник поделился деталями разработки The Day Before и мыслями о закрытии проекта. Согласно...

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

Собирательный образ Junior Android Developer. Какой он в 2024? С каждым годом мобильные приложения становятся неотъемлемой частью нашей повседневной жизни, укрепляя свою позицию. Они интегрировались в различные аспекты делая нашу жизнь более удобной. В свете растущего интереса к сфере IT, не мало людей стремятся попасть в мир мобильной ...

Как мы обезличиваем ПДн, сохраняя их смысл и качество. Чтобы тестовый стенд был полезным, будто там данные с прода Год назад мы выпустили «Маскировщик» — промышленный софт, который обезличивает персональные данные, сохраняя их качество и смысл. То есть гендерный баланс; социально‑демографическую структуру; родственные связи; страну и оператора в телефоне; валидность паспортов, ...

Артефакты прошлого: TabletPC Compaq TC1000 и загадка recovery-дисков В обычной ситуации о наличии Recovery CD или специализированного раздела на жёстком диске никто не вспоминает. Но если речь идёт о ретрокомпьютинге, то всё меняется. Ведь именно эти способы позволяют восстановить оборудование с программной точки зрения до заводского состояни...

Полная история игровой вселенной «Гарри Поттера» — «Золотое поколение» Нулевые годы были крайне насыщенным временем для игровой индустрии. За это десятилетие сменилось два поколения стационарных и портативных консолей, и каждая из них держалась до последнего. А издателям проще было финансировать разработку нескольких версий одной игры, чем зани...

Использование опросов для измерения уровня лояльности Net Promoter Score (NPS) Net Promoter Score (NPS) играет важнейшую роль, служа барометром клиентской лояльности и удовлетворенности. NPS - это не просто метрика; это компас, который направляет компании на пути к улучшению качества обслуживания и оптимизации взаимоотношений с клиентами. По сути, NPS ...

История создания агрегатора для фриланс бирж Привет, читатель, хочу поделиться своей историей по разработке проекта для сбора фриланс заказов, на данный момент с русских фриланс бирж, реализованных на языке джава, то есть агрегатор. Разработка проекта была начата 15.10.2022. Данная статья будет интересна следующим: опт...

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

DevOps as a Service. Часть 3. Решаем проблему дежурств и хаоса в чате с использованием RCA и единого flow Всем доброе утро! С Вами Крылов Александр, и мы продолжаем серию статей про DevOps as a Service. В прошлых статьях мы описали подход и показали пути решения проблем с контролем ресурсов команды и инфраструктуры, с ними можно ознакомиться тут и тут. Сегодня мы поговорим о пос...

Диплом специалиста ИБ. Часть №3 — Портативное устройство SmartPulse Привет, Хабр!Вам знакомо такое чувство, когда сидишь, пишешь дипломную работу и думаешь "А не сделать ли умный пульсометр на ESP32-C3 с интегрированными механизмами защиты, динамическим пин-кодом и управлением через BLE с помощью собственного мобильного приложения для IoT-ус...

Анонс Windows 11 Insider Preview Build 22635.3139 (канал Beta) Добрый вечер, друзья! Microsoft выпустила новую предварительную сборку Windows 11 (версия 23H2) под номером 22635.3139 (KB5034220) для участников программы Windows Insider на канале Beta. Полный номер сборки: 10.0.22635.3139.ni_release_svc_betaflt_prod1.240121-0940. Важно!...

Тише едешь — дальше будешь. Гены тихоходок и ключи к звёздам В конце сентября я публиковал в этом блоге статью «Неизбежность, незаменимость и туманные перспективы пилотируемой космонавтики». Эта статья продолжала темы, также затронутые в переводе моего коллеги @SLY_G «Как учёные снижают пагубное влияние космических полётов на орг...

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

Как спланировать разработку без хаоса? Привет, Хабр! Меня зовут Александр, я уже около 15 лет в IT. Долгие годы занимался разработкой, но в последнее время перешел в менеджмент.Сейчас я работаю в крупной компании, которая занимается юридическими услугами. За несколько лет компания выросла, и сейчас IT-отдел ...

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

Метрики команды разработки Заказчику задачи в конечном счёте всё равно, какой методологией управления разработкой пользуется команда исполнителей - точная дата получения результата для него важнее.Чтобы называть эту дату более обоснованно, необходимо понимать, как на самом деле работает команда: сколь...

Увольнения в Xbox затронули команды физического релиза и поддержки пользователей Activision Blizzard Microsoft уволила 1900 сотрудников из команд Xbox и Activision Blizzard, включая закрытие команд, занимающихся выпуском Xbox-игр в физическом формате и поддержкой пользователей Activision Blizzard. Это может указывать на стремление Microsoft к усилению цифрового направления ...

Любимые игры девушек RPG, шутеры, хорроры, стратегии, адвенчуры, казуалки — сейчас в игровой индустрии существуют проекты на самый разный вкус. А о вкусах, как известно, не спорят — ими делятся. К 8 Марта мы поговорили с геймершами об их любимых игровых проектах. Читать далее

MSI продемонстрировала дизайн игрового карманного компьютера MSI CLAW Компания MSI готовится выпустить свое первое игровое портативное устройство, и визуально нам показали лишь детали его дизайна

МТС RED представила рынку новый сервис защиты веб-приложений (WAF) Его отличает возможность поддержки высоконагруженных приложений (свыше 1000 запросов в секунду) и реализации выделенных инсталляций WAF под крупных заказчиков.

Как тяжелый монолит обернуть в удобный интерфейс Собрались как-то вместе: продакты, HR, лиды и архитекторы ИТ, и начали думать, как же им перестроить HR-процессы в Банке так, чтобы улучшить клиентский опыт сотрудников и им стало удобно работать с HR-услугами..У нас была идея продуктового подхода, десяток backend систем, 23...

«Серёга, диктуй код из смс»: как мы ускорили проверку гипотезы с помощью эксперимента Привет! Меня зовут Алина Бузинова, я менеджер продукта Отелло, сервиса бронирования отелей от 2ГИС.Ключевой принцип развития молодого продукта — скорость доставки полезных решений. Но не каждая фича — полезная, и не каждая полезная фича — дешёвая. Планировать шестимесячную р...

Как запороть фишинг: советы пентестерам Добрый день, уважаемые коллеги. Меня зовут Семьянов Дмитрий и я специалист по тестированию на проникновение в группе компаний Innostage. Мы в команде регулярно проводим фишинг в рамках повышения киберустойчивости. За многолетний опыт мы набили много шишек и с радостью дадим ...

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

Сто паттернов для разработки корпоративных программ. Часть первая В этой статье рассмотрены все паттерны проектирования из "Банды четырёх" с примерами на языке программирования C#. Для самых терпеливых имеются дополнительные паттерны.Это первая статья из серии "Сто паттернов для разработки корпоративных программ". Следующие статьи будут по...

СМИ: вице-президент Xbox Карим Чоудри покидает Microsoft Игровое подразделение Microsoft стало одним из самых прибыльных для компании, опередив по этому показателю даже Windows. Это произошло во многом благодаря недавнему приобретению Activision Blizzard, которая владеет такими крупными франшизами, как Candy Crush Saga, World of ...

2023 год стал худшим в истории игровых консолей Xbox Хаотичные конвульсии - именно так можно назвать весь 2023 год для игрового подразделения Microsoft. 11 месяцев позора и унижений. Провал за провалом и провалом погоняет. Сегодня рассмотрим хроники худшего года игровой консоли Xbox

Реализация чата на Flutter при помощи вебсокетов Всем привет, на связи PurplePlane! В этой статья мы хотели бы рассмотреть реализацию простого чата на языке Dart, используя пртокол websocket.Рассмотрим пример использования вебсокета при реализации простого чата с помощью библиотеки web_socket_channel. Читать далее

Расширяем тестовый фреймворк с помощью Pytest-плагинов. Часть 2: практика В первой части статьи мы разбирались с теорией, которую нужно знать для создания собственных Pytest-плагинов: фикстурами, маркерами и хуками. А теперь перейдем к практике. Я покажу два примера плагинов, которые помогают нам в интеграционном тестировании систем хранения ...

Road Run, или как я свою первую игру делал. Часть 6 Модели, сделанные в блендере, о которых я рассказывал в предыдущих частях, готовы и могут быть загружены в игровой движок. В этой части пойдёт речь о том, как собрать и заставить двигаться дорогу в Unity 3d. Читать далее

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

Event Loop. Мифы и реальность В сети есть довольно большое количество публикаций про Event loop и как он работает. Новые статьи появляются на популярных ресурсах и по сей день, в том числе на Хабре. Однако, к сожалению, далеко не вся информация, представленная в этих материалах является провере...

Самый простой и подробный гайд по конкурентным коллекциям в C# Когда несколько потоков обращаются к общим ресурсам, должна быть обеспечена потокобезопасность, чтобы избежать повреждения данных и неожиданного поведения. Конкурентные коллекции в C# предлагают встроенные механизмы для обработки конкурентного доступа, что делает их мощны...

Личный опыт: переход с Redux на Effector. И при чем тут DX Frontend-разработка очень богата различными инструментами. Новые фреймворки и библиотеки выходят чуть ли не каждый день и, к сожалению, не все из них одинаково полезны или могут сделать ваш продукт лучше. Кроме того, они различаются по степени удобства именно для разработчик...

«16+» или делаем шаблон страницы в XWiki на примере спецификации API Пусть вас не смущает надпись: «16+» в заголовке. В статье не будет ни слова о безудержном кутеже с куртизанками за игрой в блэк-джек.Просто я решил очередной статьей отпраздновать выпуск в свет 16-й версии XWiki – «open-source аналога Confluence» (по мнению её разработч...

Пора переходить на микрофронтенд? Опыт “Инферит Клаудмастер” Приветствую всех новичков и гуру фронтенда, а также всех, кто работает с интерфейсами. Я Никита Борцов, создаю красоту на фронте первой в России FinOps-платформы для управления облачными затратами “Инферит Клаудмастер”.В этой статье вы узнаете о:- факторах, сформировавших тр...

Rust — это не «memory safe C» TL;DR: 1) в Rust намного больше достоинств, чем просто скорость и безопасность 2) в Rust по умолчанию CDD (compiler-driven development, разработка через компилирование). Это как TDD, только CDD 3) Rust не сложный язык, особенно если не гнаться за максимальной производительно...

Как мы управляем инфраструктурой на более 1000 серверов при помощи Ansible Привет, Хабр! Мы системные инженеры X5 Tech — Алексей Кузнецов и Борис Мурашин. У нас за плечами больше 15 лет опыта, в том числе поддержка сервисов Rapida, CyberPlat, TeleTrade, сопровождение стека BigData и внедрение кластеров Hadoop. В этой статье мы расскажем, как выбира...

Calypso: Схема данных MongoDB на Scala Чтобы применять Domain-Driven Design, DDD Aggregate и Transactional outbox на MongoDB, наша команда создала open source библиотеку calypso для работы с BSON.Публикация для тех, кто стремится к современным практикам разработки и разделяет наше влечение к Scala 3.Готовы к откр...

Препарируем Wazuh. Часть 1: Базовая установка Тема SIEM решений с открытым исходным кодом постоянно проявляется на просторах сети. Одних интересуют SIEM системы как таковые, и хочется разобраться в решениях данного класса, но при этом не хочется связываться с тяжелыми и запредельно дорогими коммерческими SIEM. Другие не...

Как выбрать программируемый логический контроллер для задач автоматизации производства Российские промышленные предприятия и компании, которые занимаются разработкой решений АСУ ТП, столкнулись с необходимостью поиска альтернативы программируемым логическим контроллерам (ПЛК) европейских, американских и японских производителей. В этой статье мы предлагаем ваше...

Рекомендация к прочтению и выбору книги В комментариях к моей предыдущей статье «Книги, о которых редко говорят» разгорелась дискуссия, возможно ли прочитать столько книг за свою жизнь, и вообще за какой промежуток времени такое возможно. Читать далее

Разработка RESTful API: как использовать ExpressJS и другие фреймворки для создания RESTful API RESTful API — это одна из самых популярных архитектурных моделей для создания веб-сервисов и приложений. Понимание основных концепций REST и принципов RESTful API играет решающую роль при разработке современных веб-приложений. Читать далее

Малоизвестные детали реализации Math.Round() в .Net Недавно довелось разбирать багрепорт одного клиента на нашу программу, где клиент указал на ошибку в отчете в одну копейку.Казалось бы, сложно себе представить программиста или вообще IT-шника, который не знает как работает функция округления. Тем не менее, почти двадцатилет...

Самая маленькая Nintendo Wii на базе оригинальной консоли: размером с колоду игральных карт, но работает Игровые консоли — обширная область не только для производства и разработки электроники, но и для творчества. И речь сейчас не о самих играх, а о приставках. На днях появилась очередная консоль, вернее, современная инкарнация Nintendo Wii. Её размер такой же, как у колоды кар...

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

GMNG представила игровые кресла GG-CH110B и GG-CH210B Сегодня бренд GMNG официально вышел на рынок с совершенно новой линейкой мебели для геймеров, которая, вероятно, заинтересует многих заядлых игроков. Стоит напомнить, что первыми моделями производителя стали геймерские столы GMNG GG-TB301, которые выглядят очень привлекатель...

Какие ML-платформы нужны бизнесу, и кто их может сделать Привет, Хабр! Меня зовут Виктор Кантор, я директор Big Data МТС. Около 14 лет я работаю с технологиями, связанными с Machine Learning, Big Data, Data Science. Но есть одна проблема, с которой я постоянно сталкиваюсь. Например, поставлена задача, которую нужно решить при помо...

NativeScript в мире кроссплатформенной разработки Давайте знакомиться! Меня зовут Игорь. Я разработчик кроссплатформенных мобильных приложений в компании Smartex. В этой статье я расскажу о NativeScript, основных преимуществах платформы и ее недостатках.Материал будет полезен не только разработчикам, которые уже пишут прило...

Первые шаги с GD32F. Подготовка среды Доброго времени суток! Не так давно я опубликовал небольшую статью на основе своего онлайн-урока для студентов 2020 года, по работе с GD32F103TB. Статья была выложена в ВКонтакте и как оказалось, была многим полезна. По этой причин я решил выложить её здесь с дополнительными...

Kodein DI для Android. KMP и Compose Быть в авангарде в разработке — жизненная необходимость. Поэтому многие проекты уже переходят на Jetpack Compose, а самые смелые и продвинутые даже выпускают приложения на KMP. Мы в проекте Дринкит тоже активно переходим на Jetpack Compose (с KMP пока не сделали подход).Ну и...

Разработка сайта на Тильде на примере реального проекта — подход и разбор решений по UX и UI Привет! Сегодня хочу поделиться опытом разработки многостраничного сайта и на конкретном примере рассказать, как действую, чем руководствуюсь и на что обращаю внимание с самого начала. Погнали. Читать далее

Установка Deckhouse в kind: пробуем K8s-платформу на ноутбуке — без серверов и облаков Чтобы попробовать Kubernetes-платформу Deckhouse в деле, придется найти мощный сервер, пространство у облачного провайдера или несколько машин и прокси-сервер. Но что делать, если хочется просто потестировать Deckhouse, а технических возможностей для этого нет? Конечно же, у...

Playground. Как сэкономить время на настройке локальной среды Привет, Хабр! Меня зовут Никита, и я Go-разработчик. В свободное от работы время я интересуюсь платформенной разработкой, а в рабочее — практикую в команде PaaS в СберМаркете. Моя специализация — локальное окружение разработчика и тулинг. Главная метрика, на которую работает...

Как мы реализовали аутентификацию трафика для MSA на базе монолита Привет, Хабр! Меня зовут Салахутдинов Дмитрий, я принципал инженер в СберМаркете. Занимаюсь развитием Ruby-платформы и масштабированием системы через декомпозицию монолита на сервисы.В статье хочу поделится опытом внедрения аутентификации на базе монолита. Это первая пробле...

Нужны ли кому E-ядра? Зачем я вообще затронул эту тему с современными процессорами Intel? Потому что на Хабре о ней ничего нет; в youtube о ней ничего нет, нигде о ней ничего нет. Может хоть в комментариях кто-то расскажет зачем нужны E-ядра, и нужны ли они? Читать далее

Создатели Palworld и Bleach: Brave Souls делают казуальную игру для смартфонов Ещё до хайпа вокруг Palworld, студия Pocket Pair объединилась со студией KLab (Bleach: Brave Souls) для разработки гибридно-казуальной мобильной игры. Информация появилась в официальном пресс-релизе. Такой проект объединит механики из онлайн-игр, чтобы геймеры проводили как ...

LLM в разработке ПО — мнение Данная заметка написана по итогам опыта нескольких месяцев использования ChatGPT и Github Copilot в связке c Visual Studio Code для разработки ПО в достаточно крупной компании. Опыт оказался весьма интересным. Читать далее

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

Многогранный мониторинг Angie Здравствуй, дорогой читатель. Меня зовут Дмитрий. Я — системный инженер компании «Веб-сервер». На протяжении моего опыта оказания услуг технической поддержки сначала в компании Nginx, а теперь и в компании разработчика российского веб-сервера Angie, мы отвечаем на очень попу...

Как мы внедряли Sentry. Часть 2 — внедрение в разработку В прошлый раз мы рассматривали внедрение Sentry со стороны эксплуатации: устанавливали на сервер self-hosted, делали его высокодоступным при помощи сети доставки td-agent, настраивали мониторинг.Теперь рассмотрим процесс внедрения Sentry со стороны команды разработки. Читать...

Эволюция BP-сервиса компании Магнит Как на сервисе весом в 10 ТБайт ежедневно обрабатывать 1 Тбайт пользовательских данных и спать спокойно.В статье описана эволюция системы управления процессами в компании «Магнит». Некоторые детали были упрощены для лаконичности и последовательности повествования, некоторые ...

Сильно похудевший Гейб Ньюэлл работает над Starfish — имплантами с интерфейсом «мозг-компьютер» Гейб Ньюэлл, известный как основатель и генеральный директор Valve, погрузился в новую область разработки мозговых имплантов для геймеров. Его новый проект под названием Starfish уже объединил команду ученых, инженеров и нейроинженеров для работы над инновационными игр...

Фотохостинги с 2017 по 2023 (утрачено 57% фотографий) С публикации прошлого текста ( «Тестирование фотохостингов на цифровой износ (21 шт)») прошло 6 лет, что позволяет провести новое исследование, но не по теме цифрового износа и конкретно по вопросу выживания цифровых архивов.Если вы захотите сказать, чт...

Система уведомлений в ресурсах Laravel В предыдущей статье по работе с API ресурсами в Laravel была затронута тема изменения бизнес-потребностей в области формирования внешнего вида объекта ответа на запрос к API приложения.В этой мы пойдём дальше и введём новую бизнес-потребность под названием "нотифик...

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

Что ждёт мобильную разработку в 2024 году Привет! Меня зовут Таня Шашлова, я руковожу образовательными продуктами по мобильной разработке в Практикуме. Чтобы обучать людей профессии и помогать им найти работу, нам важно понимать, как меняется рынок, поэтому мы с командой держим руку на пульсе — общаемся с разра...

Как работает блокчейн Scroll: технические детали и обзор архитектуры Привет, Хабр! Меня зовут Леша Куценко, я разработчик смарт-контрактов на Solidity в команде MetaLamp. ​​В этой статье я расскажу про основные технические принципы блокчейна Scroll, которые повлияли на дизайн блокчейна, а также дам обзор общей архитектуры блокчейна.Из этой ст...

Server-side rendering и практики работы с запросами Практики работы с запросами на сервере значительно отличаются от того, к чему привык фронтенд-разработчик. ежедневно разрабатывающий SPA-приложения с клиентским рендерингом. Если не учесть эту разницу при разработке приложения с серверным рендерингом, то можно собрать доволь...

Идеальный кейс внедрения DevSecOps. Так бывает? Привет, на связи отдел безопасной разработки СИГМЫ (ОБР). И хоть наша команда сформировалась относительно недавно, мы уже приобщились к «вечному» — а именно «противостоянию» разработки и безопасников. Если вы читаете эту статью, скорее всего такое знакомо и вам. Но иногда в ...

История одного изобретения и личный опыт патентования. Просто о сложном Немного научно-познавательная, немного практическая статья об одном из изобретений в сфере новых способов получения мононитей из полимерных материалов и моих попытках его реализации и патентования. Читать далее

Представлена игровая консоль GPD Win Mini 2024 Компания GPD пополнила ассортимент компактных игровых консолей моделью Win Mini 2024 года, которая отличается от предыдущего поколения новыми процессорами и дисплеем. Новинку оснастили 6-ядерным чипом Ryzen 5 8640U с графическим ускорителем Radeon 760M или 8-ядерным Ryzen 7 ...

Геймдев на Lisp. Часть 1: ECS и металингвистическая абстракция В данной серии практических руководств мы подробно рассмотрим создание несложных 2D-игр на Common Lisp. Результатом первой части станет настроенная среда разработки и простая симуляция, отображающая двумерную сцену с большим количеством физических объектов. Предполагается, ч...

Разработчики Enshrouded работают над улучшением квестовых заданий Разработчики рассматривают реализацию возможности завершения каждого квеста лично, улучшение журнала квестов и сокращение времени респауна до 30 минут

Оптимизация Скорости и Доступности с помощью Сети Доставки Контента (CDN) в Microsoft Azure Привет Хабр!В мире быстро развивающихся технологий быстродействие и доступность играют ключевую роль в обеспечении удовлетворения потребностей пользователей. В этой эпохе, где каждая миллисекунда имеет значение, использование современных инструментов для оптимизации скорости...

Как сравнивать цвета и сделать из этого казуальную игру? Привет, Хабр! В этой статье я хочу рассказать о разработке своей небольшой игры, в основу которой легло сравнение цветов Читать далее

Хардкорная и милая игра Bumballon появилась на iOS и Android Издатель Crescent Moon Games объявил, что игра Bumballon доступна теперь не только на iOS и PC, но также и на Android. Скачать проект можно через App Store, Google Play и Steam; особенность мобильной версии Bumballon в том, что пройти её можно бесплатно, но есть одна внутрии...

Disney всё ещё заинтересована в ремейке Star Wars: Knights of the Old Republic Руководитель игрового отдела Disney Шон Шоптоу дал интервью изданию Axios, в котором затронул тему проблемного ремейка Star Wars: Knights of the Old Republic. По его словам, игра всё ещё представляет интерес для компании, так как они видят большой спрос среди пользователей. ...

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

Сокращения в подконтрольных PlayStation привели к отмене разработки нескольких игр Игровую индустрию трясёт, но не только её.

Razer выпустила игровые наушники Tornado Black Shark V2 Professional Edition с поддержкой Xbox Series и PS5 Razer выпустила новую игровую гарнитуру — Tornado Black Shark V2 Professional Edition.

От идеи до сервера на Mac mini M2 Pro: как мы запускаем новые продукты Меня всегда интересовало, как создают новые гаджеты, автомобили, самолеты и форматы домов. Сейчас я в команде выделенных серверов Selectel и сам участвую в разработке новых продуктов. Под катом делюсь опытом и рассказываю, откуда мы черпаем идеи и как реализуем проекты. На ...

Мониторинг на Python: как сохранить метрики в мультипроцессном режиме Привет, Хабр! Меня зовут Никита, я backend-разработчик команды клиентских сервисов. В Selectel мы строим и поддерживаем IT-инфраструктуру для компаний, которые развивают свои цифровые продукты. В нашем департаменте около 20 приложений, большая часть из которых работает на F...

Как за 2 недели мы освоили Unreal Engine и запустили собственную игру-портфолио Привет, Хабр! На связи Антон, креативный директор Пиробайта. В последние недели 2023 года в студии решили изучить игровой движок, чтобы сделать небольшое 3D-портфолио к новому году. Но, как и в большинстве игр, без боссов на пути не обошлось. В статье рассказал о первом опыт...

[Перевод] Dataloader 3.0: Новый алгоритм для решения проблемы N+1 При реализации Cosmo Router, open-source замена Apollo Router, мы столкнулись с проблемой поддержания нашего кода для решения проблемы N+1. Реализация маршрутизатора для федеративных служб GraphQL в значительной степени зависит от возможности группировать вложенные запросы G...

[Перевод] Как добавить Flutter в нативное приложение iOS и протестировать его на Codemagic (Часть 2) Hola, Amigos! На связи Саша Чаплыгин, Flutter dev компании заказной разработки Amiga. Нашел интересную статью на английском о том, как добавить Flutter в новый или существующий проект Native iOS. Решил поделиться с вами переводом. Это вторая часть, в которой будет идти речь ...

Имеет ли смысл переплатить за игровой CPU и сэкономить на видеокарте? Сравнение Ryzen 5 7600/RTX 4070 Ti с Ryzen 7 7800X3D/RTX 4070 показывает интересные результаты Игровой процессор — понятие, которое до недавнего времени фактически было «мертво». Но с выходом Ryzen X3D с их дополнительной кеш-памятью снова стало корректно говорить об игровых CPU. Авторы Hardware Unboxed решили проверить, а стоит ли переплачивать...

Подробности разработки Vein — кооперативного зомби-выживания в открытом мире Пока The Day Before окончательно тонет под шквалом критики и возвратов средств, авторы другого зомби-выживания Vein показали немного геймплея. Ramjet Studios выпустила почти десятиминутный ролик, в котором поделилась игровым контентом и рассказала о последних изменениях в вы...

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

Clickhouse: прогулки по граблям Добрый день, Хабр! Меня зовут Олег, я являюсь Backend-разработчиком в IT-компании «Философт» последние полтора года. Мы занимаемся разработкой платформы для жителей, подключённых к нашей системе, которая призвана помочь взаимодействовать с различными «умными» устройства...

Генератор кадров Nvidia никогда таким похвастаться не сможет. AMD Fluid Motion Frames теперь доступен в любой современной игре Компания AMD добавила поддержку генератора кадров Fluid Motion Frames сразу для всех игр с поддержкой DirectX 11/12. Но это не полноценная поддержка.  Это реализация генератора посредством драйвера, которая не требует от разработчиков внедрения технологии в их игр...

Разработка и тестирование целочисленного сумматора с AXI-Stream интерфейсами, часть 2 Вторая статья из цикла, посвященного проектированию с использованием стандартного интерфейса AXI-Stream, а также отладке и документации проектов. Читать далее

MERGE и её улучшение производительности с помощью work_mem С выходом PostgreSQL 15 мы застали появление долгожданной команды MERGE, которая позволяет реализовывать эффективные способы синхронизации обновлений.Суть MERGE заключается в ее универсальности: она позволяет объединить операции INSERT, UPDATE и DELETE в одном запросе, автом...

Призвание быть наставником Привет, Хабр! Меня зовут Данила Гриднев. Я занимаю должность Software Engineering Manager, курирую бэкенд‑разработку различных проектов, созданных на базе блокчейн‑платформы компании Web3 Tech. Помимо этого, я уже не первый год занимаюсь онбоардингом и менторством ...

Кроссплатформенные ресурсы в сборках .NET — пишем условия MSBuild При разработке приложений на платформе .NET почти всегда возникает необходимость включить в сборку сторонние ресурсы. Попробуем настроить процесс сборки небольшого проекта на Avalonia UI для Windows и Linux. Читать далее

SberPay: как добавить поддержку бесконтактной оплаты в Android-приложение Хотите добавить в своё Android-приложение функцию бесконтактной оплаты, но не знаете, как это сделать? Тогда эта статья для вас! Заодно обсудим особенности реализации. В конце будет ссылка на репозиторий с примером. Читать далее

Случай является на помощь тому, кто неустанно ищет Привет, Хабр.Выдался вечер, в который я всё-таки дозрел поделиться с вами небольшой рефлексией. Я на Хабре уже три года и три месяца, почти всё это время мне удаётся публиковать примерно по 4 лонгрида в месяц, а с некоторого времени — и по паре переводов в месяц (в этом блог...

Сокращения в подконтрольных PlayStation студиях привели к отмене разработки нескольких игр Игровую индустрию трясёт, но не только её.

Как модифицируют старые игры на примере Generals — Zero Hour Порой, просматривая моды к старым играм диву даешься - создатели модов умудряются совершенно бессовестно "вертеть" игровой логикой, как им вздумается. А инженерный ум все никак не может понять: как же моддерам такое удается без наличия исходников игр и их движков в публичном...

Проект Альфа-Бизнес Mobile Web (веб-приложение), или Что делать если AppStore — всё? Начиная с ведения санкций в 2022 вниманием не обошел и банковский сектор. Сказалось это и на возможности вести разработку и обновлять банковские приложения в Google Play и AppStore. Если ограничение Google Play можно обойти через множество альтернативных сторов или, на худой...

Обзор корпусных вентиляторов PentaWave PF-M14B PWM PentaWave PF-M14B PWM — модель, которая должна подойти для организации циркуляции воздуха в системном блоке, что будет востребовано у тех, кто строит в первую очередь производительную и высоконагруженную игровую систему. При этом за счёт того, что производитель предлагает ...

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

Вы никогда не сократите Тime Тo Мarket, если будете тестировать все фичи на одном сервере Привет, это Максим Павлов из KTS. Мы создаём IT-продукты для бизнеса.Все твердят про важность Time To Market — времени от появлении идеи фичи до её релиза для пользователей. При этом почему-то тестируют все фичи на одном сервере. В статье рассказываю, как ускорить Time To Ma...

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

Анонс Windows 11 Insider Preview Build 22635.2776 (канал Beta) Добрый вечер, друзья! Microsoft выпустила новые предварительные сборки Windows 11 (версия 23H2) под номером 22635.2776 (KB5032292) для участников программы Windows Insider на канале Beta. Полный номер сборки: 10.0.22635.2776.ni_release_svc_betaflt_prod1.231113-1518 Важно! ...

Solar NGFW 1.1: аналитика в реальном времени для защиты от актуальных киберугроз ГК «Солар» выпустила новую версию Solar NGFW 1.1, которая поможет бизнесу защитить высоконагруженные сети. Надежность продукта стала выше благодаря реализации отказоустойчивой пары «Active/Passive», а защита от вторжений с использованием сигнатур на базе Solar JSOC позволяет...

Ученые раскрыли причины экстремальных наводнений Понимание того, что вызывает экстремальные наводнения, имеет решающее значение для улучшения оценки риска наводнений и снижения ущерба. Исследователи из Центра экологических исследований имени Гельмгольца (UFZ) использовали машинное обучение, чтобы пролить свет на это сложно...

Управление производством игровых уровней (Часть 1) Всем привет! Сегодня хочу поделиться с вами опытом, полученным за время управления отделом по производству игрового контента, а в частности игровых уровней для кооперативного шутера. Он поможет вам не допустить некоторых ошибок в планировании, а также улучшить ваше производс...

Как уменьшить размер бандла раз и навсегда: приемы, метрики, мониторинг Существует довольно много статей на тему оптимизации размера бандла, но большинство из них говорят об узких деталях или подходах к уменьшению размера бандла. Либо наоборот — совсем широко, с общими советами.В этой статье я постараюсь рассказать как комплексно подойти к оптим...

Общее описание и реализация Word2Vec с помощью PyTorch В данной статье даётся общее описание векторного представления вложений слов - модель word2vec. Также рассматривается пример реализации модели word2vec с использованием библиотеки PyTorch. Приведена реализация как архитектуры skip-gram так и CBOW. Читать далее

Propensity score matching: как оценивать маркетинговые кампании, если невозможно провести A/B тесты Всем привет! Меня зовут Вячеслав Назаров, я лид аналитики промо в СберМаркете. В этой статье я расскажу, как оценивать маркетинговые кампании, если провести A/B- тесты нельзя. Еще обсудим логику в Propensity Score Matching (PSM), и то, какую пользу инструмент может принести ...

CEO Nvidia: для создания независимой электронной отрасли США понадобится около 20 лет На конференции DealBook New York Times генеральный директор Nvidia Corp. Дженсен Хуанг заявил, что США, вероятно, понадобится пара десятков лет для того, чтобы стать независимыми в поддержании собственной цепочки производства и поставок чипов. Руководитель Nvidia затронул...

Автосборка Fsbl, U-Boot, linux kernel и установка debian для amd64 для Zynq Ultrascale zcu106 В данной статье описывается способ создания минималистичного образа sd карты c debian amd64 на примере отладочной платы с zynq ultrascale zcu106. Данный способ можно использовать для создания загрузочных образов других устройств с соответствующими изменениями. Битстрим, ядро...

Классические игры Sega - Crazy Taxi, Streets of Rage и другие - переосмыслят для новой игровой эры Приготовьтесь к путешествию во времени сквозь игровую ностальгию. Sega преподнесла сюрприз на церемонии The Game Awards, объявив о возрождении таких культовых классических игр, как Jet Set Radio, Crazy Taxi, Golden Axe, Shinobi и Streets of Rage.

Как создавали игру Neverwinter Nights Вы слышали новость с игрового «Оскара»? Игра Baldur's Gate 3 от Larian Studios взяла приз «Главная игра года» на церемонии The Game Awards 2023. Она обошла такие игры, как Alan Wake II, Marvel’s Spider-Man 2, Resident Evil 4, Super Mario Bros. Wonder и The Legend of Zelda: T...

Игровой IPS монитор 100 Гц с доступной ценой. Обзор Digma Progress 27P501F Линейка игровых мониторов Progress от Digma включает 22-, 24- и 27-дюймовые модели с поддержкой частоты обновления 100 Гц. Это доступные решения для игр с технологией улучшения изображения AMD FreeSync и повседневной работы. Одну из моделей мы детально изучили, проведя тести...

5 советов для тех, кто хочет войти в IT в 2024 году Всем привет! Я Даниил Беликов, мобильный разработчик с опытом работы HR-менеджером. Я начал программировать в 2019 году, когда мне было 27 лет. У меня не было технического образования, друзей-программистов и поддержки со стороны близких. В силу обстоятельств, мне пришлось пр...

[Перевод] Создаём сортировщик деталей Lego Technic, распознающий объекты в реальном времени Когда я проходил стажировку в Nullspace Robotics, мне повезло участвовать в проекте, нацеленном на расширение возможностей компании. Мы совместили системы обнаружения объектов и распознавания изображений для создания модели, классифицирующей детали конструктора Lego Technic...

Особенности и преимущества TCL с Google TV Компания TCL - это бренд, который занимается, как производством, так и разработкой бытовой техники, мобильных гаджетов, дисплеев и телевизоров. Компания была основана в 1981 году путём слияния TTK Home Appliances и TCL Communication Equipment. В двухтысячных годах корпорация...

Портативные игровые консоли в 2024 году: что готовит рынок? Привет, Хабр! Мы все оказались в 2024 году, а значит, самое время узнать, что приготовили или готовят производители игровых устройств, хороших и разных. В конце концов, нужно и отдыхать, а не только работать. Сегодня оценим различные консоли как компаний из Китая, так и запа...

Выход Grand Theft Auto VI, как сообщает Kotaku, может задержаться и состоится лишь в 2026 году Игровое издание Kotaku сообщает о возможных задержках в разработке GTA 6

Проектирование веб-приложений с помощью Python и Flask Для каких проектов лучше всего подходит Flask, а для каких — Django? Какие особенности Flask можно использовать при разработке веб-приложений наиболее эффективно? Я Алексей Некрасов, лидер направления Python в МТС, автор форка библиотеки flask-combo-jsonapi, программный дире...

Паттерн Aggregate Outside Руслан Гнатовский aka @Number55 в свой статье Когда ни туда, ни сюда, или в поисках оптимальной границы Domain слоя описал известную проблему протекания бизнес-логики из агрегата, в случае если эта логика зависит от данных которые находятся вне агрегата, и предложил нескольк...

Дайджест мобильной разработки за сентябрь Новый Kotlin версии 1.9.20-Beta2, разработка библиотеки Jetpack Paging 3.3.0, Yandex Mobile Ads SDK 6, Java 21 LTS, Remote Config в RuStore — и другие важные новости рынка мобильной разработки в сентябре 2023 года. Читать далее

Разработка и тестирование целочисленного сумматора с AXI-Stream интерфейсами Часть 4 В предыдущей части был рассмотрен основной подход, применяемым для тестирования сложных цифровых устройств - constraint random testing. Мы узнали, как автоматизировать проверку корректности работы устройства с помощью сравнения его выходов с эталонной моделью. Тестовые окру...

История студии Remedy. Судьба под контролем Расставание с крупным издателем, потеря прав на своё главное детище, а именно Alan Wake, прощание с большими бюджетами на разработку – для многих игровых студий подобные обстоятельства были бы равны гвоздям в крышку гроба. Для многих, но не для студии Remedy. Они не прост...

Где посмотреть ретро-девайсы в Москве Ниже – список музеев и текущих выставок в Москве, где можно посмотреть на старые компьютеры, консоли и игровые автоматы. Что-то похожее последний раз составлялось 3-5 лет назад. C того времени многое изменилось. Кроме того, мы с соратниками обошли все эти площадки. Так что н...

[Перевод] Сколько строк на C нужно, чтобы выполнить a + b в Python? В своей предыдущей статье я исследовал структуру PyObject и её роль в качестве заголовка для всех объектов среды исполнения CPython. Эта структура играет важнейшую роль в обеспечении наследования и полиморфизма в системе объектов CPython. Но это лишь вершина айсбер...

Комьюнити-менеджер The Division Resurgence объяснил, почему нет новостей по игре Помимо новости о том, что для The Division Resurgence прошёл 2-дневный технический тест в начале апреля, больше свежих инфоповодов по игре не было уже целый месяц. Ещё в начале марта комьюнити-менеджер Discod-канала Resurgence — Ubi_James — сообщил, что верить дате релиза в ...

«Open source в России» — интервью с сооснователем и CTO компании-разработчика веб-сервера Angie Продолжаю рассказывать о российских разработчиках open source решений и технологий. На этот раз удалось пообщаться с Валентином Бартеневым, сооснователем и руководителем отдела разработки компании-разработчика российского веб-сервера Angie. Мы обсудили развитие компании, раб...

«Once you go Rust, you never go back»: создаем игру для программистов на Bevy Привет, Хабр! В прошлой статье я рассказал о своем переходе в геймдев и моей концепции «хакерской» игры. Здесь же сосредоточился именно на разработке, а также на инструментах Bevy и Rust, которые использовал для игрового движка. Интересно узнать из первых уст, как создаются...

Каков C++ в gamedev'e? Хотел написать продолжение к статье Что почитать игровому программисту? про использование С++ в игровых движках, но размышления свернули куда-то не туда.Завороженно смотрю как и какими темпами идет развитие языка в последние годы, и понимаю, что получить и особенно применить...

Анализ пулл-реквестов через веб-приложение для улучшения код ревью Год назад в нашей команде решили внедрить средства анализа пулл-реквестов, т.к. некоторые разработчики уделяли мало времени код ревью, в итоге фичи долго не могли оказаться на проде. Выбрали решение на основе Github Action, начали собирать статистику, улучшать процессы, но и...

Расчет потерь в MOSFET транзисторах Приветствую!В этой статье я расскажу, как рассчитываю потери на MOSFET транзисторах при разработке источника питания и поверхностно рассмотрю основные переходные процессы. Читать далее

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

Мапперы на Famicom, NES, Денди: откуда взялись и зачем нужны (часть 2/2) Продолжаем обстоятельный разговор про «мапперы» — устройства управления расширенной памятью на игровых консолях Famicom, NES и Денди. Во второй части статьи рассмотрим особенности нескольких основных видов мапперов и их влияние на содержание игр, сложности программирования,...

Нельзя писать безопасный код на C++ без санитайзеров С++ видится мне огромным франкенштейном: очень уж много разнообразных способов описать свои намерения. В добавок к этому язык пропагандирует политику zero-cost abstractions, из которой следует (помимо прочего), что программист в ответе за все св...

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

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

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

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

Оптимален ли блокчейн для хранения идентификационных данных? Приветствую, Хабр! Моя предыдущая статья была посвящена формализованным критериям выбора базовой технологии хранения и обработки данных, совокупность которых позволяла ответить на вопрос, использовать ли в конкретной системе блокчейн-технологии или ограничиться хорошо изучен...

Министр обороны Германии заявил, что «устал» от дискуссий на тему передачи Украине дальнобойных ракет Taurus Сгорел сарай — гори и хата. Скоро логика будет сведена именно до такой.

Анализ Приказа ФСТЭК России №118 «Об утверждении требований по безопасности информации к средствам контейнеризации» Рассмотрим требования к безопасности информации в средствах контейнеризации, указанные в Выписке из Приказа ФСТЭК России № 118 «Требования по безопасности информации к средствам контейнеризации», приведем разъяснения к каждому требован...

Домашний сервер GameDev разработчика. Где найти железо? Всем привет, меня зовут Иван, я программист C++ в области GameDev'а и в момент написания статьи специализируюсь на Unreal Engine.Тема домашних серверов, конечно, не нова, но у всех есть свои требования и подход к решению этой задачи. Вот и я после успешного запуска подобного...

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

NVIDIA формирует новое бизнес-подразделение, занимающееся разработкой специализированных чипов NVIDIA создает новое бизнес-подразделение для производства специализированных чипов для разных отраслей, включая AI, телекоммуникации, автомобили и игровые консоли.

Продажи PlayStation 5 оказались разочаровывающими, а разработка PlayStation 6 под большим вопросом Очевидно, что продажи PlayStation 5 не достигнут 100 миллионов единиц, а это значит, что разработка игровой приставки прошлого поколения не окупилась

Ретроспективный взгляд на развитие микропроцессоров CISC, RISC, MIPS, ARM С момента разработки первой в мире интегральной схемы в 1959 году прошло несколько десятков лет. Все эти годы аппаратные реализации вычислительных устройств, словно древние организмы «Мезозойской эры», претерпевали многочисленные изменения.Они эволюционировали под «давлением...

«Роснефть» и CNPC будут сотрудничать в разработке новых источников энергии "Роснефть" и китайская CNPC заключили меморандум о научно-техническом сотрудничестве в нескольких ключевых областях в том числе разработка новых источников, пишет ТАСС ссылаясь на сообщение "Роснефти", пишет ТАСС.

Нотификации через RSocket в Альфа-Онлайн: от концепции до запуска в продакшн Однажды мы решали задачу разработки системы нотификаций для Альфа-Онлайн — мобильного банка в вебе. Нам было необходимо разработать инструмент по отправке сообщений (нотификаций) со стороны сервера в браузер в любой момент времени, пока клиент онлайн. На стороне Альфа-Онлайн...

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

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

Как найти баланс между интересами покупателей и продавцов: опыт разработчиков Яндекс Маркета Привет, Хабр! Меня зовут Илья Ненахов, я руковожу разработкой платформы для продвижения товаров на Яндекс Маркете. Предлагаю взглянуть на площадку немного с другой стороны, а именно — как на механизм, который пытается найти оптимальную точку в пространстве с тремя измерениям...

Как в России создаются очень сложные циферблаты часов, или мое знакомство с брендом Briller Добрый день, друзья! Думаю, что уже никто не вспомнит тут наши Geektimes-публикации о гаджетах, но было время, когда и я в том числе делился какими-то интересными находками, так или иначе связанными с механикой. Тогда, например, это были статьи, кто придумал шагомер (2015 ...

Пишем минимальный ActivityPub-сервер с нуля В последнее время, на фоне покупки Twitter Илоном Маском, люди начали искать ему альтернативы — и многие нашли такую альтернативу в Mastodon. Mastodon — это децентрализованная социальная сеть, работающая по модели федерации, как email. Протокол федерации называется Activity...

Сколько стоит разработка сайта с нуля в 2024 году? Бизнес услуг может очень сильно разниться в стоимости: вы можете заказать сайт как за 100 000р., так и за несколько десятков миллионов. Давайте разберемся, в чем отличие дешевого сайта от дорогого и из чего сегодня формируется стоимость разработки с нуля. Читать далее

Разработка алгоритмов обработки данных в реальном времени на Python Привет, Хабр! С появлением больших объемов информации и необходимостью обработки данных в реальном времени, разработчиками все чаще приходится создавать эффективные алгоритмов обработки данных, способных обеспечивать высокую отзывчивость и мгновенное реагирование на измен...

[Перевод] Создавайте виджеты главного экрана iOS с помощью Flutter Hola, Amigos! Меня зовут Сергей Климович, я Mobile TeamLead агентства заказной разработки Amiga и соавтор телеграм-канала Flutter. Много. На канале мы уже рассказывали про Home Widget для Android, теперь пришло время поговорить про iOS. Я нашел отличную статью по этой теме и...

Технологии групповой разработки в современной 1С-индустрии Привет, Хабр! Меня зовут Стас Ганиев, программист 1С, в этой статье я рассмотрю и сравню три самых популярных подхода к групповой разработке: хранилище конфигураций, конфигуратор + Git, EDT + Git. Читать далее

Первая игра на LeoEcsLite Целью этой статьи является изучение архитектурного паттерна Entity Component Systems на практике. Я подготовил пошаговое руководство по созданию небольшой игры, с помощью которого вы познакомитесь с основными принципами разработки на Ecs. Читать далее

Сервисы дружитес. Как платформа упрощает создание интеграций без ошибок Всем привет! Кратко обо мне: меня зовут Никита и я уже третий год работаю над тем, чтобы платформа СберМаркета становилась лучше день ото дня. Мой основной язык программирования — Go, но, учитывая специфику платформенной разработки, еще и bash.В этой статье на примерах разбе...

.NET 7 против российской криптографии. Часть 2. Штампы времени Практически неотъемлемой частью формирования электронной подписи стало формирование штампов времени (TS) на подпись. С их помощью обеспечивается доверенное подтверждение времени подписания документа. Со штампами времени в .NET 7 та же беда, что и с CMS-сообщениями - отсутств...

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

Connection pool для pqxx В процессе изучения бекэнда, как нового для меня направления в программировании, я столкнулся с необходимостью оптимизации управления соединениями. Поискав в интернете существующие решения для библиотеки pqxx (C++ API для PostgreSQL), я обнаружил, что хотя они и выполняют св...

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

Quick & worldwide: как мы ускорили DocLoc-релизы и апдейты для 34 локализаций Наши потребительские мобильные продукты уникальны тем, что распространяются в более чем 100 странах на 34 языках — возможно, рекордное значение в российской IT-индустрии. В основном лишь считанные продукты отдельных компаний переводятся на десяток-другой языков; у нас же мас...

Феномен PlayStation. Как Sony совершила революцию в мире видеоигр и победила в войне консолей На заре 1990-х годов в мире игровых консолей было всего два имени: Sega и Nintendo. Была конечно ещё Atari, но к тому моменту, выиграв спор по поводу прав на Тетрис, Nintendo оставила её далеко позади. И в то время никто не мог предвидеть, что компания по производству бытов...

Модель зрелости SOAR Михаил Пименов, аналитик Security VisionВ этой статье мы попробуем взглянуть на модель зрелости компаний, внедряющих системы информационной безопасности класса IRP/SOAR. Здесь также существует масса интерпретаций и способов систематизации. Я предлагаю взглянуть на модель зре...

Липовый соникс. Реверсим картридж Liposonix и пишем его эмулятор Для подписчиковВ этой статье я расскажу, как происходит реверс‑инжиниринг реального медицинского оборудования. На примере картриджа для аппарата Liposonix мы разберем базовые приемы обратной разработки протоколов цифровых устройств и посмотрим, как можно подделать передаваем...

По-настоящему игровой смартфон с экраном на 120 Гц. Обзор Infinix GT 10 Pro 8/256 Как правило, производители смартфонов стремятся создать устройства с минималистичным дизайном, чтобы они понравились максимально широкой аудитории. Однако, компания Infinix решила отойти от стандартных правил и представила модель GT 10 Pro с оригинальным игровым дизайном, ко...

ИИ в 3D: Где мы сейчас и какое будущее нас ждёт? (Часть 2) В предыдущей статье мы уже затрагивали задачу реконструкции 3D-объектов по их 2D-изображениям. В этой же углубимся в реконструкцию с головой! Вообще говоря, как мне кажется, сейчас мы рассмотрим гораздо более концептуально интересные методы, а именно - HSP и Mesh R-CNN. Это ...

5 способов экономить на играх для PlayStation 5 (Xbox) в 2024 году Экономика должна быть экономной, а игры доступны для широких масс. У игровых консолей есть особенность - на них зарабатывают денежку и выжимаю последние крохи из потребителей.

Конфигурация вместо кода при написании Telegram-бота Привет! Меня зовут Никита и я пишу от имени небольшой команды студентов, разработчиков проекта Cloffer — систему онлайн-заказа для кофеен. Мы решили начать наш путь с написания связки бэкенд + набор телеграм-ботов.Эта статья будет посвящена подходу, который мы использовали д...

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

Китай и 5-нм техпроцесс: компании SMIC, скорее всего, удалось освоить новые технологии производства чипов Китайские компании, которые занимаются разработкой и производством электроники, несколько лет находятся под весьма жёсткими торговыми санкциями США. Ряд организаций потерял возможность заказывать чипы у контрактных поставщиков вроде TSMC, что стало очень сильным негативным ф...

ИНЬ-ЯН в UI/UX дизайне Привет, Хабр! Меня зовут Иван Вербов, я UI/UX дизайнер команды разработки платформы контейнеризации dBrain.cloud. Эта статья адресована моим коллегам-юиксерам, а также всем, кого затрагивают задачи анализа, обсуждения и согласования предложений и результатов работы над диз...

HappyX vs Karax: что проще? Хотите узнать, как с помощью Nim создавать клиентские веб-приложения?В этой статье я расскажу вам о веб-фреймворках в Nim и их возможностях, а также приведу примеры в сравнении друг с другом и другими фреймворками. Читать далее

API для хостинга: кому он потребовался и как мы его сделали Привет, Хабр! На связи хостинг-провайдер SpaceWeb. В этой статье расскажем, как работает клиентский API у нас, почему для него мы выбрали технологию JSON-RPC и чем она нам так нравится. Историей делятся Виталий Киреев, руководитель R&D, и Алексей Шашкин, продакт-менеджер...

Продакт, техлид и People&Process Lead. Тройка, которая рулит продуктом Вообще эта статья была написана еще в 2020 году во время активной фазы пандемии, когда мы еще не знали что нас ждет. Но мы понимали что масштабирование продукта, разработки, нагрузки уже вот начинается сейчас и процессы должны были все это пережить. Они должны были перестать...

Анонс Windows 11 Insider Preview Build 22635.2915 (канал Beta) Добрый вечер, друзья! Microsoft выпустила новую предварительную сборку Windows 11 (версия 23H2) под номером 22635.2915 (KB5033456) для участников программы Windows Insider на канале Beta. Это последняя инсайдерская сборка для канала Beta в 2023 году. Выпуск сборок возобнови...

Мнение Дэвида Шварца о функции AMM XRP Ledger Технический директор Ripple Дэвид Шварц пролил новый свет на функцию автоматического маркет-мейкера (AMM), предложенную для экосистемы XRP Ledger (XRPL)

В тени Neuralink. Техномедицинские аспекты нейрокомпьютерных интерфейсов В одной из недавних статей «Киборги идут, или как Neuralink Илона Маска приближает киберпанк», опубликованной в корпблоге компании FirstVDS, уважаемый @klimensky затронул тему Neuralink и нейрокомпьютерных интерфейсов в целом. 1 февраля 2024 года в корпоративном блоге компан...

Практический пример декомпозиции монолитного PHP приложения Декомпозиция монолита - не редкая проблема. Она возникала в большинстве компаний, где я работал. Происходит это потому, что на ранних стадиях развития любого стартапа накапливается так называемый decision debt - выбранная архитектура является оптимальной для быстрой разработ...

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

Обзор актуальных инструментов шифрования в Android Привет, Хабр! Меня зовут Артур Илькаев, я работаю в департаменте экосистемных продуктов, мы разрабатываем VK ID SDK и все что связано с авторизацией и сессиями, в частности — мультиаккаунт.Секретные данные требуют особого внимания при хранении и передаче. Инструмен...

[Перевод] Что такое гексагональная архитектура. Разделение бизнес-логики и инфраструктуры с помощью портов и адаптеров Гексагональная архитектура — это архитектурный паттерн, представленный Алистером Кокберном и описанный у него в блоге в 2005 году. Основная идея заключается в том, чтобы структурировать приложение таким образом, чтобы это приложение можно было разрабатывать и тестировать в ...

Рекомендации яндекс «Куда пойти в Москве»: история моего фиаско Пару недель назад яндекс в блоге вебмастеров проанонсировал появление нового блока на поиске – с рекомендациями и событиями. Мы – клуб по игре в мафию – попробовали подключиться к этому сервису и описываем свой опыт: первая половина статьи о технических аспектах подключения,...

Diátaxis: структура технической документации Это первая статья в корпоративном блоге компании documentat.io. Мы занимаемся заказной разработкой технической документации и помогаем компаниям настраивать процессы документирования.Многие разработчики сталкиваются с тем, что писать и поддерживать документацию трудно: непон...

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

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

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

[Перевод] Как получить плашку совместимости со Steam Deck, не покупая Deck Пару месяцев назад Steam выложил в Steamworks инструмент для разработчиков, позволяющий отправлять игры на сертификацию: Steam тестирует и проверяет игру, а затем решает, совместима ли она с Steam Deck. Так как я уже реализовал в своей игре поддержку геймпадов, то сразу прис...

Эволюция разработки под Android Отправной точкой истории разработки Android считается начало 2000-х, когда Энди Рубин, Рич Майнер, Ник Сирс, Крис Уайт основывают Android Inc. Уже в 2005 Google выкупает их, а в 2008 запускает свою ОС — Android. Первым смартфоном на её базе стал HTC Dream. Так началась ...

Игра тоже смотрит в тебя. Игровые контроллеры: действия и данные Привет, Хабр! Меня зовут Сергей Милосердов, я системный аналитик в Nau Engine и большой фанат геймификации во всём. Солидный бэкграунд в этой сфере подтолкнул меня к написанию серии статей об игровых контроллерах и особенностях их использования. Прошлую статью я посвяти...

Разбираемся в ROC и AUC Привет, Хабр!В машинном обучение очень важны метрики оценки эффективности моделей. Среди таких метрик есть: кривые ROC и показатель AUC. Они позволяют оценивать бинарные классификаторы. В этой статье мы как раз и разберем их. Читать далее

[Перевод] Синглтоны в Java В этом кратком руководстве мы рассмотрим два наиболее популярных способа реализации синглтонов в Java. Читать далее

Игровая студия KEK Entertainment бывших топ-менеджеров Pixonic привлекла $8 млн Деньги пойдут на развитие кросплатформенности и разработку ещё не вышедшей первой игры от компании.

Сглаживание DLSS – будущее игровой индустрии? Презентация Nvidia в 2018. Внимание миллионов было приковано к новой технологии RTX: теперь у нас в реальном времени будет рендериться реалистичная система отражений и засветов! Ого, вот только... Никто даже внимание не обратил на технологию DLSS, которая получила лишь 10 ми...

Анонс Windows 11 Insider Preview Build 23565 (канал Dev) Добрый вечер, друзья! Microsoft выпустила новую предварительную сборку Windows 11 под номером 23565 для участников программы Windows Insider, использующих канал Dev. Полный номер сборки: 10.0.23565.1000.ni_prerelease.231006-1340. Важно! Сборки по программе Windows Insider ...

Разработка real-time приложений с Python и WebSocket Real-time приложения, как следует из названия, предоставляют мгновенный обмен данных и информации между сервером и клиентом. Они встречаются повсеместно в различных сферах, начиная от социальных сетей и мессенджеров, и заканчивая финансовыми торговыми платформами, мониторинг...

Системная ошибка рынка труда или почему не хватает технических писателей со знанием языков разработки и API Hola, Хабр! Я — технический писатель и за свою длинную карьеру в ИТ, нигде и никогда не сталкивался с ситуацией переизбытка в командах технических писателей. Наоборот, почти повсеместно в компаниях есть множество продуктов и проектов, в которых документация неполная, неточна...

Валидация входных данных в фильтрах Minimal API .NET, просто и без затей В последние год-два снова набирает силу тенденция обращать самое пристальное внимание на производительность разрабатываемых приложений. Тема на самом деле непростая, поскольку производительность не на пустом месте появляется и требует значительных временных ресурсов и квали...

Дом, милый дом: нюансы работы с ClickHouse. Часть 1 Всем привет, меня зовут Пётр, я инженер компании Nixys. На современных проектах используется огромное разнообразие баз данных: реляционные, ключ-значение, документоориентированные. Особое место среди них занимают колоночные базы данных, ярким представителем которых является ...

Настраиваем минимальный WEB-сервер на Repka Pi 3. NGINX+PFP-FPM+MySQL и ставим Wordpress В этой статье я расскажу как установить на Repka Pi 3 полноценный WEB сервер на Nginx с php-fpm и MySQL для того, чтоб в конечном счете установить WordPress и начать делать и размещать Ваш сайт на данной платформе. Ставить будем на родную ОС Repka Pi от 11.12.23 (последняя а...

Коротко про алгоритмы и структуры данных Привет, Хабр! Меня зовут Ричард, я работаю в команде kPHP в VK, занимаюсь разработкой kPHP, плагинов для IDE, а также другого инструментария, делая жизнь разработчиков проще. В своей работе мне приходится иметь дело с PSI деревьями, AST, самопис...

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

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

[Перевод] Что такое платформенная инженерия: как она связана с DevOps и SRE? Появление новых ролей и обязанностей в IT и разработке сильно повлияло на работу современных компаний. Одно из направлений, которое с каждым годом становится популярнее, — платформенная инженерия. В этой статье разберемся, что это такое, почему важность ПИ растет и какое отн...

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

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

Анонс Windows 11 Insider Preview Build 22635.2483 (канал Beta) Добрый вечер, друзья! Microsoft выпустила новые предварительные сборки Windows 11 (версия 22H2) под номером 22635.2483 (KB5031451) для участников программы Windows Insider на канале Beta. Полный номер сборки: 10.0.22635.2483.ni_release_svc_betaflt_prod1.231004-1156 Напомина...

Кеширование next.js. Дар или проклятие В 13 версии команда next.js представила новый подход к проектированию приложения - так называемый App Router. В 14 версии его сделали стабильным и основным для новых приложений.App Router значительно расширяет функционал next.js - частичный пререндеринг, шаблоны, параллельны...

[recovery mode] Просто об архитектуре в Android В нашем скромном мире разработки Android есть общепринятый подход к проектированию приложений - Clean Architecture, который рекомендуется Google. Несмотря на множество статей, посвященных этому стандарту, вопросы и споры вокруг того, как "правильно готовить" Clean Architectu...

[Перевод] Как мы уложили компьютерный мультик в 8 кБ В ноябре 2022 года мы задали себе задачку: можно ли запрограммировать анимацию, воспроизводимую в режиме реального времени как обычный короткий мультик, но с условием, что файл должен быть не больше 8 килобайт. При этом цель считалась бы достигнутой, если бы у нас получилась...

Анонс Windows 11 Insider Preview Build 22635.3130 (канал Beta) Добрый вечер, друзья! Microsoft выпустила новую предварительную сборку Windows 11 (версия 23H2) под номером 22635.3130 для участников программы Windows Insider на канале Beta. Полный номер сборки: 10.0.22635.3130.ni_release_svc_betaflt_prod1.240112-1317. Важно! Сборки по п...

История 3D-печати: от идеи к первым опытам и настоящему Каких-то 40 лет назад 3D- печать казалась уделом фантастических рассказов, несмотря на то, что тогда уже были разработки и  возможности для реализации. Но волшебная аура вроде: «А почему бы мне не напечатать себе дом или автомобиль?» больше напоминала перспективы термоя...

Машины как я или генеративная овсянка? О генеративном ИИ в игровой индустрии Привет, Хабр! Меня до сих пор зовут Владимир Садовский, я по-прежнему работаю программистом инструментария в Nau Engine, всё так же обожаю игры, и меня всё ещё не заменил искусственный интеллект. В прошлый раз я рассказывал о процедурной генерации в игровой индустрии. Пришла...

Смысл жизни с точки зрения программиста-буддиста Несколько лет тому назад я опубликовал на Хабре статью под названием "Буддизм с точки зрения программиста". Этот пост имел огромную популярность, читатели приняли его с большой теплотой. До сих пор я часто получаю от людей сообщения с благодарными отзывами на него и рассказа...

Все материалы на данном сайте взяты из открытых источников или присланы посетителями сайта и предоставляются исключительно в ознакомительных целях. Права на материалы принадлежат их владельцам. Администрация сайта ответственности за содержание материала не несет. (Правообладателям)