Бібліотека тем
Усе, що канал пояснював, у вигляді зворотного індексу: оберіть тему — і побачите, які саме відео (і хвилини) її розкривають.
-
B-tree / B+ tree
Пояснення Віктора «біля дошки», чому індекси баз даних — не бінарні дерева пошуку: BST над 100 млн рядків має глибину ~23 рівні, і при ~5 мс на дисковий seek така глибина фатальна.
-
Base64
Канонічний приклад кодування на каналі — і того, чим кодування не є (захистом).
-
DHCP (Dynamic Host Configuration Protocol)
Кут, під яким канал заходить у DHCP: «що насправді не так з Wi-Fi у кавʼярні?» (DHCP і Wi-Fi в кавʼярні).
-
DNS (Domain Name System)
Канал подає DNS як флагман своєї серії «Як працює інтернет».
-
HTTPS і TLS
Канал раз у раз повертається до прямолінійної тези: HTTPS гарантує зашифрований канал і сертифікат, що відповідає URL, — і нічого більше.
-
JWT
Улюблена тема каналу для питань із підступом: JWT виглядає зашифрованим, але це просто base64url-кодування плюс підпис — фронтенд може прочитати весь payload без жодного ключа (різниця між хешуванням, кодуванням і шифруванням).
-
Language Server Protocol (LSP)
Канал представляє LSP як архітектурне рішення, що тихо окупилося пізніше (VS Code у браузері).
-
Map-reduce
Розглядається не як біг-дата-баззворд, а як практичний трюк, що дозволив Вікторові побудувати інвертований індекс на 16,5 млн рядків, не тримаючи 10–15 ГБ у RAM.
-
MVCC (багатоверсійне керування конкурентним доступом)
Розглядається як прихований механізм за реальною архітектурною відмінністю між MySQL і Postgres.
-
NAT і основи мереж
Це сполучна тканина серії каналу «Як працює інтернет» — та «сантехніка», поверх якої стоять випуски про DNS, DHCP і затримки.
-
Test-driven development (TDD)
Канал відкрито анти-TDD-пуристський.
-
UUID проти auto-increment у первинних ключах
Одне з найкраще виміряних тверджень каналу: випадкові UUID як первинні ключі катастрофічні в MySQL, але майже нешкідливі в Postgres — бо в MySQL сама таблиця є кластеризованим B+-деревом, відсортованим за PK, і кожен вторинний індекс містить PK усередині.
-
WebGPU
Канал називає WebGPU тихою кілер-фічею показу на Google I/O (стрим Google I/O 2023).
-
Абстракції
Проєктування абстракцій — третя з трьох навичок, які, за першим відео каналу, перетворюють хорошого кодера на видатного програміста, з двома ключовими аспектами: звʼязаністю (coupling) та звʼязністю (cohesion) (3 речі, які роблять програміста кращим); якісний код, своєю чергою, визначається як абстракції, що продовжують працювати, коли ви їх розширюєте, — код, який ніколи не доводиться викидати (3 речі, які псують програміста).
-
Автентифікація за SSH-ключами
На каналі це подано як асиметричне шифрування, яким ви користуєтеся щодня, не помічаючи цього.
-
Автоматизоване тестування
Стратегію тестування каналу найконкретніше викладено в ШІ-контексті стримів про вайб-кодинг (вайб-кодинг, частина 2).
-
Алгоритмічна складність
Наскрізний хребет каналу: складність — це те, як обсяг роботи росте з розміром входу, незалежно від швидкості мови.
-
Асиметричне шифрування
За словами каналу, «одна концепція пари ключів, що пояснює половину сучасної безпеки»: пара публічного/приватного ключів, де — на відміну від єдиного спільного секрету в симетричній криптографії — приватний ключ ніколи не треба нікому передавати.
-
Вайб-кодинг
Вайб-кодинг у тому вигляді, як Віктор практикує його наживо на каналі, — це не «заплющ очі й приймай усе, що видасть модель», а дисциплінований, керований стандартами робочий процес, де людина залишається архітектором, а ШІ друкує.
-
Вебперформанс (Core Web Vitals)
Найповніший розбір на каналі — зі стриму-перегляду Google I/O (стрим Google I/O 2023).
-
Віддалена розробка
Позиція каналу, натхнена гугловими сетапами «відкрив URL — і маєш середовище розробки»: процесна архітектура VS Code робить віддалену розробку майже безкоштовною (VS Code у браузері).
-
Глибоке вивчення фундаментальних речей
Це найзвʼязніша теза каналу — майже кожне відео, від DNS до повнопривідних авто, є її застосуванням.
-
Декларативний UI (білдери на схемах)
Ідея, позичена прямо з геймдеву: як редактор рівнів Doom видає декларативні файли рівнів, так і Віктор пропонує описувати UI схемами, які компілюються в компоненти (швидша розробка UI).
-
Затримка і швидкість світла
Найефектніший аргумент каналу на тему «як працює інтернет»: швидкість вашого сайту обмежена фізикою, а не пропускною здатністю (швидкість світла і затримки сайтів).
-
Знання предметної області
Перша з трьох навичок у стартовому відео каналу: архітектуру диктує предметна область, а не патерни (3 речі, що роблять програміста кращим).
-
Канал і його автор
Віктор Турський про програмування — україномовний YouTube-канал про програмування, бази даних, мережі, безпеку та інженерну майстерність, який веде Віктор — інженер, чий шлях пролягає від диплома економіста до Senior SWE у Google.
-
Карʼєра і зростання
Карʼєрний матеріал каналу незвично конкретний, бо Віктор розповідає власний шлях — інфобезпека → Mail.ua (SPA-фронтенд епохи IE6 плюс Perl-бекенди з власним фреймворком, ZFS і бездискові фронтенд-сервери, що бутяться по PXE і тягнуть Linux-образ у RAM: «усе, що зараз робить хмара, ми робили руками») → VoIP у Portaone → співзаснування WebbyLab → 4 роки в Google як Senior SWE → незалежність (Q&A і плани на 2024, вайб-кодинг, частина 2).
-
Код-ревʼю
Погляд каналу — з перших рук: Віктор спирається на практику ревʼю і у WebbyLab, і в Google та наполягає, що єдиного правильного способу не існує — але є прийоми, які роблять кращим будь-яке ревʼю (як код-ревʼю робить Google).
-
Кодування
Представлення, а не секретність — найбільш недозрозумілий член трійці, яку канал свідомо викладає разом: кодування, шифрування і хешування.
-
Мікросервіси
Віктор починає з фрази Саймона Брауна: «чому ви вважаєте, що зможете побудувати мікросервіси, якщо не можете побудувати моноліт?» (головна проблема мікросервісів).
-
Одноразові паролі (TOTP)
Канал демістифікує Google Authenticator одним рядком: TOTP — це просто HMAC від спільного секрету та поточного інтервалу Unix-часу (наприклад, 30-секундні вікна).
-
Патерни проєктування
Позиція каналу щодо патернів свідомо дефляційна: це не сакральне знання, а просто найпоширеніші рішення, які хтось класифікував і назвав.
-
Повний привід і трансмісії
Тема з офтопного відео для спонсорів (порівняння систем повного приводу), народжена з реальної загадки: його Subaru Outback без зусиль виїжджає із засніженого двору, а його Porsche Macan буксує на ідентичних шинах.
-
Повнотекстовий пошук
Канал подає повнотекстовий пошук не як «просто візьми Elastic», а як механізм, який можна зібрати власноруч — Віктор саме так і зробив у продакшені, власноруч побудувавши повнотекстовий індекс на 300 TB.
-
Практики безпеки
Безпекова теза каналу, прямо сформульована у Q&A з планами на 2024: «майже вся інформаційна безпека — це розуміння того, як речі влаштовані всередині».
-
Принцип найменших привілеїв
Обмежуйте права доступу рамками конкретної задачі — канал пояснює це через одну незабутню історію з ранніх часів WebbyLab (войс про адмінські ключі).
-
Проєктування програмного забезпечення
Проєктування — центральна тема каналу про інженерну майстерність: у Google, каже Віктор, твій рівень визначається вмінням проєктувати, а не знанням технологій (до приходу туди він жодного рядка не написав ні на Java, ні на Angular), і це вміння він напряму повʼязує з роботою з абстракціями та знанням властивостей речей через їхню внутрішню будову: індекс — це відсортована структура, а отже запис чогось коштує і виграють лише певні форми запитів (Q&A і плани на 2024).
-
Пісочниці та ізоляція
Ізолюй ненадійне так, щоб навіть у разі компрометації воно не дотяглося ні до чого важливого.
-
Ретрогеймінг
Давнє хобі Віктора — і тема його першого YouTube-каналу, тестового ретрогеймінгового, який за рік щотижневих стримів зібрав ~300 підписників, але послужив лабораторією для OBS та обладнання перед каналом «Віктор Турський про програмування» (Q&A і плани на 2024).
-
Робоче місце і залізо
Сетап Вікторового стола, показаний у спонсорському відео-турі «моє робоче місце».
-
Соціальна інженерія
Позиція каналу: найслабша ланка — це рідко криптографія, це людина, яку вмовили співпрацювати.
-
Стиснення індексу
Як Віктор стискає інвертований індекс крок за кроком, із розмірами на екрані: сирий JSON 4 GB → сплощені масиви 3.4 GB → дельта-кодування відсортованих doc id (зберігати
100, 3, 5замість100, 103, 108) 2.3 GB → varbyte-кодування (7 бітів даних + 1 біт продовження на байт), загорнуте в base64, → 1.3 GB — менше за власний FULLTEXT-індекс MySQL з його 1.7 GB (інвертовані індекси). -
Структури даних
Позиція каналу: на практиці важливо знати властивості кожної структури та її складність за часом і памʼяттю, а не завчати реалізації — хоча Віктор і сам реалізовував топологічне сортування та повнотекстовий пошук, коли цього вимагала задача (друге Q&A).
-
Технічний борг
Формулювання, що запало Віктору, — цитата, яку він переказує далі: «якщо ти просто пишеш код — ти накопичуєш технічний борг» (випуск про код-ревʼю в Google).
-
Фільтр Блума
«Геніальна структура даних»: імовірнісний тест належності до множини, що ніколи не дає false negatives і має настроювану частку false positives, — її розмір залежить лише від кількості елементів і цільового FPR, а не від розміру ключів.
-
Хешування
Строго в один бік: довільний вхід — вихід фіксованого розміру; 1 TB чи 100 TB на вході, 20 байтів на виході, і, як жартує Віктор, «це не архівація»: дані назад не дістанеш.
-
Холодні криптогаманці
Найчистіша на каналі ілюстрація того, навіщо потрібні цифрові підписи: холодний гаманець — це просто приватний ключ, який ніколи не торкається інтернету.
-
Цифрові підписи
Друга суперсила асиметричного шифрування, як її подає канал: зашифрувати хеш документа своїм приватним ключем — це і є підпис.
-
Шифрування
Одна третина трійці, яку канал свідомо викладає разом — кодування, шифрування, хешування — і яку розробники постійно плутають.
-
ШІ та робочі місця
Відповідь каналу на «чи замінить нас ШІ» — аналогія з масштабуванням: ШІ — це джун, і масштабується він так само, як джуни.
-
ШІ-агенти для кодування
Головна теза каналу про кодинг-агентів: ШІ робить тебе техлідом із першого дня.
-
Якість коду
Віктор ставить під сумнів класичний трикутник «швидко / якісно / дешево — обери два»: можливо, можна мати всі три, бо якісний код дешевший і швидший у розробці, а не розкіш, за яку платиш швидкістю (3 речі, що псують програміста).
-
Інвертований індекс
Структура даних, що розв'язує те, чого не вміють B-tree-індекси: пошук слова всередині рядка.
-
Індекси баз даних
Найщільніша тема каналу.