Каждый курс, от начала до конца.
22 курсов, 299 уроков, 151.6ч практики. Каждый урок проходит на настоящей машине с AI-наставником, который знает твой код.
Python
19 уроков · 9.3ч
Изучите Python от начала до конца. Синтаксис, структуры данных, ООП, генераторы, асинхронность, тестирование и упаковка.
Смотреть урокиGo
20 уроков · 12.3ч
Изучите Go от начала до конца. Начните с пакетов, переменных и управления потоком выполнения, затем углубитесь в структуры, интерфейсы, конкурентность, тестирование, HTTP-серверы, базы данных, дженерики, профилирование и публикацию готовых бинарных файлов в продакшен.
Смотреть урокиReact
17 уроков · 10.2ч
Изучите React с нуля. Компоненты, состояние, хуки, контекст, производительность, маршрутизация, тестирование и итоговое приложение.
Смотреть урокиLinux
17 уроков · 8.5ч
Изучите Linux с основ командной строки. Файлы, процессы, сеть, systemd, скриптинг и запуск реальных сервисов.
Смотреть урокиDocker
13 уроков · 6.6ч
Изучите Docker от первого контейнера до продакшена. Образы, сети, тома, Compose, многоэтапные сборки и безопасные реестры.
Смотреть урокиGit
13 уроков · 5.9ч
Изучите Git на практике. Коммиты, ветки, удалённые репозитории, перебазирование, разрешение конфликтов, восстановление и рабочие процессы с pull request.
Смотреть урокиKubernetes
14 уроков · 8ч
Изучите Kubernetes - от пода до продакшена. Развёртывания, сервисы, Ingress, Helm, масштабирование, RBAC и наблюдаемость.
Смотреть урокиAnsible
12 уроков · 6.1ч
Изучите Ansible от первого инвентаря до развертывания на нескольких хостах. Плейбуки, роли, шаблоны, vault и идемпотентная автоматизация.
Смотреть урокиBash
12 уроков · 5.7ч
Изучите написание скриптов на Bash - от переменных до надежных, готовых к продакшену скриптов. Циклы, массивы, ловушки, set -euo pipefail и финальный проект по начальной настройке сервера.
Смотреть урокиHelm
10 уроков · 5.4ч
Изучите Helm - от установки чартов до создания собственных. Шаблоны, значения, хуки, зависимости и публикация.
Смотреть урокиGitLab CI
11 уроков · 5.8ч
Изучите GitLab CI/CD - от первого файла .gitlab-ci.yml до многоэтапных пайплайнов с артефактами, окружениями и деплоями.
Смотреть урокиJenkins
11 уроков · 5.3ч
Изучите Jenkins - от задач в свободном стиле до декларативных пайплайнов, общих библиотек, Docker-агентов и пайплайна как кода.
Смотреть урокиPostgreSQL
14 уроков · 7.6ч
Полный курс по PostgreSQL. Основы SQL, объединения таблиц, индексы, транзакции, JSONB, EXPLAIN и проектирование схем.
Смотреть урокиMySQL
13 уроков · 6.8ч
Изучите MySQL - от командной строки до проектирования схем. Основы SQL, объединения таблиц, индексы, транзакции, хранимые процедуры, EXPLAIN и операции с базой данных.
Смотреть урокиWeb
14 уроков · 5.9ч
Узнайте, как на самом деле работает веб. HTTP, HTTPS, DNS, куки, сессии, CORS, кэширование, TLS, заголовки безопасности и ограничение запросов.
Смотреть урокиTypeScript
18 уроков · 7.7ч
Изучи TypeScript от и до. Типы, интерфейсы, generics, классы, модули, утилитарные и mapped-типы, declaration-файлы и компилятор.
Смотреть урокиVibe Coding
12 уроков · 5.8ч
Стройте настоящие программы с AI-напарником рядом. Образ мышления, инструменты, создание prompt, архитектура, отладка, рефакторинг, масштабирование, командная работа и выпуск. Вы будете практиковаться против живой модели DeepSeek, того самого AI, который рецензирует ваш код в каждом уроке.
Смотреть урокиPrompt Engineering
11 уроков · 6.2ч
Получайте надёжные результаты от generative AI. Узнайте, как large language models создают текст, пять принципов за каждым хорошим prompt, few-shot и структурированный вывод, function calling, retrieval-augmented generation, автономные agents, и как модели diffusion превращают prompts в изображения. В конце вы свяжете текст, изображения и agents в одно работающее приложение.
Смотреть урокиVibe Coding: Fundamentals
12 уроков · 4.5ч
From zero to your first AI-built product. Written for founders and builders with no coding background. Learn to turn a vague idea into a clear brief, prompt an AI to build it, judge what it makes, fix what breaks, and ship a real product, all without writing code yourself. Every concept becomes a hands-on lesson inside EasyEnv, where you prompt a live AI and watch your product come to life.
Смотреть урокиVibe Coding: Prototype to Production
12 уроков · 5.5ч
Turn the project you built in the fundamentals course into a real product that strangers can trust. Written for non-technical founders who build by prompting an AI. You will add real sign-up and login, a proper data layer, security against common attacks, tests, deployment to a live address, monitoring, and a plan for scaling and maintenance. By the end you take a prototype and ship a production-ready product, all without writing code yourself.
Смотреть урокиVibe Coding: Multi-Agent Engineering
12 уроков · 5.3ч
Stop working with one AI assistant and start leading a team of them. Written for founders who have shipped a production product and now want to build at the pace of a real engineering team. You will learn to create specialized AI agents, a product manager, an architect, a developer, a reviewer, a security specialist, a DevOps engineer, give each a clear role, and coordinate them the way a modern software team ships. You direct the team. The agents do the work. By the end you run an entire software project with a full AI engineering team instead of a single assistant.
Смотреть урокиVibe Coding: Advanced Engineering
12 уроков · 7.3ч
AI-assisted engineering for people who already ship. Written for senior and staff engineers who know how to code and now want to run models and agents at professional standard. Context engineering, spec-driven development, your own harness, verification loops, review of generated code, legacy archaeology, large migrations, debugging, security, and the judgment to know when not to use AI at all.
Смотреть урокиТвой язык, твой темп
Каждый курс, на 11 языках
Те же практические уроки, AI-наставник и тесты. Выбери язык, на котором ты думаешь.
Все уроки
Все 299 уроков в 22 курсах. Каждый выполняется на настоящей машине.
- 1. Привет, PythonДобро пожаловать. Если вы никогда раньше не писали код, вы попали куда надо. Python это...
- 2. Числа и строкиС возвращением. В уроке 01 вы запустили свой первый файл на Python и узнали, что...
- 3. Asking the User a QuestionДо сих пор вы писали программы, которые при нажатии на кнопку запуска всегда делают одно...
- 4. Управление потоком выполненияДо сих пор ваши программы выполнялись насквозь, сверху вниз, строка за строкой. Для...
- 5. Списки и кортежиДо сих пор каждая переменная хранила одно значение: одно число, одну строку. Настоящим...
- 6. Словари и множестваС возвращением. Списки хороши, когда важен порядок и вы достаёте элементы по позиции, но...
- 7. ФункцииС возвращением. До сих пор вы пользовались несколькими функциями, которые идут в...
- 8. ComprehensionsВы уже умеете писать цикл for, который собирает новый список, словарь или множество по...
- 9. Файлы и IOПрограмма, которая только печатает в терминал, забывает всё в момент своего завершения....
- 10. Модули и пакеты (Modules and Packages)До сих пор каждая программа жила в одном файле. Пока вы учитесь, это нормально, но...
- 11. Классы и OOPДобро пожаловать к одной из крупных идей в Python. До сих пор вы придавали форму данным с...
- 12. Наследование и композицияВ уроке 10 вы строили классы с нуля. В настоящем коде классы редко живут поодиночке....
- 13. Обработка исключенийС ошибками вы уже знакомы. Каждый раз, когда вы опечатывались в имени, делили на ноль или...
- 14. Итераторы и генераторы (Iterators and Generators)Писать for item in something: вы умеете ещё с прошлых уроков. В этом уроке мы заглянем...
- 15. Декораторы (Decorators)Добро пожаловать в одну из самых хитрых тем Python. Декоратор - это небольшая обёртка,...
- 16. Менеджеры контекста (Context Managers)С возвращением. Начиная с урока 08 вы пишете with open(...) as f: и верите, что по...
- 17. Конкурентность: потоки и асинхронность (Async)С возвращением. До сих пор наши программы делали одно дело за раз, сверху вниз, и этого...
- 18. Тестирование с pytestС возвращением. До сих пор вы запускали код и глазами сверяли вывод. Для пары строк так...
- 19. Упаковка и развертываниеДо сих пор вы писали код на Python, который запускали только вы сами, набирая python...
- 1. Привет, GoДобро пожаловать. Если вы никогда раньше не писали код, вы попали куда нужно. Go - это...
- 2. Переменные и типыВ прошлом уроке вы вывели неизменный кусок текста. Настоящим программам нужно помнить то,...
- 3. Управление потоком: if и forПока что каждая написанная вами программа выполняется сверху вниз, строка за строкой, без...
- 4. ФункцииВсё, что вы писали до сих пор, жило внутри func main(). Для десятка строк это годится, но...
- 5. Срезы (slices) и карты (maps)Каждая переменная, которой вы пользовались до сих пор, держит ровно одно значение: одно...
- 6. Структуры (structs) и указатели (pointers)Любая переменная, которую вы писали в этом курсе до сих пор, хранит одно отдельное...
- 7. Методы (methods) и интерфейсы (interfaces)В прошлом уроке вы научились складывать связанные поля в структуру, но структура сама по...
- 8. Обработка ошибокВы уже не раз набирали в этом курсе if err != nil, так и не остановившись, чтобы...
- 9. Модули (modules) и структура проектаКаждая программа, написанная вами в этом курсе до сих пор, жила одним файлом, который...
- 10. Мини-проект на основе CLIДо сих пор во всех ваших программах входные данные были вписаны прямо в исходный код....
- 11. Обзор стандартной библиотекиВ изучении любого языка наступает момент, когда вопрос «как написать цикл» сменяется...
- 12. Тестирование и бенчмарки (benchmarks)Вы написали функцию, запустили программу, увидели правильный ответ и пошли дальше. Через...
- 13. Горутины (goroutines) и каналы (channels)Программе нужно скачать двадцать файлов. Если написать это обычным способом, она скачает...
- 14. Паттерны параллелизмаГорутины и каналы служат сырьём, вроде досок и шурупов. Знать, что это такое, ещё не...
- 15. Дженерики (generics)Вы пишете функцию, которая находит наибольшее число в срезе int. Потом такая же нужна для...
- 16. HTTP-серверыВ большинстве языков "написать веб-сервис" начинается с выбора фреймворка, и этот выбор...
- 17. Базы данных с database/sqlЛюбая программа, которую вы писали до сих пор, забывает всё в тот момент, когда...
- 18. Производительность и профилированиеВ какой-то момент кто-то говорит, что сервис работает медленно, вы открываете код и сразу...
- 19. Паттерны проектирования в GoПрограммы разрастаются. Файл, который был совершенно понятен на двухстах строках,...
- 20. Развёртывание и эксплуатацияМежду программой, которая работает у вас на ноутбуке, и программой, которую вы спокойно...
- 1. Что такое React?Добро пожаловать. Если вы ни разу не написали ни строчки на JavaScript и не очень...
- 2. JSX и компоненты (Components)В прошлом уроке компонент возвращал нечто похожее на HTML: return <h1>Hello, React</h1>;....
- 3. Параметры (Props)Все компоненты, которые вы писали до сих пор, были жёстко зашиты. Greeting всегда...
- 4. Состояние (State) с помощью useStateВсе компоненты, которые вы писали до сих пор, при одних и тех же пропсах каждый раз...
- 5. Обработка событийКомпонент, который только отрисовывает себя по пропсам и состоянию, сам по себе не...
- 6. Условный рендеринг и спискиПочти любой экран, которым вы когда-либо пользовались, показывает одно вместо другого в...
- 7. Формы и управляемые поля ввода (Controlled Inputs)Наберите букву в обычном <input> из HTML, и браузер всё сделает сам: элемент DOM молча...
- 8. Эффекты (Effects) с useEffectДо сих пор работа компонента сводилась к одному: посмотреть на текущие пропсы и состояние...
- 9. Получение данныхПочти ни одно настоящее приложение не обходится тем, что уже лежит у пользователя на...
- 10. Компоновка компонентов (Components)Вы собрали карточку с рамкой и тенью, и выглядит она хорошо. Теперь такая же карточка...
- 11. Context и useContextВ вашем приложении есть переключатель тёмной темы. Сам переключатель живёт на панели...
- 12. useReducerФорма оплаты начинается просто. Есть значение, значит, добавляем useState. Потом нужно...
- 13. Пользовательские хуки (Hooks)Вы написали выдвижную панель, которая открывается и закрывается. Три строки с useState и...
- 14. Производительность и мемоизация (Memoization)В вашем приложении есть таблица на две тысячи строк и поле поиска над ней. Каждое нажатие...
- 15. Маршрутизация с React RouterВсё, что вы собрали до сих пор, живёт по одному адресу. Страница одна, и то, что вы...
- 16. Тестирование компонентов React (Components)Вы меняете одну строку в общем компоненте, а потом двадцать минут кликаете по приложению...
- 17. Итоговый проект: приложение со списком задачДо сих пор каждый урок давал вам ровно одну идею и маленький пример вокруг неё. Настоящие...
- 1. Оболочка (shell) и первые командыДобро пожаловать. Если вы никогда раньше не работали с терминалом, вы попали куда нужно....
- 2. Файловая система и навигацияВ прошлом уроке вы выполнили несколько команд и прочитали их вывод, но никуда при этом не...
- 3. Файлы и права доступаОриентироваться в файловой системе вы уже умеете, но пока смотрели только на файлы,...
- 4. Текстовые инструменты: grep, sed, awkПочти всё в системе Linux, это текст. Файлы конфигурации, текст. Журналы, текст. Список...
- 5. Pipe (каналы) и перенаправлениеВ прошлом уроке вы почти мимоходом собирали небольшие конвейеры через |, отправляя вывод...
- 6. Процессы и сигналыВы набираете команду, нажимаете Enter, и что-то должно её выполнить. Это что-то...
- 7. Пользователи и группыВсе команды, которые вы выполняли до сих пор, вы выполняли от имени одной конкретной...
- 8. Управление пакетамиКто-то говорит вам «просто установи htop». В Windows или на Mac вы бы пошли искать сайт,...
- 9. Основы сетей«Сайт не работает». Вы открываете его, и с вашего ноутбука всё работает нормально, а с...
- 10. Написание shell-скриптовВы подобрали последовательность из шести команд, которая делает что-то полезное:...
- 11. Сервисы systemdВы написали скрипт, который работает. Вы его запускаете, он делает своё дело, а потом вы...
- 12. SSH и удалённый доступМашина, которая вам на самом деле нужна, находится где-то в другом месте. Это сервер в...
- 13. Журналы и логиСлужба, которая вчера работала, сегодня не работает. Никто ничего не менял - так говорят...
- 14. Диски и хранилище«No space left on device.» Служба перестаёт писать, база данных отказывает в соединениях,...
- 15. Cron и запланированные задачиВы написали скрипт резервного копирования, и он прекрасно работает - ровно до того...
- 16. Производительность и мониторингВам пишут: «сервер как-то тормозит». Больше ничего. Тормозить может из-за процесса,...
- 17. Итоговый проект: настройка сервераВсё до этого места было по одной идее за раз. Настоящая работа никогда не бывает по одной...
- 1. Что такое DockerВы собрали что-то на своём компьютере, и всё работает. Отправляете коллеге или...
- 2. Ваш первый контейнер (container)В теории вы уже знаете, что образ, это запечатанная упаковка, а контейнер получается...
- 3. Образы (images) и DockerfileДо сих пор вы открывали только те пакеты, которые запечатал кто-то другой: hello-world,...
- 4. Создание пользовательских образов (images)Dockerfile из прошлого урока умел только устанавливать программы: ни один ваш файл в...
- 5. Контейнерная (container) сетьВы уже запускали веб-сервер в контейнере, видели в его выводе, что он слушает порт 80,...
- 6. Тома (volumes) и постоянное хранилищеЗапустите базу данных в контейнере, добавьте несколько строк, удалите контейнер,...
- 7. Docker ComposeК этому моменту запуск более-менее реалистичного приложения занимает четыре команды, и...
- 8. Многоэтапные сборки (multi-stage builds)Соберите образ контейнера для скомпилированной программы очевидным способом, и вы...
- 9. Переменные окружения и секретыВаш образ работает на ноутбуке. Теперь ему надо работать в стейджинге с одной базой...
- 10. Healthcheck'и (healthchecks) и политики перезапускаСтек поднят. docker ps говорит, что всё работает, а сайт отдаёт ошибки. Начинаете...
- 11. Оптимизация и безопасность образов (images)Почти ни один production-инцидент, связанный с Docker, не является багом самого Docker....
- 12. Реестры (registries) и публикацияКаждый образ, который вы до сих пор собирали, существует ровно в одном месте: в...
- 13. Итоговый проект: развертывание стекаКаждый урок до сих пор объяснял одну вещь на контейнере, который выводит строку. Так и...
- 1. Инициализация и ваш первый коммит (commit)Представьте, что пишете сочинение в текстовом редакторе и после каждого осмысленного...
- 2. Статус, различия и журналВ прошлом уроке вы сделали коммит, и это ровно один снимок. Настоящая работа состоит в...
- 3. Ветки (branch) и слияние (merge)Каждый коммит, который вы делали до сих пор, лежит на одной-единственной линии истории...
- 4. Разрешение конфликтов слияния (merge)Когда Git впервые отказывается доводить слияние до конца, кажется, что что-то сломалось....
- 5. Удаленные репозитории (remote): Push, Pull, FetchВсё, что вы делали до сих пор, живёт только на вашей собственной машине. Для практики...
- 6. Стэш (stash) и cherry-pickВы на полпути к готовому изменению: файлы поправлены, ничего не закончено, и тут вам...
- 7. Перебазирование (rebase)Вы создали ветку от main в понедельник, чтобы добавить строку поиска. Сейчас четверг, у...
- 8. Интерактивный rebase и squash коммитовНастоящая работа не укладывается в один аккуратный коммит. Вы делаете коммит, через пять...
- 9. Теги (tag) и релизы (release)Ветка вроде main, это движущаяся закладка. Она указывает на тот коммит, который сейчас...
- 10. Рабочие процессы ветвления (branch)Всё, что вы изучили до сих пор, ветвление, слияние, ребейз, теги, объясняет, что делают...
- 11. Восстановление потерянной работыРано или поздно вы наберёте команду, нажмёте Enter, посмотрите на спокойный и...
- 12. Хуки (hook)В каждой команде есть правило, с которым все согласны и про которое все забывают....
- 13. Итоговый проект: полный цикл пул-реквеста (Pull Request)До сих пор всё происходило по кусочкам: то коммит (commit), то ветка (branch), то rebase,...
- 1. Что такое KubernetesДобро пожаловать. Если вы пару раз запускали Docker, а теперь отовсюду слышите слово...
- 2. Ваш первый PodВ прошлом уроке вы поговорили с кластером, но так и не попросили его что-нибудь...
- 3. Развёртывания (Deployments) и ReplicaSetsВ конце прошлого урока вы убедились сами: удалите одиночный под, или дайте ему упасть, и...
- 4. Сервисы (Services)У вас есть развёртывание, которое держит живыми три пода, и этим решена задача "под умер...
- 5. Пробы (Probes) и самовосстановлениеС упавшим процессом всё просто. Его нет, операционная система это заметила, Kubernetes...
- 6. ConfigMaps и SecretsСейчас, если контейнеру нужна какая-то настройка, скажем уровень журналирования или имя...
- 7. Тома (Volumes) и постоянное хранилищеВсё, что вы разворачивали до сих пор, страдало беспамятством, и это было сделано...
- 8. Пространства имён (Namespaces) и метки (Labels)Кластер с шестью подами прост. Запускаете kubectl get pods, видите всё и знаете, что...
- 9. IngressВы уже умеете пускать трафик в кластер. NodePort открывает порт с большим номером на...
- 10. Основы HelmНапишите своё пятое веб-приложение для Kubernetes, и вы заметите нечто удручающее: вы всё...
- 11. Масштабирование и HPAПредставьте супермаркет с десятью кассами, но только двумя кассирами на смене. В девять...
- 12. RBACКаждую команду в этом курсе вы выполняли от своего имени, как администратор кластера, и...
- 13. НаблюдаемостьТри часа ночи, и что-то сломалось. Пользователи видят ошибки. У вас кластер с сорока...
- 14. Итоговое задание: развертывание стекаКаждый предыдущий урок учил вас одному объекту за раз, и каждый из них демонстрировался...
- 1. Что такое AnsibleДобро пожаловать. Если вы ни разу в жизни не автоматизировали настройку сервера, вы...
- 2. Inventory и команды Ad HocВы уже знаете, что Ansible подключается к машинам по SSH и описывает желаемое состояние...
- 3. Ваш первый PlaybookРазовые команды хороши для быстрой проверки или единичного исправления, но на настоящую...
- 4. Tasks, Modules и HandlersПредставьте плейбук, который настраивает веб-сервер. В нём три задачи, каждая правит свой...
- 5. Переменные и FactsНапишите плейбук, вбив номер порта, имя сайта и версии пакетов прямо в задачи, и он...
- 6. Шаблоны с Jinja2Копировать один и тот же статический файл на все машины прекрасно работает ровно до того...
- 7. Циклы и условные конструкцииВ плейбуке, который ставит один пакет, одна задача. В плейбуке, который ставит десять...
- 8. Roles и GalaxyРано или поздно у вас окажется два плейбука, каждый из которых ставит nginx, кладёт один...
- 9. Vault и секретыВсё, что вы писали до сих пор, можно было спокойно показать кому угодно. Инвентари,...
- 10. Теги и отладкаПлейбук начинался с шести задач, и вы запускали его без конца. Теперь в нём пятьдесят...
- 11. Collections и PluginsУ каждого имени модуля в этом курсе был префикс, который вы, возможно, тихо пропускали...
- 12. Итоговый проект: развертывание на нескольких хостахКаждый прошлый урок разбирал одну деталь отдельно от других: тут инвентарь, там роль,...
- 1. Что такое BashДобро пожаловать. Если вы ни разу в жизни не открывали терминал, вы попали туда, куда...
- 2. Shebang и ваш первый скриптЕсли слово «скрипт» до сих пор звучит как что-то, что пишут только настоящие...
- 3. Переменные и кавычкиЕсли вы никогда раньше не пользовались переменными, не переживайте. Это одна из самых...
- 4. Условные выражения и тестыВсе скрипты, которые вы писали до сих пор, выполняют одни и те же строки при любых...
- 5. ЦиклыДо сих пор каждый написанный вами скрипт выполнял каждую строку ровно один раз, сверху...
- 6. ФункцииК этому моменту ваши скрипты начинают повторяться. Возможно, вы пишете сообщение со...
- 7. МассивыДо сих пор одна переменная хранила одно значение. name="Ada" хранит одну строку. Чтобы...
- 8. Расширение строк и арифметических выраженийВы постоянно будете сталкиваться с ситуацией, когда переменная содержит почти то, что...
- 9. Перенаправление ввода-вывода и конвейеры (pipes)У каждой команды, которую вы запускаете в Bash, под капотом есть три отдельных канала,...
- 10. Обработка ошибок и ловушки (traps)Каждый скрипт (script), который вы писали до сих пор, предполагает, что всё пройдёт...
- 11. Отладка и лучшие практикиРано или поздно скрипт (script), который вы написали, сделает что-то, о чём вы его не...
- 12. Итоговый проект: скрипт начальной настройки сервераНовый сервер - это машина, на которой ничего нет. Кто-то должен установить веб-сервер,...
- 1. Что такое HelmДобро пожаловать. Курс исходит из того, что с Kubernetes вы уже знакомы по нашему курсу...
- 2. Установка чартовЧаще всего, когда дело доходит до Helm, вы не пишете чарт (chart), а устанавливаете...
- 3. Структура чарта (chart)Вы уже устанавливали чужой чарт и видели, как Helm превращает его в работающие Pod'ы. Но...
- 4. Values (значения) и шаблонизация (templating)Откройте templates/deployment.yaml в своём сгенерированном чарте и вы заметите, что это...
- 5. Хелперы (Helpers) и именованные шаблоны (named templates)Откройте чарт с более чем одним-двумя манифестами, и паттерн сразу бросается в глаза:...
- 6. Зависимости и сабчарты (subcharts)Почти ничто из того, что вы разворачиваете, не живёт в одиночку. Веб-службе почти всегда...
- 7. Управление релизами (Release)Установить чарт в первый раз - это самая лёгкая часть. Настоящая работа начинается потом:...
- 8. Хуки (Hooks) и тестыНе всякая работа аккуратно укладывается в "отрендерить манифест и применить его". Схему...
- 9. Публикация чартов (charts)Ваш чарт работает. Вы можете запустить helm install myapp ./mychart и получить работающее...
- 10. Итоговый проект: ваш собственный чарт (chart)Каждый урок до этого момента давал вам готовый чарт и просил поменять в нём одну вещь....
- 1. Что такое CI/CDПредставьте команду, которая выпускает веб-приложение по старинке. Кто-то дописывает...
- 2. Ваш первый пайплайн (pipeline)Вы уже знаете словарь: пайплайны, этапы, задачи, раннеры. Но словарный запас это не то же...
- 3. Джобы (jobs) и стейджи (stages)В пайплайне из прошлого урока была одна задача. Реальные проекты никогда не остаются...
- 4. Переменные и секретыПайплайн, который ведёт себя абсолютно одинаково независимо от того, кто его запустил и в...
- 5. Артефакты (artifacts) и кэши (caches)Каждая задача в пайплайне начинается с чистой копии вашего репозитория и выполняется...
- 6. Правила (rules) и условные джобы (jobs)Каждая задача, которую вы написали до сих пор, запускается при каждом push, независимо от...
- 7. Джобы (jobs) и сервисы (services) DockerРаннер конвейера - это голая машина, и по умолчанию он понятия не имеет, что вашему...
- 8. Среды и развертыванияВаша задача деплоя работает. Она выполняет scp, или kubectl apply, или Ansible playbook,...
- 9. Инклуды (includes) и шаблоны (templates)К вашему третьему проекту файлы .gitlab-ci.yml начинают рифмоваться друг с другом. Одна и...
- 10. Раннеры (runners)Все, что было в этом курсе до сих пор, было описанием работы. Вы писали строки script:,...
- 11. Итоговый проект: сборка, тестирование, развертываниеКаждый урок этого курса учил одному ключевому слову на игрушечной задаче. Так учат...
- 1. Что такое JenkinsОткройте страницу вакансий почти любого банка, телеком-оператора, больничного ИТ-отдела...
- 2. Ваш первый Freestyle JobВы прочитали, что такое Jenkins и почему он до сих пор с нами. Всё это остаётся словами,...
- 3. Ваш первый декларативный PipelineВернитесь к задаче типа freestyle, которую вы собрали в прошлом уроке, и представьте, что...
- 4. Блоки stages, steps и postВаш первый пайплайн (pipeline) состоял из одной строки sh, и он работал. Настоящий...
- 5. Артефакты (Artifacts) и результаты тестовСборка стала красной в два часа ночи, и кто-то должен разобраться почему. Он открывает...
- 6. Среда и учётные данныеВашему пайплайну (pipeline) нужно отправить образ (image) в реестр, а реестр просит...
- 7. Параллельные и Matrix-сборкиПять этапов по три минуты каждый, и пайплайн (pipeline) занимает пятнадцать минут. Это...
- 8. Агенты (Agents) и DockerСборка прошла во вторник и провалилась в среду, при этом код не менялся. Оказалось, что...
- 9. Триггеры (Triggers) и расписанияПайплайн (pipeline), который запускается только когда кто-то нажимает Build Now, это не...
- 10. Общие библиотеки (Shared Libraries)Откройте три Jenkinsfile-а в вашей организации, и вы найдёте одни и те же пятнадцать...
- 11. Итоговый проект: Pipeline как код для приложения Node.jsПора связать всё вместе. Вы напишете один Jenkinsfile, который делает всю работу для...
- 1. Что такое PostgreSQLПредставьте, что вы ведёте учёт всех клиентов, заказов и товаров небольшого магазина в...
- 2. psql и первые командыТеперь вы знаете, зачем нужен Postgres. Следующий вопрос куда более практический: как с...
- 3. Создание баз данных и таблицДо сих пор вы только осматривались на сервере, который настроил кто-то другой. Чтобы...
- 4. Типы данныхУ каждого столбца, который вы создавали до сих пор, был тип: TEXT, SERIAL, TIMESTAMPTZ,...
- 5. SELECT и WHEREУ вас есть таблица на несколько тысяч строк, а нужно из них всего семь. Не все, не первая...
- 6. Джойны (joins)Ваши данные лежат не в одной таблице, и это правильно. Пользователи живут в users, их...
- 7. Агрегаты и группировкаКто-то спрашивает вас, как магазин отработал в прошлом месяце. Он не хочет видеть четыре...
- 8. Индексы (indexes)На вашем ноутбуке запрос отрабатывал мгновенно на двухстах тестовых строках. В...
- 9. Транзакции (transactions) и изоляция (isolation)Два выражения UPDATE переводят деньги от Alice к Bob. Первое выполняется, соединение...
- 10. Функции (functions) и триггеры (triggers)В каждой таблице вашей схемы есть столбец updated_at, и в каждой из них он неверен. Не...
- 11. JSONB и массивыНекоторые данные никак не хотят укладываться в столбцы. Таблица products, где у ноутбуков...
- 12. EXPLAIN и настройка запросовСтраница, которая раньше загружалась мгновенно, теперь занимает девять секунд, и первый...
- 13. Резервное копирование и восстановлениеНочная задача уже восемь месяцев пишет файл на диск, и никто ни разу его не открывал. Это...
- 14. Итоговый проект: Разработка схемыВсе предыдущие уроки давали вам готовую таблицу и просили сделать по ней запрос. Реальная...
- 1. Что такое MySQLДобро пожаловать. Если вы никогда раньше не работали с базами данных, вы попали куда...
- 2. MySQL CLI и первые командыПрошлый урок был сплошным разговором: что такое MySQL, откуда он взялся, зачем нужен....
- 3. Создание баз данных и таблицНа прошлом уроке вы только смотрели. Вы подключились, осмотрели системные базы данных и...
- 4. Типы данныхОглянитесь на таблицу products из прошлого урока, и вы заметите, что у каждого столбца...
- 5. SELECT и WHEREВ вашей таблице десять тысяч товаров, а вам нужны те шесть, которых нет на складе, в...
- 6. JoinsВаши пользователи живут в одной таблице (table), а их заказы в другой, и единственная...
- 7. Агрегаты и группировкаКто-то спрашивает, как регион EU отработал в прошлом квартале. Ему не нужны четыре тысячи...
- 8. ИндексыЭндпоинт для входа отлично работал на двухстах тестовых пользователях. В продакшене, на...
- 9. Транзакции и подсистемы храненияДва оператора UPDATE переводят двадцать фунтов от Ada к Bilal. Первый выполняется,...
- 10. Хранимые процедуры и триггерыКаждый заказ в системе должен записываться в журнал аудита (audit log). Большинство и...
- 11. EXPLAIN и настройка запросов«Этот запрос выполняется медленно.» Вы будете слышать эту фразу до конца карьеры, и...
- 12. mysqldump и восстановлениеНочная задача уже восемь месяцев пишет файл на диск, и его никто ни разу не открывал. Это...
- 13. Итоговый проект: разработка схемы для интернет-магазинаВ каждом уроке до этого вам давали готовую таблицу и просили её опросить. Настоящая...
- 1. Что такое ИнтернетЗдравствуйте. Если вы никогда не задумывались, что на самом деле происходит, когда вы...
- 2. HTTP и HTTPSПредставьте себя в кофейне, на бесплатном wi-fi. Любой другой человек в той же сети,...
- 3. Анатомия запроса и ответаВы уже знаете, что браузер отправляет запрос, а сервер отправляет обратно ответ. Чего вы...
- 4. Куки, сессии и токеныУ HTTP нет памяти. Каждый отправленный вами запрос сервер разбирает так, будто видит вас...
- 5. DNS простым языкомВы направили домен на новый сервер, изменение прошло, и всё работает с вашего ноутбука,...
- 6. TLS и сертификатыTLS - это слой, который превращает обычный HTTP в HTTPS. К концу урока вы будете...
- 7. CORSВаш фронтенд работает на localhost:3000, API на localhost:8000, и запрос, который в curl...
- 8. Основы REST APIВас просят добавить эндпоинт в существующий API, и вы застреваете на первом же решении:...
- 9. WebSockets и SSEНужная вам возможность звучит так: показать новое сообщение в тот же миг, когда оно...
- 10. Кэширование и CDNВаша главная страница собирается 900 миллисекунд, и она собирает одно и то же для...
- 11. Заголовки безопасностиНа стол вам ложится отчёт о проверке безопасности с четырнадцатью пунктами, и шесть из...
- 12. Ограничение частоты запросов и троттлингВ 09:14 ваш API начинает отваливаться по тайм-ауту у всех подряд. Ничего не выкатывали....
- 13. Мониторинг и логированиеТри часа ночи, и клиент пишет, что оформление заказа не проходит. У вас есть имя,...
- 14. Итоговый проект: простой веб-серверКаждый урок этого курса разбирал заголовки снаружи. Вы узнали, что обещает Cache-Control,...
- 1. Привет, TypeScriptВот небольшая программа на JavaScript, полностью сломанная, и JavaScript с удовольствием...
- 2. Базовые типы (Type)Запускать файл .ts вы уже умеете. Теперь познакомимся с базовыми строительными блоками:...
- 3. Массивы и tuplesОдного значения редко бывает достаточно. У вас есть список температур, список имён,...
- 4. Object-типы (Type) и интерфейсы (Interface)На примитивах и массивах можно уехать довольно далеко, но у большинства настоящих данных...
- 5. ФункцииИменно в функциях живёт большинство ошибок, и именно там типы окупаются лучше всего....
- 6. Union- и Literal-типы (Type)Некоторые значения - это не что-то одно. Функция, ищущая пользователя, либо находит его,...
- 7. Сужение типов (Type Narrowing)Объединение типов (union) говорит: "это значение одного из нескольких типов". Сужение...
- 8. Type aliases vs interfacesВы писали формы объектов прямо внутри сигнатур, и это было нормально, пока формы были...
- 9. Optional, readonly и nullableСамая частая ошибка выполнения в JavaScript выглядит так:
- 10. EnumsНекоторые значения берутся из короткого фиксированного списка. Заказ бывает в ожидании,...
- 11. GenericsНужна функция, которая берёт массив и возвращает его первый элемент. Проще некуда:
- 12. Классы (Class)Вот банковский счёт, записанный обычным объектом:
- 13. Наследование и Abstract ClassesВы написали три класса для платёжной системы: CardPayment, BankTransfer и Voucher. У всех...
- 14. Модули (Module)Каждый файл на TypeScript сам по себе модуль. Как только в файле появляется import или...
- 15. Utility TypesВ поставку TypeScript входит небольшая библиотека обобщённых типов, которые принимают тип...
- 16. Mapped и conditional typesВспомогательные типы, которыми вы только что пользовались (Partial, Pick, Record,...
- 17. Declaration-файлы и библиотекиВы устанавливаете библиотеку, импортируете её, и редактор оживает автодополнением,...
- 18. tsconfig и компилятор (Compiler)tsconfig.json - это файл, который компилятор TypeScript читает, чтобы понять, что...
- 1. Образ мышления vibe-кодераСкорее всего, вы это уже переживали. Просите у ИИ функцию, он за две секунды выдаёт сорок...
- 2. Инструменты ремесла: настройка на успехСпросите десять человек, продуктивно работающих с ИИ-инструментами для написания кода,...
- 3. Создание prompt: говорим с AI как профиПросить у ИИ код вы будете сотни раз в день, и качество ответа решается в основном в тот...
- 4. От автодополнения к архитектуреПочти все начинают одинаково: ИИ как очень хорошее автодополнение. Допиши эту строку,...
- 5. Отладка с AI: когда ломается, чини быстроКод ломается у всех. Код, написанный с ИИ, ломается особым образом, который стоит назвать...
- 6. Искусство рефакторинга AI-кодаУ кода, сгенерированного ИИ, узнаваемый почерк: он работает, и он чуть хуже, чем должен...
- 7. Производительность, масштабирование и надёжностьРано или поздно код должен работать достаточно быстро, выдерживать достаточную нагрузку и...
- 8. Построение целых систем с AIНаписать одну функцию несложно. Система, это много функций, которые обязаны...
- 9. Командные вайбы: сотрудничество с AI и людьмиУ работы с ИИ над собственным проектом есть один читатель: вы сами. В тот момент, когда...
- 10. Vibe coding в реальном мире: проекты, клиенты и legacy-кодВ учебниках вам дают чистые пустые файлы. В реальной работе вам достаётся кодовая база...
- 11. Оставаться в форме: учиться, адаптироваться и растиВнутри vibe coding прячется настоящий риск: если весь мыслительный труд берёт на себя ИИ,...
- 12. Будущее кода и ваше место в нёмВы освоили нужный образ мышления, инструменты, ремесло и меры предосторожности. Этот...
- 1. Что такое промптСкорее всего, вы уже что-нибудь писали в окно чата: задавали вопрос, получали ответ и,...
- 2. Как большие языковые модели генерируют текстВы уже знаете, что такое промпт и что такое ответ модели, и что один и тот же промпт...
- 3. Пять принципов промптингаВы уже знаете, что такое промпт, что такое ответ модели и что модель каждый раз пишет...
- 4. Стандартные практики генерации текстаВторой и третий уроки дали почувствовать, как модель на самом деле выдаёт текст по одному...
- 5. Prompt Templates и Function CallingВ четвёртом уроке вы собирали один промпт руками: разделители, роли, пара примеров. Для...
- 6. Vector-базы данных и Retrieval-Augmented GenerationВ уроке 2 вы видели, почему модель галлюцинирует: она предсказывает вероятные следующие...
- 7. Autonomous Agents: память (memory) и инструменты (tools)В уроке 5 вы дали модели инструменты через вызов функций, а в уроке 6 добавили ей...
- 8. Как diffusion-модели генерируют изображенияДо сих пор каждый написанный вами промпт порождал текст. Этот урок открывает часть 3, где...
- 9. Стандартные практики генерации изображенийПредыдущий урок дал интуитивное понимание того, как диффузионная модель превращает...
- 10. Продвинутые техники работы с изображениями: inpainting, outpainting и ControlNetВ двух прошлых уроках вы порождали целые изображения из текстового промпта и учились...
- 11. Создание приложений на основе ИИЭто итоговый проект. Каждый предыдущий урок давал один приём: генерацию текста,...
- 1. AI Is Not MagicВам предстоит создавать программы, описывая словами то, что вы хотите, а писать и...
- 2. Thinking Before PromptingВ прошлом уроке вы увидели, что ИИ, это способный, но небезупречный помощник, и что на...
- 3. Explaining Your IdeaВ двух предыдущих уроках вы узнали, что ИИ это способный, но небезошибочный помощник и...
- 4. Talking to AIВ прошлых уроках вы научились думать до того, как писать промпт, и понятно излагать свою...
- 5. Learning What You Don't KnowДо сих пор вы упражнялись в том, чтобы думать, объяснять и вести разговор с ИИ. Этот урок...
- 6. Breaking Down Big ProblemsТеперь у вас есть идея чего-то настоящего, возможно, целого приложения. Тянет описать всё...
- 7. Reviewing AI's WorkВ первом уроке вы узнали, что ИИ это быстрый и уверенный помощник, который иногда...
- 8. Build Your First ProductЭто тот урок, к которому вело всё предыдущее. Вы научились думать до промпта, понятно...
- 9. Fixing Problems with AIК этому моменту вы уже собрали вместе с ИИ настоящий продукт. Рано или поздно что-нибудь...
- 10. Делаем лучшеВ двух прошлых уроках вы собрали первую версию продукта и починили вылезшие проблемы. Эта...
- 11. AI WorkflowsК этому моменту вы собрали продукт, исправили в нём проблемы и сделали его лучше, и всё...
- 12. Becoming an AI BuilderЭто последний урок, и именно в нём всё сходится воедино. Каждое движение по отдельности...
- 1. Preparing Your ProductДобро пожаловать на второй курс. В курсе основ вы собрали что-то работающее, и собрали...
- 2. Building a Strong FoundationВ прошлом уроке вы честно посмотрели на проект, собранный в курсе основ, и выписали, где...
- 3. Managing Users and AuthenticationПроект, который вы собрали в базовом курсе, работал, но все люди были для него...
- 4. Working with DataВ прошлом уроке вы научили проект, собранный в курсе основ, понимать, кто его...
- 5. Keeping Your Product SecureВ прошлых уроках вы дали проекту из курса основ настоящие учётные записи, вход и надёжное...
- 6. Testing Before ReleaseК этому моменту курса вы добавили в проект из базового курса настоящую регистрацию и...
- 7. Working with Multiple AI AgentsК этому моменту вы добавили в проект, собранный в курсе основ, настоящие учётные записи,...
- 8. Deploying to ProductionДо сих пор ваш продукт жил у вас на экране. Он запускается в этом рабочем пространстве,...
- 9. Monitoring Your ProductВаш продукт теперь работает вживую. До него добираются живые люди, а значит, реальные...
- 10. Scaling Your ProductВаш продукт развёрнут по настоящему адресу и, благодаря прошлому уроку, вы узнаёте, когда...
- 11. Maintaining and Improving Your ProductВаш продукт живой. Реальные люди могут до него добраться, зарегистрироваться и...
- 12. Running a Real ProductЭто последний урок курса, и именно здесь всё сходится вместе. За одиннадцать прошлых...
- 1. Thinking Like an Engineering LeaderВ первых двух курсах вы научились создавать продукт и выпускать его для настоящих...
- 2. Creating Specialized AI AgentsВ прошлом уроке вы пересели из кресла исполнителя в кресло руководителя разработки,...
- 3. Giving Every Agent a RoleВ прошлом уроке вы спроектировали команду: продакт-менеджер, архитектор, разработчик,...
- 4. Managing AI CollaborationВ прошлых трёх уроках вы спроектировали команду агентов, дали каждому свою роль и...
- 5. AI Code ReviewsВ прошлом уроке вы провели небольшую доработку через планировщика, разработчика и...
- 6. AI Project ManagementДо сих пор вы учились руководить командой ИИ-агентов: давать каждому узкую роль,...
- 7. AI DevOpsВы уже вели команду агентов, которая собрала продукт, проверила его и вела проект. В...
- 8. AI Security TeamsУ вас есть продукт, которым пользуются живые люди, и агент-devops, который его...
- 9. AI OperationsВаш продукт запущен, и им пользуются настоящие люди. Это меняет характер работы....
- 10. Building Your Own AI WorkflowЗа этот курс вы познакомились со всеми ролями, которые нужны современной инженерной...
- 11. Scaling AI TeamsВы научились вести команду агентов на базе ИИ: давать каждому сфокусированную роль,...
- 12. Becoming an AI Engineering LeaderЭто последний урок продвинутого курса и последний урок всего пути из трёх курсов. Начали...
- 1. Context Is The Whole GameПочти любая жалоба на ИИ-инструменты для программирования ("он выдумал несуществующий...
- 2. Pick The Right Brain, Pay The Right PriceВыбор модели - такое же инженерное решение по своей природе, как выбор базы данных или...
- 3. Spec-Driven DevelopmentСамый быстрый способ получить от модели правильный код это перестать описывать, чего вы...
- 4. Build Your HarnessИнженеры, у которых модель стабильно выдаёт хороший результат, редко пишут промпты лучше,...
- 5. Verification Loops: Make It Prove ItselfМодель скажет вам, что её код правильный. Она не врёт и не права: узнать этого она не...
- 6. Reading Generated Code Like A SeniorПроверять код вы уже умеете. С машинным кодом меняется распределение ошибок. Человеческий...
- 7. Legacy ArchaeologyДать модели кодовую базу, которую никто не понимает, и спросить "что это делает?" это...
- 8. Migrations At ScaleПросьба к модели изменить четыреста файлов - это та точка, где помощь ИИ либо становится...
- 9. Debugging Code You Did Not WriteКогда вы отлаживаете свой код, у вас есть преимущество: вы помните, чего пытались...
- 10. The Security Model Of An AgentАгент с инструментами это программа, которая принимает инструкции из текста и действует...
- 11. AI On A TeamПрирост индивидуальной продуктивности от искусственного интеллекта реален, но он не...
- 12. Judgment: Knowing When Not ToВсе уроки до этого были о том, как делать это хорошо. Этот - о решении, которое...
