
Одна команда — и сервер настроен. Я больше не лезу вручную и не повторяю одно и то же десятки раз. Внутри рассказано о том, как Ansible помогает автоматизировать задачи, от настроек до деплоя.
Пользователь
Одна команда — и сервер настроен. Я больше не лезу вручную и не повторяю одно и то же десятки раз. Внутри рассказано о том, как Ansible помогает автоматизировать задачи, от настроек до деплоя.
Желание поиграть в проектирование собственного процессора обычно приводит к покупке платы с FPGA. Но мне захотелось сделать шаг дальше и начать не с Verilog-а, а с паяльника.
Это статья о том, как я занялся разработкой электроники, не имея почти никакого опыта в этой сфере. Цель - сделать устройство с FPGA на котором можно загрузить Linux, подключить экран и клавиатуру, а потом прямо там писать и компилировать код.
Зачем это нужно? Это хобби. Практической ценности не имеет. Просто я так развлекаюсь. А сейчас у меня, к моему собственному удивлению, все задуманное получилось, и я хочу показать и похвастаться.
Приветствую, Хабравчане!
В данной статье, хочу вам рассказать о своём проекте по реализации SDL3 для старых систем. Конечно, я не ограничиваюсь только Windows 95, разработку веду по современным ПК. Главная причина, это конечно фан и любовь к старому железу, которое ещё многое умеет.
Нас ждёт мозговыносящая смесь 64/32-битного ассемблера и старого-доброго C++. Мы сделаем собственную реализацию... Волокон (fibers) без вызова Win API и звонков в службу спасения.
В std::move никто никуда не двигается
В undefined behavior поведение вполне себе определено, просто крашит игру
В GameObject нет ни игры ни объекта, а только баги и куча антипаттернов
Memory leak detector сам протекает
В PhysicsEngine физики столько же, сколько в сказке про Колобка
Из 8 часов работы 6 уходят на попытку собрать билд после мержа со стейблом.
В ProfileMode тормозит всё кроме профайлера
В retrospective meeting обсуждают, почему всё плохо, но оставляют как есть.
В debug билде багов меньше чем в релизном и выше фпс
Представьте, что вы создали пустую, приватную корзину (их ещё называют «бакетами» — от «bucket») AWS S3 в выбранном вами регионе. Каким будет счёт за услуги AWS на следующее утро?
Несколько недель назад я начал работу над прототипом системы индексирования документов для моего клиента. Я создал одну корзину S3 в регионе eu-west-1 и загрузил туда несколько файлов для тестирования. Через два дня я проверил мою страницу выставления счетов AWS, заглянув туда, преимущественно, для того, чтобы проверить, что то, чем я занимаюсь, нормально укладывается в лимиты бесплатного тарифного плана. Но, судя по тому, что я там увидел, ни о какой нормальности речи не шло. Мой счёт превышал $1300, а в консоли выставления счетов были видны сто миллионов PUT-запросов к корзине S3, выполненных всего за один день!
«Где мы, папа», — спросил меня 5-летний сын.
«Мы приземлимся примерно через час», — ответил я.
«Да нет, я имею в виду, где мы? Мы ещё не пролетаем Италию?»
Наконец-то появилось время и желание пощупать и опробовать в деле давно купленную отладку от Sipeed на базе RISC-V SoC BL808. Попутно я решил собрать материал по теме и поделиться с читателями своим опытом использования этого SoC в разных сценариях. Помимо обзора отладки и SoC я подробно расскажу, что предоставляет производитель для энтузиастов, состав SDK, как собрать Linux-ядро, примеры ее использования. Всем кому интересна данная тема — добро пожаловать под кат! =)
Совершать невозможное и раздавать пинки здравому смыслу — в этом и состоит жизнь членов Гуррен-Дана! (C) Камина
Эта статья вступает в техническую полемику со статьей 2015 года за авторством Atakua, подходы из которой я и атакую. Atakua исследует 7 видов интерпретаторов байткода, но делает это без уважения - быстрейшей оказывается двоичная трансляция, которая, по сути, уже не интерпретатор байткода, а форма Ahead-Of-Time компилятора. Эта двоичная трансляция транслирует байткод в машинный код, представляющий собой цепочку вызовов скомпилированных сервисных процедур. Тех самых, что в интерпретаторе байткода отвечают за выполнение каждого опкода.
Но Atakua не выжал из интерпретаторов байткода всю скорость которая возможна. Так что эта статья - туториал: как написать интерпретатор байткода, который может обгонять JIT/AOT-компиляцию по скорости. Интересно? Читайте дальше!
Бенчмарк прилагается. Будет немного хардкора и ни одной сгенерированной нейросетью картинки!
Все проблемы в области Computer Science могут быть решены введением дополнительного уровня косвенности. За исключением одной: слишком большого числа уровней косвенности.
All problems in computer science can be solved by another level of indirection, except for the problem of too many layers of indirection.
В этой статье мы расскажем о том, как эффективно реализовать полнотекстовый поиск с помощью PostgreSQL. Узнайте, как улучшить скорость и точность поиска по текстовым данным, используя такие инструменты, как tsvector
, tsquery
и индексы GIN
, и как эти возможности могут значительно повысить производительность вашего приложения.
Есть тема, которая проявляла себя в бесконечном количестве рассказанных реальных, но при этом жутко анекдотических историй из инженерной деятельности, когда ресурсы, результаты НИОКР-ов, и много чего «сливали в унитаз».
Есть бесконечно висящий в воздухе вопрос — почему при наличии шикарного образования, желания достичь результата и реальных усилиях по достижению результата, полученный личный результат может быть более чем скромным или он может быть, но уже совсем-совсем не ваш.
И наконец, мемом начала примерно 2010 года стала на просторах интернета запись какого-то реального технического совещания, закончившегося воплями - «...Проср*ли все полимеры !!..»
Откуда все это? Анекдоты рассказываются, вопли стихают… а далее следует пустота и молчание..Есть некоторое табу молчания на углубление в «механику» из шкурных интересов, которые создают проблемы и реинкарнируют их снова, снова и снова.
При разработке или портировании игры для PC приходится иметь дело с пользовательским вводом, который обычно разделяется на три категории источников: мышь, клавиатуру и геймпады.
По началу может показаться, что работать с мышью и клавиатурой проще всего, но на самом деле это не так; по крайней мере, когда мы говорим о Windows. Множество очень популярных AAA-игр было выпущено с серьёзными проблемами ввода с мышами верхнего ценового диапазона, и в некоторых популярных движках по-прежнему существует эта проблема.
В этой статье мы изучим причины этого, а также создадим работающее, но неудовлетворительное решение. Думаю, для правильной работы с такими аксессуарами, как рули, джойстики и другие симуляторные устройства, требуется целый дополнительный уровень сложности, но пока мне пока не доводилось работать над игрой, в которой бы нужен был такой ввод, поэтому в статье мы не будем его рассматривать.