Notice: file_put_contents(): Write of 4925 bytes failed with errno=28 No space left on device in /var/www/tgoop/post.php on line 50

Warning: file_put_contents(): Only 16384 of 21309 bytes written, possibly out of free disk space in /var/www/tgoop/post.php on line 50
Алло, это отладочная?@gdb_dbg P.6
GDB_DBG Telegram 6
Сегодня закончился семестровый курс по плюсам, который я в этом семестре читал на сиспро.

Так то это не первое мое родео, половину времени из 10 лет преподавания на мехмате я читал именно плюсы. Но боже, какой же это был детский сад по сравнению с тем, что вышло теперь (хотя было то тоже неплохо!).

1) По содержанию: получилось дать приблизительно все, что всегда хотелось и, как мне кажется, в правильном порядке и объеме. Т.е. не просто бегло упомянуть move семантику, а довольно рано поговорить про value categories и использовать это во всех последующих темах; не просто показать шаблоны, а обсудить двухфазное разрешение имен, SFINAE, enable_if и эволюцию до концептов; не просто показать auto, но показать связь с теми же шаблонами и аккуратно выйти на universal references и perfect forwarding.

2) По формату практики: на этом курсе чуть отошел от формата "мини задачки после каждой лекции + несколько больших задач на семестр", т.к. это банально приелось. Миньки в целом то остались, хоть и стали крупнее (теперь они назывались NSTTs - not so tiny task, хехе), а вот место больших задач были большие семестровые проекты, темы для которых студенты выбирали сами. Получились: эмулятор и отладчик кода на асме для RISC-V, файловая система в юзерспейсе, своя реализация Python без GIL, в общем, очень круто.

Одной из целей здесь было научить студентов очерчивать реалистичный скоуп дел к дедлайну, а потом нести ответственность за свои факапы. Думаю, получилось.

3) По языку: курс читался полностью на английском (так было нужно). Лекции, обсуждения, прием задач, ревью, прием проектов, ответы на вопросы (и сами вопросы), экзамен. Только английский язык. Это было супер непривычно и даже тяжеловато в начале, но потом я привык и особо уже не напрягался. Чуть-чуть падает темп повествования, особенно в конце лекции, но в остальном - вполне комфортно.

--

Из минусов: подготовка такого курса, очевидно, плохо влияет на психическое здоровье (возможно и прохождение этого курса тоже, но надеюсь, что не сильно!).

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

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

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

В общем, было весело! В дурку пока не уехал. Жду теперь фидбек от студентов, надеюсь, они там тоже не совсем погибли. Если читаете, можете писать фидбек в комментарии тоже)

Материалы можно глянуть здесь.

#the_real_science
❤‍🔥21



tgoop.com/gdb_dbg/6
Create:
Last Update:

Сегодня закончился семестровый курс по плюсам, который я в этом семестре читал на сиспро.

Так то это не первое мое родео, половину времени из 10 лет преподавания на мехмате я читал именно плюсы. Но боже, какой же это был детский сад по сравнению с тем, что вышло теперь (хотя было то тоже неплохо!).

1) По содержанию: получилось дать приблизительно все, что всегда хотелось и, как мне кажется, в правильном порядке и объеме. Т.е. не просто бегло упомянуть move семантику, а довольно рано поговорить про value categories и использовать это во всех последующих темах; не просто показать шаблоны, а обсудить двухфазное разрешение имен, SFINAE, enable_if и эволюцию до концептов; не просто показать auto, но показать связь с теми же шаблонами и аккуратно выйти на universal references и perfect forwarding.

2) По формату практики: на этом курсе чуть отошел от формата "мини задачки после каждой лекции + несколько больших задач на семестр", т.к. это банально приелось. Миньки в целом то остались, хоть и стали крупнее (теперь они назывались NSTTs - not so tiny task, хехе), а вот место больших задач были большие семестровые проекты, темы для которых студенты выбирали сами. Получились: эмулятор и отладчик кода на асме для RISC-V, файловая система в юзерспейсе, своя реализация Python без GIL, в общем, очень круто.

Одной из целей здесь было научить студентов очерчивать реалистичный скоуп дел к дедлайну, а потом нести ответственность за свои факапы. Думаю, получилось.

3) По языку: курс читался полностью на английском (так было нужно). Лекции, обсуждения, прием задач, ревью, прием проектов, ответы на вопросы (и сами вопросы), экзамен. Только английский язык. Это было супер непривычно и даже тяжеловато в начале, но потом я привык и особо уже не напрягался. Чуть-чуть падает темп повествования, особенно в конце лекции, но в остальном - вполне комфортно.

--

Из минусов: подготовка такого курса, очевидно, плохо влияет на психическое здоровье (возможно и прохождение этого курса тоже, но надеюсь, что не сильно!).

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

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

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

В общем, было весело! В дурку пока не уехал. Жду теперь фидбек от студентов, надеюсь, они там тоже не совсем погибли. Если читаете, можете писать фидбек в комментарии тоже)

Материалы можно глянуть здесь.

#the_real_science

BY Алло, это отладочная?




Share with your friend now:
tgoop.com/gdb_dbg/6

View MORE
Open in Telegram


Telegram News

Date: |

During the meeting with TSE Minister Edson Fachin, Perekopsky also mentioned the TSE channel on the platform as one of the firm's key success stories. Launched as part of the company's commitments to tackle the spread of fake news in Brazil, the verified channel has attracted more than 184,000 members in less than a month. While the character limit is 255, try to fit into 200 characters. This way, users will be able to take in your text fast and efficiently. Reveal the essence of your channel and provide contact information. For example, you can add a bot name, link to your pricing plans, etc. Private channels are only accessible to subscribers and don’t appear in public searches. To join a private channel, you need to receive a link from the owner (administrator). A private channel is an excellent solution for companies and teams. You can also use this type of channel to write down personal notes, reflections, etc. By the way, you can make your private channel public at any moment. Telegram iOS app: In the “Chats” tab, click the new message icon in the right upper corner. Select “New Channel.” "Doxxing content is forbidden on Telegram and our moderators routinely remove such content from around the world," said a spokesman for the messaging app, Remi Vaughn.
from us


Telegram Алло, это отладочная?
FROM American