Що нового?

Придбаний Хардкорная веб-разработка (Алексей Голобурдин)

Інформація про покупку
Тип покупки: Складчина
Ціна: 36765 ГРН
Учасників: 0 з 84
Організатор: Відсутній
Статус: Набір учасників
Внесок: 455.2 ГРН
0%
Основний список
Резервний список

Gadzhi

Модератор
Хардкорная веб-разработка - всё, что нужно уметь мощному разработчику под веб

Чтобы быть эффективным веб-разработчиком — неважно, backend, frontend, fullstack — мало знать только синтаксис выбранного языка программирования, например, Python или JavaScript. Для уверенной разработки веб-систем нужно иметь понимание и реальные навыки по всем технологическим блокам, работающим на разных слоях приложения.

Этих слоёв немало — это сам Интернет с его архитектурой и протоколами, это и серверные операционные системы Linux, и бэкенд-стек технологий, включающий в себя выбранный язык программирования, фреймворки, базы данных, системы планирования выполнения и прочее, это и целый спектр фронтенд-технологий.

Вне зависимости от того, работаешь ты бэкенд или фронтенд разработчиком, только фундаментальное понимание всех слоёв системы позволяет тебе быть эффективным, уверенным в своих силах специалистом, способным к красивому и эффективному решению задач веб-разработки.

Плюс — передовые методики разработки ПО. Асинхронные решения, автотесты, информационная безопасть, CI/CD.

Цель этого курса — дать тебе все необходимые навыки и закрепить их на практике.


Для кого этот курс

Этот курс создан специально для тебя, если:

  • ты готов к хардкорному погружению в веб-разработку
  • ты ещё не начал погружаться в тему веб-разработки и хочешь начать это делать правильно — от фундамента к первому этажу и выше
  • ты уже начал изучать язык программирования, но как полноценно создавать веб-системы и как они работают, у тебя понимания нет
  • ты уже разрабатываешь веб-системы, но хочешь стать более эффективным мощным бойцом, понимающим, как всё работает на всех уровнях приложения
  • ты хочешь увидеть, как делаются настоящие большие веб-проекты и хочешь на реальной практике научиться делать такие же
  • ты хочешь научиться писать качественный код и выстраивать расширяемую архитектуру своих приложений
  • ты стажер, джун, мидл, сеньор, архитектор или президент компании (Билли, Гейтс, ты тоже приходи, потрындим)

Курс - это практика

Основа этого курса — практика
. Подкрепляют практику сотни наглядных видео-уроков и текстовых материалов.

Благодаря наглядным демонстрациям, тебе не придётся сомневаться "как он это установил" или "как именно он это сделал" — ты видишь своими глазами все шаги. С момента установки Python на свой компьютер и до готового опубликованного на своём домене и своих серверах большого проекта (rroom), все шаги со всеми объяснениями.

Тесты и практические задания на курсе делятся на две категории. Одни задания проверяются автоматически платформой курса, которую мы специально разработали для него. Другие задания проверяются лично автором курса. Это и задания со свободной формой ответа, и задания на программирование с код-ревью автора курса, и комплексные большие проекты, которые вы будете делать на курсе.

Вся коммуникация по данному курсу проходит только с автором. С одной стороны, это позволяет тебе получить максимально качественную поддержку и обратную связь во время прохождения курса, с другой — это не позволяет сделать курс дешёвым. В больших образовательных компаниях стоимость курса обусловлена огромными затратами на маркетинг, в нашем же с тобой случае — на подготовку и ведение самого курса.

Как создаются настоящие проекты? (Покажу на курсе)

Изучив язык программирования, какой-то фреймворк и сталкиваясь затем с реальным проектом, зачастую мы не знаем, как к нему подступиться, как его правильно начать и как его правильно сделать.

На курсе я покажу реализацию книжного сервиса rroom.io — от дизайна до готового сайта, которым пользуются люди.

Rroom — это проект для тех, кто читает книги. Регистрация пользователей, ведение книжных подборок, отзывов, комментарии, стены, интеграция интернет-эквайринга для оплат на сервисе, реализация автоматизированной рекламы и многое другое.

Будет показан весь процесс разработки и весь используемый тулинг. Стек: Python, FastAPI, SQLAlchemy, PostgreSQL, Redis, Dramatiq, TypeScript, SolidJS. Конкурирующие фреймворки (Django, React) также найдут отражение в курсе.

А затем и ты на курсе реализуешь свой большой веб-проект, применив все полученные знания и навыки.

  1. Подготовка
    1. Цели курса
    2. Как будет проходить курс
    3. Границы тем курса
    4. Как потратить время зря
    5. Как получить от курса максимум
    6. Многозадачность, сон, скорость
    7. Задания, Google и ChatGPT
    8. Разделы КОМП — Как Оно Мне Поможет
    9. Задавайте вопросы
    10. Платформа
    11. Практика — rroom
    12. Книги!.md
  2. Как работает компьютер
    1. Computer Science
    2. Римские и арабские цифры
    3. А если бы у нас было шесть пальцев
    4. Когда ленточка — это всё, что нужно
    5. Биты-байты
    6. Шестнадцатеричная система счисления
    7. Как научить электричество считать
    8. Цифровая и аналоговая техника
    9. Как Software меняет правила игры, Assembler
    10. Hardware — основное компьютерное железо
    11. Итоги
    12. Дополнительные материалы
  3. Программное обеспечение
    1. Клавиатура, мышь, голос, мысль
    2. Как достичь слепого набора текста
    3. Операционные системы
    4. Установка удобного эмулятора терминала
    5. Установка GNU/Linux в Windows 10 с WSL
    6. Переключение версии WSL
    7. Установка Debian GNU/Linux в Oracle Virtualbox
    8. Установка Debian GNU/Linux на Apple Silicon Mac с UTM
    9. SSH-подключение к виртуальной машине
    10. Искусственный интеллект коровы
    11. Интеграция Windows и GNU/Linux с WSL
    12. Кодировки и hex-дампы
    13. Обходим защиту почтовых программ
    14. Языки программирования
    15. Эффективность языков программирования и программ
    16. Компилятор и интерпретатор
    17. Алгоритмы
    18. Пример — бинарный поиск
    19. Структуры данных
    20. Как гуглить
    21. Время, UTC, таймзоны, синхронизация
    22. Итого
    23. Дополнительные материалы
  4. GNU/Linux
    1. Из чего сделаны облака
    2. Перемещения в пространстве (во времени будет дальше)
    3. Маски-шоу
    4. История команд и невероятные возможности
    5. Редактирование команд
    6. Философия Unix
    7. Стандартный поток вывода
    8. Стандартный поток вывода ошибок
    9. Стандартный поток ввода
    10. Каналы и конвейеры
    11. Чёрная дыра
    12. Тройничок — это хорошо
    13. Создаём и удаляем
    14. Чистота чисто Тайд
    15. Консольные текстовые редакторы nano, micro, helix
    16. Работаем только с нужными частями файла
    17. Следим за изменениями вывода команды
    18. Права суперпользователя
    19. Осваиваем перемещение во времени
    20. Псевдонимы
    21. "Помогити!"
    22. Переменные окружения HOME, USER, PWD
    23. Переменная окружения PATH, команда type
    24. Переменная окружения CDPATH
    25. Основные директории GNU/Linux и их назначение
    26. Жёсткие и символические ссылки
    27. Пользователи и группы
    28. Права доступа
    29. Битовая маска прав доступа
    30. Архивирование и разархивирование
    31. Поиск
    32. Терминальные мультиплексоры screen, tmux, zellij
    33. Процессы и утилиты top, htop
    34. Загрузка файлов из сети
    35. Оболочки bash, zsh, fish, nushell
    36. bat и другие современные аналоги
    37. make-файлы
    38. Итого
    39. Дополнительные материалы
  5. Как работает Интернет и веб — основы
    1. КОМП
    2. Компьютерные сети. Сетевые интерфейсы
    3. Ещё железяки — концентраторы и коммутаторы
    4. MAC-адреса, слежка АНБ и реклама
    5. Маршрутизаторы (роутеры), Internet
    6. Локальные и глобальные сети LAN & WAN
    7. Клиент-сервер
    8. Спецификации (протоколы), OSI-модель
    9. Сетевые протоколы TCP IP
    10. IP и порт
    11. NAT
    12. IPv4, IPv6, DNS
    13. Прокси-сервера и VPN
    14. DHCP
    15. Дополнительные материалы
  6. DNS
    1. DNS
    2. Доменные зоны
    3. Выбор и покупка домена rroom io
    4. Система DNS серверов
    5. DNS-записи
    6. Как посмотреть DNS записи любого домена
    7. NS-сервера и DNS-записи
    8. Файл hosts и доменное имя localhost
    9. Создание почты в своём домене hi(собака)rroom.io
  7. HTTP, HTTPs
    1. Что такое протокол HTTP
    2. Установка Telnet
    3. Ещё раз о TCP-портах
    4. Творим дичь — отправка HTTP-запроса вручную
    5. HTTP-методы
    6. Безопасность и идемпотентность веб-сервисов
    7. HTTP-статусы
    8. HTTP-заголовки
    9. Смотрим HTTP-данные в Chrome Developer Tools
    10. Из чего состоит URL
    11. Как данные передаются на сервер
    12. Методология REST
    13. HTTPs
    14. Дополнительные материалы
  8. HTTP2
    1. Как всё было — HTTP/0.0, HTTP/1.0, HTTP 1.1
    2. Проблемы HTTP/1.1
    3. Решения HTTP2
    4. Что будет дальше
  9. Сессии, cookies, безопасность
    1. Аутентификация и авторизация
    2. Хеш-функции
    3. Хранение паролей, механизм аутентификации
    4. Cookies — кто и как устанавливает и использует
    5. Работа Cookies, безопасность
    6. Подпись Cookies хешем
  10. Быстрое погружение во frontend
    1. Фронтенд и бэкенд Компонены фронта и бэка
    2. HTML, CSS
    3. Запуск веб-сервера, абсолютный и относительны
    4. Делаем свой Интернет
    5. HTML-формы
    6. Chrome developer tools
    7. Смочить лапки в JavaScript
    8. Хакаем игру с динозавром в Google Chrome
  11. Python для самых маленьких хардкорщиков
    1. Собстна, а почему Python?
    2. Изучение языка программирования
    3. Как пишутся программы
    4. Установка Python и настройка VS Code
    5. Снова о блокноте
    6. Практика
    7. Переменные
    8. Как работают переменные в Python
    9. Числовые типы данных
    10. Строки
    11. Булевы
    12. Преобразования типов
    13. Ветвление логики
    14. Списки
    15. Циклы
    16. Бесконечный цикл
    17. Кортежи
    18. Множества
    19. Словари
    20. Когда какую структуру использовать
    21. Работа с аргументами командной строки
    22. Функции
    23. Рекурсия
    24. Сортировка данных
    25. Области видимости переменных
    26. Нейминг, type hinting, комментарии
    27. Объекты
    28. Исключения
    29. Пакеты, модули
    30. Синтаксический сахар
    31. Работа с датами и временем, таймзоны
    32. Регулярные выражения
    33. Удобности стандартной библиотеки
    34. Запуск внешних утилит
    35. Виртуальные окружения — venv, pip, poetry, pdm
    36. Баги и работа с ними
    37. Критерии хорошей программы
    38. PEP8
  12. Python для подрастающих хардкорщиков
    1. Документация
    2. Процедурное и объектно-ориентированное программирование
    3. Позиционные и keyword аргументы
    4. Внутренние и анонимные функции
    5. Замыкания
    6. args и kwargs
    7. Генераторы (не дизельные)
    8. Декораторы
    9. Инкапсуляция
    10. Наследование
    11. Полиморфизм
    12. Protected и private атрибуты
    13. Конструктор и инициализатор
    14. Геттеры и сеттеры
    15. Property
    16. Кэширование результатов функции
    17. Методы — классов, объектов и статические
    18. Абстрактные классы и интерфейсы
    19. Агрегация и композиция
    20. Важные дандер-методы
    21. Когда использовать классы
    22. Датаклассы, attrs, pydantic
    23. == и is
    24. Кортежи-таки можно менять
    25. map, filter, reduce и pythonic-аналоги
    26. Ссылочные параметры функции
    27. Функции как объекты
    28. defaultdict
    29. Свои исключения
    30. Строки и байты, BOM
    31. Сериализация и десериализация данных
    32. pickle, json, xml, protobuf
    33. Подсказки типов
    34. Утиная и гусиная типизация
    35. Статическая структурная типизация
    36. Регулярные выражения
    37. Перегрузка операторов
    38. Контекстный менеджер
    39. Pattern matching
    40. Инструментарий — ruff, black и другие
    41. Анализ скорости выполнения
    42. Настройка логирования
    43. Профилирование
    44. Дебаг
    45. Рефакторинг и инструменты
  13. Pythonic код
    1. Zen of Python
    2. Используй распаковку кортежей
    3. Однострочники
    4. Используй enumerate
    5. Используй слайсы
    6. Хитрая сортировка
    7. dict.get vs KeyError
    8. Объединение словарей
    9. Знай и используй стандартную библиотеку
    10. Используй pathlib
    11. Используй моржовый оператор
    12. Возбуждай исключения
    13. Используй генераторы
    14. Используй itertools
    15. Не пренебрегай функциями перед классами
    16. Простые геттеры и сеттеры для джавистов
    17. Используй контекстные менеджеры
    18. Используй Decimal для точных вычисления
    19. Используй repr
    20. Создавай пакеты
  14. Алгоритмы и структуры данных
    1. Алгоритмы
    2. Сложность алгоритма
    3. О большое
    4. Сортировка пузырьком
    5. Быстрая сортировка
    6. Сортировка слиянием
    7. Сортировка методом Шелла
    8. Массивы и связанные списки
    9. Кортежи
    10. Словарь
    11. Множество
    12. Стек и очередь
    13. Линейный поиск
    14. Бинарный поиск
    15. Алгоритм Дейкстры
    16. Жадные алгоритмы
    17. Как мы на практике NP-полную задачу решали
    18. README
  15. Как писать хорошо, а нехорошо не писать
    1. Искусство или навык
    2. Нейминг
    3. Форматирование
    4. Комментарии
    5. DRY
    6. KISS
    7. YAGNI
    8. Как писать хорошие функции и методы
    9. Проектирование от функций
    10. Функции большие и малые
    11. Отмерять и отрезать
    12. Закон Деметры
    13. Принцип единой ответственности
    14. Принцип окрытости-закрытости
    15. Принцип подстановки Барбары Лисков
    16. Принцип разделения интерфейсов
    17. Принцип инверсии зависимостей
    18. Low Coupling, High Cohesion
    19. Принцип наименьшего удивления
    20. Абстракции
    21. Смешение уровней абстракции
    22. Валидации, проверки, исключения
    23. Оценка качества программы
    24. Рефакторинг
    25. Борьба со сложностью
    26. Термины бизнес-области
  16. Git
    1. Git — must-have инструмент любого разработчика
    2. Установка
    3. Инициализация Git-репозитория и что происходит под
    4. Первый коммит
    5. Список коммитов и информация о коммите
    6. Индекс и объектное хранилище Git
    7. Што такое, зачем так сложно, Линус, я недоволен
    8. Как добавить в репозиторий пустую директорию
    9. Как закоммитить сразу несколько файлов
    10. Как включать игнор
    11. Удобные сокращения git-команд
    12. Удобная история изменений проекта
    13. Создание новой ветки
    14. Сливаем ветки
    15. Красота и величие указателя HEAD
    16. GUI для работы с Git
    17. Merge-коммит и его особенности
    18. Конфликты слияния
    19. Изучаем разницу версий
    20. Откат изменений в рабочей директории или индексе
    21. Сброс проекта до старого коммита
    22. Подправить последний коммит
    23. rebase для предотвращения merge-коммитов
    24. rebase для объединения коммитов
    25. Клонируем удалённый репозиторий
    26. Создаём свой удалённый репозиторий
    27. Pull Request A.K.A. Merge Request
    28. Кто, когда и зачем добавил эту строку в проект
    29. Изменения истории веток, уже отправленных на сервер
    30. Тайные тайники Git
    31. cherry-pick и патчи (не корейские)
    32. Другие возможности Git
    33. Gitflow, GitHub Flow — организационный процесс работы с Git
    34. Правила комментирования коммитов
    35. pre-commit
    36. Markdown
    37. Итого
    38. Дополнительные материалы
  17. Контейнеризация — Docker, Podman и коллеги
    1. Что такое контейнеризация?
    2. Оркестратор, движок контейнеров, OCI рантайм
    3. Как работают контейнеры
    4. Образы контейнеров
    5. Docker vs Podman
    6. Запуск и остановка контейнера
    7. Вход в контейнер
    8. Работа с образами и контейнерами на локальном компьютере
    9. Dockerfile, Containerfile, сборка образа
    10. docker-compose, podman pods
    11. Volumes
    12. Сеть
    13. Вопросы безопасности контейнеров
    14. Пример контейнеризованного Python веб-приложения
    15. Деплой с контейнерами
    16. Дополнительные материалы
  18. Первая практика с FastAPI
    1. Постановка задачи
    2. Пишем HTTP сервачелло на голом Python
    3. О фреймворках и библиотеках
    4. Пишем Hello World на FastAPI
    5. Создаём HTML шаблон
    6. Создаём и стилизуем форму логина
    7. Принимаем данные формы на бэкенде
    8. Проверка логина и пароля из формы
    9. Сохраняем пользователя в Cookies
    10. Читаем Cookie запись
    11. Цифровая подпись Cookies
    12. Хеширование паролей
    13. JavaScript и AJAX
    14. SPA и JS фреймворки
    15. Варианты передачи данных в запросе
    16. Веб-сокеты
    17. Git
    18. Покупка и настройка домена
    19. Привязка домена к серверу
    20. Перенос приложения на сервер
    21. Настройка сертификата
  19. SQL и PostgreSQL
    1. О PostgreSQL
    2. Установка PostgreSQL в контейнере
    3. Установка PostgreSQL в Linux из пакетного менеджера
    4. Сборка PostgreSQL из исходников
    5. Установка PostgreSQL установщиком на маке
    6. Тулзяшечки — psql, pgcli, DBeaver, PyCharm
    7. ACID
    8. Термины — реальные и задротские
    9. Первичный ключ и внешний ключ
    10. Основные типы данных
    11. DDL, DML, DCL, TCL и прочий БДСМ
    12. Создаём пользователя
    13. Создаём БД, схему, таблицы, связи
    14. Комментарии в SQL и к таблицам-колонкам
    15. Вставка данных
    16. Простейшие выборки
    17. Обновление и всякое хитрое удаление данных
    18. Операторы и фильтрация выборки
    19. Сортировка выборки
    20. Ограничение количества возвращаемых данных
    21. Псевдонимы = алиасы = aliases
    22. LIKE, ILIKE
    23. Использование даты и времени
    24. CASE WHEN
    25. Выборка из нескольких таблиц — JOIN
    26. Coalesce и значения NULL
    27. Подсчет количества результата
    28. Группировка результатов выборки
    29. Фильтрация вкупе с группировкой
    30. Агрегатные функции
    31. Работа со строками
    32. Приведение типов
    33. Подзапросы
    34. UNION, EXCEPT, INTERSECT
    35. Вьюшки обычные и материализованные
    36. CTE
    37. Оконные функции
    38. Пример с оконными функциями
    39. Транзакции
    40. Read Committed изоляция транзакций
    41. Repeatable Read изоляция транзакций
    42. Serializable изоляция транзакций
    43. Массивы
    44. JSON и JSONB
    45. Индексы в PostgreSQL
    46. Индекс на уникальность
    47. Индекс по выражению
    48. Частичные индексы
    49. Виды индексов PostgreSQL
    50. Полнотекстовый поиск в PostgreSQL
    51. Нормализация и денормализация
    52. Репликация и шардинг
    53. Что использовать в качестве первичного ключа?
    54. Временные таблицы
    55. TRUNCATE
    56. Триггеры и правила
    57. EXPLAIN
    58. OLTP и OLAP
    59. PL/pgSQL
    60. Получаем размер базы данных
    61. Стратегии бэкапов
    62. Пулер запросов PgBouncer и Yandex Odyssey
    63. SQLite
    64. Дополнительные материалы
  20. Redis
    1. Зачем нам этот ваш ещё Redis?
    2. Установка Redis
    3. Что внутри
    4. Строки
    5. Хеши
    6. Списки
    7. Множества
    8. Отсортированные множества
    9. Транзакции
    10. Срок жизни ключей
    11. Pub-sub
    12. Streams
    13. Репликация
    14. Дополнительные материалы
  21. Асинхронный Python
    1. Как оно работает обычно
    2. Процессы, потоки, корутины
    3. GIL
    4. Чем поможет нам asyncio
    5. Concurrency is not parallelism
    6. Сопрограммы, они же корутины
    7. Шо за цикл событий такой умный?
    8. Почему мой код не выполняется быстрее с async-await?
    9. И как же мне ускорить выполнение кода c конкурентностью?
    10. asyncio.create_task
    11. Ожидание окончания выполнения задачи
    12. Когда использовать и когда не использовать асинхронность
    13. Способы запустить код асинхронно
    14. asyncio.gather
    15. asyncio.TaskGroup
    16. asyncio.as_completed
    17. asyncio.wait
    18. Надо ли обычные функции определять с async def?
    19. Асинхронно ходим в веб-сервисы
    20. Асинхронно ходим в СУБД
    21. Асинхронно ходим в файлы
    22. Трэш и содомия — пулы процессов
    23. Семафоры
    24. asyncio.to_thread
    25. Контекстные переменные
    26. throttle и debounce
    27. Как принудительно отдать управление в цикл событий
    28. uvloop и замена цикла событий
  22. Django и как его готовить
    1. Обзор фреймворка, преимущества и недостатки
    2. Установка, инициализация, структура
    3. Первое приложение
    4. Модели хранилища
    5. Подцепляем контейнеры
    6. Миграции
    7. Великий и ужасный Django ORM
    8. Какой SQL варганит Django ORM
    9. Оптимизация использования Django ORM
    10. Или ну его в пень и пишем голый SQL
    11. Шаблоны
    12. Админка
    13. Реализация CRUD влоб
    14. Формы
    15. Function Based и Class Based Views
    16. Django для SPA и для не SPA
    17. Аутентификация
    18. Авторизация
    19. Аутентификация через внешние сервисы
    20. CORS в Django
    21. CRUD с DRF
    22. Swagger с DRF
    23. Асинхронность в Django
    24. Фоновые задачи с Django
    25. Использование Django apps
    26. Архитектура Django-проектов
    27. Стайлгайд
    28. Two Scoops of Django
    29. Дополнительные материалы
  23. FastAPI, SQLAlchemy, Alembic
    1. Обзор фреймворка, преимущества и недостатки
    2. Асинхронность в FastAPI
    3. Запросы-ответы-валидация
    4. Выуживаем данные запроса
    5. Return Type
    6. Статусы ответов
    7. Swagger с FastAPI
    8. CORS в FastAPI
    9. Подцепляем контейнеры
    10. Асинхронный SQLAlchemy
    11. Миграции с Alembic
    12. CRUD c SQLAlchemy
    13. Фоновые задачи с FastAPI
    14. Вебсокеты и Server Side Events с FastAPI
    15. Архитектура FastAPI-проектов
  24. Автотесты
    1. Зачем нам автотесты
    2. Какие есть виды тестов
    3. Пирамида тестирования
    4. и при чём тут архитектура
    5. unittest, pytest, nose
    6. Структура теста
    7. Рекомендации по юнит-тестам
    8. Чем качественные юнит-тесты отличаются от некачественных
    9. Тесты в Django
    10. Тесты в FastAPI
    11. Мокать аль не мокать?
    12. Школы тестирования
    13. Test suite для проекта
    14. Интеграционное тестирование
    15. E2E тестирование
    16. База данных в тестах
    17. Тесты и приватные методы
    18. Время
    19. Изучаем Pytest
  25. Архитектура backend-приложений
    1. Что такое архитектура и зачем она нам
    2. Быстрее отгрузить vs Сделать хорошо
    3. Писать хорошо, а нехорошо не писать
    4. Что есть зависимость
    5. Любую зависимость можно инвертировать
    6. Устойчивость кода
    7. Отделяем мух от котлет
    8. Сущности
    9. Сервисы = сценарии использования
    10. Репозитории, инфраструктура
    11. Чистая, гексагональная, портов и адаптеров и прочие архитектуры
    12. Зависимости
    13. Сборка всего приложения
    14. Пример
  26. 12 факторов
    1. Один код — разные развёртывания
    2. Зависимости
    3. Конфигурация
    4. Сторонние сервисы
    5. Сборка, релиз, выполнение
    6. Процессы
    7. Port binding
    8. Параллелизм
    9. Утилизируемость
    10. Паритет разработки и работы приложения
    11. Логи
    12. Задачи администрирования
  27. HTML
    1. Версии HTML
    2. Структура документа
    3. Кодировка документа и текста
    4. Что за что отвечает
    5. Тэги
    6. Форматирование текста
    7. Ссылки
    8. Списки
    9. Entities, UTF8 символы
    10. Разные размеры изображений
    11. Растровая и векторная графика
    12. Фоновые изображения
    13. Пути
    14. Семантическая разметка, контейнеры
    15. Таблицы
    16. Формы
    17. Комментарии
    18. Favicon
    19. Фреймы
    20. Block и inline элементы
    21. Canvas
    22. Интеграция плееров
    23. Форматирование HTML-кода
    24. W3C-валидатор
  28. CSS или как всех достать, раскрасить и распихать
    1. Что может делать CSS
    2. Подключение стилей
    3. Макет страницы
    4. Что такое стиль
    5. Codepen
    6. Достать по тэгу
    7. Достать по классу
    8. Достать по идентификатору
    9. Достать по атрибуту
    10. Достать сразу нескольких
    11. Родственные отношения
    12. Достать потомков
    13. Достать детей
    14. Псевдоклассы, псевдоэлементы
    15. Достать родственничков
    16. Достать вот этих, но не тех
    17. Наследование
    18. Специфичность
    19. Хак с important
    20. Сброс стилей
    21. Шрифты и форматирование текста
    22. Цвета — RGB, RGBA, HSL, HSLA
    23. Размеры
    24. Списки
    25. Блочная модель
    26. Схлопывание полей
    27. Блочные и строчные элементы
    28. Границы и тени
    29. Установка размера блочного элемента
    30. box-sizing
    31. Overflow, ограничение max размеров
    32. float
    33. Изображения фоном
    34. Несколько фоновых изображений
    35. Список ссылок, ролловеры
    36. Трансформация без трансформатора
    37. Анимации
    38. Оформление таблиц
    39. Оформление форм
    40. Фикс, резина, адаптив
    41. Как верстать?
    42. Древняя верстка
    43. Современность — flexbox
    44. Позиционирование
    45. Как делается адаптив
    46. Контейнерные запросы
    47. Как узнать, какая тема на устройстве включена?
    48. Включен ли режим энергоэффективности?
    49. Как скрыть или показать элемент?
    50. calc
    51. min, max, clamp
    52. CSS-валидатор
    53. Can I use
    54. Минимизация CSS
    55. БЭМ
    56. Дополнительные материалы
  29. Мобильные приложения на фронтенд-технологиях
    1. Cordova
    2. Ionic
    3. PWA
  30. Деплой веб-приложения
    1. Сколько нам нужно железа
    2. Арендуем сервачелло
    3. Присобачиваем домен
    4. Прокидываем SSH-ключи
    5. Ставим необходимые пакеты
    6. Используем контейнеры на проде
    7. Ставим Python
    8. Ставим PostgreSQL
    9. Ставим пулер коннектов для PostgreSQL
    10. Разворачиваем чудо-приложеньку
    11. Настраиваем Systemd
    12. Настраиваем файрвол
    13. Настраиваем анти-DDoS в Nginx
    14. Статику раздаёт Nginx, S3 или CDN
    15. Выносим PostgreSQL на отдельный сервер
    16. Настраиваем бэкапы
    17. Настраиваем ротацию логов
    18. Клонируем application-серваки
    19. Как запустить это всё в контейнерах
    20. А теперь подвиньтесь, выходит Ansible
  31. JavaScript
    1. Где применяется JavaScript?
    2. Типы данных
    3. Управляющие конструкции, печать
    4. var, let, const
    5. Функции
    6. Стрелочные функции
    7. Объекты, методы, this
    8. null, undefined
    9. Глобальные браузерные переменные
    10. Структуры данных
    11. Деструктуризация, распространение
    12. Циклы
    13. Исключения
    14. Работа с датой и временем
    15. Форматирование строк
    16. Функциональное программирование в JS
    17. Модули
    18. Стиль кода
    19. Асинхронный JS
    20. Полифилы
    21. Работа с DOM-деревом на чистом JavaScript
    22. События в браузере
    23. MutationObserver
    24. Fetch и axios
    25. Cookies и LocalStorage
    26. node, deno
    27. Дополнительные материалы
  32. TypeScript
    1. Для чего нам TypeScript?
    2. Установка TypeScript
    3. Теперь везде ставить типы?
    4. Основные типы
    5. Типизация функций
    6. Интерфейсы и структурная типизация
    7. Any и запрет Any
    8. typeof
    9. Дженерики
    10. Типизация объектов
    11. Keyof
    12. Typeof
  33. React и SolidJS
    1. Зачем нам вообще фронтенд-фреймворки?
    2. Веб-компоненты
    3. React vs SolidJS
    4. Создаём React-приложение
    5. JSX и чем он хорош
    6. Нарезаем компоненты
    7. Props
    8. Условный рендеринг
    9. Передача данных компонентам вверх и вниз
    10. Стейт
    11. Понимание рендера
    12. Контекст
    13. Refs
    14. Жизненный цикл
    15. Хуки
    16. Управление стейтом приложения
    17. Как проблемы React решает Solid?
    18. Установка Solid
    19. JSX Solid
    20. Сигналы Solid
    21. Эффекты Solid
    22. Memos Solid
    23. Порталы, ууу
    24. Рендер-логика в Solid
    25. Жизненный цикл в Solid
    26. События с Solid
    27. Refs в Solid
    28. Стилизация
    29. Удобные хранилища Solid
    30. Асинхронность в Solid
    31. TypeScript в Solid
  34. Архитектура frontend-приложения
    1. Бэкендерское тут неприменимо?
    2. Разбираемся с FSD
    3. Продолжаем разбираться с FSD
    4. Микрофронтенды
    5. Практика
  35. Взлом и защита
    1. Обзор
    2. Злодейски угоняем аккаунт
    3. Защита
    4. Коварно строим подлянки юзерам
    5. Защита
    6. Негодяйски угоняем данные
    7. Защита
    8. Подлецки хакаем сервер
    9. Защита
    10. Коварно хихикая, фишим
    11. Защита
    12. Левой пяткой хакаем Django
    13. Защита
    14. Мощнецки дудосим
    15. Защита
    16. Обуваем всех подряд
    17. Защита
    18. Заметки по безопасности
  36. CI/CD
    1. Зачем нам оно
    2. Подходы к CI/CD
    3. Сине-зеленое развертывание
    4. Инструменты
    5. Демонстрация
  37. Облачные технологии
    1. Зачем оно нам?
    2. Платформы
    3. Сервера
    4. S3-хранилища
    5. CDN
    6. Управляемые СУБД
    7. Балансеры
    8. Serverless Containers
    9. Lambda
    10. Инфраструктура как код
    11. Terraform, Ansible
  38. Советы по работе в ИТ
    1. Резюме
    2. Собеседование
    3. Опыт работы
    4. Дизайн в проектах
    5. Как спрашивать помощи
    6. Самозванцы и Даннинг-Крюгер
    7. Тех долг
    8. Рефакторинг
    9. Изменяемость и неизменяемость
    10. Логирование
    11. Конфиги
    12. Знай и используй инструментарий
    13. Code review
    14. Локализуй проблему
    15. Задавай вопросы бизнесу
    16. Обучение
    17. Документация
    18. Баланс
    19. Модненький Agile
    20. Что всем от вас надо
    21. Касания с другими людьми
    22. Помогайте
    23. Обещания и профессиональная честность
    24. Мотивация vs Творчество vs Дисциплина
    25. Привычки
    26. Удалёнка
  39. Rroom
    1. О проекте Rroom, план работ
  40. Финальный проект
    1. Задание
  41. Что дальше
    1. Что дальше
https://privatelink.de/?https://course.to.digital/
 
Угорі