![](http://webcf.waybackmachine.org/web/20200511155730im_/https://habrastorage.org/getpro/habr/avatars/6d0/a94/f1d/6d0a94f1d1978e0e1d1c6b868797ffad.png)
LED-драйвер со стоимостью BOM-а меньше 1$. Это возможно?
![](https://webcf.waybackmachine.org/web/20200511155730im_/https://habrastorage.org/webt/w6/t4/ct/w6t4ctjbbc3iffby_-xx_wp1tq4.png)
Итак, рассказываю про разработку LED-драйвера при существенном ограничении по цене комплектующих.
Хочу поделиться опытом проектирования, монтажа и эксплуатации своей системы приточной вентиляции совмещенной с канальным кондиционером. Система
собиралась в 2012-2013 годах и с тех пор находится в постоянной эксплуатации.
Статья разделил на две части:
Все мы помним такие легендарные MMORPG нулевых, как Lineage 2, World of Warcraft, Aion, Perfect World. Мы растем, жизненные приоритеты меняются — работа, семья, друзья. И уже не можем уделять столько времени играм. Но желание играть никуда не пропадает! Хочется вечером зайти на своего персонажа, собрать лут, сходить на осаду, почеленджить корейский рандом своим везением и заточить оружие еще на один уровень.
Однако, ради этого загружать компьютер, выбирать игру и изучать ее заново совершенно не хочется.
![]() |
![]() |
---|
В этой статье я расскажу о том, как создал шаблон (cookiecutter) и настроил окружение для написания REST API сервиса на С++ с использованием docker/docker-compose и пакетного менеджера conan.
Во время очередного хакатона, в котором я участвовал в качестве бекенд-разработчика, встал вопрос о том, на чем писать очередной микросервис. Все что было написано на текущий момент, писалось мной и моим товарищем на языке Python, так как мой коллега был специалистом в этой области и профессионально занимался разработкой бекендов, в то время как я вообще являлся разработчиком под встроенные системы и писал на великом и ужасном С++, а Python просто подучил в университете.
Так вот, перед нами встала задача написать высоконагруженный сервис, основной задачей которого был препроцессинг поступающих к нему данных и запись их в БД. И после очередного перекура товарищ предложил мне, как С++ разработчику, написать этот сервис на плюсах. Аргументируя это тем, что так будет быстрее, производительнее, да и вообще, жюри будут в восторге от того, как мы умеем распоряжаться ресурсами команды. На что я ответил, что никогда не занимался такими вещами на С++ и с легкостью могу оставшиеся 20+ часов посвятить поиску, компиляции и компоновке подходящих библиотек. Проще говоря, я струсил. На том и порешили и спокойно дописали все на Python.
Представляю перевод статьи автора Evan Cameron, которая может помочь Java разработчикам лучше понять отличия и схожесть этих двух языков — оригинал на сайте автора. Не считая себя достаточно опытным Rust разработчиком, я вряд ли смогу аргументированно участвовать в возможных дискуссиях.
В этой статье я хочу разобрать внутреннее устройство легендарной игры Sonic the Hedgehog для приставки Sega Mega Drive, а также способы ее модификации или, как еще говорят, хакинга. Эта игра насчитывает порядка сотни хаков, включающих как действительно достойные работы (такие как Pana Der Hejhog или Sonic Remastered), так и странные и даже жутковатые (вроде An Ordinary Sonic ROM Hack). Чтобы понять, как их создавать, нужно разобраться, как писать на языке ассемеблера Motorola 68K (обычно игры для приставок тех времен писались именно на ассемблере), откуда взять дизассемблированный вариант игры и какую архитектуру имеет ее движок.
Дизассемблирование ROM-файлов для Sega осуществляется при помощи коммерческого дизассемблера и дебаггера IDA Pro. Затем происходит кропотливый процесс разметки, структурирования и причесывания сырого ассемблерного кода с использованием дебаггера (и смекалки). Этот процесс требует хорошего понимания технических особенностей платформы Sega Mega Drive и игр для нее.
К счастью, на GitHub уже есть дизассемблированные и размеченные версии всех игр серии Sonic the Hedgehog, созданные энтузиастами при поддержке сайта Sonic Retro. Лучше всего размечен и структурирован исходный код именно первой игры серии. Эта версия кода находится в репозитории sonicretro / s1disasm и именно она будет разобрана в статье.
Погружение в внутреннее устройство игрушки начнем с теории.
Готовя наши летние конференции, мы занялись различными онлайн-форматами — и на этой неделе в каждый будний день проведём по бесплатному мероприятию для разработчиков.
Во-первых, будет по онлайн-митапу для джавистов, дотнетчиков и мобильщиков.
А во-вторых, многим интересны живые обсуждения вопросов, связанные с разработкой на их языке. Поэтому мы запускаем на ютюбе разговорные шоу в прямом эфире, привязанные к темам наших конференций: во вторник выйдет пилотный выпуск JS-передачи «Тяжёлое утро», а в четверг запустим передачу про мобильную разработку.
Вот расписание недели: