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

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

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

Три совета, как не выучить C++ за 21 день (субъективный гайд с дополнениями)

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

Типичная проблема новичков при изучении языка программирования — они тонут в море учебных материалов. Интернет предлагает тонны статей, курсов и книг по C++, но как выбрать действительно стоящие?

Меня зовут Владислав Столяров, я руководитель команды анализа безопасности продуктов в мультипродуктовой экосистеме МойОфис. Наши решения — Документы Настольные и Документы Онлайн — во многом работают благодаря C++, так что мне есть чем поделиться. В этой статье расскажу, что делать, если вы вдруг решили залететь в плюсы, но уже чувствуете, как накрывает экзистенциальный кризис от обилия информации.

Читать далее

Мы тысячу лет писали музыку по нотам, а потом пришла нейросеть

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

Эту историю для моего блога рассказал Арсений Власов, IT-специалист.

Кто-то на форуме выложил песню, сгенерированную нейросетью, и я подумал: «Наверное, это забавно». Зашёл в Suno, потратил полчаса на эксперименты — и втянулся. Спустя год у меня пять альбомов, песня из игрового чата стала популярной, а я полностью заменил обычную музыку на созданную искусственным интеллектом.

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

Началось всё с шутки. Мы с друзьями брали новости с лент — про курс доллара, аварии, политику — копировали в Suno и смотрели, что получится. Нейросеть серьёзно пережёвывала «Центробанк повысил ключевую ставку» и выдавала что-то вроде драматичной баллады о финансовых потрясениях.

Получалось реально смешно. Но в этих экспериментах я заметил закономерность: какой бы бред ни загружал, мелодическая структура всегда получалась правильной. Suno понимала, где должен быть куплет, где припев, даже если текст — полная белиберда.

Стало понятно: нейросеть анализирует не только смысл, но и ритмическую структуру текста. Длинные предложения становились куплетами, короткие повторяющиеся фразы — припевами.

Тогда я решил попробовать нормальные тексты. У меня был опыт написания стихов — начал адаптировать старые работы под музыку.

Читать далее

Уничтожение EXE: 640 Байт для программы на C

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

В наше время разработчики уже не так беспокоятся о размере приложений. Некоторые простейшие приложения требуют под 200-300 МБ, а игра вообще может весить более 100 ГБ. Я уже не говорю про "Hello World", который иногда занимет под 180-260 КБ!

К счастью, есть возможность сократить размер приложения. О мусоре в exe'шнике и о способах его удаления написано в этой статье.

Читать далее

Перепрограммируем заводской Zigbee датчик протечки от компании Tuya

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

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

Читать далее

Найм в IT всё-таки мёртв

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

Или почему найти работу в 2025 году стало практически невозможно.

Раньше мне казалось, что найти работу — это вопрос желания. Ну правда: обнови резюме, откликнись X раз, получи пару приглашений на собеседования, пройди их — и вот, оффер. Вся проблема решалась увеличением воронки: больше откликов — больше офферов.

Но сейчас всё по-другому

Читать далее

Энергосберегающие технологии человеческого мозга

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

Как организм человека экономит энергию, затрачиваемую на обеспечение работы головного мозга? И к каким внешне видимым последствиям это приводит?
В частности:
- на уровне памяти,
- при обучении,
- при построении картины мира,
- при выработке шаблонов поведения и отказе от них,
- во время процесса осуществления выбора.

Читать далее

Чем заменить сахар? Большой гайд по альтернативам и сахарозаменителям

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

Сироп агавы, эритрит, стевия, мальтит и ещё десяток сахарозаменителей — что из этого действительно работает? Что выбрать, если у вас диабет или вы хотите отказаться от сахара? И правда ли шоколадка «Sugar-free» действительно без сахара и углеводов?

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

Читать далее

Глубина кроличьей норы: бинарная граница и ABI C++

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

Вопрос ABI (Application Binary Interface), бинарной границы и бинарной совместимости в C++, раскрыт на просторах интернета не так хорошо как хотелось бы. Особенно сложно в его изучении приходится новичкам, потому что эта тема связана со множеством деталей нарочно скрытой от глаз программиста имплементации языка.

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

Подробнее о статье:

Мир С++ многое скрывает от глаз программиста. Это свойство языка — обоюдоострый меч, который с одной стороны позволяет уменьшить порог входа, но в то же время является препятствием при написании программ, уходящих дальше стандартного примера.

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

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

В рамках всей статьи будут рассмотрены темы: системный стек, системные регистры, динамическая память, детали механизма виртуальных функций, стандарт С++ и реальная имплементация, детали механизма исключений, copy elision при линковке библиотек, шаблоны, POD-типы и ODR violation.

Break -in- ABI

Ссылки и указатели в C++

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

Привет, Хабр!

Сегодня разбираем &&* неувядающую классику C++ — ссылки & и указатели *. Казалось бы, два оператора, делов-то, но стгоит нырнуть под крышку — и выясняется: тут и разное время жизни, и несменяемость адреса, и прочие вещички. Разберемся в статье подробнее.

Читать далее

Оптимизируем C++ шаблоны: от инлайнинга до модулей

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

Мы рассмотрим, чем опасны шаблоны для проекта на C++ и как минимизировать эти риски. В оптимизации нам помогут инлайн-файлы, явные инстанциации и даже модули из C++20.

Читать далее

Как изобретатель печки строил рай для рабочих и что из этого вышло

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

В XIX веке один француз задался вопросом: «Почему нормальное жильё, горячая вода и достойные условия — это роскошь, а не базовый уровень?»

Его звали Жан-Батист Андре Годен. Он начал как сын слесаря, построил свою фабрику и решил, что бизнес может работать иначе. Что рабочие имеют право не только на зарплату, но и на долю в общем деле.

Так появился Фамилистер — проект, который объединил производство, жильё и принципы социальной справедливости. Он просуществовал больше 100 лет и стал доказательством того, что альтернатива классической модели есть.

Вот как это было.

Читать далее

Dart Native Assets: Полное руководство от новичка до профи

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

Представьте, что у вас есть Dart-программа, и вы хотите использовать готовую библиотеку, написанную на C, C++, Rust или другом языке. Раньше это было сложно - нужно было вручную компилировать библиотеку, следить за тем, чтобы она попала в нужное место, и писать много дополнительного кода.

Native Assets - это система, которая автоматизирует весь этот процесс. Она позволяет вашему Dart-пакету "включать в себя" нативный код и автоматически его компилировать и подключать.

Читать далее

Какие LLM модели для чего лучше подходят сейчас?

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

для бизнеса, разработки и другой работы

По моему практическому рабочему опыту, вот так:

Claude 4
* Sonnet => лучше всех пишет код, идеально держит контекст. Отлично пишет тексты и шутит. Подходит для создания ИИ-бота.
* Opus => неоправданно дорогой, всего на 20% лучше Sonnet.
Контекст — до 200 тыс. токенов.

Gemini-2.5
* Pro => вторая по силе написания кода. Хорошо подходит для архитектуры приложений, может быть тебе “другом”. Слабо пишет тексты.
* Flash => всё то же, но на 40% хуже, зато одна из самых быстрых моделей. Подходит для ИИ-звонаря.
Контекст — до 1 млн токенов.

GPT-4

* 4.5 => очень хорошо пишет тексты, креативен, но шутит хуже Claude. Очень человечный и эмпатичный.
* 4.1 => отлично структурирует посты, очень логичен, неплохо пишет код. Идеально держит промпт — хорошо подходит для ИИ-ботов.
* 4.1 mini / nano => если нужна оптимизация цены общения для ИИ-бота или простые задачи (например, определение темы диалога, саммари и др.). Работают заметно быстрее обычного 4.1.
* 4o => хорош тем, что видит/создаёт картинки.
Контекст — до 1 млн токенов.

GPT-o
* o3 => подходит для сложных логических задач, планирования архитектуры приложений (хотя мне Gemini нравится больше), отлично для аналитики.
* o4-mini => если нужно быстро что-то посчитать математически.
* o4-mini-high => подходит для написания кода, но уступает Gemini и Claude. Зато лучше чем gpt-4o работает с картинками.
Контекст — до 200 тыс. токенов.

Deepseek
* R1 => устарел, но по-прежнему самая дешёвая “размышляющая” модель. Хорош для аналитики, например звонков. Можно развернуть на своём сервере.
* V3 => на уровне 4.1 mini, только дешевле. Также можно использовать для ИИ-ботов, разворачивать у себя на сервере/облаке.
Контекст — до 64 тыс. токенов.

Читать далее

Основные команды GIT

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

Научись использовать Git как профессионал. Эта статья поможет тебе освоить самые популярные команды Git на реальных примерах. Узнай, как добавлять изменения, создавать коммиты, переключаться между ветками, объединять изменения и синхронизировать проект с удалённым репозиторием.

ОГОГО, что там далее!? ...

Организация собственной библиотеки на сервере с веб-интерфейсом

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

Привет! Наверное, у каждого рано или поздно возникает вопрос: как упорядочить хаос с купленными (да, мы же против пиратства?) книгами в форматах PDF, DJVU и других, так чтобы:

- получить к ним доступ как с мобильного устройства, так и с любимого ПК или Mac;

- сохранять прогресс чтения между устройствами;

- не терять книги в куче папок.

Хочу поделиться решением, которое помогло мне организовать библиотеку.

Читать далее

Топ российских мессенджеров для работы в команде. Чем заменить WhatsApp и Telegram

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

Вероятность блокировки Telegram и WhatsApp только становится только выше. 10 июня Госдума приняла закон о создании российского национального мессенджера. Мы собрали топ корпоративных мессенджеров, которые могут стать достойной заменой WhatsApp и Telegram. 

Читать далее

Что не так? Три парадокса теории вероятностей

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

Парадокс двух детей Вы встретили на прогулке соседей с сыном. Известно, что у них двое детей. Какова вероятность, что второй — тоже мальчик?

Казалось бы, детская задачка, где нужно просто “вспомнить формулу”, но всё не так однозначно. Если задать этот вопрос прохожему, он, скорее всего, скажет ½. Преподаватель математики, возможно, ответит ⅓. Кто из них прав?

В каком-то смысле, правы оба. Просто каждый представляют себе свой способ, как была получена информация о ребёнке. На самом деле это и есть условие задачи. Только скрытое. 

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

Парадоксы, о которых пойдет речь, — не логические ошибки. Это ситуации, в которых само понятие вероятности начинает колебаться. Они не ломают теорию, но обнажают, где она требует особенной осторожности. Именно в таких местах теория вероятностей становится особенно странной — и особенно интересной.

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

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

А пока — вернёмся к соседям с мальчиком. Разберемся, почему эта задачка не так проста, как кажется на первый взгляд.

Читать далее

Упрощение прототипирования и верификации RTL с помощью Python

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

Всем привет!

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

Недавно я открыл для себя библиотеку PyStim (Bind Python & SystemVerilog), которая кардинально упростила процесс. PyStim позволяет напрямую вызывать Python-методы и работать с Python-объектами из среды SystemVerilog без необходимости писать обвязку на C или использовать DPI-C. Это значительно снизило трудозатраты и ускорило адаптацию уже готового Python-кода в тестбенче.

Читать далее

Я 25 лет настраивал фотоаппарат, выстраивал композицию, ставил свет, а потом пришла нейросеть

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

Эту историю для моего блога рассказал профессиональный фотограф Олег Цербаев

В начале 2000-х появилась цифровая фотография, мир раскололся на два лагеря: «Это не искусство!» против «Это будущее!». За три года в рекламной индустрии почти не осталось фотографов старше 40 лет. Крупные журналы начали работать с молодыми ребятами, фотоиндустрия в итоге выросла в разы. То, что происходит сейчас с нейросетями — намного масштабнее. Это не просто новый инструмент в нашем арсенале, а целая новая реальность.

Представьте, что вместо кисти художнику вдруг дали соавтора — талантливого, с безграничной фантазией, но иногда непредсказуемого. Именно так работают нейросети в создании изображений. Они не просто выполняют команды — они интерпретируют, дополняют и иногда удивляют.

Читать далее

Потрясающие фотографии Млечного Пути от лучших астрофотографов

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

Ежегодное цветение люпина в Новой Зеландии впечатляет: поля разноцветных цветов простираются через бассейн Маккензи. Этот регион в самом сердце Южного острова славится своим тёмным небом, что делает эту сцену ещё более сюрреалистичной в ночное время. Над цветами видна полоса внешнего Млечного Пути, а также созвездия Ориона, Близнецов и Плеяд. К ним присоединяются яркие планеты Юпитер и Марс, а на горизонте видно зелёную аврору.

Читать далее

Информация

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

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

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