Информация
- В рейтинге
- 3 642-й
- Откуда
- Москва, Москва и Московская обл., Россия
- Дата рождения
- Зарегистрирован
- Активность
Специализация
Бэкенд разработчик, Инженер встраиваемых систем
Старший
SQL
Python
Linux
Docker
Английский язык
Bash
C
Программирование микроконтроллеров
Embedded linux
Rust
Ну вот, ваше внимание привлекло - значит, сработало :)
Достаточно просто купить Google Pixel в Цифрус, там никакого российского софта нет.
Читаю статью - и мозг постоянно цепляется за нейросетевые паттерны текста. Автор, признайся честно - нейросетка писала статью?
В чём проблема пересборки бинарника?
Неправда. Всё можно сделать, вопрос только в том, какие инструменты дать нейронке. Если очевидно, что не хватает инструментов - либо искать MCP под нужную задачу, либо написать самому. Вот, например, нашёл MCP для GBD:
https://github.com/Ipiano/gdb-mcp
https://github.com/signal-slot/mcp-gdb
Но проверку на ноль и панику он не выкинул. Именно это я имел в виду, никакого UB. Спасибо за замечание
То же самое
А вот что происходит в Rust
Да, в Rust нет UB при делении на ноль, всегда паника, и даже если значения одинаковы и не известны, компилятор не будет пытаться оптимизировать. black box именно это и делает, прячет значение от компилятора, чтобы он не мог на основе его оптимизировать код, это я сделал чтобы не писать ввод из stdin, он не доступен в rust playground
Да, тут всё относительно, конечно. Просто из моего опыта: постоянно использую serde в embedded, и бинари весят десятки килобайт всегда, никаких аномальных размеров. Согласен, конечно, что нужно бенчить
serde прекрасно дружит с no_std. Именно дефолтный, просто указываете defaul-feautures = false для отключения std. Какое там разбухание бинаря? Обычная бинарная сериализация через postcard. Только что проверил, создал no_std проект, добавил serde и postcard, создал три типа (сложные enum и struct, вложенные один в другой), добавил сериализацию и десериализацию. Скомпилировал с O3 и FullLTO. Оверхед 3 килобайта. Всё инлайнится прекрасно. На esp32 от 4 до 16 мегабайт флеша. При таком объеме флеша не стоит экономить пару килобайт ценой ухудшения кода.
Зачем писать бинарный протокол вручную? Есть такие крейты как serde, postcard.
Есть прям побитово – есть крейт proc-bitfield. А вы сделали в сишном стиле.
А почему не взяли VictoriaMetrics?
https://code.claude.com/docs/en/discover-plugins
Есть же плагин
jdtls-lspРазве его недостаточно?
Господи, да зачем переводить слово endpoint...
Есть реализация стека USB Power Delivery на JS? :)
Всё же CAN-контроллерами они обладают, а не CAN-трансиверами, исправьте.
А почему не использовать OpenCode?
Одно дело – прочитать и примерно понять логику. И совсем другое – поддерживать такой код.
Ну, если вы работаете джейсоноукладчиком – тогда AI вполне может справиться со всеми вашими задачами.
Ну-ну. То есть, вы утверждаете, что ИИ не нужен читабельный код? Вы серьезно думаете, что если у вас код без комметариев, без нормальной архитектуры, с одной гигантской функцией main и переменными с именами a,b,c, без строгой типизации и с размазанной по всех кодовой базе логикой, то нейронка сможет так же легко читать и поддерживать этот код? Sweet summer child...
А ещё я бы не разделял код на "оптимизированный для LLM" и "оптимизированный для человека". LLM обучили работать с кодом так же, как это делает человек. Они так же юзают grep для навигации по кодовой базе, запускают тесты, линтер, читают логи, анализируют коды ошибок. Если кодовая база написана хорошо, есть тесты, правильное разбиение на модули, логирование, правильная обработка ошибок - то поддерживать это будет легко как человеку, так и нейронке. Если код изначально написан плохо - то плохо будет для обоих. Но только опытный разработчик может решить, что пора всё отрефакторить, переписать. Выкинуть старую архитектуру на определённом этапе и сделать хорошо. А нейронка будет вставлять костыли, фиксить одно, и в то же время ломая другое.