Библиотека C/C++ разработчика | cpp, boost, qt
20.2K subscribers
1.79K photos
49 videos
16 files
3.98K links
Все самое полезное для плюсовика и сишника в одном канале.

По рекламе: @proglib_adv

Учиться у нас: https://proglib.io/w/d6cd2932

Для обратной связи: @proglibrary_feeedback_bot

РКН: https://gosuslugi.ru/snet/67a5bac324c8ba6dcaa1ad17
Download Telegram
🧠 Выбор первого ML-проекта: чеклист против выгорания

Классика плохих решений в ML — выбрать слишком сложный проект: неделя ковыряния в коде, десятки крашей и никакого результата. Хотите дойти до финиша — начните с простого проекта, который реально можно довести до конца.

Мини-чеклист первого проекта:

1. Понятные данные — без «я нашёл датасет в даркнете, но он на суахили».

2. Измеримая метрика — «точность 92%», а не «ну вроде работает».

3. Объяснимый результат — чтобы не-техлид понял, почему модель ругается на спам.

Наш курс «ML для старта в Data Science» — старт от простого к сложному: теория → практика → проверка → проект в портфолио.

👉 Начать свой путь в Data Science

Оплатите курс по ML до 17 августа — курс по Python в подарок.

📅 Бесплатный вебинар с Марией Жаровой — 21 августа: как выбирать проекты, которые доводят до оффера, а не до психотерапевта.

💾 Сохрани, чтобы не потерять, когда будешь готов(а) начать
😁1
🌀 Решение проблем связанных с параллелизмом в IOT

💡 Автор статьи предлагает радикально иной подход: заменить потоки и корутины на конечные автоматы для создания истинно параллельных программ на микроконтроллерах.

Ключевые моменты статьи:

• конечные автоматы как математическая основа для параллельного программирования
• библиотека на C++ для ESP32, реализующая автоматное программирование
• параллелизм в одном потоке без проблем синхронизации и гонок данных

Основной фокус — практическая реализация технологии автоматного программирования на микроконтроллерах ESP32.

Особенно актуально для проектов умного дома и промышленного IoT, где требуется работа в жёстком реальном времени с множеством датчиков и исполнительных устройств.

Оказывается, реальный проект с датчиками температуры, влажности, освещённости и управлением реле работает без FreeRTOS, поддерживает WiFi, MQTT и Home Assistant — и всё это на одном потоке с дискретностью такта 10 мсек.

Библиотека C/C++ разработчика
🤔1
😼 Перевод:

ПРОГРАММИСТЫ ИСПОЛЬЗУЙТЕ ЭТУ ИНФОРМАЦИЮ С УМОМ
U+003B ТОЧКА С ЗАПЯТОЙ
U+037E ГРЕЧЕСКИЙ ВОПРОСИТЕЛЬНЫЙ ЗНАК


Библиотека C/C++ разработчика

#развлекалово
🥱12😁4👏32
🍿 Холивар: Exception Safety

🐊 Услышал вчера на собесе перл века:

Exception safety в C++ не нужна, мы просто не используем исключения


И вот тут я понял, что индустрия раскололась на два лагеря:

Лагерь No Exceptions: Google Style Guide, игровая индустрия, embedded. Их мантра: «Исключения = непредсказуемая производительность»

Лагерь RAII + Exceptions: Стандартная библиотека, большинство enterprise проектов. «Исключения - это элегантная обработка ошибок»

// Версия без исключений
std::optional<Data> parse(const std::string& input) {
if (input.empty()) return {};
// ...
}

// Версия с исключениями
Data parse(const std::string& input) {
if (input.empty()) throw std::invalid_argument("empty input");
// ...
}


Реальность:

90% C++ кода уже содержит исключения через STL. Даже new может бросить std::bad_alloc! 😱


Провокация:

Если ты пишешь код без exception safety, ты пишешь потенциально багованный код. Точка.


✏️ Опрос: Как ты относишься к исключениям в C++?

🔥 Использую активно (элегантно!)
❤️ Избегаю (производительность)
⚡️ Только в STL контейнерах
🌚 Что такое exception safety?

Библиотека C/C++ разработчика
Please open Telegram to view this post
VIEW IN TELEGRAM
23🔥23🌚53
😎 Вы просили — мы сделали. Самый долгожданный анонс этого лета!

Мы открываем набор на второй поток курса «AI-агенты для DS-специалистов»!

На курсе мы учим главному навыку 2025 года: не просто «болтать» с LLM, а строить из них рабочие системы с помощью Ollama, RAG, LangChain и crew.ai.

📆 Старт потока — 15 сентября.

💸 Цена 49 000 ₽ действует только в эти выходные — до 17 августа. С понедельника будет дороже.

👉 Занять место
👾1
📰 Свеженькое из мира C++

Подготовили подборку самых интересных материалов за неделю о разных аспектах программирования и интересных проектах в мире C++.

😼 Интересное:

Как с помощью статического анализа улучшить производительность Unreal Engine проекта — в статье разбираются особенности интеграции PVS-Studio с игровым движком и способы оптимизации процесса анализа кода
Решение проблем связанных с параллелизмом в IOT — статья об разных подходах к решение проблем параллелизма в IOT

😎 Полезное:

RAII + Custom Deleters для ресурсов — реализация кастомного deleter
Как быстро разобраться в чужом C++ коде? — быстрый способ разобраться с новым кодом с помощью AI
Автоматическая синхронизация и применение изменений CMake — автоматическое обновление конфигурации CMake в IDE

Библиотека C/C++ разработчика
👍3
🫣 Хотите в Data Science, но боитесь высшей математики?

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

Именно этому учат преподаватели ВМК МГУ на нашем курсе «Математика для Data Science».

Без лишней воды — только то, что нужно для:

успешного поступления в ШАД Яндекса;
прохождения собеседований уровня FAANG;
глубокого понимания ML-алгоритмов.

Это самый прямой путь к математическому фундаменту, на котором строится вся карьера в Data Science.

👉 Начните строить свою карьеру уже сегодня
😁3
🏖️ Подборка вакансий для C++-разработчиков за неделю

C++ Developer — до 200 000 ₽ Удалёнка

Разработчик С/С++ (телеком) — Офис (Санкт-Петербург)

BIOS Software Developer — Удалёнка

Библиотека C/C++ разработчика
😁1
🐸 Оптимизация копирования с помощью техники Zero-Copy


🔥 Проблема:

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


✏️ Решение:

Zero-Copy позволяет передавать данные без копирования в пользовательское пространство, используя системные вызовы sendfile() и splice() в Linux.

#include <sys/sendfile.h>
#include <fcntl.h>

// Отправка файла через сокет без копирования в userspace
int send_file_zerocopy(int socket_fd, const char* filename) {
int file_fd = open(filename, O_RDONLY);
off_t offset = 0;
struct stat file_stat;

fstat(file_fd, &file_stat);
// Прямая передача из ядра в сокет
ssize_t sent = sendfile(socket_fd, file_fd, &offset, file_stat.st_size);

close(file_fd);
return sent;
}



↗️ Преимущества:

• Снижение использования CPU при передаче данных
• Уменьшение задержек за счет исключения системных вызовов copy
• Экономия памяти — данные не загружаются в пользовательское пространство
• Масштабируемость для высоконагруженных веб-серверов и прокси


Библиотека C/C++ разработчика

#буст
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥10👍51
This media is not supported in your browser
VIEW IN TELEGRAM
👻 Гибридные вакансии и фантомный рост

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

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

🐸Библиотека Go-разработчика
Please open Telegram to view this post
VIEW IN TELEGRAM
2🤔2👍1😢1
⚡️ Бесплатный вебинар — прогнозируем цены и не сходим с ума

21 августа в 19:00 МСК будет бесплатный вебинар с Марией Жаровой — экспертом в ML и Data Science.

Тема:
«Введение в машинное обучение: как спрогнозировать стоимость недвижимости».


Подробности рассказываю в гс выше — включай, чтобы не пропустить.
👍1
😎 std::mdspan в C++23: многомерные данные без самодельных view

💡 В C++23 появился std::mdspan — стандартизованный способ адресации многомерных данных без самодельных обвязок на указателях и макросах.

Ключевые возможности mdspan:
• настраиваемые политики размещения (row-major, column-major, stride)
• статические и динамические размерности в типе
• транспонирование и ROI без копирования данных

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

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

Теперь вместо ручной арифметики указателей у вас единый тип и возможность писать универсальные функции без привязки к внутренней формуле offset'а.

👉 Статья

Библиотека C/C++ разработчика

#буст
🔥3👍1
🆕 C23: что нового в стандарте C?
📅 25 августа | 20:00 мск | бесплатно

На вебинаре разберём:
🔹 Основные фичи C23: #embed, constexpr, улучшенные макросы, новые типы и атрибуты
🔹 Обратная совместимость и миграция со старых стандартов
🔹 Что можно применять уже сейчас и как это изменит ваш код

Полезно для:
💡 Программистов на C, которые хотят быть в курсе последних изменений

👉 Регистрируйтесь и узнайте, как C23 повлияет на ваш код:
https://clc.to/ASH5Wg

Занятие приурочено к старту курса "Программист С", обучение на котором позволит не только глубоко погрузиться в возможности языка С, но и изучить низкоуровневые особенности устройства UNIX-совместимых ОС и ОС семейства Windows

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
2👍1
This media is not supported in your browser
VIEW IN TELEGRAM
☝️ Один мудрый тимлид дал двум своим разработчикам по «таланту» — мощной, но своенравной LLM.

Первый разработчик испугался её «галлюцинаций». Он запер модель в песочнице, не давая ей доступа к свежим данным. На вопросы модель отвечала красиво, но часто придумывала факты, то есть врала. Он просто «закопал» свой талант, боясь им пользоваться.

Второй же разработчик не побоялся. Он построил для своей LLM систему RAG — дал ей «лопату и карту», чтобы находить сокровища в базе знаний компании. Его AI-агент отвечал точно по делу, ссылаясь на реальные документы. Он заставил свой «талант» работать и приносить пользу.

Мощь LLM раскрывается не в ней самой, а в системах, которые вы строите вокруг неё.


Именно такие системы мы и будем строить на втором потоке нашего курса «AI-агенты для DS-специалистов». Мы не просто поговорим о RAG, а соберём полный пайплайн с оценкой качества, чтобы ваш агент не врал.

Представьте, что вы сможете начать изучать эту сложную и востребованную тему уже 15 сентября, а не ждать официального старта в октябре. У вас будет фора в 3 недели, чтобы спокойно разобраться в векторных базах и подходе «LLM as a Judge».

💸 Цена 49.000 ₽ действует последние 4 дня — до 24 августа.

👉 Начать строить RAG раньше других
🥱8😁2
🔥О реальной ситуации на рынке junior-разработчиков: почему сейчас лучшее время для входа в IT

«Джунов много, а вакансий мало... Невозможно найти первую работу!» — такие комментарии часто встречаются в IT-сообществах


💡 Сергей Попов, директор образовательного продукта в Скиллбокс и ментор в Хекслите, развенчивает мифы о рынке junior-специалистов.

Ключевые моменты интервью:

• в России не хватает 750 тысяч IT-специалистов по данным Минцифры
• зарплаты стажёров составляют 40-50 тысяч рублей с перспективой роста
• каждая крупная компания запускает собственные стажировочные программы

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

Главный инсайт: конкуренция среди джунов действительно высока, но компании активно борются за кадры, создавая всё больше возможностей для новичков. Ключ к успеху — правильно подобрать формат обучения

👉 Видео

Библиотека C/C++ разработчика

#буст
😁7🥱21🔥1
This media is not supported in your browser
VIEW IN TELEGRAM
📅 Сегодня в 19:00 МСК — бесплатный вебинар с Марией Жаровой.

Тема: «Введение в ML: как спрогнозировать стоимость недвижимости».

🔹 Разберём задачу прогноза стоимости недвижимости.
🔹 Покажем пошагово, как собрать первую модель.
🔹 Получите готовые скрипты для старта.

Не зайдёшь — будешь ещё год делать вид, что понимаешь графики в чужих презентациях.

👉 Регистрируйтесь
🥱4😁1