ch
Feedback

不要被骗子欺骗!Telemetrio 会找到并标记这些频道 👉 如果想查看标记,请订阅

C++ and other lectures

C++ and other lectures

前往频道在 Telegram

Учебный канал в Телеграм: тут будут анонсы и ссылки на лекции и стримы. Написать автору: @Tilir Boosty автора: https://boosty.to/cpp_lects_rus

显示更多

📈 Telegram 频道 C++ and other lectures 的分析概览

频道 C++ and other lectures (@cpp_lects_rus) 俄语 语言赛道中的 是活跃参与者。目前社区聚集了 10 014 名订阅者,在 技术与应用 类别中位列第 12 157,并在 俄罗斯 地区排名第 63 447 位。

📊 受众指标与增长动态

自 невідомо 创建以来,项目保持高速增长,吸引了 10 014 名订阅者。

根据 27 十月, 2026 的最新数据,频道保持稳定运转。过去 30 天订阅人数变化为 52,过去 24 小时变化为 4,整体触达仍然可观。

  • 认证状态: 未认证
  • 互动率 (ER): 平均受众互动率为 87.99%。内容发布后 24 小时内通常能获得 33.73% 的反应,占订阅者总量。
  • 帖子覆盖: 每篇帖子平均可获得 8 812 次浏览,首日通常累积 3 378 次浏览。
  • 互动与反馈: 受众积极参与,单帖平均反应数为 98。
  • 主题关注点: 内容集中在 компилятор, c++, llvm, struct, compilers 等核心主题上。

📝 描述与内容策略

作者将该频道定位为表达主观观点的平台:
“Учебный канал в Телеграм: тут будут анонсы и ссылки на лекции и стримы. Написать автору: @Tilir Boosty автора: https://boosty.to/cpp_lects_rus”

凭借高频更新(最新数据采集于 28 十月, 2026),频道始终保持新鲜度与高覆盖。分析显示受众积极互动,使其成为 技术与应用 类别中的关键影响点。

10 014
订阅者
+424 小时
+77 天
+5230 天
帖子存档
Всем привет. Немного дружеского пиара. Открыт набор на бесплатные курсы от компании Yadro. Подходит для студентов 2 курса и старше (в том числе и для выпускников, почему нет). Можно проходить онлайн, можно ходить в офис Yadro и проходить очно. Направления: * Программирование микроконтроллеров * Верификация систем на кристалле * DevOps И всякое другое. https://edu.yadro.com/practical-courses/#admission Заявки принимаются до 2 февраля. #official

Всем привет! Хотелось бы начать новый год с какого-то большого и важного анонса. Многие спрашивали, будет ли у меня всё-таки книга по C++. Мне бы и самому хотелось это знать. Поэтому я решил выложить драфт -- первые три главы потенциальной книги. Объём -- примерно 20 страниц на главу, плюс ещё страниц 10–15 константного оверхеда, потому что выкладываю одним куском вместе с обложкой. К слову, обложкой искренне горжусь, очень концептуальная, очень. Подчеркну: это демо-версия потенциальной книги. Я пока даже не очень уверен в её составе на уровне крупных разделов. И уж точно у меня пока нет контракта с издательством и всего такого. Почитайте и напишите в комментариях, что думаете. А я через некоторое время вернусь с информацией (и опросом) на тему того, как вы сможете помочь этой книге состояться — если вам её идея покажется интересной. По первым трём главам, мне кажется, уже можно сделать какие-то выводы. #official #cpp_graduate #cpp_postgraduate

Пост итогов 2025-го года. Новый год уже стучится в двери. В этом посте я подведу свои итоги. Призываю всех в комментариях делиться своими ощущениями от года и нашего канала. Или просто поздравлять меня и друг друга. Особенно круто поздравлять непосредственно в новогоднюю ночь. В эту новогоднюю ночь я буду далеко от цивилизации (в лесу) и присоединюсь к вашим поздравлениям в лучшем случае утром. И, поскольку у всех жителей нашей страны от Владивостока до Калининграда новогодняя ночь наступает по разному, я выложил этот пост чуточку заранее. К слову о нашей необъятной стране -- за этот год я основательно её объездил (благодаря вышедшей книге). Встречи с читателями были мной проведены в Санкт-Петербурге, Москве, Новосибирске, Минске, Нижнем Новгороде, Ростове на Дону, Йошкар Оле, Великом Новгороде, Екатеринбурге, Казани, и в конце года ещё разок в Москве. Суммарно на встречах со мной и на гостевых лекциях побывало человек 350-400. Для меня это был важный опыт и я наконец-то посмотрел Россию. Россия замечательная страна, если вы не знали. У меня немного не сложилось с Владивостоком, с Магасом и с Нижним Тагилом, во все три меня в общем звали но я не доехал по разным причинам. Может быть ещё сложится. Среди докладов этого года самые важные это доклад про модули на C++ Russia и доклад на SnowOne про ограничения статических компиляторов. Также много позитивных отзывов собрали моя лекция про коэволюцию языков, компиляторов и инструментов разработки в iSpring и про распределение регистров в ИТМО. Как обычно, я продолжаю выводить в свет своих учеников и коллег. Среди тех, кого хочется отметить, конечно, Настя Черникова (со мной и без меня и ещё разок без меня), Илья Андреев, Владислав Белов, Никита Руденко, Илья Гаврилин и Юлий Тарасов. Гигантским достижением этого года я считаю курс на Stepik по RISC-V, сделанный совместно с Марком Гончаровым и Настей Черниковой. Он взят на вооружение в пяти университетах, и на него уже более тысячи регистраций. Своим чередом развивался мой любимый проект генератора llvm-snippy. Я прочитал пару докладов (например этот), мы выпустили опен-сорс релиз и сделали документацию на github pages. Генератор был принят в симулятор spike (он же riscv-isa-sim) для тестирования модели случайными тестами. Главной авантюрой этого года я считаю начало выкладки англоязычного курса. Я не был уверен, что из этого вообще получится что-то хорошее. Отмечу, что влияние этой выкладки на мой Linkedin было колоссальным: моя профессиональная сеть выросла до 2.4к (+1.5к) за счёт добавляющихся в друзья разработчиков из дружественных стран. Теперь, если что, я точно найду себе работу. По крайней мере -- в Индии. По просмотрам пока не так радужно, но лиха беда начало. Громадная благодарность Владиславу Белову, Насте Черниковой и Даниилу Авдееву за постоянную поддержку. Без них я бы не справился. В целом, мой телеграм-канал вырос до более чем 9к человек (+2.5к), а мой youtube-канал до более чем 29к (+5к). Хочется выразить огромную благодарность Владиславу Белову и Максиму Москальцу за неусыпную модерацию нашего сообщества. Планы на следующий год пока не ясны -- у меня с ними традиционно сложно. Но, возможно, в начале года что-то расскажу насчёт книги по C++, которую от меня все так долго ждали. Концепция у меня уже есть, кое-что уже готово. Может быть, я даже попрошу вашей помощи. Я хотел бы пожелать всем моим уважаемым друзьям на этом канале (всем более чем девяти тысячам), чтобы в наступающем году у вас было много амбициозных планов, много мотивации и сил для их претворения и чтобы не было проблем с внешними обстоятельствами. Всех с наступающим Новым Годом! P. S. Бонусом -- мнение микроволновки о моих итогах года. В комментариях можете пошарить мнение вашего пылесоса о вас. #official #happynewyear

Из докладов System Level Meetup могу также порекомендовать доклад Насти Черниковой (вы её уже видели на этом канале) про чекеры в clang-tidy. https://www.youtube.com/watch?v=UCc2xtyMhuo 00:00 Intro: что делать с UB? 06:50 Статический анализ. 11:48 Как выглядит AST и что такое матчеры. 18:10 Пишем собственный чекер. 25:38 Ограничения статического анализа и выводы 30:05 Ответы на вопросы. Он частично развивает и дополняет мою уже довольно древнюю лекцию про clang internals, раскрывая её с несколько более практичной стороны. #conference

Выложил последнюю лекцию первой части англоязычного магистерского курса. https://youtu.be/ME1PJmOSMYg Эта лекция продолжает разговор о диапазонах. Мы посмотрим как устроены изнутри стандартные отображения и на какие компромиссы приходится идти при работе с ними. Также мы углубимся в pull model и разберём некоторые её неочевидные последствия. Далее нас ждёт главное преимущество диапазонов -- возможность их бесшовной адаптации и склеивания с помощью специальных функцие-подобных объектов -- Ниблоидов. И в самом конце я покажу какие ошибки могут возникать при работе с диапазонами и как выглядит борьба с этими ошибками. 00:00 Intro: Views as Projections 05:52 Inside transform_view and More Dangling 12:27 Hesitant Behavior 16:41 Inside filter_view and Caching 22:48 Quirks of the Pull Model 30:25 Range Adaptation and Niebloids 37:20 Case Study: Trimming a String 46:55 CRTP Base for Adaptors 52:42 Bug Hunt: Dealing with Ranges in Practice 01:04:45 Lessons Learned and Bibliography #cpp_graduate

Выложил последнюю лекцию первой части англоязычного магистерского курса. https://youtu.be/ME1PJmOSMYg Эта лекция продолжает разговор о диапазонах. Мы посмотрим как устроены изнутри стандартные отображения и на какие компромиссы приходится идти при работе с ними. Также мы углубимся в pull model и разберём некоторые её неочевидные последствия. Далее нас ждёт главное преимущество диапазонов -- возможность их бесшовной адаптации и склеивания с помощью специальных функцие-подобных объектов -- Ниблоидов. И в самом конце я покажу какие ошибки могут возникать при работе с диапазонами и как выглядит борьба с этими ошибками. 00:00 Intro: Views as Projections 05:52 Inside transform_view and More Dangling 12:27 Hesitant Behavior 16:41 Inside filter_view and Caching 22:48 Quirks of the Pull Model 30:25 Range Adaptation and Niebloids 37:20 Case Study: Trimming a String 46:55 CRTP Base for Adaptors 52:42 Bug Hunt: Dealing with Ranges in Practice 01:04:45 Lessons Learned and Bibliography #cpp_graduate

Опубликовали наше с Юлием Тарасовым выступление по корутинным оптимизациям в LLVM. Всегда интересно заглянуть как это там под капотом. Прекрасный способ провести пятничный вечер, я считаю )) https://youtu.be/UH2Y1I2HuBE Timeline: 01:00 Intro: Routine, Subroutine 05:36 Thread Routines and Coroutines 10:20 Stackfull and Stackless Coroutines 14:11 C++ Coroutines Flexibility And Thread Independence 17:10 What Compiler Shall Do? 20:50 Yuly Appears: Clang/LLVM Coroutines 25:40 How C++ Coroutines Transformed in LLVM 31:25 How To Help Compiler With Elide? 36:13 Wrap-up and Q&A #conference

Выложил тринадцатую лекцию магистерского курса на английском https://youtu.be/8C2u9QrGygY На этой лекции мы начнём разговор о диапазонах -- фундаментальном улучшении стандартной библиотеки. Мы покажем как даже классические алгоритмы были улучшены концептами в пространстве имён ranges. Далее мы введём понятие диапазона -- между итератором и ограничителем. Нас ждёт увлекательная встреча с механизмом безопасности итераторов -- borrowed ranges. Во второй части лекции мы рассмотрим views -- легковесные отображения и увидим по настоящему странные ограничители, позволяющие даже бесконечные диапазоны. Закончим мы на общем обзоре стандартных отображений. Timeline 00:00 Intro: When the Standard Library Was Young 05:00 Sentinels 09:58 Hierarchical Range Concepts 16:35 Dangling Iterators and Borrowed Ranges 22:22 Views: Lightweight Ranges 26:01 CRTP and view_interface 30:15 Why string_view Is a Poor View 35:27 Curious Uses of Sentinels 46:50 Infinite Views and Their Finite Parts 49:41 Constness Propagation -- End of Part I #cpp_postgraduate

Продолжаю хвастаться своими студентами. https://www.youtube.com/watch?v=lYZIDX6oU74 Илья Гаврилин учится в магистратуре на нашей кафедре и работает у меня в команде рантаймов. Его доклад посвящён Chromium и интерпретатору V8. Илья участвовал в портировании V8 и Maglev на архитектуру RISC-V и мне кажется доклад стал отличным обобщением этой работы. Он не сосредоточен именно на RISC-V. Для вас он может быть просто очень интересной экскурсией внутрь вашего браузера. Timeline: 00:00 Введение, представление докладчика и т.д. 05:07 V8: движок для оптимизации JavaScript, TypeScript и WebAssembly. 10:50 Проблемы исполнения JavaScript в браузере и оптимизирующий компилятор TurboFan в составе V8. 24:03 Добавляем билтины к байткоду: шаблонный компилятор SparkPlug 27:40 Компилятор Maglev как золотая середина: самый быстрый оптимизирующий JIT-компилятор. 33:00 Немного о портировании Maglev на RISC-V и немного о котопсах. 39:20 Ответы на вопросы. #conference #talks

Выложил двенадцатую лекцию магистерского курса на английском https://youtu.be/Xvdcz_vnddw На этой лекции мы поговорим про лямбды и всё, что с ними связано. Мы начнём с их введения как обычных анонимных функторов. Далее окажется, что каждый объект лямбды это объект специального класса-замыкания. Ненадолго мы вернёмся в пещеру чудес и рассмотрим как лямбды работают в невычислимом контексте. Особое внимание мы уделим захвату в замыкание и решим интересную задачу проброса списка захвата: так мы изобретём кортежи. В конце лекции нас ждёт погружение в стирание типов -- начав от более простых механизмов вроде std::any мы дойдём до std::function. И конечно в процессе мы отроем технику deducing this и далее неоднократно к ней вернёмся. Timeline 00:00 Intro: Anonymous Functors. 04:22 Universal Way to Call Anything 11:45 Lambdas, Closures and Concepts 19:30 Unevaluated Contexts 23:00 Capturing Arguments 30:45 Move Capture and Forwarding 36:00 Deducing This 40:18 Variadic Captures 49:40 Forwarding Capture: Inception of Tuples 55:07 Ways to Create a Tuple 01:01:45 Type Erasure: std::any, std::variant 01:08:00 Type Erasure with std::function 01:14:10 Homework and Bibliogrpahy #cpp_graduate

Провёл последнюю в этом году встречу с читателями. В Москве в офисе Yadro. Было не очень много людей, но кажется прошло довол
Провёл последнюю в этом году встречу с читателями. В Москве в офисе Yadro. Было не очень много людей, но кажется прошло довольно неплохо. Из тех кто ходит на встречи, книгу так никто за год и не прочитал. Зато обсудили всё остальное: NixOS, задачи компиляторов, проблемы RISC-V Vector Extension и когда я наконец заведу канал на Boosty и начну там поглавную выкладку книги про C++. Пора бы уже, конечно. #author_event

Выложил одиннадцатую лекцию магистерского курса на английском Мы продолжим обсуждение техник программирования времени компиляции. Начнём с красивой проблемы, поставленной и решённой ещё Фон Нейманом. Далее переместимся в современный C++ и исследуем рефлексию через операторы, напоминающие ушки кошкодевочек. Посмотрим что делать с разнообразием методом метапрограммирования и исследуем интересный подход к метапрограммированию, ориентированному на функции и значения, принятый в Boost::Hana. Для восприятия этой лекции лучше посмотреть прошлую лекцию, вводную в мир constexpr. Timeline 00:00 Introduction: Trits 06:40 Consteval-Constructible Trits 12:30 A Bit of C++26: Template For and the Ears Operator 19:30 Catgirls in the Cave of Wonders 24:13 Case Study: Is It an Object Type? 29:40 Constexpr for Metaprogramming 39:00 A Variety of Metaprogramming Styles: The Sumfoos Riddle 46:23 Another Example: Physical Quantities 50:45 Boost.Hana and the Idea of "Normal" Compile-Time Programming 58:30 Homework and Bibliography #cpp_postgraduate

Всем привет. Если кто-то из новых читателей этого канала не знает, у меня год назад вышла книжка: https://t.me/cpp_lects_rus/191 и неплохо разошлась. В этом году я проводил встречи с читателями в разных городах и зачастую в офисах разных компаний, например в VK меня позвали ещё весной. Надо какое-то красивое завершение года, финальная встреча. И я думаю вы уже поняли где она пройдёт. https://meetups.yadro.com/autograph-session-k-vladimirov Да, это будет встреча с читателями в офисе Yadro в Москве, причём двери будут открыты для всех, вам не обязательно быть сотрудником. Ну а уж если вы сотрудник то вообще просто — спускаетесь к общедоступному ресепшену на первом этаже (где столовая) и всё там. Карту для остальных куда подходить приложу в комментариях. Встречаемся в среду 10 декабря, в 20:00. Как обычно могу пообещать максимум общения с залом при максимально открытых интеллектуальных шлюзах. И даже будет какое-то количество еды. Встреча пройдёт в довольно большом помещении, 50 мест точно есть. Обычно народа столько не бывает. Но мало ли, лучше регистрируйтесь заранее. #author_event

Выложил десятую лекцию магистерского курса на английском https://youtu.be/cg1D-t_7ZSk В этой лекции мы начнём разговор о вычислениях на этапе компиляции. Мы начнём с определения константно-выраженных переменных и функций, рассмотрим детали константно-выраженного потока управления. Также мы разберемся как работает в контексте компиляции неопределённое поведение и какую пользу мы сможем из этого извлечь. Далее мы познакомимся с концепцией constexpr all the things и с историей "контекспризации" стандартной библиотеки. В конце лекции нам предстоит зайти в пещеру чудес, познакомиться с охраняющим её джином и научиться показывать фокус с пальцем: нас ждут такие странные вещи, как виртуальные функции и выделение динамической памяти времени компиляции. Timeline 00:00 Introduction: constant expressions 06:53 constinit and constexpr variables 13:04 Control flow in constexpr contexts 17:02 constexpr functions 25:29 Implementing countl_zero 34:15 Core constant expressions 40:04 Undefined behavior in consteval functions 45:02 User-defined literal types and suffixes 55:25 Constexpr all the things 01:00:50 constexpr arrays 01:05:10 Virtual constexpr functions: sleight of hand 01:09:47 constexpr new and the Cave of Wonders 01:16:45 Homework and bibliography #cpp_postgraduate

Немного анонсов. На OSDev Conf ещё остались места для оффлайн-участия и открыта регистрация. Программа: https://osdevconf.ontico.ru/abstracts Официальный анонс: https://t.me/osdevconf_channel/21 Я там ранее выступал см. https://t.me/cpp_lects_rus/142, очень приятное мероприятие (для разработчиков операционных систем в основном). В этот раз также будут выступать несколько моих коллег. #official

Выложили моё выступление в ИТМО. Попробовал поговорить о настоящей сложности распределения регистров и вообще — про обманчиво простые задачи. https://www.youtube.com/watch?v=XUttZ838Tw0 00:00 Начало. Кто использует стек? 04:50 Задача распределения регистров и подход через раскраску графов. 10:20 Покраска через клеточные автоматы 12:43 Учёт иррегулярности архитектур и PBQP 15:12 Эвристики для спиллов и рематериализация. 23:05 Слияние и разбиение интервалов активности. 29:28 Немного о настоящей сложности задачи 33:18 Литература и ответы на вопросы #compilers

Выложил девятую лекцию магистерского курса на английском https://youtu.be/IClwPgYFwkk В этой лекции мы начнём путешествие в мир метапрограммирования. Сначала мы применим (там где это возможно) шаблонную специализацию для того чтобы реализовать определители и модификаторы типов. Далее мы рассмотрим фундаментальную идиому SFINAE и некоторые её исторические применения, включая void_t и enable_if_t. В процессе мы увидим как современный C++ решает те же проблемы гораздо проще. В конце лекции мы изобретём классическое метапрограммирование и пройдём историю развития человеческой мысли, рассмотрев основные библиотеки, существенно повлиявшие на эту область. Мы остановимся незадолго до C++11 и появления полноценных вычислений времени компиляции. 00:00 Intro: trivially copyable 10:55 Type And Value Domains 15:50 Writing your own type traits 22:52 Type modifiers: add_lref riddle 28:36 SFINAE and fundamental domains 33:20 Paper Over the Cracks: void_t and enable_if_t 39:45 SFINAE-OUT: excercise in semantic processes 44:40 Bad reputation of aliases: void_t again 48:44 Case study: move only function 59:36 Classical metaprogramming 01:05:22 Historical detour: Loki, MPL and Fusion 01:12:15 Conclusion: mixed computations, homework and bibliography #cpp_postgraduate

Выложил восьмую лекцию магистерского курса на английском. https://youtu.be/aY69noAq2Bk В этой лекции мы продолжим разговор о модулях, до которых мы едва успели дойти в прошлый раз. В первую очередь мы разберёмся с проблемой макросостояния. Далее детально обсудим правила экспорта и рассмотрим разные способы включения хедеров в модули. Главная часть этой лекции -- понятие достижимости, вносящее свои дополнения в разрешение имён и инстанцирование шаблонов. В конце мы рассмотрим какие механизмы модулей позволяют нам придерживаться компонентного подхода и как модули поддержаны в системах сборки. 00:00 Module linkage 06:20 Macro state and dependency graphs 14:17 Rules of export 24:56 Attached names and importable headers 36:18 Global module fragment 39:46 Reachability and decl-reachability 49:40 Deers again: specializations and reachability. Private fragments. 56:10 Back to the Component-based approach. Partitions. 01:03:13 BMI, dependenices and collate. 01:13:30 CMake support 01:17:04 Homework (course project) and bibliography. #cpp_postgraduate

Немного образовательного контента в рамках пятничного зачилла. Не знаю, куда вставить в лекции, но считаю это крайне милым фактом относительно языка.
struct S {};
template <typename T> void bar(T& t) {}

int main() {
  using CS = const S;
  using CI = const int;
  bar(CS{}); // working
  bar(CI{}); // not working 
}
https://godbolt.org/z/GsMab56oT Пункт стандарта скину в комментарии если никто не напишет его там в первые 15 минут )) #questions

Выложил cедьмую лекцию магистерского курса на английском. https://youtu.be/VlkNCGiT-YE В этой лекции мы начнём длинный и обстоятельный разговор о модулях. Сначала мы обсудим такие свойства объектов как storage и linkage, погрузимся в детали ODR и детально рассмотрим ключевое слово inline. Далее мы поговорим о компонентном подходе к физической организации кода и оценим как его сложно поддерживать без модулей. В частности мы столкнемся с проблемами слишком долгой компиляции и попробуем их решить через предварительно скомпилированные хедера. Увы, на этом пути мы увидим проблемы с контролем экспорта и с проникновением макросостояния в код. В конце лекции появятся собственно модули как органичное развитие идеи предкомпилированных хедеров. Ну а их детальное рассмотрение мы отложим до следующего раза. 00:00 Introduction: object properties. 06:45 Storage and linkage. 14:44 ODR and subtleties. 18:42 Inline: exception from ODR. 24:58 ODR-usage and discarded statements. 29:20 Component approach. 40:58 Precompiled headers. 50:00 Uncontrolled export and modules introduction. 56:22 Inversion of dependencies #cpp_postgraduate