Что было интересного в январе.
Решил стырить идею одного из блогов который частенько читаю. 😊
Если что вот он: https://interrupt.memfault.com/blog
Так вот буду каждый месяц или может чуточку реже выкладывать ссылки на статьи, которые показались интересными или полезными. Себе для запоминания, да и вам почитать. Часть из них будут именно из блога, представленного выше. Кстати, очень рекомендую.
Электроника
https://www.zephray.me/post/grayscale_lcd/
Небольшая заметка о монохромных пиксельных дисплеях и реализации вывода изображений.
http://microsin.net/adminstuff/others/u-blox-7-ubx-protocol-part-3.html#GFG-class-table
Нормальное описание бинарного протокола навигационных сборок от UBLOX. Делал однажды проект, пришлось поискать.
https://habr.com/ru/company/yadro/blog/456828/
Статья старая, но актуальна. А что вы знали о переходных отверстиях на печатных платах? Интересует целостность сигналов? советую почитать.
Программирование
Много-много интересного о новом Си, а именно C23. Ждали, надеялись? Читайте.
https://gist.github.com/fay59/5ccbe684e6e56a7df8815c3486568f01
Немного интересного о Си. Это просто описание не совсем типичных конструкция языка. Хотя многое покажется знакомым, возможно что-то интресное или полезное наёдется, если нет, то и пофиг 😁
https://swtch.com/~rsc/regexp/regexp1.html
Немного интересностей о регулярках и том как они устроены и работают.
https://interrupt.memfault.com/blog/improving-compilation-times-c-cpp-projects
Пост из того самого блога, про ускорение сборки проектов на с/с++. Странно, но некоторые вещи вполне очевидны. Хотя многие этого не делают. Особенно зашел совет про предварительное объявление типов. С кэшем не сдружился, как-то криво он работает.
https://floooh.github.io/2019/09/27/modern-c-for-cpp-peeps.html
Фантастическая статия про современный Си. Конечно уже не совсем современный. Здесь описано несколько интересных моментов в языковых конструкциях. Ну и немного о том, что Си и С++ это разные языки и не стоит Си считать подмножеством плюсов.
https://en.cppreference.com/w/c/language/array_initialization
Для тех кто не знает как можно инициализировать массив на си и указать значение определенного(ых) элементо. Писал сейчас этот текст и специально нашел, что бы показать.
Инструменты
https://blog.feabhas.com/2022/12/disassembling-a-cortex-m-raw-binary-file-with-ghidra/#more-3807
Слышали про гидру? Если нет то знакомьтесь. Ghidra — это среда для реверсинженеринга ПО, созданная и поддерживаемая Исследовательским управлением Агентства национальной безопасности (оно самое 😁).
https://xpack.github.io/dev-tools/riscv-none-elf-gcc/
Просто компилятор. Просто для RISC-V. Просто GCC. Кстати, для этой архитектуры можно использовать и Clang/LLVM, вот только придется гдето взять скомпиленный под эту архитектуру libc и иже с ним.
https://github.com/Altium-Designer-addons/scripts-libraries
Большой репозиторий со скриптами для Altium
WEB
Красивые функциональные графики. Многое конечно сделано через жопу, но зато из коробки нормальная работа с временными диапазонами. Тормознее, но легковеснее CartJS
https://web.dev/building-a-theme-switch-component/
Очень краивая переключался темной и светлой темы. Да ещё и пошаговый мануал.
https://github.com/argyleink/gui-challenges
А это репозиторий где лежит переключалка. Не знаю, нужно ли, просто нашел, просто вписал 🤷♂️
Обучение flexbox на лягушках 🐸 Милота же.