концепції / deep-learning-of-fundamentals
Глибоке вивчення фундаментальних речей
Це найзвʼязніша теза каналу — майже кожне відео, від DNS до повнопривідних авто, є її застосуванням. Твердження: є два типи інженерів — ті, хто «просто викликає методи», і ті, хто копає, — і лише розуміння нутрощів технології дає тобі її властивості: що станеться з базою, якщо даних стане вдвічі більше, чому індекс прискорює одну форму запиту й не прискорює іншу (3 речі, що роблять програміста кращим, з Джоном Кармаком як авторитетом для «вивчай речі глибоко»). Маркетингові матеріали цих властивостей не дадуть ніколи; нутрощі — дадуть (вчитися глибоко і памʼятати). Фінальна притча з глибокого занурення в індекси дистилює це: три програмісти — один не знає про індекси, другий знає «індекси = швидше», третій розуміє нутрощі — і лише третій проєктує добре (індекси: MySQL проти Postgres). Зворотний бік — догматизм, одна з трьох речей, що псують програміста: читати і вірити замість розуміти, як-от «props у getInitialState — це антипатерн React», повторюване як абсолютна істина, хоча в доках було написано, що все залежить від причин (3 речі, що псують програміста).
Аргумент про запамʼятовування — його аналогія з деревом знань (вчитися глибоко і памʼятати): фундаментальні речі — це стовбур і гілки, на які чіпляється нове знання. Вивчи листок (деталь, API фреймворка) без гілки під ним — і він «падає на землю»: забувається за місяць, доля, на яку скаржаться глядачі. Коли гілка на місці, листя відростає швидко, і знання компаундиться рік за роком; віддавай перевагу знанням, що лишаються актуальними 5–10 років, — він навіть радить намалювати власне дерево технологій. Його особистий метод навчання будується на цьому: «корисна прокрастинація» — надивитися багато відео на тему з різних кутів до насичення, а потім практика; чіпляти все нове до всього, що вже знаєш; вчити стек через теорію плюс пет-проєкт, який ти справді хочеш запустити для «віртуального замовника»; і книжки бʼють статті, бо контент із середини розділу книжки не виживе як окрема стаття (Q&A і плани на 2024). Кожен інженер, каже він там, має знати основи ОС, процеси і мережі; новачкам додає: доведи пет-проєкт до кінця — фронтенд, бекенд, БД, Docker, хмара, домен, DNS, пошта — щоб володіти всім процесом доставки (друге Q&A). Стартові вправи з внутрішнього бейзлайну WebbyLab на 13–14 тем: інтервʼю-питання «від URL до відрендереної сторінки», вивчення security-експлойтів, написання JSON-парсера без жодної бібліотеки (3 речі, що роблять програміста кращим).
В епоху AI він стверджує, що фундамент важить більше, а не менше: без розуміння нутрощів ти можеш лише повторювати за маркетингом чи за AI, який «стільки всього робить неправильно», — його вибір Flutter замість React Native (нативна компіляція проти JS-моста, вирішально для realtime-математики телеметрії) — це той тип рішення, який жоден промпт за тебе не ухвалить (вайб-кодинг нового проєкту). Глибина — ще й передумова проєктування: потрібно знати властивості кожної підсистеми, щоб уся система відповідала вимогам (вчитися глибоко і памʼятати, див. проєктування ПЗ). І теза працює за межами софту: «AWD» — маркетингова наліпка, і поки не розумієш розподілу моменту, охолодження муфти і типів коробок, не передбачиш поведінку авто — Audi продає три дуже різні речі під однією назвою «quattro» (порівняння систем повного приводу).
Розібрано у відео
- Навіщо глибоко розбиратися в речах й як менше забувати вивчене
базове відео: дерево знань, нутрощі → властивості, знання на 5–10 років, намалюй власне дерево
- 3 речі, які роблять програміста кращим
«просто викликати методи» проти копання, Кармак, стартові вправи WebbyLab
- 3 речі, що псують програміста
догматизм як антипатерн: вірити замість розуміти
- Як працюють індекси в базах на прикладі: MySQL vs Postgres, UUID vs Auto Increment
притча про трьох програмістів; нутрощі передбачають властивості технології
- Вайб-коджу новий крутий проєкт (стрім)
з AI фундамент важить більше; вибір Flutter проти React Native; чесний бенчмарк Rust→WASM з 2x
- Як працює Інтернет: основи DNS
веброзробники мають розуміти інтернет наскрізь; купи домен і грайся
- Як працює Інтернет: рекурсивний пошук у DNS
відтвори кожну команду dig самостійно
- Як швидкість світла обмежує швидкість твого веб-сайту
щоб проєктувати під мережу, її треба розуміти
- Книги, які я прочитав і поставив п'ять зірок
K&R C за два вечори: шар під JS/Python (масиви char, нульовий термінатор, хеш-таблиця руками)
- Яка різниця між повними приводами в авто? (Subaru vs Porsche vs Audi vs Toyota)
теза в застосуванні до авто: маркетингові наліпки проти властивостей реалізації
- Відповідаю на питання №2
доведи пет-проєкт до кінця; чому Docker на macOS їсть RAM (це Linux-VM)
Повʼязане
Проєктування програмного забезпечення — нутрощі дають властивості, з яких складаються дизайни Знання предметної області — друга половина принципу «зрозумій, перш ніж будувати» Карʼєра і зростання — глибина — його пояснення того, як інженери насправді ростуть Індекси баз даних, DNS (Domain Name System), Затримка і швидкість світла — флагманські демонстрації тези Повний привід і трансмісії — оффтоп-доказ, що теза узагальнюється Вайб-кодинг — чому AI підвищує, а не знижує цінність фундаменту