Привет любителям микро-кодирования. Вот вам кое-что невероятное: крошечный движок raycasting (метод “бросания лучей”) и генератор городов, который помещается в отдельный 256-байтовый HTML-файл.
User
Из театра на завод: можно ли сделать из актрисы инженера-тестировщика
Что будет, если актрису пустить работать на завод, да не простой, а медицинского оборудования? Первые дни я и сама себе задавала этот вопрос. Ведь я актриса, и я на заводе! Расскажу, чем актерское мастерство помогает в инженерной сфере, как я боялась излучения, пряталась в виртуалках и стала голосом рентген-аппарата.
Геймдев, про который мы забыли: как работали 2D-игры на кнопочных телефонах нулевых
Друзья! А вы помните, какими были мобильные игры в 2000-х годах? Помните, как разработчики умудрялись уместить целые миры в устройство с небольшим дисплеем, аппаратной клавиатурой, весьма слабым железом и парой сотен килобайт памяти? Но задумывались ли вы, как в своё время работали эти сами игры «под капотом»? В сегодняшней статье-ретроспективе предлагаю вспомнить мобильный геймдев нулевых и узнать, как же работали 2D Java-игры, какие API были доступны и что из себя представлял средний телефон тех лет! Интересно? Тогда добро пожаловать под кат!
Автомобильный трекер из детских часов с GPS
Приветствую, Хабр!
Когда дети пошли в школу, мы купили им часы с SIM-картой и GPS. Довольно удобное устройство для начальной школы, когда нужно чтобы ребенок минимум отвлекался на различные гаджеты на уроках. Дети уже выросли и ходят с телефонами, а пара часов осталась. Наконец я решил их использовать для чего-то полезного.
Сумасшествие «Артемиды» или почему она обречена на провал
Более полувека назад, 7 декабря 1972 года, с космодрома на мысе Канаверал стартовала ракета, уносящая к Луне трех астронавтов и луноход. После трехдневного полета двое из них спустились на поверхность Луны в хрупком посадочном модуле. В течение трех дней астронавты исследовали лунный ландшафт, собирали образцы пород и испытывали луноход. Затем они вернулись на орбиту, где их ждал третий член экипажа. Вместе они отправились обратно на Землю, приводнившись в южной части Тихого океана 19 декабря 1972 года. Эта миссия, получившая название «Аполлон-17», стала последним на сегодняшний день случаем, когда человек покидал пределы низкой околоземной орбиты.
NASA планирует вернуть американских астронавтов на Луну в конце 2026 года в рамках миссии «Артемида-3». Подобно «Аполлон-17», два астронавта проведут около недели на лунной поверхности, собирая образцы и делая памятные селфи. Однако, в отличие от исторической миссии, «Артемида-3» будет осуществлена без лунохода.
Несмотря на внешнюю схожесть с «Аполлон-17», «Артемида-3» значительно отличается по сложности и стоимости. В то время как «Аполлон-17» была запущена одной ракетой и стоила $3,3 миллиарда (в пересчете на 2023 год), «Артемида-3» потребует десятка запусков тяжелых ракет и обойдется в астрономическую сумму, которую NASA отказывается раскрывать. По оценкам экспертов, стоимость миссии может достигать 7–10 миллиардов долларов.
Сложность «Артемиды-3» поражает: одноразовый посадочный модуль станет самым тяжелым космическим аппаратом в истории, а научный результат миссии — небольшая коробка с лунными образцами — будет меньше, чем у «Аполлона-17». Более того, вся программа зависит от технологий, которые еще предстоит разработать и протестировать в течение ближайших полутора лет.
Возникает закономерный вопрос: если мы смогли отправить человека на Луну полвека назад, почему это так сложно сделать сейчас, учитывая технологический прогресс?
Compiler Explorer — уникальный проект для исследования компилируемого кода
CE — потрясающий инструмент. Если вы с ним не знакомы, то прервите чтение и перейдите на веб-сайт CE, где вы увидите примерно такой экран:
Предупреждение: вы забираетесь в «кроличью нору», на которую можете потратить несколько часов своего времени.
В основе CE лежит очень простая идея. Достаточно ввести исходный код в левую панель, и сайт мгновенно покажет вам на правой панели скомпилированный результат (обычно на языке ассемблера).
CE поддерживает 69 языков, более двух тысяч компиляторов и широкий спектр архитектур, включая x86, arm, risc-v, avr, mips, vax, tensa, 68k, PowerPC, SPARC и даже древний 6502.
То есть теперь для просмотра результата работы компилятора достаточно открыть godbolt.org и скопировать туда блок кода.
Это само по себе удивительно, но у CE есть гораздо больше возможностей. Это инструмент, который должны знать все интересующиеся компиляторами и архитектурами компьютеров. В статье мы сможем лишь поверхностно рассмотреть функции CE. Вам стоит самим перейти на сайт CE и попробовать всё самостоятельно.
Почему для меня так важен алгоритм CORDIC
CORDIC — это алгоритм для вычисления тригонометрических функций вроде
sin
, cos
, tan
и тому подобных на маломощных устройствах без использования модуля обработки операций с плавающей запятой или затратных таблиц поиска. По факту он сводит эти сложные функции до простых операций сложения и битового сдвига.Перейду сразу к делу и скажу, почему я так сильно люблю этот алгоритм, а затем займёмся изучением принципов его работы. По сути, фактические операции CORDIC весьма просты — как я уже сказал, это сдвиги и сложение — но выполняет он их путём комбинирования векторной арифметики, тригонометрии, доказательств сходимости и продуманных техник компьютерных наук. Лично я считаю, что именно это имеют ввиду, описывая его природу, как «элегантную».
Создание музыки в нейросети Udio, подробная инструкция с примерами от сообщества
Друзья, всем привет! Меня зовут Илья, я основатель онлайн-нейросети для создания изображений ArtGeneration.me, техноблогер и нейро-евангелист. С самого детства я мечтал научиться играть на каком-нибудь музыкальном инструменте. Я делал много попыток: были две гитары (акустическая и электро), клавиши и даже электронные барабаны. Но мне всегда не хватало усидчивости, и я не чувствовал удовлетворения от освоения инструмента, поэтому забрасывал его. Пробовал также освоить Ableton и FL Studio, но они казались мне слишком сложными. В итоге, к 35 годам я научился играть только на варгане, хотя душа требовала большего — я очень люблю музыку и слушаю ее буквально 24/7.
Нейросети уже дали мне возможность создавать прекрасные изображения, и я думал, как было бы здорово, если бы можно было так же легко создавать музыку. И действительно, около 10 месяцев назад появились такие инструменты, как MusicGen и AudioCraft от Meta*.
Samsung и SK hynix прекращают выпуск DDR3 в угоду всё более популярной HBM3. Что будет дальше?
На днях стало известно, что два крупнейших производителя оперативной памяти — компании Samsung и SK hynix — решили остановить линии, специализировавшиеся на выпуске DDR3. Вместо этого освободившиеся мощности планируется использовать для расширения объёмов выпуска ИИ-оптимизированной памяти HBM3. Что это за технология и почему HBM3 требуется много, читайте под катом.
Транскодирование — видеоконтент на диете. Часть 1
Привет, Хабр! С вами Матвей Мочалов. В этом посте я хочу кратко затронуть тему того, без чего не обходится любой стриминговый сервис от соцсетей до онлайн‑кинотеатров — о транскодировании.
Операторы в кино и блогеры в погоне за красивой картинкой в исходном виде готовы пойти на любые жертвы, используя наиболее быстрые и объёмные накопители. А также немалые вычислительные мощности, чтобы это всё банально воспроизвести. Но подобный подход, увы, слабо совместим с доставкой видеоконтента через интернет, особенно, если вы хотите, чтобы это было коммерчески выгодным. А если в один момент его потребляют миллионы пользователей, тогда ещё и под их потребности необходимы разные версии в различных разрешениях, с разной частотой кадров, озвучкой и т. д.
Чтобы улучшить положение, исходный контент подвергается облегчению посредством транскодирования. Как по своему объёму, так и по нагрузке, требуемой для его воспроизведения на клиентском устройстве.
Тайны Вселенной: что происходит внутри черных дыр
В декабре прошлого года российские ученые допустили возможность существования на окраине Солнечной системы объекта, способного оказаться первичной чёрной дырой. В то же время, астрофизики до сих пор не имеют общепризнанной теории образования чёрных дыр и устройства спиральных галактик. Для восполнения этого пробела в рамках проекта «Мон Тирэй» была разработана гипотеза, объясняющая эти процессы космической механики.
Как я разработал квадрокоптер на ESP32 с нуля (ушло 4 года)
При сборке квадрокоптеров и других БПЛА обычно используют готовую плату полетного контроллера, содержащую все необходимые датчики и периферию, и готовую полетную прошивку, например, Betaflight, ArduPilot или PX4. Полетный контроллер управляет моторами квадрокоптера и обеспечивает стабильный полет.
Занимаясь БПЛА с 2016 года, я решил разобраться в устройстве полетных контроллеров максимально глубоко и создать квадрокоптер с нуля, не используя готовый полетный контроллер и готовый софт. Спустя долгое время разработки мне удалось это сделать. Я написал прошивку с максимально простым исходным кодом и выложил ее на GitHub. В этой статье я расскажу о теории и практике разработки полетного софта для квадрокоптера и проиллюстрирую это на примере своего дрона на базе микроконтроллера ESP32, который можно увидеть на картинке выше.
Собираем балансирующий куб
Этот куб балансирует на одной из своих вершин и одновременно может управляемым образом вращаться вокруг своей оси. Это возможно благодаря умному управлению и трём реактивным маховикам.
Первоначальная идея этого устройства взята у исследователей Швейцарской высшей технической школы Цюриха, продемонстрировавших в этом видео свой Cubli. За последующие годы дизайн в определённых аспектах был усовершенствован. В частности, Bobrow et al (Университет Сан-Паулу) предложили улучшенную концепцию управления, уменьшающую количество IMU (блоков инерциальных датчиков) с шести до всего одного.
Я решил собрать такое устройство. Хотя идея и не нова, все предыдущие работы по этой теме в основном имели закрытые исходники. Я планирую изменить ситуацию. Это значит, что мне придётся выполнить реверс-инжиниринг и начертить всё с нуля. Результат моей работы, полностью опенсорсный (GitHub), показан в видео.
Одноплатник на 155-й серии
Эта история началась с ухода в отпуск зимой. Вы только представьте! Полярная ночь, темно хоть глаз выколи и дикий мороз. И вот сижу я такой страдалец, не зная, чем себя занять горемычного. А тут выскакивает статья, что японцы собрали однобитный компьютер на четырех микросхемах. (Naoto64). И вот то ли от безделья, то ли от тоски, или азарт меня одолел, но решил я попробовать собрать «одноплатник» с минимальным количеством микросхем. Под словом «минимальным» я подразумеваю компромисс между функционалом и лишним корпусом микросхемы. В итоге получилось при минимальной комплектации 26 микросхем. Это конечно гораздо больше, чем у Naoto64, но за то это уже 4-х битный «одноплатник».
Воплощаю мечту, создавая игру. Часть 2-я
Вторая часть статьи про разработку компьютерной игры в одиночку на игровом движке Unreal Engine 5. Вторая часть является заключительной моего знакомства с аудиторией и в ней я высказываю свои мысли по поводу покупных механик и 3D моделей в marketplace, делюсь результатами работы и планами.
Архитектура Stable Diffusion: Face ID, Lighting
Это перевод моей статьи на medium.com.
Год назад я провёл краткий обзор по теме переноса стиля. Пару месяцев назад я решил вернуться к этому вопросу и исследовать прогресс за последний год. За это время случилось много значимых изменений: архитектура open-source модели Stable Diffusion стала, лидирующей среди моделей для задач генерации изображений. Особенно её модификация SDXL [1]. Hugging Face превратился в лидирующую платформу для запуска модели Stable Diffusion с помощью библиотеки diffusers [2].
Байт-кодовые VM в неожиданных местах
Отвечая на вопрос в Twitter, Ричард Хипп написал, почему SQLite использует байт-кодовую VM для исполнения операторов SQL.
Вероятно, большинство людей ассоциирует байт-кодовые VM с языками программирования общего назначения, например, с JavaScript или Python. Но иногда их можно встретить в неожиданных местах! В статье я расскажу о тех, которые знаю.
Использование маппера UNROM при разработке игр для Dendy на языке Си
Приветствую всех любителей программирования всяческих ретро-железок. Могу предположить, что у большинства из читателей этой статьи была в детстве Dendy (а может и сейчас есть) или другой клон Famicom (клонов NES в СНГ я не встречал). Сегодня предлагаю обсудить особенности разработки игр для приставок Dendy, NES и Famicom с маппером (mapper) UNROM. Те из вас, кто хоть немного углублялся в особенности архитектуры игр для 8-битных приставок, наверняка слышал про мапперы. Это электронная схема, которая находится на плате картриджа и расширяет возможности консоли, подключаясь напрямую к шинам процессора.
Мапперов для Dendy существует сотни, так как очень часто компании, разрабатывающие игры, делали уникальные мапперы под свои нужды. Поэтому сегодня они есть на любой вкус и цвет. Самые простые мапперы позволяют переключать банки памяти (это было обычным делом для всех компьютеров 1980-х), а самые продвинутые (например, MMC5) уже позволяли использовать дополнительные аппаратные прерывания, улучшенный звук, прокрутку по двум осям и т. д.
«Строка бога»/идеальный промт, часть 2, продолжение истории
Здравствуйте, уважаемые читатели!
В этой статье я хотел бы продолжить тему появления субъязыка текстовых запросов к нейросетям (которая может быть полезна не только для инженеров, но и всех энтузиастов, которые, как, к примеру, и я проводят значительное время за работой с ИИ-генераторами).
Компания Anthropic, которая разработала семейство больших языковых моделей (LLM) Claude представила новый ИИ-инструмент, суть которого заключается в использовании уже готовых, универсальных, оптимизированных текстовых запросов по соответствующим темам, что позволяет повысить скорость и эффективность работы с нейросетевыми ресурсами.
Инструмент и соответствующий раздел веб-сайта Anthropic, на котором он размещен, получили название Prompt Library – Библиотека Запросов – а в качестве подзаголовка представлена фраза Explore optimized prompts for a breadth of business and personal tasks (Осваивайте оптимизированные запросы для решения широкого спектра деловых и личных задач).
M100 — Зеркальная галактика
Нашу собственную Галактику — Млечный путь — нам со стороны никак не увидеть, и с этим уж ничего не поделаешь. Но мы можем смотреть на другие галактики — более или менее похожие на наш звездный город, и делать косвенные выводы о его устройстве. Благо, подходящих для такого изучения, вокруг нас галактик предостаточно.
Information
- Rating
- Does not participate
- Registered
- Activity