Больше подзамочного контента для моих уважаемых подписчиков. Семинары 7, 8 и 9 базового курса этого года.
Мне кстати очень нравится как мне в этом году удалось изложить наследование и множественное наследование. Хотя вроде бы материал строго тот же.
Семинар 7: https://youtu.be/zgkIiNNLLYM
Семинар 8: https://youtu.be/wb5ML1WajXM
Семинар 9: https://youtu.be/FqQNDyKRkRA
Более ранние выпуски: https://t.me/cpp_lects_rus/51
Ещё более ранние: https://t.me/cpp_lects_rus/45
#cpp_graduate
Мне кстати очень нравится как мне в этом году удалось изложить наследование и множественное наследование. Хотя вроде бы материал строго тот же.
Семинар 7: https://youtu.be/zgkIiNNLLYM
Семинар 8: https://youtu.be/wb5ML1WajXM
Семинар 9: https://youtu.be/FqQNDyKRkRA
Более ранние выпуски: https://t.me/cpp_lects_rus/51
Ещё более ранние: https://t.me/cpp_lects_rus/45
#cpp_graduate
👍59🔥9❤8🥰1
Выложил очередную лекцию магистерского курса.
Зашкаливающее количество волшебства. И фокус с пальцем.
https://youtu.be/NS-qY5P7xDc
#cpp_postgraduate
Зашкаливающее количество волшебства. И фокус с пальцем.
https://youtu.be/NS-qY5P7xDc
#cpp_postgraduate
YouTube
Магистерский курс C++ (МФТИ, 2022-2023). Лекция 9. Волшебство времени компиляции.
Лекции в магистратуре МФТИ по современному C++ на русском языке. Кафедра микропроцессорных технологий.
На этой лекции нас ждёт знакомство с волшебством. Мы начнём с ООП времени компиляции, продолжим вирутальными функциями времени компиляции, продолжим далее…
На этой лекции нас ждёт знакомство с волшебством. Мы начнём с ООП времени компиляции, продолжим вирутальными функциями времени компиляции, продолжим далее…
👍34🔥18👏3❤2
Всем привет. Я сегодня посмотрел лучшее в этом году видео по C++ (я учитываю только англоязычные). Я не скажу какое до лекции по ranges иначе, боюсь, вы увидите в моём творчестве слишком много ремейков. Но я приглашаю всех в этом чате т.к. год в плане C++ событий заканчивается, написать какое из видео с зарубежных конференций этого 2022 года было самым полезным для вас.
P. S. Если никто не угадает, то до конца года выложу что это за доклад и его таймлайн.
#questions #talks
P. S. Если никто не угадает, то до конца года выложу что это за доклад и его таймлайн.
#questions #talks
👍32😁3🤔3🤯2😱2👨💻2💋1👀1
Выложил очередную лекцию магистерского курса.
Главным моментом там я считаю раскрытие того к какому именно из семантических процессов относится requires и как это влияет на то, как он работает.
https://www.youtube.com/watch?v=HxdrGM6ZbNs
#cpp_postgraduate
Главным моментом там я считаю раскрытие того к какому именно из семантических процессов относится requires и как это влияет на то, как он работает.
https://www.youtube.com/watch?v=HxdrGM6ZbNs
#cpp_postgraduate
YouTube
Магистерский курс C++ (МФТИ, 2022-2023). Лекция 10. Концепты.
Лекции в магистратуре МФТИ по современному C++ на русском языке. Кафедра микропроцессорных технологий.
На этой лекции мы поговорим в основном о концептах. Сначала мы обозначим проблему: хочется сделать явные шаблонные интерфейсы. Мы попробуем решить эту…
На этой лекции мы поговорим в основном о концептах. Сначала мы обозначим проблему: хочется сделать явные шаблонные интерфейсы. Мы попробуем решить эту…
👍33🔥16❤3🕊1🌭1👨💻1
Выложил лекцию по выводу типов и правым ссылкам. Благодаря правильной структуре курса (вывод типов после концептов и SFINAE) получилось включить некоторые примеры Йосьюттиса где концепты облегчают множества перегрузок для форвардящих конструкторов. Правда Нико считал что это ночной кошмар, но мне кажется, что правила избегания проблем тут довольно просты и систематичны.
https://youtu.be/zrZdBzXBZtE
#cpp_postgraduate
https://youtu.be/zrZdBzXBZtE
#cpp_postgraduate
YouTube
Магистерский курс C++ (МФТИ, 2022-2023). Лекция 11. Вывод типов.
Лекции в магистратуре МФТИ по современному C++ на русском языке. Кафедра микропроцессорных технологий.
На этой лекции мы поговорим о выводе типов, но начнём с правых ссылок. Мы надолго задержимся на перегрузке по ссылкам, вспомним на новом уровне копирование…
На этой лекции мы поговорим о выводе типов, но начнём с правых ссылок. Мы надолго задержимся на перегрузке по ссылкам, вспомним на новом уровне копирование…
👍47🔥6❤3
Больше подзамочного контента для моих уважаемых подписчиков. Семинары 10, 11 и 12 базового курса этого года.
Семинары 10 и 11 в один день и одним видео т.к. мы одно занятие пропустили. Благо они посвящены исключениям и как раз получилось полное изложение.
Семинар 12 по проектированию в этот раз пожалуй менее убедительный чем в прошлом году, но я кое-что учёл и пофиксил из комментариев.
Семинары 10, 11: https://youtu.be/gUaDkStyICc
Семинар 12: https://youtu.be/SlYFPGuYIcM
Более ранние выпуски:
7,8,9: https://t.me/cpp_lects_rus/59
4,5,6: https://t.me/cpp_lects_rus/51
1,2,3: https://t.me/cpp_lects_rus/45
#cpp_graduate
Семинары 10 и 11 в один день и одним видео т.к. мы одно занятие пропустили. Благо они посвящены исключениям и как раз получилось полное изложение.
Семинар 12 по проектированию в этот раз пожалуй менее убедительный чем в прошлом году, но я кое-что учёл и пофиксил из комментариев.
Семинары 10, 11: https://youtu.be/gUaDkStyICc
Семинар 12: https://youtu.be/SlYFPGuYIcM
Более ранние выпуски:
7,8,9: https://t.me/cpp_lects_rus/59
4,5,6: https://t.me/cpp_lects_rus/51
1,2,3: https://t.me/cpp_lects_rus/45
#cpp_graduate
👍38🔥15❤8🐳1
Сегодняшний стрим для первого курса по динамическому программированию (и немного по линейному).
https://youtu.be/KQlldBz77u8
Сам стрим был открытый но запись будет под замком т.к. в след. годах надеюсь переделать в лучшем качестве.
#c_graduate
https://youtu.be/KQlldBz77u8
Сам стрим был открытый но запись будет под замком т.к. в след. годах надеюсь переделать в лучшем качестве.
#c_graduate
YouTube
Дискретное динамическое программирование
C для первого курса -- динамическое программирование
Timeline
00:00 Линейное программирование
09:38 CLP solver
16:40 Проблемы ЛП для дискретной оптимизации
22:28 Принцип оптимальности Беллмана
30:50 Приложение к размену монет
40:10 Восходящие и нисходящие…
Timeline
00:00 Линейное программирование
09:38 CLP solver
16:40 Проблемы ЛП для дискретной оптимизации
22:28 Принцип оптимальности Беллмана
30:50 Приложение к размену монет
40:10 Восходящие и нисходящие…
🔥26👍14🥰1
Выложил лекцию по вариабельным шаблонам. Отличия от прошлых лет существенные: даже в базовой части шаблонов и свёрток я теперь копаю куда глубже, беззастенчиво пользуясь тем, что курс магистерский и можно отрываться. Кроме того, у меня появилась возможность рассказать о вариабельных концептах и о раскрытии свёрток в концептах и я этим тоже воспользовался.
https://youtu.be/op7z7R6aBvk
#cpp_postgraduate
https://youtu.be/op7z7R6aBvk
#cpp_postgraduate
YouTube
Магистерский курс C++ (МФТИ, 2022-2023). Лекция 12. Вариабельные шаблоны.
Лекции в магистратуре МФТИ по современному C++ на русском языке. Кафедра микропроцессорных технологий.
Эта лекция это одна сплошная шкатулка с сюрпризами. Пачки параметров в шаблонах и концептах, грамматические правила для паттернов и свёрток, каррирование…
Эта лекция это одна сплошная шкатулка с сюрпризами. Пачки параметров в шаблонах и концептах, грамматические правила для паттернов и свёрток, каррирование…
🔥38👍11❤🔥1⚡1
Выложил лямбды. Я в этом году, как мне кажется, смог наконец-то придти к правильной структуре этой лекции, мотивировав через лямбды массу захватывающих вещей.
У меня там к сожалению получились несколько минут (!) непрерывного сообщения откровенной неправды, которую я только после лекции слазил проверить в стандарт. Но я не стал вырезать: я довольно честно так заблуждался много лет (насчет того есть ли в кложуре круглые скобки), позаблуждайтесь со мной в последний раз.
Но многое другое получилось хорошо.
https://youtu.be/j-UyAKux590
#cpp_postgraduate
У меня там к сожалению получились несколько минут (!) непрерывного сообщения откровенной неправды, которую я только после лекции слазил проверить в стандарт. Но я не стал вырезать: я довольно честно так заблуждался много лет (насчет того есть ли в кложуре круглые скобки), позаблуждайтесь со мной в последний раз.
Но многое другое получилось хорошо.
https://youtu.be/j-UyAKux590
#cpp_postgraduate
YouTube
Магистерский курс C++ (МФТИ, 2022-2023). Лекция 13. Лямбды.
Лекции в магистратуре МФТИ по современному C++ на русском языке. Кафедра микропроцессорных технологий.
Центральная тема которую мы здесь обсуждаем это вызываемые объекты. Начиная от чудес std::invoke и далее к лямбда-выражениям, к кортежам и std::apply.…
Центральная тема которую мы здесь обсуждаем это вызываемые объекты. Начиная от чудес std::invoke и далее к лямбда-выражениям, к кортежам и std::apply.…
🔥33👍16
Готовлюсь к лекции по ranges. Есть такой вопрос (а скорее даже опрос) для уважаемых подписчиков этого канала.
Вот есть пример в котором GCC и clang не согласны.
https://godbolt.org/z/1ro9x3nh1
Кто-то, ясное дело, прав, кто-то нет. Мне интересно как бы вы аргументировали кто прав в C++20 и почему.
Также задал вопрос на stackoverflow: https://stackoverflow.com/questions/74668972/c20-move-only-ranges-gcc-vs-clang-on-istream-view-copy
Большая просьба именно проиллюстрировать ход мысли. Куда пойдёте в стандарте, что будете смотреть.
#questions
Вот есть пример в котором GCC и clang не согласны.
https://godbolt.org/z/1ro9x3nh1
Кто-то, ясное дело, прав, кто-то нет. Мне интересно как бы вы аргументировали кто прав в C++20 и почему.
Также задал вопрос на stackoverflow: https://stackoverflow.com/questions/74668972/c20-move-only-ranges-gcc-vs-clang-on-istream-view-copy
Большая просьба именно проиллюстрировать ход мысли. Куда пойдёте в стандарте, что будете смотреть.
#questions
👀9🤔7
Первая часть лекции про диапазоны.
https://youtu.be/sfweY8osTEs
Первые минут сорок не отличаются да, наверное, и не могут отличаться от того что я обычно рассказываю про диапазоны. Но дальше становится интересно. Я сознательно ограничил себя в этом году в первой части очень простыми диапазонами: чем-то что не сложнее пары из итератора и ограничителя. Зато они у меня получились, как мне кажется, обстоятельно.
Ну и да в конце первой части я сорву покров мрака с расхождения между компиляторами в трактовке старшинства семантических процессов.
#cpp_postgraduate
https://youtu.be/sfweY8osTEs
Первые минут сорок не отличаются да, наверное, и не могут отличаться от того что я обычно рассказываю про диапазоны. Но дальше становится интересно. Я сознательно ограничил себя в этом году в первой части очень простыми диапазонами: чем-то что не сложнее пары из итератора и ограничителя. Зато они у меня получились, как мне кажется, обстоятельно.
Ну и да в конце первой части я сорву покров мрака с расхождения между компиляторами в трактовке старшинства семантических процессов.
#cpp_postgraduate
❤34❤🔥5💯4👍2🫡1
Ещё один вопрос по диапазонам. Надеюсь после моей лекции все устыдились и ответы будут обстоятельными и интересными.
Есть код:
struct S { int x, y; };
std::vector<S> v{{1, 0}, {2, 0}, {4, 0}};
auto it = ranges::find(v | views::transform(std::mem_fn(&S::x)), 4).base();
Что тут происходит: я проецирую вектор на инты, ищу там 4 и прошу итератор (base) на исходный вектор.
https://godbolt.org/z/hhWaPsjsj
Он не работает, но GCC и ToT Clang говорят разные вещи.
У clang там просто ranges::dangling (хотя как может провиснуть итератор на существующий вектор?)
У gcc там нечто более интересное.
Опять таки исходный библиотечный код один и тот же. Как бы вы это исследовали? Кто тут прав?
#questions
Есть код:
struct S { int x, y; };
std::vector<S> v{{1, 0}, {2, 0}, {4, 0}};
auto it = ranges::find(v | views::transform(std::mem_fn(&S::x)), 4).base();
Что тут происходит: я проецирую вектор на инты, ищу там 4 и прошу итератор (base) на исходный вектор.
https://godbolt.org/z/hhWaPsjsj
Он не работает, но GCC и ToT Clang говорят разные вещи.
У clang там просто ranges::dangling (хотя как может провиснуть итератор на существующий вектор?)
У gcc там нечто более интересное.
Опять таки исходный библиотечный код один и тот же. Как бы вы это исследовали? Кто тут прав?
#questions
🤔14👍1👀1
Я и не заметил, что у меня тысяча подписчиков в телеграме. Всем спасибо, это важная веха для моего телеграм-канала. Расскажите, а вы хотите приуроченный к этому числу специальный выпуск и если да то о чём? Можете писать в комментарии темы или лайкать написанные. До НГ не обещаю, но всё возможно ))
#official
#official
🎉126🍾13❤5🔥4👍2🐳2
Итак, последняя в этом семестре лекция магистерского курса.
Мне кажется что наконец-то я рассказал диапазоны правильно. Поговорим о кешировании, pull model и её проблемах, константной итерируемости и многом другом. Также заглянем внутрь некоторых нетривиальных отображений.
https://youtu.be/CVMDB3c3too
#cpp_postgraduate
Мне кажется что наконец-то я рассказал диапазоны правильно. Поговорим о кешировании, pull model и её проблемах, константной итерируемости и многом другом. Также заглянем внутрь некоторых нетривиальных отображений.
https://youtu.be/CVMDB3c3too
#cpp_postgraduate
YouTube
Магистерский курс C++ (МФТИ, 2022-2023). Лекция 14. Диапазоны, часть 2
Лекции в магистратуре МФТИ по современному C++ на русском языке. Кафедра микропроцессорных технологий.
Вторая часть лекции про диапазоны сосредоточена вокруг pull model и того как работают более сложные -- фильтрующие, трансформирующие и тому подобные отображения.…
Вторая часть лекции про диапазоны сосредоточена вокруг pull model и того как работают более сложные -- фильтрующие, трансформирующие и тому подобные отображения.…
🔥41👍5👏3❤2❤🔥1
Итогов 2022 года пост.
Несмотря на некоторые всем известные обстоятельства, мне, кажется, удалось много.
1. Я записал вторую часть бакалаврского курса: https://www.youtube.com/playlist?list=PL3BR09unfgciJ1_K_E914nohpiOiHnpsK
Громадное спасибо Дмитрию Рябцеву и Владиславу Белову, без них это было бы невозможно.
2. Я записал первую часть нового магистерского курса: https://www.youtube.com/playlist?list=PL3BR09unfgcgf7R88ZQRQqWOdLy4pRW2h
Громадное спасибо Юлию Тарасову, без него это было бы невозможно.
Также спасибо компании Синтакор и группе компаний Yadro которые не просто взяли мою команду на работу, но и разрешили мне продолжать выделять время на преподавание, выделили аудиторию в офисе, помогли с кафедрой в МФТИ и даже набрали несколько новых студентов этого года в интерны.
Кроме того в этом году я впервые выступил на C++Russia: https://www.youtube.com/watch?v=YJd6Ig4ihJ0&t=75s
И записал допглавы к этому выступлению: https://www.youtube.com/watch?v=-aE1hD9OWRk
Также я заснял ряд дополнительных видео. Особенно удачным, как мне кажется, получился допсеминар про SIMD: https://youtu.be/DHai10xqySU
В новом году хочется всем пожелать быстрого появления 23-го стандарта в компиляторах и много новых интересных задач. Пусть программирование и математика сплачивают нас даже там, где политика разделяет.
В комментариях можно и нужно поздравлять с Новым Годом меня и друг друга и вспоминать чем он вам запомнился в профессиональном плане, но пожалуйста давайте не трогать политику и религию )))
#official #happynewyear
Несмотря на некоторые всем известные обстоятельства, мне, кажется, удалось много.
1. Я записал вторую часть бакалаврского курса: https://www.youtube.com/playlist?list=PL3BR09unfgciJ1_K_E914nohpiOiHnpsK
Громадное спасибо Дмитрию Рябцеву и Владиславу Белову, без них это было бы невозможно.
2. Я записал первую часть нового магистерского курса: https://www.youtube.com/playlist?list=PL3BR09unfgcgf7R88ZQRQqWOdLy4pRW2h
Громадное спасибо Юлию Тарасову, без него это было бы невозможно.
Также спасибо компании Синтакор и группе компаний Yadro которые не просто взяли мою команду на работу, но и разрешили мне продолжать выделять время на преподавание, выделили аудиторию в офисе, помогли с кафедрой в МФТИ и даже набрали несколько новых студентов этого года в интерны.
Кроме того в этом году я впервые выступил на C++Russia: https://www.youtube.com/watch?v=YJd6Ig4ihJ0&t=75s
И записал допглавы к этому выступлению: https://www.youtube.com/watch?v=-aE1hD9OWRk
Также я заснял ряд дополнительных видео. Особенно удачным, как мне кажется, получился допсеминар про SIMD: https://youtu.be/DHai10xqySU
В новом году хочется всем пожелать быстрого появления 23-го стандарта в компиляторах и много новых интересных задач. Пусть программирование и математика сплачивают нас даже там, где политика разделяет.
В комментариях можно и нужно поздравлять с Новым Годом меня и друг друга и вспоминать чем он вам запомнился в профессиональном плане, но пожалуйста давайте не трогать политику и религию )))
#official #happynewyear
❤83🎉36👍20🍾15🔥6🎄4⚡1🕊1💯1
Выложил видео про twin trees.
https://youtu.be/JoaNcwBVDGE
Он продолжает традицию пересказов лекций Дональда Кнута. Я объясняю всё что нужно знать предварительно и показываю что-то связанное с реализацией. Получается в ту же тему но другой рассказ, более доступный для аудитории если это студенты.
В данном случае я очень горжусь тем что сохранил и даже усилил драматургию: лекция выстроена в виде расследования и в конце всех ждёт внезапный срыв покровов.
Оригинал лекции от проф. Кнута можно найти здесь: https://www.youtube.com/watch?v=zg6YRqT4Duo
#knuth #cpp_graduate
https://youtu.be/JoaNcwBVDGE
Он продолжает традицию пересказов лекций Дональда Кнута. Я объясняю всё что нужно знать предварительно и показываю что-то связанное с реализацией. Получается в ту же тему но другой рассказ, более доступный для аудитории если это студенты.
В данном случае я очень горжусь тем что сохранил и даже усилил драматургию: лекция выстроена в виде расследования и в конце всех ждёт внезапный срыв покровов.
Оригинал лекции от проф. Кнута можно найти здесь: https://www.youtube.com/watch?v=zg6YRqT4Duo
#knuth #cpp_graduate
YouTube
Деревья-близнецы (доп. семинар для второго курса)
Специальные выпуски о комбинаторике.
Дополнительный семинар, когда сессия уже (почти) сдана, а семестр ещё далеко -- самое время поговорить об отвлеченных вещах. Например о деревьях-близнецах. Мы рассмотрим перестановки, Бакстеровские перестановки, планирование…
Дополнительный семинар, когда сессия уже (почти) сдана, а семестр ещё далеко -- самое время поговорить об отвлеченных вещах. Например о деревьях-близнецах. Мы рассмотрим перестановки, Бакстеровские перестановки, планирование…
🔥59👍16❤3🫡3🥰1👏1
Мой доклад на C++ Russia уже утвердили. Составьте мне компанию. Я уверен вам есть что рассказать. Если что спрашивайте в комментарии или можете кидать туда же идеи для своих выступлений, обсудим. Я конечно не в программном комитете, но я думаю я понимаю их логику ))
#conference
#conference
❤19👍4
Forwarded from C++ user group moscow
Приглашаем вас выступить на конференции C++ Russia 2023!
В этом году конференция будет идти четыре дня: 11–12 мая в онлайне и 23–24 мая в офлайне в Москве. И вы можете выступить на ней.
Что даст выступление на C++ Russia?
— Развитие личного бренда и улучшение навыка публичных выступлений.
— Возможность обсудить рабочие задачи в неформальной обстановке.
— Билет на все конференции весны от JUG Ru Group.
— Общение с комьюнити и экспертами Программного комитета.
Можно выбрать любой формат — классический доклад, воркшоп, дискуссию или предложить что-нибудь свое. Вам помогут подготовиться, проведут репетиции, а после конференции вы получите запись в 4K на YouTube, чтобы поделиться ей с друзьями и коллегами.
Выбирайте тему на сайте или предлагайте свои идеи и подавайте заявку на выступление до 20 февраля.
Билеты на C++ Russia 2023 уже в продаже.
В этом году конференция будет идти четыре дня: 11–12 мая в онлайне и 23–24 мая в офлайне в Москве. И вы можете выступить на ней.
Что даст выступление на C++ Russia?
— Развитие личного бренда и улучшение навыка публичных выступлений.
— Возможность обсудить рабочие задачи в неформальной обстановке.
— Билет на все конференции весны от JUG Ru Group.
— Общение с комьюнити и экспертами Программного комитета.
Можно выбрать любой формат — классический доклад, воркшоп, дискуссию или предложить что-нибудь свое. Вам помогут подготовиться, проведут репетиции, а после конференции вы получите запись в 4K на YouTube, чтобы поделиться ей с друзьями и коллегами.
Выбирайте тему на сайте или предлагайте свои идеи и подавайте заявку на выступление до 20 февраля.
Билеты на C++ Russia 2023 уже в продаже.
👍29👏2🥰1
Выложил лекцию по полиморфным аллокаторам. Отмотаем плёнку и попробуем выйти из тупика и изобрести аллокаторы ещё раз. Что то в процессе получится, что-то нет...
https://youtu.be/QwuHX-VjhXI
#cpp_postgraduate
https://youtu.be/QwuHX-VjhXI
#cpp_postgraduate
YouTube
Магистерский курс C++ (МФТИ, 2022-2023). Лекция 16. Полиморфные аллокаторы
Лекции в магистратуре МФТИ по современному C++ на русском языке. Кафедра микропроцессорных технологий.
Лекция о полиморфных аллокаторах делает шаг назад. Мы снова начнём сначала, но на этот раз пойдём другим путём -- путём стирания типов и динамического…
Лекция о полиморфных аллокаторах делает шаг назад. Мы снова начнём сначала, но на этот раз пойдём другим путём -- путём стирания типов и динамического…
🔥47👏6👍2🫡1
Выложил лекцию по умным указателям. Я очень старался не растягивать её в этом году на две части т. к. для магистрантов там не слишком много новизны. Поэтому некоторые вещи я пробежал очень быстро. Но при этом я также постарался её реорганизовать во-первых в явном виде рассмотрев и описав альтернативы владения, и вот тут я времени не жалел так как это очень важно. А во-вторых я связал её с аллокаторами и добавил систематический разбор "Санкелевских" кейсов.
https://www.youtube.com/watch?v=OzqFXMDrrgk
#cpp_postgraduate
https://www.youtube.com/watch?v=OzqFXMDrrgk
#cpp_postgraduate
YouTube
Магистерский курс C++ (МФТИ, 2022-2023). Лекция 17. Умные указатели.
Лекции в магистратуре МФТИ по современному C++ на русском языке. Кафедра микропроцессорных технологий.
Мы начнём с фундаментальной проблемы: проблемы владения. В современном C++ есть пять разумных альтернатив для её решения, и эта лекция посвящена разбору…
Мы начнём с фундаментальной проблемы: проблемы владения. В современном C++ есть пять разумных альтернатив для её решения, и эта лекция посвящена разбору…
🔥57👍12👏3❤2🙏2🐳2🕊1🌭1