P(hD)ython
Kanalga Telegram’da o‘tish
О Python, PhD, распределённых системах и не только Автор - Михаил Масягин (@masyagin1998): - Python Lead в NDA HFT; - преподаватель в Бауманке; - эксперт по СУБД System Design World; - любитель PhD и авторегрессии.
Ko'proq ko'rsatishMamlakat belgilanmaganToif belgilanmagan
214
Obunachilar
Ma'lumot yo'q24 soatlar
Ma'lumot yo'q7 kunlar
Ma'lumot yo'q30 kunlar
Postlar arxiv
214
Патент получен, ура! 🎉🎉🎉
В комментариях приложены документы, которые включает в себя патент.
https://fips.ru/EGD/4da00ebe-8279-4753-90f8-c1e973cfb094
С уважением,
Михаил Масягин
214
А вот и... вторая лекция!
https://www.youtube.com/watch?v=Zyy_nhsrMuA
На лекции поговорим о:
- процессах & потоках;
- атомарных операциях:
- race condition & data race;
- spinlock;
- блокирующей синхронизации:
- mutex, condvar, semaphore;
- futex syscall;
- о... языке Go!
- кэшах в многопоточных программых: MESI
GitHub курса: https://github.com/masyagin1998/hp-systems-course
В коде всё ещё много ошибок 😁
ТПМС - отличный курс от Романа Липовского из МФТИ по Concurrency. Глубже ещё ничего не встречал. Нам будут актуальны лекции:
- ТПМС / Лекция 2 / Взаимное исключение
- ТПМС / Семинар 3 / Futex, Memory Orders
Как устроен PAUSE в процессоре:
https://c9x.me/x86/html/file_module_x86_id_232.html
man7: mutex, condvar, semaphore
https://man7.org/linux/man-pages/man3/pthread_mutex_lock.3.html
https://man7.org/linux/man-pages/man3/pthread_cond_wait.3.html
https://man7.org/linux/man-pages/man3/sem_init.3.html
https://man7.org/linux/man-pages/man2/futex.2.html
futex:
https://github.com/torvalds/linux/blob/master/kernel/futex/waitwake.c
Гуляем по коду Go (не пугайтесь, знать наизусть не надо, я тоже не знаю):
https://github.com/golang/go/blob/master/src/sync/mutex.go
https://github.com/golang/go/blob/master/src/internal/sync/mutex.go
https://github.com/golang/go/tree/master/src/internal/race
https://github.com/golang/go/blob/d37624881f60f79dfba4ef81661024bee9dfc2d3/src/runtime/lock_futex.go
MESI:
https://lwn.net/Articles/252125/
https://www.youtube.com/watch?v=3NmyqUmvlbQ&list=PL4_hYwCyhAva37lNnoMuBcKRELso5nvBm&index=7
https://www.scss.tcd.ie/jeremy.jones/vivio/caches/MESIHelp.htm
P.S. Даже если Вы не системный программист, эти материалы могут быть для Вас очень полезны. Не так давно я собесился в пару известных HFT/MFT (успешно), и на скринингах/первых собесах помимо вопросов о памяти (1 лекция) было много вопросов и по многопоточной синхронизации.
С уважением,
Михаил Масягин
214
Делаем с Вовой Невзоровым трейлер разбора 8 главы книги Мартина Клеппмана «Высоконагруженные Приложения» - «Проблемы распределённых систем» и немного кринжуем 😁
Я регулярно выступаю на канале https://t.me/system_design_world со стримами, где разбираю Клеппмана aka «кабанчика» 🐗
Половина глав пройдена, так что скоро мы приступим к новой крутой книге по System Design!
🎥 Записи стримов можно посмотреть на YouTube.
С уважением,
Масягин Михаил
214
+5
«Как похорошела Бауманка...»
Впервые за долгое время смог не торопясь прогуляться по территории новых корпусов и посмотреть на них вблизи, а не бежать впопыхах на кафедру, на подпись очередной статьи, проставление зачётов и т.д. Красиво.
Я работаю в Бауманке совместителем уже 2 года и сейчас продлеваюсь на третий год. До осени 2024 года я был оформлен по ТК РФ на основном месте работы в НТЦ «Атлас», но уже год работаю как ИП. Если Вы окажетесь в моей ситуации (ИП + совместительство в вузе) и у вас потребуют справку с основного места работы, то... вы можете выписать её себе сами 😅
Срок действия такой справки всего две недели, но его можно увеличить до месяца, добавив информацию о доходах за последние 3 месяца или год.
Очень хороший гайд доступен в блоге Совкомбанка (не реклама, но от копейки не откажусь 😁)
С уважением,
Михаил Масягин
214
Про «Институты и цифровизацию»
Мне всегда была интересна новая институциональная экономика - особенно один из её ключевых постулатов о разделении институтов на формальные и неформальные. Хорошую иллюстрацию ему даёт мой собственный путь с кандидатской диссертацией.
Формальные институты говорят, что для успешной защиты необходимо написать 2 статьи в журналах из 1-2 категории ВАК, неформальные добавляют к этому ещё 2-3 статьи из Scopus/WoS и... регистрацию патента на программу для ЭВМ в Роспатенте. Да, без неё формально можно, но неформально - скорее нет 😅
На первый взгляд всё цифровизовано: посылаешь документы через ГосУслуги, оплачиваешь пошлину онлайн и ждёшь заветное сообщение о подтверждении регистрации. Но неожиданно приходит запрос на корректировку подаваемых данных и ... подать корректировку можно либо почтой России, либо очно в офисе Роспатента 😁
Пара советов тем, кто тоже будет патентовать программу:
- сам текст патента должен умещаться на 2-х листах A4, включая введение, основную часть и заключение;
- реферат должен быть строго не более 900 символов, включая пробелы;
- название программы во всех документах должно быть строго идентичным вплоть до ковычек и пробелов.
Тогда вы сможете почувствовать всю мощь цифрового документооборота, и не будете как я 😅
В комментариях приложены шаблоны всех документов для подачи заявки на патент программы для ЭВМ в формате Word
С уважением,
Михаил Масягин
214
Во вступлении я сказал, что много где преподаю, и это чистая правда 😋
Недавно я провёл пилотный запуск моего курса «Практика высокопроизводительных систем», читаемого студентам последнего курса бакалавриата и первого курса магистратуры Назарбаев Университета совместно с компанией 7-Generation Group. Предлагаю и Вам ознакомиться с ним!
И сегодня мы поговорим о... Памяти!!!
https://www.youtube.com/watch?v=xmcEwF5cWsQ
На лекции затронем:
- память на физическом уровне: SRAM & DRAM;
- иерархию кэшей: L1, L2, L3;
- виды кэшей: Memory, Instruction, Data;
- виртуальную память: PTA, TLB;
- аллокаторы: устройство malloc & free в jemalloc
- Huge Pages & Gigantic Pages.
GitHub курса: https://github.com/masyagin1998/hp-systems-course
В коде много преднамеренных и не только ошибок, ищите их 😁
Статьи Дреппера о памяти (можно читать и все, но к 1 лекции относятся первые 3):
https://lwn.net/Articles/250967/
https://lwn.net/Articles/252125/
https://lwn.net/Articles/253361/
man7: free, mmap, brk:
https://man7.org/linux/man-pages/man3/free.3.html
https://man7.org/linux/man-pages/man2/mmap.2.html
https://man7.org/linux/man-pages/man2/brk.2.html
glibc/malloc:
https://github.com/lattera/glibc/blob/master/malloc/malloc.c
https://www.youtube.com/watch?v=i87W3KyZgPw
https://www.youtube.com/watch?v=BTkvaPefAKw
Huge Pages & Gigantic Pages:
https://www.kernel.org/doc/html/latest/admin-guide/mm/hugetlbpage.html
P.S. Даже если Вы не системный программист, эти материалы могут быть для Вас очень полезны. Не так давно я собесился в пару известных HFT/MFT (успешно), и на скринингах/первых собесах было очень много вопросов по памяти.
С уважением,
Михаил Масягин
214
Всем привет!
Меня зовут Михаил, и я работаю Python Lead'ом в сфере HFT. До этого в течение шести лет писал на C в Lawful Interception- и Embedded-проектах, а также был первым инженером в стартапе со смешным названием Anecdote 😅 Помимо этого я учусь в аспирантуре МГТУ им. Н.Э. Баумана и там же преподаю курс «Python и алгоритмы и структуры данных». Да и вообще много где преподаю...
Возможно, мы виделись с вами на какой-нибудь IT-конференции или в каналах https://t.me/system_design_world или https://t.me/faangtalk 😁
В этом канале я буду выкладывать интересные материалы по Python, системному программированию и распределённым системам, а также делиться болью написания кандидатской диссертации aka PhD в РФ
С уважением,
Михаил Масягин
Endi mavjud! Telegram Tadqiqoti 2025 — yilning asosiy insaytlari 
