Обновить
-4
Эдуард Зиганшин@e-zigread⁠-⁠only

Разработка электроники

Отправить сообщение

std::move ничего никуда не двигает: подробный рассказ о категориях значений в C++

Время на прочтение35 мин
Охват и читатели18K

Проблема: когда из-за «оптимизации» код замедляется

Начнём с ситуации, в которой могут спотыкаться даже опытные разработчики. Допустим, вы написали на C++ следующий код, который выглядит совершенно нормальным:

Читать далее

От дашбордов к дофамину: как мозг измеряет эффективность поведения

Уровень сложностиСредний
Время на прочтение16 мин
Охват и читатели7.3K

Обезьянка с тарелками в голове Гомера Симпсона - лучшая визуализация лимбической системы, которую я видел. Внутри каждого из нас работает древняя система измерения эффективности. Она мгновенно даёт ответ: повторить действие или избегать. Не требует дашбордов. Не подвержена закону Гудхарта. Но есть проблема: она оптимизирована для мира, в котором мы давно не живём. Отсюда прокрастинация, хронический стресс и странные решения. Разбираемся с позиции менеджмента и ИТ.

Читать далее

Claude Code изнутри: как устроены AI-агенты для разработки

Уровень сложностиСредний
Время на прочтение17 мин
Охват и читатели12K

Команда AI for Devs подготовила перевод статьи о том, как на самом деле устроены AI-агенты для программирования. Автор шаг за шагом показывает, что за Claude Code не стоит магия: это последовательный агентный цикл, инструменты, контроль разрешений и работа с контекстом.

Читать далее

Функция потерь: как алгоритм понимает, что он ошибся

Уровень сложностиСредний
Время на прочтение7 мин
Охват и читатели8.8K

Доброго времени суток, «Хабр»!

Представьте, что вы играете в дартс. Сначала ваши дротики разлетаются по всей мишени, но с каждой попыткой вы постепенно приближаетесь к заветному центру. Человек интуитивно понимает, что нужно скорректировать бросок: сильнее, выше, левее или правее. Примерно так же работает и алгоритм машинного обучения. Только вместо интуиции там есть функция потерь.

Сегодня поговорим об этой функции, попробуем в ней разобраться и понять, как же алгоритм понимает, что он ошибся. Принимайте стратегически удобное положение, ну а я приступаю к своему повествованию.

Читать далее

Лучшие практики разработки с агентами: руководство от команды Cursor

Уровень сложностиПростой
Время на прочтение12 мин
Охват и читатели13K

На днях команда Cursor выпустила руководство по лучшим практикам работы с агентами на примере своего продукта. Это очень прикладные советы, которые помогут вам максимально эффективно использовать Cursor в своей работе. Для тех кто хочет копнуть глубже, авторы делятсы ссылками на исследования и подробности технической реализации тех или иных возможностей.

Я перевёл это руководство для читателей Хабра, потому что многие из описанных практик совпадают с тем, к чему я пришёл самостоятельно методом проб и ошибок. Многие из них легко адаптировать и для других популярных инструментов.

Читать перевод

Перестань вайбкодить: почему «разработка на расслабоне» убьет твою карьеру

Уровень сложностиПростой
Время на прочтение7 мин
Охват и читатели52K

Ты пишешь код быстрее, чем когда-либо. IDE угадывает твои мысли, тикеты закрываются. Кажется, что ты хакнул систему и поймал тот самый «вайб». Но есть нюанс: если завтра отключат интернет и помощников, сможешь ли ты написать сложную логику с чистого листа?

Читать далее

Какой Может быть UART-CLI в Микроконтроллере (или Курс Молодого Бойца)

Уровень сложностиПростой
Время на прочтение8 мин
Охват и читатели13K

В этом тексте я бы хотел провести курс молодого бойца по использованию CLI в микроконтроллере. Расскажу про API той CLI, которая получилась у меня.

Прежде всего CLI — это первичный лог загрузки прошивки. Инициализация микроконтроллера — это многостадийный процесс, в котором многое может пойти не по плану. Поэтому первое, что вы должны увидеть в консоли — это зеленый лог загрузки программы.

Читать далее

А вы всегда пьёте коньяк на завтрак или только по выходным?

Уровень сложностиПростой
Время на прочтение9 мин
Охват и читатели19K

А вы всегда пьёте коньяк на завтрак или только по выходным?

Привет всем, я – Соня, IT HRD. Начинала как QA инженер. Люблю tech и инженеров за то, что помимо работы тут всегда узнаёшь разные крутые понятия и термины полезные не только для работы но и для жизни. За 20 лет работы накопилось много продуктово-инженерных жаргонизмов, пратик, законов и принципов, которые я была бы рада узнать пораньше. Можно прям в старших классах школы вместо ОБЖ.Ниже — мои любимые. Добавляйте в комменты свои.

1. Ложная дихотомия
Ложная дилемма, чёрно-белое мышление — это логическая ошибка и манипулятивная тактика, при которой из множества вариантов предлагаются только два (обычно крайних), игнорируя промежуточные или иные альтернативы. Этот приём сужает выбор, вынуждая принять одну сторону, часто ложно представляя одну из альтернатив как приемлемую, а другую — как неприемлемую. Мир не чёрно-белый. Наш коньяк с этой полки.

2. Бритва Оккама
Методологический принцип: при наличии нескольких объяснений одного и того же явления нужно выбирать самое простое. Не следует множить сущности, добавлять лишние предположения без необходимости. Не надо усложнять. Оккам, кстати, — английский монах-философ. Считается одним из отцов современной эпистемологии и современной философии в целом, а также одним из величайших логиков всех времён.

3. Игра с ненулевой суммой
Ситуация в теории игр, где выигрыш одного участника не обязательно означает равный по модулю проигрыш другого. Сумма результатов (выигрышей и проигрышей) может быть больше или меньше нуля, что позволяет сторонам получить взаимную выгоду (win-win) или совместно проиграть. В играх с нулевой суммой выигрыш одного игрока всегда равен проигрышу другого. Шахматы или шашки: если один победил (+1), второй обязательно проиграл (-1). Сумма: 1 + (-1) = 0.

Читать далее

Аптечка сисадмина: необходимый набор ПО для Linux и Windows

Уровень сложностиПростой
Время на прочтение9 мин
Охват и читатели30K

У каждого системного администратора должен быть набор программных решений для практически любой ситуации — некая серверная аптечка первой помощи. В статье собрал базовый минимум ПО для «лечения» основных болезней серверов на Linux и Windows.

Читать

Внутри ядра Docker: что на самом деле происходит при запуске контейнера

Уровень сложностиСредний
Время на прочтение7 мин
Охват и читатели18K

Когда вы вводите в командную строку docker run nginx — кажется, что произошло какое-то волшебство: за считанные секунды появляется полностью изолированная среда. Но здесь нет никакой магии, а просто инженерия ядра Linux. Давайте подробнее разберём эту тему подробнее и изучим, что именно происходит внутри ядра, когда Docker создаёт контейнер.

Читать далее

Программный съем трафика на скорости 400G: сравнение методов обработки и неочевидные бутылочные горлышки

Уровень сложностиСредний
Время на прочтение15 мин
Охват и читатели9.9K

Меня зовут Юрий Морозов, я главный архитектор компании «Гарда».

В этой статье я расскажу, как можно организовать обработку трафика на высоких скоростях. Актуальность этой задачи для современной сетевой безопасности напрямую связана с эволюцией технологий передачи и обработки данных: за последние годы скорости выросли на порядок, и вместе с ними резко изменились требования к производительности систем анализа и фильтрации трафика.

Читать далее

Как Работать с UART на Микроконтроллерах (UART + FIFO = LOG)

Уровень сложностиПростой
Время на прочтение14 мин
Охват и читатели14K

«Во всех самолётах есть черный ящик. A UART‑логирование это черный ящик вашей прошивки.»

В этом тексте я написал про то как работать с UART на микроконтроллерах.
Вы узнаете как пользоваться UART до того, как он будет включен.

Допустим вы решили делать в своей прошивке printf‑отладку. Или даже забабахать UART‑CLI (Shell).

Первое с чем Вы столкнетесь — это настроить UART‑трансивер. Как же реализовать алгоритм работы с UART периферией?

Читать далее

Ловушка профилирования

Уровень сложностиСложный
Время на прочтение4 мин
Охват и читатели12K

Оптимизация и профилирование C++: branchless-код проиграл обычному if-else. Что пошло не так? Разбираемся вместе.

Читать далее

Вы больше не новичок в Git. Повышаем квалификацию с помощью 7 команд

Уровень сложностиСредний
Время на прочтение10 мин
Охват и читатели25K

Каждому разработчику когда-нибудь приходилось срочно переключаться между ветками, восстанавливать потерянный коммит или аккуратно вырезать одно исправление. Это можно делать примитивно с помощью базовых команд Git, но настоящий профессионал отличается от любителя тем, что применяет самые оптимальные решения, тем самым экономит время и нервы. О таких решениях поговорим далее в статье.

Читать далее

Микробиом и рак. Бактерия из ЖКТ рептилий уничтожила раковые опухоли у мышей

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели8.8K

В материалах часто ссылаюсь на микробиом, как на эдакий универсальный нормализатор и точку приложения усилий для продления жизни. И, само собой, для повышения продуктивности. И вот тому очередной доказательство. Внутривенно введенная бактерия, взятая из микробиома рептилий, привела к подавлению раковых опухолей у мышей.

Читать далее

Анатомия performance-critical C++ кода на примере ECS

Уровень сложностиСредний
Время на прочтение13 мин
Охват и читатели8.8K

Всем привет! Это продолжение статей про мою ECS with Sectors в моём движке Stellar Forge!

В предыдущей статье я описал структуру памяти, что являлось подготовкой фундамента для быстрой итерации, а сейчас хочу рассказать как по этой памяти передвигаться.
Получилась общая обзорная статья о том, как заставить C++ код быть быстрее, так что устраивайтесь поудобнее :-)

Статья будет полезна всем, кто пишет performance-critical код на C++: геймдев, HFT, обработка данных, embedded.

Читать далее

6 Docker-фич для продвинутого использования. Часть 2

Уровень сложностиПростой
Время на прочтение8 мин
Охват и читатели25K

Привет Хабр! Снова.

Docker уже давно стал стандартом, и базовые команды вроде docker rundocker build или docker compose up знакомы любому разработчику. Но экосистема и инструментарий контейнеризации гораздо глубже.

В этом материале мы отойдём от банальных инструкций и разберём шесть продвинутых инструментов и настроек. Думаю, вы узнаете для себя что-нибудь новое.

Читать далее

Как пользоваться Claude Code без VPN и обезопасить себя от AI-саботажа

Уровень сложностиСредний
Время на прочтение4 мин
Охват и читатели18K

Проблема 1 — VPN неудобный. Одни сервисы не работают без него, другие не работают с ним, поэтому весь день приходится перетыкиваться туда-сюда, это раздражает. Плюс те VPN, которыми пользуюсь я, иногда (стараниями Роскомнадзора видимо) умирают на несколько часов — и вся работа встает. 

Проблема 2 — недавно на Реддите чувак рассказывал, как проморгал какое-то разрешение — и агент снес ему весь диск D. Безвозвратно. У меня тоже были случаи, когда нейронка затупила и удалила что-то не то, но она хотя бы удаляла файлы из проектов, подключенных к Гитхабу. Восстановил и работаешь дальше. Но если она безвозвратно удалит какие-то личные файлы за пределами проекта, будет неприятно.

Я нашел изящный способ решить обе проблемы одним махом. Работает не только с Claude Code, но и с любым другим CLI-агентом — такие есть у Codex, Gemini и даже у Cursor.

Читать далее

Upgrade: OpenSpec и Beads в Cursor

Время на прочтение8 мин
Охват и читатели7.5K

Разработка с ИИ-ассистентами часто напоминает поездку с талантливым, но забывчивым штурманом. Он отлично знает карту (код), но постоянно забывает пункт назначения (бизнес-задачу) и пройденный маршрут (контекст).

Мы привыкли работать в режиме "Prompt & Pray": написали длинный промпт, получили код, внесли правки. Но на дистанции сложной фичи контекст размывается. Агент начинает галлюцинировать, терять детали или переписывать одно и то же. Проблема не в модели, а в отсутствии долгосрочной памяти и четкого контракта.

В этой статье я расскажу, как превратить хаотичный диалог с Cursor в структурированный инженерный процесс. Мы объединим два инструмента:

OpenSpec - чтобы зафиксировать "что и зачем мы делаем" (Spec-Driven Development).

Beads - чтобы управлять тем, "как и в каком порядке" это выполнять (граф задач).

Cursor - как среду, которая связывает их воедино.

Если вы устали от того, что ИИ теряет нить повествования на середине рефакторинга, этот подход для вас.

Читать далее

Claude Code: маршрут обучения и полезные ресурсы (2026)

Уровень сложностиПростой
Время на прочтение3 мин
Охват и читатели19K

Я как-то писала про Claude Code. По ощущениям, многие вайбкодеры сейчас выбирают его как основную CLI-среду для агентского кодинга. Между Codex, Gemini и Claude Code часто выбирают последний- за быстрые итерации и удобство. Собрала в одном месте полезные ресурсы про Claude Code

Читать далее
1
23 ...

Информация

В рейтинге
Не участвует
Откуда
Мытищи, Москва и Московская обл., Россия
Дата рождения
Зарегистрирован
Активность

Специализация

Системный инженер, Инженер электронных устройств
Старший
От 225 000 ₽
C++
Qt
Verilog HDL
VHDL
Git
Linux
FPGA
Схемотехника
Altium designer
Разработка электроники