В 2020-м мой работодатель начал прижимать меня по условиям, я забрал команду, снял склад и запустил свое производство когтеточек. Казалось бы, ничего сложного: закупаешь клей, картон, и находишь людей, которые 5 000 раз в день готовы повторять одни и ту же операцию. Но есть нюансы.
Пользователь
Построение распределенной системы очередей сообщений с RabbitMQ и Python
Распределенные системы — это важная составляющая современных вычислений. Они позволяют нам создавать приложения и сервисы, способные обрабатывать огромные объемы данных, обеспечивать высокую доступность и масштабируемость. Однако, при работе с распределенными системами, существует ряд сложностей и вызовов, которые разработчики должны учитывать.
RabbitMQ — это мощный и гибкий брокер сообщений, который широко используется для создания распределенных систем, поддерживающих обмен данных между различными компонентами приложения. Он был разработан с учетом принципов протокола Advanced Message Queuing Protocol (AMQP), что делает его стандартом в индустрии для обработки сообщений.
Производство корпусов «в силикон» на пальцах: поэтапно и с анимацией
Это вам не 3D-принтер гонять, тут все по-взрослому. Покажем производство корпусов по очень популярной технологии литья полиуретана в силиконовые формы — как это делается; и расскажем о рисках и ошибках. Зачем? Чтобы цена разработки и производства корпуса неожиданно не стала в несколько раз выше, чем вы планировали.
Подключаем дисплей к любому одноплатнику с SPI: большой мануал о поиске экранчиков для ваших проектов
Сейчас появилось достаточно много различных дешевых одноплатников с очень достойными характеристиками, которые вполне можно назвать экономичными и портативными. Однако очень часто встает вопрос вывода изображения на дисплей: к сожалению, в подобные устройства обычно ставят урезанные версии чипсетов без видеовыхода на обычные матрицы. Конечно в них практически всегда есть HDMI, но это совершенно не выход для портативного устройства: прожорливый чип скалера будет очень негативно влиять на время работы от АКБ. Да и сами подобные дисплеи очень дорогие: почти 2.000 рублей за матрицу со скалером — это действительно бьет по карману. Сегодня я расскажу Вам о существующих протоколах для дисплеев, подскажу, как применить экранчики от старых навигаторов/мобильников и мы подключим с вами SPI-дисплей к одноплатнику без видеовыхода. Причем мы реализуем как просто библиотеку, которая позволяет выводить произвольную графику из ваших программ, так
и службу, которая будет напрямую копировать данные из фреймбуфера и преобразовывать в формат для нашего дисплея. Интересно? Тогда жду вас в статье!
Настраиваем удобную сборку проектов в Visual Studio
В качестве примера попробуем сделать так чтобы в Студию можно было добавлять flatbuffer schema, а Студия автоматически вызывала flatc в тех случаях когда это нужно (и не вызывала — когда изменений не было) и позволяла задавать настройки напрямую через File Properties
Исходники закрыты, но мы не сдадимся: Пишем полностью нативное GUI-приложение под No-Name смартфон без Android
Для многих разработчиков приложений далеко не секрет, что экосистема Android не предполагает написание полностью нативных приложений: в этой платформе очень многое завязано на Java и без ART можно запустить только простые службы без какого-либо интерфейса. Однако, есть один способ писать практически под «голый» Linux, не перекомпилируя ядро и при этом пользоваться самыми интересными фишками устройства без оверхеда в виде тяжелого Android: ускорение 3D-графики (OpenGLES), микшер звука, ввод с различных устройств, OTG, Wi-Fi и если очень постараться — даже 3G. Это открывает множество разных интересных применений старым устройствам: «железо» смартфонов зачастую гораздо мощнее современных недорогих одноплатников. Сегодня я покажу вам, как написать и запустить программу, которая полностью написанное на C без Android, на No-Name Android-смартфоне практически без модификаций. Интересно? Жду вас в статье!
Сам себе игровая консоль: как я сделал свой «тетрис» с нуля. Что происходит, когда программист встречается с железом?
Я, как и многие мои читатели, очень люблю игры. Уже довольно обширное число моих статей было посвящено ремонту и моддингу самых разных игровых консолей — как китайских «нонеймов», так и брендовых PSP и PS Vita! Однако, меня тянет к железу не только желание отремонтировать и поставить в строй «устаревшие» девайсы, но и мания делать и созидать что-то своё! А ещё я очень люблю программировать игры и графику сам. Недавно я загорелся идеей разработать с нуля свой портативный «тетрис»: от схемы и разводки платы, до написания прошивки и игр под нее. Что получается, когда программист, который поставил электронику практически во главе своей жизни, пытается сделать свое устройство? Читайте в статье!
Программы-клиенты для протоколов недетектируемого обхода блокировок сайтов: V2Ray/XRay, Clash, Sing-Box, и другие
В предыдущей статье “Современные технологии обхода блокировок: V2Ray, XRay, XTLS, Hysteria и все-все-все” я рассказывал про прокси-протоколы. Теперь настало время рассказать про клиенты: консольные, GUI для десктопа и для мобильных платформ.
Надеюсь, что эта статья вам окажется полезной, потому что, как выяснилось, найти хороший клиент даже для тех же V2Ray/XRay в наше время не так-то просто. Потому что большая часть того, что находится при поиске в интернете “в лоб” и даже в списках типа Awesome V2Ray - или уже неподдерживаемое, или довольно кривое, или не умеющее в актуальные версии и фичи (например, XTLS и uTLS), а самые жемчужины прячутся где-нибудь в глубинах Github’а и сторов.
Когда один TCP-порт может быть поделён
Вы замечали, как простые вопросы иногда приводят к сложным вопросам? Сегодня мы попытаемся подступиться к одному из таких вопросов. Категория — наша любимая: сетевые аспекты Linux.
Как работает Wine
Wine — это свободное программное обеспечение для запуска Windows-приложений на нескольких POSIX-совместимых операционных системах, включая Linux, macOS и BSD.
Если вы любите Linux, то наверняка когда-то запускали Wine. Возможно, для какой-то «важной» программы Windows, у которой нет аналога под Линуксом, или поиграться. Забавный факт: даже Steam Deck от Valve запускает игры через оболочку на основе Wine (она называется Proton).
За последний год я намучился с отладчиком, который позволяет одновременно дебажить и Wine, и Windows-приложение в нём. Разобраться во кишочках Wine оказалось очень интересно! Я-то раньше много им пользовался, но никогда не понимал механику целиком. Можно взять файл Windows — и просто запустить его в Linux без каких-либо изменений. Если вы хотите знать, как это сделано, добро пожаловать под кат.
Физика вращения 3д тел
Когда я раньше задумывался о вращении в 3д, мне было неуютно. Оно казалось сложным. Вспомнить, например, эффект Джанибекова с прецессией свободно вращающейся гайки. Настало время разобраться!
В статье Вас ждут математика, физика, а заодно численное моделирование и визуализация в libgdx.
Можно провести аналогии между массой тела в поступательном движении и моментом инерции. Разница только в том, что масса выражается одним-единственным числом, а момент инерции - матрицей 3х3. В большинстве примеров ограничиваются вращением в 2д, где существует только одна возможная ось вращения, либо симметричными телами типа мяча, когда момен инерции по всем осям одинаковый. Вместо этого я рассмотрю наиболее общий случай.
Что нужно знать, чтобы вдохнуть жизнь в вашу визуализацию
Цвет одинаково важен в любом дизайне и визуализации данных. Он не только «задаёт тон», но и меняет восприятие. Цвет воздействует на уровне подпорогового внимания. Визуальные свойства этого уровня воспринимаются моментально и не требуют обдумывания. Они влияют на восприятие незаметно. Этот процесс бессознателен и обусловлен культурой и опытом. У разных людей восприятие различается. К счастью, есть руководства, помогающие внимательно относиться к цвету; я рекомендую посмотреть Color in Culture graph от Дэвида Маккэдлеса. Подробности — к старту нашего флагманского курса по Data Science.
О, дивный новый мир
Давайте поговорим о будущем мире под призмой самых назойливых проблем.
Проблема 1. Органические отходы и пресная вода
В среднем человек потребляет 750 кг еды в год, На 7 млрд населения нехилый абсолютный урон экологии.
Пресной воды средний человек потребляет 100 куб метра в год. Объем озера Байкал 23 615,39 млрд кубометров, 7 млрд человек в год потребляют же 700 млрд кубометров.
700 против 23 615? Всего 33 года.
Какой выход - технологии переработки органических отходов в компост, интегрированные с жилыми зданиями, последующий возврат в почву удобрений. Интегрированные в здания технологии очистки воды (дистиллированной и дезодорированной), и повторное использование очищенной воды в качестве технической.
Проблема 2. Неуправляемые транспортные потоки, проблема с парковками и заторы на дорогах.
Пожалуй, одна из видимых проблем, которую решают все по-разному. Многие города закрывают центры для авто, кто-то реконструирует дороги без встречного движения.
Однако это борьба со следствием , а не с причиной. Так в чем же причина?
Изготовление печатных плат ЛУТ'ом от А до Я
В данной статье я хочу изложить порядок действий, которые позволят быстро изготавливать ПП под компоненты в корпусах подобных TQFP-100, то есть с ногами 0,2мм и таким же зазором, и при этом сводить брак к минимуму.
Конечно это способ изготовления плат только для прототипов, но он снижает риски ошибиться при создании конечного устройства.
В сети много статей и роликов с подобными советами, но как правило там не охвачены все нюансы тех или иных действий. Здесь же хочу показать весь процесс, который в домашних условиях позволит за час-полтора изготовить приемлемый экземпляр ПП.
Под катом подробности и трафик.
STM32 Modular USB Composite device
Проект является логическим продолжением другого проекта на Хабре - CDC+MSC USB Composite Device на STM32 HAL и рассказыват о том, как на STM32 создать проект с несколькими USB устройствами, с читаемой структурой и используя типовые модули. Конкретно в этом проекте рассмотрен пример комбинации HID + CDC UART + CDC, а также рассказано как этот проект возможно расширить другими интерфейсами.
Как пропатчить ОС 1996 года с помощью Ghidra
Не так давно автор материала работал над сложной головоломкой: как пропатчить операционную систему сэмплового синтезатора 1996 года Kurzweil K2500. О путешествии автора в старый код музыкального инструмента рассказываем к старту курса по разработке на C++.
Пишем эмулятор Game Boy на OCaml
Введение
Последние несколько месяцев я работал над проектом под названием CAMLBOY — эмулятором Game Boy, написанным на OCaml, который работает в браузере. Протестировать его можно на следующей странице демо:
Страница демо
Я добавил в демо несколько неофициальных ROM, поэтому в них можно поиграть (рекомендую Bouncing ball и Rocket Man Demo). Также можно поиграть в них в мобильном браузере, на современных смартфонах эмулятор работает с частотой 60 FPS.
Репозиторий
Репозиторий находится здесь:
https://github.com/linoscope/CAMLBOY
Старый канон Звёздных войн: саморазрушение, как смысл существования
Страсти вокруг отмены Диснеем старого канона Звёздных войн не утихают до сих пор: кто-то отстаивает святость и непогрешимость Расширенной вселенной, кто-то наоборот считает, что Дисней всё сделал правильно, некоторые пытаются блюсти золотую середину, а я… А я сегодня расскажу вам почему отмена канона была неизбежна, при чём тут дедушка Лукас и почему лучшее враг хорошего. Присаживайтесь поудобнее и заваривайте каф.
Моделирование звука гитарных нот с помощью алгоритма Карплуса-Стронга на python
Звучит больно, не правда ли? Что еще говорить о том, что одна и та же нота звучит по-разному на разных музыкальных инструментах. Почему же так? Все дело тут в наличии дополнительных гармоник, создающих уникальный тембр каждого инструмента.
Но нас интересует другой вопрос: как этот уникальный тембр смоделировать на компьютере?
Информация
- В рейтинге
- 2 813-й
- Зарегистрирован
- Активность