554.1K ·GitHub
Что это такое?
Это подборка пошаговых руководств, которые показывают, как с нуля воссоздать известные технологии (базы данных, игровые движки, блокчейны, компиляторы, веб-браузеры и т. д.), чтобы вы понимали, как они устроены на самом деле.
Это само по себе учебное пособие или каталог учебных пособий?
Это каталог: один README, разбитый на категории (3D-рендерер, База данных, Docker, Игра, Операционная система, Веб-сервер и т. д.). Каждая категория ведёт на внешние учебники, которые написаны разными авторами на разных языках.
Зачем создавать что-то вроде базы данных или компилятора с нуля, а не просто использовать готовое?
В репозитории это объясняется идеей Фейнмана: самый верный способ по-настоящему понять что-то — создать это самому, а не просто пользоваться этим.
Нужно ли выбрать одну категорию или можно идти по нескольким?
Порядок не обязателен: можно переходить между категориями, например «Создайте свою игру» или «Создайте свой блокчейн», в зависимости от того, что вас интересует.
Есть ли видеоуроки или только письменные руководства?
И то, и другое: многие материалы помечены «[video]» и идут наряду с обычными статьями и записями в блогах.
Какие темы представлены лучше всего?
Базы данных, игры, эмуляторы и виртуальные машины, блокчейны и фронтенд-фреймворки (например, воссоздание React или Redux) — у каждой из этих тем много материалов на разных языках.
What are similar projects?
professional-programming, free-books, awesome-courses, cs-self-learning, learnxinyminutes-docs, SDE-Interview-and-Prep-Roadmap, awesome-cpp, toBeBetterJavaer
Which topics is it in?
regex, tutorials, search-engine, text-editor, operating-system, programming-language, blockchain, game-development, computer-science, programming, compiler, git
