Вы используете мобильную версию

перейти на Полную версию сайта

Новые складчины | страница 28

  1. [SystemAnalyst] Аналитик с нуля. Старт в профессии. Тариф Только послушать (Ольга Пономарева)

    17 май 2024
    [​IMG]

    Бизнес и системный аналитик – связующее звено между бизнесом и разработкой
    Его роль в команде очень важна: он выявляет потребности бизнеса и ставит задачи разработчикам
    Профессия аналитика — одна из востребованных на рынке IT (по данным hh.ru)

    Вам подойдёт этот курс, если:
    Хотите попасть в IT с нуля
    Разочаровались в текущей работе и хотите сменить деятельность
    Хотите освоить востребованную профессию с достойной оплатой
    Не хватает знаний в аналитике

    Программа
    Состав команды разработки
    Этапы разработки (Жизненный цикл ПО)
    Методы сбора требований
    Уровни требований
    User story
    Use case
    Блок-схема
    UML Use case diagram
    UML Sequence diagram
    BPMN
    Виды БД
    Связи, сущности атрибуты
    Нормализация
    SQL
    Проектирование + er-diagram
    Проектирование UI/UX
    Постановка на фронт/бек
    Итоговая документация
    Scrum/Kanban
    Постановка задач Jira
    Собеседование/Резюме
    Итоговая встреча

    Формат обучения
    1. Вся теория в видеолекциях, чтобы пересматривать в любое удобное время и сколько угодно
    Курс рассчитан на тех, кто с полного нуля хочет погрузиться в основные темы бизнес и системного анализа, а также тех, кто только начал свой путь в аналитике и понимает, что он "плавает" во многих вопросах.

    Автор: Ольга Пономарева. Старший системный аналитик в райффайзенбанке


  2. [Product University] No-code. От идеи до продукта без программиста

    17 май 2024
    [​IMG]

    Для кого это курс
    • Для стартапов
      Быстро и дешево собирайте минимально жизнеспособные продукты, не тратя месяцы и сотни тысяч рублей на поиск и зарплату программиста.
    • Для продуктовых менеджеров
      Качественнее, быстрее и дешевле проверяйте больше гипотез.
    • Для владельцев небольших бизнесов
      Автоматизируйте работу компании, чтобы нанимать меньше персонала и сократить количество человеческих ошибок.
    • Для фрилансеров
      Не изобретайте велосипеды, быстрее и качественнее выдавайте готовые решения заказчикам.
    Программа

    1 модуль: Введение в No-code. Как быстро и дешево запускать продукты. Что такое MVP?
    Почему не стоит «пилить продукт» по полгода.
    Как быстро и дешево оценить востребованность будущего продукта еще до его создания?
    Как быстро и дешево доносить ценность продукта (продавать его) с первого дня?
    Как тестировать гипотезы и делать выводы на основе метрик.
    2 модуль: Интернет-магазин без кода
    Каталог товаров и фильтры (внутри каталога довольно много неочевидных функциональностей, котормы мало кто пользуется, например, синхронизация товаров с МойСклад)
    Tilda CRM и внешние интеграции
    Подключаем платежные системы (Сложности тильды с отправкой данных до платежа и как его избежать. Это очень серьезная проблема, которую мало кто умеет решать)
    Подключение аналитики (тут отдельно про GA и про Google Tag Manager, как инструмент отправки событий в аналитику, так как только внутренний функционал у Tilda не решает все задачи стартапа)
    3 модуль: Возможности конструктора Тильда как конструктора простых ИТ продуктов

    Вводная лекция. Возможности Тильда
    Обзор конструктора Тильда — как он заменяет код.
    Возможности в части базы данных
    Преимущества
    Ограничения
    Что можно реализовать на Тильда.

    Личный кабинет в Тильда
    Возможности в настройке Л К Тильды.
    Ограничения.
    Настройка и тест — скринкаст.
    Сценарии использования.

    Базы данных в Тильда
    Tilda CRM
    СУБД Потоки
    СУБД Каталог товаров
    Скринкаст настройки.
    Упоминание про внешние БД.
    Выводы по возможностям и ограничениям.

    Интеграция Тильды с другими сервисами. Сценарии и возможности
    Кастомные сценарии
    Внешние БД. Гугл таблицы
    Емейл рассылки. Мейлчимп. Сравнение с транзакционными письмами.
    Телеграмм триггеры. Уведомления о заявках.
    Прием платежей. Яндекс касса / Cloud Payments. Эквайринга банка
    2. Сложные интеграции и кратко про возможности таких сценариев
    Внешняя интеграция через Вебхук и Интегромат
    Интеграции в Альбато
    3. Доп-ные фишки. Делаем А Б тест на Тильде без разработчика с помощью Google Optimize

    4 модуль: Полезные чат-боты без кода
    Делаем бота поддержки, который собирает лидов и записывает клиентов
    Делаем бота, который собирает новости и присылает их каждое утро нам в telegram
    5 модуль: Мобильное приложение без кода
    Прототип в Marvel
    Создание PWA в Glide
    Создание приложения для загрузки в сторы в Adalo
    6 модуль: Система расписаний без кода
    Основы API и интеграций. Изучаем Zapier, Integromat и Albato
    Автоматизируем регистрацию учеников и сдачу ДЗ с помощью Tilda, Integromat и Airtable
    Создаём дэшборды в Google Data Studio и Integromat

    5 реальных проектов, которые вы сделаете за 15 дней
    • Простой интернет-магазин на Tilda и Wordpress
    • Сервис платной email-рассылки с помощью Tilda + MailchimpТелеграм-бот, присылающий вам каждое утро подборку новостей, трендов и погоду
    • Мобильное приложение для учета личных задач и формирования привычек
    • Систему ведения расписания занятий для онлайн-школы, включая личный кабинет преподавателя и ученика

  3. [IBS] Java Advanced II. Высокопроизводительная Java (Павел Козлов)

    16 май 2024
    [​IMG]

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

    Цели
    • Познакомить слушателей с современными подходами к повышению производительности Java приложений.
    Целевая аудитория
    • Разработчики Java
    • Архитекторы Java
    Предварительная подготовка
    • Уверенное владение Java
    Модуль 1. Обзор тюнинга производительности (теория - 3 ч. + практика - 3 ч.)
    • Общие практики;
    • Стратегии тюнинга производительности;
    • Метрики производительности;
    • Как повысить производительность?
    • Инструменты для измерения производительности;
    • JMeter;
    • Нагрузочное тестирование с помощью JMeter;
    • Как повысить производительность с помощью архитектуры?
    • Повышение производительности с помощью архитектуры: потоки, очереди, микросервисы, облака;
    • Лучшие практики для улучшения производительности кода.
    Модуль 2. Алгоритмы GC (теория - 6 ч.)
    • Использование памяти Java-объектами;
    • Общие подходы и алгоритмы сборщиков мусора;
    • Сборщик мусора Serial GC;
    • Сборщик мусора Parallel GC;
    • Сборщик мусора CMS;
    • Сборщик мусора G1;
    • Сборщик мусора Shenandoah;
    • Тюнинг сборщиков мусора;
    • Инструменты сбора и анализа метрик о сборке мусора;
    • Выбор оптимального сборщика мусора.
    Модуль 3. JIT-компилятор HotSpot (практика - 3 ч. + теория - 2 ч.)
    • JIT компиляция;
    • Java байт-код;
    • Многослойная компиляция;
    • Кэш кода и его тюнинг;
    • Оптимизация кода;
    • Деоптимизация кода и когда она происходит;
    • Инструмент JITWatch для анализа результатов компиляции;
    • Виды оптимизаций;
    • Спекулятивные оптимизации;
    • Настройка компилятора;
    • AOT компиляция;
    • GraalVM.
    Модуль 4. Флаги JVM (теория - 3 ч.)
    • Назначение и категории флагов JVM;
    • Общие флаги;
    • Флаги, связанные со строками;
    • Флаги управления памятью;
    • Safepoints и флаги, связанные с ними;
    • TLAB и флаги, связанные с ними;
    • План тюнинга JVM.
    Модуль 5. Тестирование производительности алгоритмов (benchmarking) с помощью JMH (практика - 2 ч.)
    • Что такое benchmarking;
    • Знакомство с JMH;
    • API JMH;
    • Нетривиальные примеры;
    • Применение JMH на практике.
    • Домашняя работа (2 ч).
    Модуль 6. Использование памяти вне кучи (off-heap memory) и эффективные структуры данных (теория - 2 ч. + практика 2 ч.)
    • Что такое sun.misc.Unsafe;
    • Методы Unsafe;
    • Производительность нативной памяти;
    • Создание структур данных в нативной памяти;
    • Оценка производительности нативной памяти и сравнение с памятью в куче;
    • Примитивные коллекции;
    • Денормализация данных;
    • Перспективный Foreign Memory Access API.
    Модуль 7. Сериализация и сетевая структура (теория - 3 ч.)
    • Сериализаторы JSON (GSON, Jackson);
    • Двоичные сериализаторы (Protobuf, Jackson Smile, Kryo, FST, One NIO);
    • Сравнение производительности различных сериализаторов;
    • Производительность сети при подключении через различные протоколы: HTTP/REST, TCP, Async TCP, RSocket, Netty server/client.
    Модуль 8. Профилирование Java (теория - 3 ч. + практика - 2 ч.)
    • Когда и как делать профилирование?
    • Сэмплирующие и инструментирующие профайлеры;
    • Использование Java VisualVM для профилирования;
    • Профилирование с помощью Spring AOP;
    • Профилирование с помощью IDEA и async profiler;
    • Java Flight Recorder;
    • Анализ логов Java Flight Recorder с помощью Mission Conrol;
    • Создание и логгирование кастомных событий JFR ;
    • Использование Java агентов для внедрения в код и записи любых событий в Java Flight Recorder;
    • Написание программ для автоматического анализа логов JFR;
    • Сбор и анализ SQL запросов с помощью JFR;
    • Сбор и анализ REST запросов с помощью JFR;
    • Средства управления производительностью приложений;
    • Использование Glowroot для профилирования и анализа SQL-запросов и REST-запросов.
    Модуль 9. Мониторинг и анализ данных кучи. Утечки памяти (теория - 3 ч.)
    • Инструменты для анализа динамической памяти;
    • Признаки утечек памяти;
    • Основные причины утечек памяти;
    • Поиск и обнаружение утечек памяти;
    • Слабые и фантомные ссылки;
    • Инструменты IDEA для анализа дампов кучи;
    • Асинхронный профайлер для анализа потребления памяти;
    • Использование числа генераций профайлера VisualVM для обнаружения утечек памяти;
    • Использование MissionControl/JFR для автоматического анализа утечек памяти;
    • Анализатор памяти Eclipse – анализ знаменателей и кучи.
    Модуль 10. Кэширование в приложениях Java (теория - 3 ч.)
    • Шаблоны кеширования;
    • Кеширование HTTP запросов;
    • Конфигурация библиотек кеширования;
    • Популярные библиотеки кэширования: EhCache, Caffeine;
    • Кеширование сервисного уровня;
    • Кеширование Spring сервисов;
    • Буферизация ввода/вывода;
    • Кэш процессора и непрерывная область памяти;
    • Кэширование JPA/Hibernate;
    • Приложения, использующие кэши разных уровней.

  4. [IBS] Java Advanced I. Функциональное, асинхронное и реактивное программирование (Игорь Судакевич)

    16 май 2024
    [​IMG]

    Курс посвящен современным функциональным и реактивным подходам к разработке на Java, повышающем производительность бекэнда, и включает изучение неблокирующего ввода-вывода NIO2, асинхронных промисов CompletableFuture, библиотек реактивного программирования RxJava и Reactor, интерфейса асинхронного доступа к БД R2DBC, потоковый протокол SSE, реактивные репозитории Spring Data reactive, WebClient, протоколы WebSocket и RSocket, а также практические примеры применения.

    Цели
    • Познакомить слушателей с современными асинхронным и реактивным программированием.
    • Дать примеры применения.
    Целевая аудитория
    • Разработчики Java
    • Архитекторы Java
    Предварительная подготовка
    • Уверенное владение Java, желательно знание Spring
    Модуль 1. Функциональная Java (теория - 2 ч. + практика 1 ч.) ч)
    • Функциональные интерфейсы
    • Ссылки на метод
    • Потоки данных
    • Map / filter / reduce
    • Агрегационные функции
    • Reduce при параллельной и последовательной обработке
    • Цепочки потребителей
    • Потоковые коллекторы
    Модуль 2. Executor framework. Fork-Join pool (теория - 3 ч.)
    • Использование Executors
    • Future интерфейс
    • Использование интерфейса Callable
    • Отмена задач
    • ForkJoin Framework
    • Создание пула задач ForkJoin
    • Параллельные потоки в Java 8+
    • ForkJoin vs. параллельные потоки vs. последовательные потоки
    Модуль 3. Неблокирующий ввод-вывод NIO (теория - 3 ч. + практика - 2 ч.)
    • Основные различия между Java NIO и IO
    • Потоково-ориентированный или буферно-ориентированный
    • Блокирующий против неблокирующего ввода-вывода
    • Java NIO Buffer
    • Java NIO Channel
    • Direct буфер
    • Mapped file буфер
    • Java NIO Selector
    • Асинхронный ввод / вывод с NIO
    • Блокировка файла
    • Cервер NIO
    • Архитектура сервера Netty
    Модуль 4. Асинхронная Java (Completable Future) (теория - 3 ч. + практика - 2 ч.)
    • Проблемы синхронного кода
    • NodeJS архитектура
    • Параллельная обработка потока данных
    • CompletableFuture: sync и async методы
    • Объединение (combine), составление (composing) и быстрейший побеждает (quicker wins)
    • Обработка исключений в CompletableFuture
    • Отмена CompletableFuture
    • Использование CompletableFuture для реального потока данных
    Домашняя работа. Практика (2 часа).

    Модуль 5. Реактивное программирование (теория - 8 ч.)
    • Что такое реактивность?
    • Основы RxJava: наблюдатель и наблюдаемый (Observable и Observer)
    • Реактивные потоки в Java 9 (Java Reactive Streams)
    • Методы для побочных эффектов (side effects)
    • Обработка ошибок
    • Горячие и холодные потоки (hot/cold)
    • Разделяемые и подключаемые потоки (shared/connectable)
    • Освобождение потоков (disposing)
    • Реактивные операторы (полный каталог)
    • Subjects
    • Распараллеливание потоков (Schedulers)
    • Противодавление (backpressure) и интерфейс Flowable
    • Тестирование реактивных потоков
    Модуль 6. Проект Reactor (теория - 4 ч.)
    • Операторы Flux / Mono в Reactor
    • Работа с backpressure в Reactor
    • Reactor и многопоточность (Reactor Schedulers)
    • Parallel Flux потоки
    • Оборачивание синхронных вызовов
    • Тестирование Reactor
    • Процессоры (Reactor processors)
    Модуль 7. Spring WebFlux и практическое реактивное программирование (теория - 6 ч. + практика - 2 ч.)
    • Реактивный доступ к БД
    • Реактивные драйверы R2DBC
    • Spring Data - реактивные репозитории
    • Поддержка страниц (paging) в Spring Data reactive
    • WebFlux: функциональные контроллеры
    • Spring REST контроллеры, возвращающие реактивные данные (Mono / Flux)
    • Spring REST контроллеры, возвращающие SSE (server-sent event)
    • WebClient: получение реактивных данных с сервера
    • SSE и протоколы WebSocket
    • Использование WebSocket для передачи / получения данных JSON
    • Использование WebSocket для передачи / извлечения двоичных данных
    • Протокол RSocket
    • Контроллер RSocket на стороне сервера
    • RSocket клиент: обмен JSON и двоичными данными
    • RSocket с балансировкой нагрузки
    • RSocket с взвешенной балансировкой нагрузки
    • Использование реактивных потоков с брокером сообщений (RabbitMQ)
    • Spring Data MongoDB реактивные репозитории
    • Бенчмарки: R2DBC против JDBC и WebFlux против Web MVC
    • Архитектура и шаблоны реактивного программирования
    Домашняя работа. Практика (2 часа).

  5. [CyberYozh] Андроид-Паноптикум. Тариф Архитектор

    16 май 2024
    [​IMG]


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

    Принципы Паноптикума:
    • Централизованное наблюдение. Вы станете центральным наблюдателем всех процессов и уязвимостей вашего смартфона, построив архитектуру контроля безопасности.
    • Анонимность наблюдателя. Вы будете невидимы для корпораций, хакеров и служб. Ваш смартфон не будет знать о вас ничего, а значит не сможет передать личные данные.
    • Полная изоляция наблюдаемых. Каждый сервис, который может угрожать вашей анонимности, будет изолирован от других, чтобы остановить взаимодействие между приложениями.
    Этот курс для вас, если вы:
    Хотите шифровать интернет-активность. Настройте максимальный уровень защиты ваших данных и трафика от контроля со стороны провайдера /оператора / правоохранительных органов.
    Вынуждены защищаться от взлома. Изучите все возможные уязвимости вашего Android-смартфона. Речь пойдёт не только об удаленных атаках на устройство, но про контрфорензике (физическом взломе).
    Хотите превратить смартфон в антидетект. Научитесь подменять идентификаторы вашего смартфона. Это не просто изменение на браузерном уровне, вы научитесь изменять отпечатки сети, ОС и железа девайса.
    Не готовы продавать себя корпорациям. Ваши интересы, контактные данные, фотографии и даже ваш любимый жанр порнографии перепродаётся до 50 раз в день рекламным сетям и маркетплейсам.
    Храните криптовалюту на смартфоне. Обезопасьте хранение криптовалюты на вашем смартфоне. Вы создадите настоящий сейф, и доступ к деньгам будет только у вас и доверенных лиц.
    Работаете с кастомными прошивками. Мы поможем найти оптимальный выбор прошивки под ваши задачи и научим с ней работать. Это важно, если вы не хотите привратить своё устройство в «кирпич».

    Программа Курса

    Длительность обучения: 6 месяцев Количество уроков: 72
    Доступы и идентификаторы
    Модуль 1:Прошивки и получение Root 12 занятий
    Модуль 2:Продвинутое сокрытие метрик и обход антифрод-систем 7 занятий
    Безопасность и анонимность
    Модуль 3:Защита от утечек данных устройства 21 занятиe
    Модуль 4:Контрфорензика и безопасность коммуникаций 8 занятий
    Модуль 5:Автоматизация защиты от атак 8 занятий
    Дополнительно
    Модуль 6:Приложения и сервисы 12 занятий
    Бонус:Нейросети для Android 21 занятиe

    Тариф "Архитектор"
    Прошивки и получение Root
    Настройка Антидетекта
    Защита от утечек
    Контрфорензика
    Защита от атак
    Приложения и сервисы
    Нейросети для Android

  6. [Thinknetica] Kubernetes для Rails-разработчиков. Тариф Слушатель (Темур Фактулин)

    14 май 2024
    [​IMG]


    Воркшоп для Rails-разработчиков, которые хотят начать использовать Kubernetes для улучшения процессов CI/CD и управления своими приложениями.

    Темы которые будут рассмотрены:
    Основы Kubernetes для начинающих
    • Применение Kubernetes для управления и оркестрации контейнеризированных приложений.
    • Освоение основных компонентов и абстракций, таких как pods, services, deployments и jobs.
    Автоматизация развертывания и управления
    • Настройка и использование GitLab CI/CD для автоматизации процессов развертывания в Kubernetes.
    • Разбор процесса развертывания приложений через Helm и GitLab, упрощение этого процесса с помощью Helm charts.
    Масштабирование и управление ресурсами
    • Освоение методов масштабирования приложений в Kubernetes, включая автоматическое и ручное масштабирование.
    • Настройка запросов и лимитов ресурсов для подов, управление доступными ресурсами для обеспечения оптимальной производительности и стабильности.
    Управление приложениями и сервисами
    • Настройка различных типов сервисов в Kubernetes, таких как ClusterIP, NodePort и LoadBalancer, для обеспечения доступа к приложениям.
    • Применение стратегий обновления приложений, таких как Rolling Updates, для минимизации простоев.

    Работа с фоновыми задачами:
    • Интеграция и управление фоновыми процессами с использованием Sidekiq в Kubernetes.
    • Автоматизация задач по обслуживанию приложений, например, миграций баз данных.
    Управление миграциями баз данных и автоматическое развертывание в разных окружениях
    • инструменты и практики для бесперебойного выполнения миграций в процессе деплоя.
    • применение k8s для стандартизации развертывания приложений в различных окружениях
    • управление конфигурациями и зависимостями

  7. [infostart] Транзакции и работа с ними (Павел Макаров)

    14 май 2024
    [​IMG]

    Курс-практикум "Транзакции и работа с ними" - это часть базовых знаний необходимых при разработке в нагруженных или крупных системах. На курсе по транзакциям подробно разбираются ошибки, приводящие к потере данных. При работе с нагруженными системами (от 500 пользователей, 1 Тб) эти знания становятся необходимыми. Они позволят не терять данные из-за неожиданных моментов/ошибок и обеспечить параллельную работу кода.

    Объем курса: теория 1-2 часа, практика до 2 часов.

    Программа курса

    Теория:
    Ключевые вопросы:
    - зачем нужна
    - свойства транзакций
    - что такое транзакция
    - зачем нужна транзакция
    - где выполняется транзакция и что сохраняет
    - вложенные транзакции
    - проблемы открытой транзакции + правила обработки транзакций

    Практика:
    Ключевые вопросы:
    - свойства транзакций
    - время жизни транзакции: клиент серверный вызов, вложенный серверный вызов
    - восстановимые и не восстановимые ошибки
    - пример изолированности транзакции
    - пример согласованности транзакции
    - откат изменений в транзакции: изменение в памяти
    - вложенные транзакции: откат, откат с фиксацией
    - явные и не явные транзакции
    - проблемы при проверке активности транзакций
    - правила корректной обработки транзакций

  8. [GetAnalyst] Карьера и собеседования

    13 май 2024
    [​IMG]
    • Встреча с HR - процесс найма, оформление резюме и подготовка к собеседованию
    • Собеседование для СА
    • Системный аналитик: вклад в IT проекты
    • 5 лайфхаков для создания цепляющего резюме
    • Объектно-ориентированное программирование
    • Команда разработки в США и место аналитика в ней
    • Собеседование на системного аналитика
    • Навыки аналитика: с чего начать и как расти
    • 8 вебинаров


    Ответов: 0
  9. Хардкорная веб-разработка (Алексей Голобурдин)

    12 май 2024
    [​IMG]

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

    Чтобы быть эффективным веб-разработчиком — неважно, 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. Что дальше

  10. [Stepik] Разработка веб-приложений на Go (Илья Шаляпин)

    11 май 2024
    [​IMG]

    Описание
    Курс затрагивает самые востребованные темы, для того чтобы начать писать REST API.

    Программа курса:

    Введение
    Роутинг
    Инструменты
    JSON
    Валидация данных
    Обработка форм
    Middleware
    Шаблоны
    Базы данных
    Тестирование

  11. [Product University] Python и ИИ-технологии с нуля за 4 месяца. 12 проектов с помощью ChatGPT

    10 май 2024
    [​IMG]
    Почему сейчас?
    Программировать теперь гораздо проще, чем раньше. ChatGPT и другие ИИ-инструменты совершили переворот. Они позволяют вам писать и переписывать целые куски кода, готовые SQL-запросы и приложения и помогать обучаться с небывалой скоростью.

    Теперь, все что вам нужно: умение сформулировать задачу на русском/английском языке и время/желание. Вот почему в основу этого курса легли 2 следующих подхода:
    1. Использовать ChatGPT и других ассистентов по-максимуму, для того чтобы они вам помогали писать и исправлять готовые куски кода.

    2. Отталкиваться от готовых работающих бизнес-приложений и примеров. Вы не будете писать с нуля строчку за строчкой, скорее наоборот: будете брать готовые проекты и библиотеки и видоизменять их для себя.

    12 проектов, которые вы сделаете за 4 месяца
    С нуля на Python, с подсказками от ChatGPT, без каких-либо начальных знаний программирования


    1. Telegram-бот на Python с GPT (аналог ChatGPT)

    2. Парсинг сайтов и каналов

    3. Поиск недооцененных квартир на ЦИАН

    4. Автономные агенты

    5. Построение полного процесса получения и обработки данных с реального онлайн-ресурса

    6. Построение системы распознавания рукописных чисел на чистом NumPy с помощью модели k ближайших соседей

    7. Whisper. Преобразование текста в аудио и транскрибация

    8. Анализ цен на криптовалюты с помощью Pandas и Matplotlib

    9. Обучение нейросети на табличных данных для задачи классификации

    10. Сегментация изображений ковида

    11. Выделение именованных сущностей для автоматизации документооборота

    12. Построение рекомендательной системы на основе нейросетей

    Для кого курс?
    Аналитики данных и бизнес-аналитики
    Знание этих инструментов и технологий может помочь вам эффективнее анализировать и обрабатывать данные, создавать отчеты и прогнозы, а также использовать машинное обучение для решения задач.

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

    Маркетологи
    Особенно для тех, кто работает с большими объемами данных, знание Python и SQL может помочь в анализе и оптимизации маркетинговых кампаний, а также в автоматизации рутинных задач.

    Продакт менеджеры
    Знание технологий поможет вам лучше понимать возможности и ограничения инструментов и платформ, используемых для разработки и поддержки продуктов.

    Начинающие специалисты в области ИИ и машинного обучения
    Курс даст вам основы, необходимые для дальнейшего изучения и развития в этой сфере.

    Финансовые аналитики и экономисты
    Вы сможете использовать Python и SQL для анализа финансовых данных, создания прогнозов и оптимизации финансовых моделей.

  12. [mo-ti] Курс по изучению HTML+CSS для применения в Tilda

    8 май 2024
    [​IMG]


    Научитесь стилизовать стандартные блоки, создавать свои эффекты и разбираться в коде

    Программа курса
    1. Суть HTML, его особенности, назначение и функционал.
    2. Разбор структуры web страницы
    3. Изучение текстовых тегов, особенности заголовочных секций H, различные атрибуты. Структура текстовых ссылок, способы создания якорей и различных списков из текста
    4. Как формируется изображение. Отличие обычного изображения от фонового. атрибуты изображений и их ссылки
    5. Изучение вёрстки таблиц, их формирования, настройки и особых нюансов с данным элементом
    6. Постигаем основы данных элементов, учимся задавать параметры и формировать ссылки. Разбираемся в атрибутах и характеристиках каждого из них
    7. Разбираемся со структурой форм и типов её полей. Особенности формирования и способы применения в реальных проектах
    8. Суть появления CSS, смысл применения, ключевые возможности и особенности
    9. Учимся находить и обращаться к нужному элементу правильно и легко
    10. Изучаем возможности этого мощного инструмента разработчика. Учимся инспектировать код и вносить правки прямо на опубликованной странице
    11. Оформляем текст разными стилями, задаём особые параметры для изменения его внешнего вида
    12. Разбираем различные границы у блоков, способы их создания и формирования, погружаемся в мир эффектов теней блока
    13. Разбираемся с возможностями фона у элементов, множеством его свойств и исключительных особенностей. Способы применения в реальных проектах
    14. Постигаем различные события для взаимодействия с пользователем. Способы создания дополнительных элементов и манипуляции с ними
    15. Учимся задавать сложные градиенты любого элементу и разбираться в комбинации фильтров визуальной стилистики, их применения и особенности на реальной страничке
    16. Да, их куда больше, чем просто пиксели и проценты. Освоим и остальные особенные величины и способы их применения в реальной работе
    17. Рассмотрим, что такое медиазапросы и как их применять. Как делать шаговое изменение определённых свойств элемента
    18. Изучим мир анимации, способы её создания и применения к различным элементам. Особенности и нюансы при работе с каждым свойством
    19. Разберёмся в свойствах шрифта, в тех свойствах, что мы можем изменить, научимся переопределять шрифт различным элементам и даже подключать его на страничку при помощи CSS
    20. Погрузимся в мир построения структурных сеток, изменения текущих и перераспределения элементов на странице, изменения их порядка, положения, размеров и расположения. Изучим этот гибкий инструмент
    21. Live T-CSS — это сборник пополняющихся видео с ответами на вопросы пользователей, которые решаются на CSS. Там можно будет найти много полезного и интересного, пробовать повторить реализацию и лучше понимать, что можно сделать, благодаря полученным знаниям

  13. [Нетология] Разработчик на C++. Профессия + специализация (Дмитрий Фёдоров, Максим Бакиров)

    8 май 2024
    [​IMG]

    Преподаватели:
    Дмитрий Фёдоров, Максим Бакиров, Михаил Смирнов, Павел Пронин, Владислав Хорев, Амиран Мстоян, Михаил Марков, Иван Поляков, Антон Ласточкин, Владислав Панченко, Евгений Белоусов, Вадим Калашников
    С++ входит в топ-3 языков программирования, позволяет создавать сложные IT-продукты с высокой производительностью и нагрузкой.
    Изучив этот язык, вы сможете работать над самыми амбициозными проектами: от разработки видеоигр и операционных систем до создания роботов и умных гаджетов.
    Мы поможем разобраться в С++, даже если вы никогда не программировали

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

    Чему научитесь:
    1. Понимать паттерны проектирования своего и чужого кода
      Получите шаблоны проектирования и научитесь их применять
    2. Разрабатывать ПО с применением популярных фреймворков
      Создадите графический интерфейс и научитесь писать сетевые приложения с использованием библиотеки QT
    3. Работать с базами данных
      Освоите SQL и научитесь извлекать, преобразовывать, загружать данные
    4. Работать с алгоритмами и структурами данных
      Освоите навыки выстраивания алгоритмов, а главное — научитесь мыслить как программист
    5. Работать с современными игровыми движками
      Создадите и настроите проект на базе фреймворка Unreal Engine 5
    6. Создавать многопоточные программы и обходить блокировки
      Сможете распараллеливать вычисления и определять время исполнения кода
    Вы создадите 8 масштабных проектов для портфолио
    1. Игра «Жизнь»
      Реализуете консольный вариант классической игры. На клеточном поле проведёте эволюцию поколений и визуализируете результаты
    2. Симулятор гонок
      Разработаете гибкий и расширяемый прототип симулятора гонок. Сможете легко добавить новый тип транспортного средства или трассы
    3. Парсер INI-файлов
      Разберётесь в формате INI-файлов и создадите свой класс, который сможет считывать такие файлы и разбирать их в удобные структуры языка
    4. Потокобезопасная очередь
      Реализуете шаблонную очередь, которая гарантирует безопасную работу с данными при одновременном взаимодействии из нескольких потоков программы
    5. Инспектор аэропортов
      Создадите приложение, которое позволяет просматривать расписание авиарейсов и оценивать загруженность аэропортов
    6. Датчик движения
      Спроектируете и разработаете датчик движения, который будет выполнять полезную работу при срабатывании
    7. 3D-видеоигра
      Познакомитесь с созданием игр на Blueprints и C++. Напишете свою первую игру на Unreal Engine 5
    8. Поисковая система для сайта
      Разработаете аналог поисковой строки Google, Яндекс или Yahoo и научитесь получать данные с сайтов, строить поисковые индексы и релевантные выдачи результатов
    17 месяцев, 94 часа теории, 522 часа практики
    • Основы программирования на C++ (Проект: игра «Жизнь»)
    • Система контроля версий Git
    • Базовое программирование на C++ (Проект: симулятор гонок)
    • Алгоритмы и структуры данных
    • Продвинутое программирование на C++ (Проект: парсер INI-файлов)
    • Работа с базами данных
    • Многопоточное и асинхронное программирование (Проект: потокобезопасная очередь)
    • Шаблоны проектирования в C++
    • Кроссплатформенная разработка на Qt (Проект: приложение «Инспектор аэропортов»)
    • Разработка умных гаджетов (IoT) (Проект: датчик движения для умного дома)
    • Разработка видеоигр на Unreal Engine 5 (Проект: 3D-видеоигра «LeaveMeAlone»)
    Дополнительные модули
    • Английский язык для начинающих разработчиков
    • Введение в информационные технологии
    • Карьера разработчика на С++
    Дипломный проект - кейс для вашего портфолио (48 часов практики)
    Вы разработаете поисковую систему для сайта — аналог поисковой строки Google, Яндекс или Yahoo. Научитесь получать данные с сайтов, строить поисковые индексы и релевантные выдачи поисковых результатов. Так вы закрепите навыки, которые приобрели на курсе.
    [​IMG]

  14. [Skypro] Excel для работы с нуля (Марк Сысоев, Данила Елистратов)

    6 май 2024
    [​IMG]
    Получите навык работы с таблицами, ускорьте свою работу и зарабатывайте на фриланс-проектах.
    Кому будет полезен курс?
    • Молодым специалистам. Научитесь работать с большим массивом данных, быстро анализировать и визуализировать
    • Менеджерам и аналитикам. Узнаете о новых функциях Excel, научитесь строить понятные интерактивные отчеты, сможете решать сложные задачи
    • Руководителям компаний. Сможете самостоятельно анализировать данные и на этой основе принимать более точные эффективные решения для бизнеса
    Чему вы научитесь?
    • Работать с продуктовыми и бизнес-метриками, рассчитывать комплексные метрики
    • Объединять данные из разных выгрузок, делать отчеты для любых целей, строить графики и видеть тренды
    • Собирать, обрабатывать и анализировать данные в Excel
    • Понимать бизнес-задачи и переводить их в план действий
    • Настраивать фильтры, работать с формулами
    • Продумывать многоступенчатые решения для анализа
    • Извлекать инсайты для бизнеса, находить закономерности и делать прогнозы
    Формат: Видеоуроки (Внимание! Видеоуроки без дополнительных материалов и проверки домашних работ).
    1. Введение в Excel
    Основы Excel
    Обработка данных в Excel
    Агрегация данных в Excel
    2. Экономика
    Базовая экономика
    Когортный анализ
    Переход к юниту
    3. Юнит-экономика
    Основы юнит-экономики
    Работа с нестандартными данными
    Визуализация в Excel
    Калькулятор юнит-экономики
    4. Google Sheets
    Переход из Excel в Google Sheets
    Дашборд в Google Sheets
    5. Логика
    Необходимые и достаточные условия
    Логические операторы
    Применение логики в бизнесе
    6. Основы бизнеса
    Бизнес-гипотезы
    Бизнес-метрики
    Коммуникации в командах
    Приоритизация и сторителлинг
    7. Основы теории вероятностей
    Основы теории вероятностей
    Условная вероятность
    Комбинаторика
    8. Статистика
    Введение в статистику
    Дискретные распределения
    Непрерывные распределения
    Параметрические гипотезы
    Авторы курса:
    Марк Сысоев
    - руководитель направления аналитики в «Яндекс.Практикуме», бывший руководитель направления аналитики в Skyeng.
    Данила Елистратов - руководитель факультета аналитики в Skypro. Работал аналитиком в Home Credit Bank, Nielsen и «Ситимобиле».
  15. [АИС] ClickHouse для дата инженеров

    5 май 2024
    [​IMG]
    Программа ориентирована на получение навыков в настройке и эксплуатации системы БД ClickHouse, использовании возможностей столбцовой системы управления базами данных, а также для быстрой и легкой обработки больших данных.

    Целевая аудитория
    Дата инженеры, разработчики, архитекторы БД, аналитики данных, Data Scientist специалисты

    Программа курса / модули
    • Введение.
    • Область применения ClickHouse, отличие от других СУБД.
    • Ограничения столбцовой системы.
    • Отличительные возможности ClickHouse.
    • Начало работы с ClickHouse.
    • Запуск и подключение.
    • Системные требования.
    • Объекты баз данных.
    • Интерфейсы доступа к ClickHouse.
    • Клиентские библиотеки.
    • Десктоп версия.
    • Полезные практики в работе с ClickHouse.
    • Анализ и оптимизация запросов. Оптимизация структуры таблиц.
    • Итоговая аттестация.
    Продолжительность: 24 ак.часа
    Ответов: 0
Наверх