Petrushenko
رفتن به کانال در Telegram
Founder CS Osvita, Engineering Lead. Все про програмування, освіту та науку. https://www.csosvita.com/ https://www.linkedin.com/in/ivanpetrushenko
نمایش بیشتر1 087
مشترکین
+224 ساعت
+77 روز
+3030 روز
در حال بارگیری داده...
کانالهای مشابه
هیچ دادهای
مشکلی وجود دارد؟ لطفاً صفحه را تازه کنید یا با مدیر پشتیبانی ما تماس بگیرید.
ابر برچسبها
اشارات ورودی و خروجی
---
---
---
---
---
---
جذب مشترکین
ژوئیه '26
ژوئیه '26
+7
در 0 کانالها
ژوئن '26
+37
در 0 کانالها
Get PRO
مه '26
+93
در 3 کانالها
Get PRO
آوریل '26
+19
در 0 کانالها
Get PRO
مارس '26
+22
در 0 کانالها
Get PRO
فوریه '26
+43
در 0 کانالها
Get PRO
ژانویه '26
+26
در 0 کانالها
Get PRO
دسامبر '25
+80
در 0 کانالها
Get PRO
نوامبر '25
+21
در 0 کانالها
Get PRO
اکتبر '25
+52
در 0 کانالها
Get PRO
سپتامبر '25
+750
در 0 کانالها
Get PRO
اوت '250
در 1 کانالها
Get PRO
ژوئیه '25
+2
در 0 کانالها
| تاریخ | رشد مشترکین | اشارات | کانالها | |
| 04 ژوئیه | +2 | |||
| 03 ژوئیه | +1 | |||
| 02 ژوئیه | +1 | |||
| 01 ژوئیه | +3 |
پستهای کانال
https://x.com/ID_AA_Carmack/status/2072320234619355572
Колись, років 7 тому, я читав курс з алгоритмів та структур даних разом із Дімою Кордубаном (ex OpenAI, now Tech Lead у Google DeepMind) і на одній з лекцій він розповів про Володю Агафонкіна, а потім я розбирав його виступ Fast by Default: Algorithmic Performance Optimization in Practice. Там дуже добре видно, що алгоритми - це інструмент, який напряму впливає на те, наскільки швидко працює реальний софт для мільйонів людей. Хто не знає, Володя Агафонкін бере популярні JavaScript-бібліотеки і робить їх найшвидшими у світі (Leaflet, Mapbox, Earcut та інші open-source проєкти, гляньте на його гітхаб)
І ось Джон Кармак відзначає його роботу. Для мене це дуже красивий момент: один із найвідоміших програмістів у світі звертає увагу не на хайповий AI-стартап, не на черговий фреймворк, а на якісну алгоритмічну оптимізацію open-source бібліотеки від українця.
| 2 | "I hate benchmarks...this should take 10ms in napkin math".
Мені дуже імпонує цей скіл, і саме його ми тренуємо на всіх курсах CS Osvita. Послухайте :) | 709 |
| 3 | Перед стартом курсу з алгоритмів я даю студентам невеликий гайд з порадами щодо навчання. І одна з моїх улюблених ідей там — ставати на 1% кращим щодня. На дистанції це працює як складний відсоток. Якщо щодня ставати хоча б на 1% кращим, то за рік це дає майже x37.
Цей графік добре передає саму ідею: експоненційне зростання спочатку майже непомітне, але на дистанції маленькі регулярні покращення накопичуються дуже сильно. | 1 356 |
| 4 | Що вчити програмісту, щоб потрапити в топову AI-компанію — DeepMind, OpenAI, Anthropic? Або просто працювати над цікавими задачами?
Послухав свіже інтерв'ю з Владом Файнбергом з Google DeepMind. І відповідь там не “навчись промптити агентів”. А старий, добрий, дуже хардкорний computer science. Що він прямо називає важливим?
OS і low-level performance.
У топових AI-компаніях на це шалений попит. Бо кожна зміна в LLM проходить через дуже практичне питання: як зробити так, щоб абстрактна ідея крутилася швидко — з high throughput і low latency.
Backend і distributed systems.
Сучасний LLM-сервіс — це величезна distributed system: KV-cache, шардинг, балансування, черги запитів, inference pipeline. Плюс інфраструктура.
Алгоритми, математика.
У претрейнінгу недостатньо просто “знати ML”. Треба вміти мислити системно: бачити задачу як набір обмежень, trade-offів і оптимізацій. Як зміниться loss, якщо збільшити модель? Де вигідніше витратити FLOPs — на дані, параметри чи довше тренування? Як передбачити фінальний результат до того, як ти спалиш мільйони доларів на експеримент? А ще — здатність взяти ідею з paper, зрозуміти її по-справжньому і самому заімплементити. Не переказати абстрактно, а довести до working code.
Оптимізація під залізо.
Тут теж багато не про хайп, а про дуже конкретну інженерію: quantization, inference co-design, shapes матриць, attention heads, MFU, memory bandwidth, HBM, communication overhead. Як спроєктувати модель так, щоб вона не просто була якісною, а реально ефективно працювала на конкретному залізі. Окремо він згадує kernel development і DSL на кшталт ThunderKittens та CuTe, RL після RLHF, distributed training, asynchronicity, staleness градієнтів і pipelining. Тобто це не “просто ML”. Це місце, де ML, системне програмування, distributed systems і hardware awareness зʼїжджаються в одну точку.
Іронія часу в тому, що чим потужнішими стають AI-агенти, тим ціннішими стають люди, які розуміють, що відбувається під капотом. Бо саме під капотом зараз іде головна робота. | 1 556 |
| 5 | Обожнюю такі YouTube-канали - вони для мене максимально залипальні. Дівчина відкрила The Art of Computer Programming Кнута і просто вирішує задачі з книжки одну за одною: https://www.youtube.com/@K4YL4CK
І найцікавіше навіть не сам факт, що хтось це робить, а формат: вона може стрімити по 2–6 годин підряд, спокійно розбираючи задачі, думаючи вголос, помиляючись, перевіряючи і рухаючись далі.
Тепер думаю: може, і собі завести YouTube - розповідати про всякі хардкорні computer science топіки? 🤔 | 1 439 |
| 6 | Мітчелл Хашимото - засновник HashiCorp і автор Ghostty написав класний пост про агентне програмування. Він добре підсвічує проблему, про яку зараз часто говорять: якщо використання AI-агентів не підкріплене розумінням того, що саме вони роблять, результатом буде не “прискорення розробки”, а повільний і багатий на баги софт
https://x.com/mitchellh/status/2060088112257372610 | 1 376 |
| 7 | https://x.com/bigaiguy/status/2063903532575752211 | 1 381 |
| 8 | Бачили інтервʼю Віталія Портникова на DOU Day? Усі обговорюють «скандал».
Мені дуже хочеться, щоб в українському ІТ зʼявлялися свої Портникови. Люди, які не просто красиво говорять, а тримають планку. Які повертають розмову до фактів, історії, теорії, практики й відповідальності за слова.
І тут виникає питання: чи є в українському ІТ такі люди? Не просто медійні люди з мікрофоном. Не просто популярні блогери. Не просто ті, хто добре говорить про “ринок”, “лідерство” і “майбутнє професії”. А люди, які знають історію нашої інженерної традиції — від Глушкова й Катерини Ющенко до світової компʼютерної науки. Які розуміють не лише фреймворки, а й ідеї під ними. Які можуть говорити про формальні системи не на рівні “Гедель щось там довів”, а більш глибоко. Люди, які власноруч писали складні системи й знають, що таке хороша декомпозиція. Які читали класичні тексти, а не лише перекази в блогах. Які користуються AI-агентами, але не називають кожен промпт “новою інженерією”, бо хоча б приблизно уявляють, що відбувається всередині. І головне — люди, які здатні сказати вголос: “це неправда”, “це слабкий аргумент”, “це поверхневе розуміння”, “ти зараз несеш ахінею” — і після цього спокійно пояснити, чому саме.
Якщо ви знаєте таких людей в українському ІТ — поділіться, будь ласка. Залюбки підпишуся. | 1 476 |
| 9 | https://isaiprofitable.com/ | 1 987 |
| 10 | “I can bear any pain as long as it has meaning.” — Haruki Murakami
“We suffer more in imagination than in reality.” — Seneca
“When a person cannot find a deep sense of meaning, they distract themselves with pleasure.” — Viktor Frankl
Іноді дивує, як людина може гранично точно підібрати слова. | 1 568 |
| 11 | Мій перший тімлід був жосткий. У перший день сказав: за кожен баг плачу пальцем. Щотижня заставляв здавати 10+ задач на літкоді, потім перевіряв на 1:1, а коли ходили разом на конфи, ми під його поглядом мали ставити питання доповідачу. Я не жартую, така була ай-тішка в районі 2015-го. Ми з моїм товаришем, зелені випускники, боялися його. Але і поважали як "батю". А, забув додати, він відтискав від грудей 100+ кг і нас заставляв качатися.
Так от, народ. Завтра стартує Книжковий Арсенал. Я не знаю, де зараз мій тімлід - але точно знаю, що він би сказав прийти і скинути фото книжок, які ми купили.
Тому передаю естафету далі: йдіть, купуйте і читайте художню літературу. Тільки художка може зробити з айтівця людину. | 2 447 |
| 12 | https://geohot.github.io/blog/jekyll/update/2026/05/24/the-eternal-sloptember.html
Цікаві думки про АІ від одного з найвідоміших хакерів у світі, який у 17 років зламав захист iPhone, а потім Sony PlayStation 3 | 1 758 |
| 13 | Andrej Karpathy доєднується до Anthropic:
https://x.com/karpathy/status/2056753169888334312
А хто не знав: у Karpathy є легендарний курс CS231n: Deep Learning for Computer Vision від Stanford. Лекції доступні на YouTube, а на сайті Stanford можна знайти матеріали курсу та лабораторні роботи. | 2 073 |
| 14 | MIT кілька годин тому виклав всі лекції нового курсу 6.566: Computer Systems Security, Spring 2026.
https://css.csail.mit.edu/6.566/2026/
Курс виглядає як крутий матеріал для тих, хто хоче глибше розібратися в computer systems security: як будуються захищені системи і де вони ламаються | 7 573 |
| 15 | Класна штука — DeepWiki (https://deepwiki.com/)
Сайт, де лежить код популярних опенсорс-проєктів, і про нього можна питати AI. Наче чат з кодом, тільки він реально розуміє, що де лежить і як він працює.
Два режими:
— deep — показує конкретні шматки коду з поясненнями
— codemap — візуалізує структуру всього проєкту
Наприклад, можна подивитись як імплементований binary search у різних мовах і порівняти підходи:
chat → https://deepwiki.com/search/find-and-explain-binary-search_50038924-10a3-4609-a931-dfc83e469357?mode=deep
codemap → https://deepwiki.com/search/show-me-binarysearch-implement_e7948a6c-a72f-4748-a53f-a8c1b48135d3?mode=codemap
Або копнути як у LLVM зроблений Registry Pattern для реєстрації таргетів:
https://deepwiki.com/search/llvm-uses-a-registrar-the-targ_20014273-830e-4623-b832-24edd0fe6420?mode=fast
Рекомендую затестити не тільки для алгоритмів, а взагалі для вивчення дизайн-патернів, архітектури, будь-якого коду, який хочеться зрозуміти глибше. | 0 |
| 16 | Чому O(n) іноді програє O(n²)? Чому HashMap на мільйон записів може бути повільнішим за sorted array + binary search? Чому два потоки інколи працюють повільніше за один? Як працюють корутини? Як написати власний GC та malloc? І до чого тут ядро ОС?
Для middle/senior, без води. Кеш, pipeline, branch predictor, memory layout.
Завтра стартує курс Performance Engineering від CS Osvita — саме про це.
👉 csosvita.com/courses/performance-engineering | 0 |
| 17 | Що питають на інтерв'ю у FAANG/HFT прямо зараз - дайджест за останні 2 місяці з реальних співбесід від випускників CS Osvita:
HFT (High-frequency trading) - багато задач з математики, є класична зелена книга (про яку писав вище) для повторення цього; кодінг задачі на перформенс оптимізацію можна потренувати ось тут, і дуже багато питають теорію - все що є на сайті варто пройти (від пейдж таблиць та віртуальної памяті до потоків і роботи cpu)
Стосовно кодінгу, то помітний тренд — розмиті умови, як новий стандарт: дають навмисно нечіткі задачі, щоб не можна було просто закинути в ai чи нагуглити. Під капотом це класичний алгоритм, але спочатку треба самому дійти до суті і саме так перевіряють, як ти уточнюєш, комунікуєш, думаєш вголос.
наприклад, були такі питання, що зводилися до
1. https://leetcode.com/problems/swap-adjacent-in-lr-string/description/
2. задизайнити snake game: які класи, структури даних, як би організував архітектуру
3. набір ренджів + запит "чи потрапляє число хоча б в один діапазон?", потім ускладнили - треба ще й вставку нових ренджів підтримувати. потім дійшли до цього: https://leetcode.com/problems/range-module/description/
4. є n ядер, кожне тягне одну задачу. нова задача → вибираєш вільне ядро з найменшим сумарним навантаженням. задача завершилась → оновлюєш навантаження, звільняєш ядро. треба зробити це ефективно (так, хіп 😄)
5. chemical formula decomposition — дано рядок formula та масив хімічних елементів. визначити, чи можна розбити formula на послідовність елементів з масиву. під капотом це word break: https://leetcode.com/problems/word-break/description/ — dp знизу вгору або dfs з мемоізацією по індексу
6. дві задачі в одній:
а) isValidId(str, alphabet, L, K) — перевірити, що рядок складається тільки з символів alphabet, має довжину рівно L, і жоден символ не повторюється більше K разів підряд.
б) generateStrings(alphabet, L, K) — згенерувати всі рядки довжиною L з alphabet, де жоден символ не йде підряд більше K разів. | 0 |
| 18 | Midnight Code Cup 2026 — як AI змінив змагання
Пройшов кваліфікаційний раунд MCC https://midnightcodecup.org/. Задачі можна подивитись на Codeforces (на жаль, мають відношення до русні 🤮), і вони справді цікаві. Але найцікавіше — спостерігати за роллю AI у змаганнях.
Ще минулого літа на фіналі MCC команди вже використовували AI, але ближче до кінця контесту на топових місцях були ті, хто писав код руками — бо AI-код було складно підтримувати. Зараз ситуація кардинально змінилась: майже всі топові команди працювали через агентів, по суті кажучи їм, що робити, а не вирішуючи задачі самостійно. Ті, хто намагався все робити по-старому, витратили купу часу на бойлерплейт і не встигли реалізувати щось серйозне. Нагадує ситуацію в індустрії загалом: AI вже зараз дає величезне прискорення, але багато хто ігнорує це — і ризикує опинитися в програшній позиції.
Окремо цікаве спостереження про оптимізаційну задачу C: більшість топових рішень набрали приблизно 70k балів, але одна команда отримала 90k. Вони використали принципово інший підхід. І це добре ілюструє обмеження сучасних агентів — вони схильні мікрооптимізувати поточне рішення, але їм важко зробити крок назад і знайти глобально кращу стратегію.
Загалом, якщо ви ще не пробували розв'язувати задачі разом з AI-агентами — дуже раджу спробувати. Це незвичний процес, який потребує окремого навчання: треба розуміти, де агент допоможе, а де зашкодить, і як організувати роботу так, щоб легко знаходити баги, які він вносить у код. | 0 |
| 19 | Branch Predictor: скільки if-ів — це забагато?
Нещодавно копався в hot path нашого коду і натрапив на класику:
if (debug) {
log("...");
}
І задумався: ми ніколи не запускаємо з debug = true. Чи є якась ціна у цього if, який ніколи не спрацьовує? А якщо таких if-ів буде 10? 100? 1000? Старе правило каже: повністю передбачуваний branch — це ~0 тактів CPU. Але наскільки це правда? Почав розбиратися.
Чому взагалі існує branch prediction? Сучасний CPU — це конвеєр. Поки одна інструкція виконується, наступна вже декодується, а та, що після — вже завантажується з пам'яті. Все летить паралельно. Але що відбувається, коли CPU натикається на jmp або if?
BR label_a;
X1 ; <- CPU може завантажити цю інструкцію "про всяк"
...
label_a:
Y1 ; <- а виконувати треба ось цю
CPU ще не знає, куди стрибати — інструкція ще навіть не декодована. Але fetch unit вже хоче наступну! Якщо він вгадає неправильно — марно витрачені такти. Це називається frontend bubble.
Саме тому існує Branch Predictor Unit (BPU) — спеціальний блок CPU, який намагається вгадати адресу наступної інструкції ще до того, як branch буде декодовано. У нього мінімум інформації: лише адреса поточної інструкції та історія попередніх переходів. І він вгадує з дуже високою точністю.
Ключова структура всередині BPU — Branch Target Buffer (BTB). Це, по суті, кеш, де CPU запам'ятовує: "минулого разу ця інструкція стрибнула ось сюди".
Далі вирішив провести експеримент: скільки branchів витримує BTB? І натрапив на такий блог пост від https://blog.cloudflare.com/branch-predictor/
Дуже раджу почитати.
Практичні поради (TL;DR)
1. Never-taken branch — безкоштовний. Той if (debug) нічого не коштує, якщо він ніколи не true. Можете сміливо залишати — BTB про нього навіть не знає.
2. Always-taken branch коштує BTB-слот. Кожен jmp, кожен taken if, кожен call + ret — це запис у BTB. На x86 у вас є бюджет ~4096 слотів.
3. Hot loop краще тримати < 4096 taken branches. Інакше BTB переповнюється, і кожен branch стає у 3–7 разів дорожчим.
4. Функцій у hot path — менше ніж 2000. Бо call + ret = 2 BTB-записи.
5. На x86 тримайте hot code < 16 KB. На M1 — ідеально < 4 KB.
6. На Intel не вирівнюйте branch-і по 64 байти. Associativity BTB зіграє проти вас.
Якщо пишете performance-critical код — рахуйте свої branch-і. CPU не всемогутній, навіть якщо дуже старається. | 0 |
| 20 | 4 роки тому одне інтерв’ю змінило моє життя.
Березень 2022-го. Війну я зустрів за кордоном. Постійно "на трубі" з друзями. Наш чат на трьох, де раніше були лише меми, перетворився на нескінченне "як ви?".
Одного вечора, коли «Азов» уже був у повному оточенні, у чат прилетіло посилання. Інтерв’ю з Денисом Прокопенком. Відкрив автоматично, щоб відволіктися. І залип. Він говорив чітко, виважено, предметно. Про цивільних, про ситуацію в місті, про полк, що стримує навалу ворога. Сказати, що я був вражений, — це нічого не сказати.
Я така людина, що завжди шукає коріння. Мені цікаво, як людина зростала, що на неї впливало. Тоді я ще не знав, хто такий Редіс. Тому почав вивчати. Ось просто сухі факти з мережі: ультрас «Динамо» та викладач англійської й німецької за освітою. 2014-й — доброволець, солдат. У 26 років — командир «Азову». Герой України. Сьогодні — бригадний генерал.
Але якщо подивитися інтерв'ю про нього від людей, що з ним перетиналися, то всі як один пишуть про фанатичну працездатність. Він — приклад того, як гострий розум множиться на трудоголізм. Один епізод, який пояснює все: Неділя. 04:00 ранку. Єдиний вихідний за тиждень. Дзвінок: «Вибач, що розбудив. Є термінова задача». Це і є Редіс. "Моє серце, моя душа, моє тіло належать Азову". Це і є Редіс.
До чого я це пишу? Після того інтерв’ю я невдовзі повернувся до Києва. Пройшло 4 роки. Сьогодні для мене честь повідомити: наша школа csosvita.com командою всього з трьох людей перетнула рубіж у 3 000 000 гривень допомоги Силам оборони. Понад 1 000 000 гривень ми спрямували саме на «Азов». І від сьогодні ми — їхні офіційні партнери.
Так, я не військовий. Але це мій спосіб бути корисним у цій війні, поки без зброї в руках. Просто робити максимум там, де я є. Просто робити якісну computer science освіту.
Дякую за приклад, командире.
"Без бою немає слави" (с) Редіс. | 0 |
اکنون در دسترس! پژوهش تلگرام ۲۰۲۵ — مهمترین بینشهای سال 
