Перейти до вмісту

Ви увійшли як

Вхід у Curious Dev Learn

Увійдіть, щоб перевіряти лаби, зберігати прогрес і отримати сертифікат. Уроки відкриті й без акаунта.

Політика конфіденційності

Ця політика пояснює, які персональні дані зберігає Curious Dev Learn (learn.vladtimchenko.dev), навіщо і де, а також що ви можете з ними зробити. Вона відповідає Загальному регламенту ЄС про захист даних (GDPR) і Закону України «Про захист персональних даних».

Curious Dev Learn є безкоштовним некомерційним проєктом, яким керує Vlad Timchenko, приватна особа. Саме він визначає, як використовуються ваші дані, тобто є володільцем персональних даних.

Email для будь-яких питань щодо ваших даних: learn@vladtimchenko.dev.

Для читання акаунт не потрібен

Section titled “Для читання акаунт не потрібен”

Усі уроки можна читати без входу. Поки ви читаєте, сайт зберігає кілька налаштувань у вашому браузері (див. «Сховище браузера» нижче) і не надсилає нам нічого, що вас ідентифікує, окрім технічних даних, які несе кожен вебзапит (див. «Серверні логи»).

Що ми зберігаємо після входу

Section titled “Що ми зберігаємо після входу”

Запис входу. Ви входите через Google або GitHub. Ми отримуємо і зберігаємо провайдера, вашу адресу email, ім’я та адресу фото профілю. Пароль ми ніколи не бачимо і не зберігаємо.

Ваш профіль. Відображуване ім’я, username, ім’я для сертифіката й аватар, які ви задаєте, мова, чи ввімкнено публічний профіль, ваш student id, під’єднані способи входу, ваш логін та id у GitHub (лише якщо ви під’єднали GitHub), дата реєстрації й останнього відвідування.

Ваш прогрес. Які уроки ви відкривали, які лаби пройдено чи ще ні, які версії лабових ключів відкрито.

Запуски лаб. Для кожного запуску: URL і посилання на репозиторії, які ви ввели, результат кожної перевірки та те, що перевірка прочитала з підписаного Google токена ідентичності вашого сервісу (сервіс Cloud Run і його ревізія, сервісний акаунт, id і номер проєкту Google Cloud). Id і номер проєкту прив’язують цей проєкт Google Cloud до вашого акаунта, щоб ніхто інший не проходив лаби з ним. Запуски видаляються автоматично через 365 днів після старту.

Ваші сертифікати. Ім’я на сертифікаті, курс, дати й те, які запуски лаб пройшли.

Скарги й модерація. Скарги, які ви надсилаєте на публічний профіль чи сертифікат (причина й необов’язковий коментар), і рішення модерації щодо ваших імен, аватара або скарг на ваші сторінки. Людина, на яку ви поскаржилися, ніколи не дізнається, хто це зробив. Кожна дія адміністратора записується в журнал аудиту, який видаляється через 2 роки.

Ліміти. Час ваших нещодавніх запусків лаб, запитів на сертифікат, завантажень аватара й скарг, щоб застосовувати ліміти. Старі записи видаляються, коли з’являються нові.

Статистика. Щоденні лічильники (реєстрації за провайдером і мовою, запуски лаб, проходження, сертифікати). Це загальні числа без персональних даних.

Навіщо ми їх використовуємо (правова підстава)

Section titled “Навіщо ми їх використовуємо (правова підстава)”
  • Щоб надавати сервіс, на який ви зареєструвалися (договір): акаунт, курси, перевірки лаб, прогрес і сертифікати.
  • Щоб захищати платформу від зловживань (законний інтерес): модерація імен і аватарів, скарги, ліміти, захист від ботів, серверні логи й журнал аудиту адміністраторів.

Ми не продаємо ваші дані, не показуємо рекламу і не складаємо маркетингових профілів.

Імена, які ви задаєте (відображуване ім’я, username, ім’я для сертифіката), перевіряє Google Cloud Natural Language, а завантажені аватари Google Cloud Vision SafeSearch. Явно шкідливе ім’я чи зображення відхиляється автоматично; сумнівні випадки переглядає людина. У період запуску людина переглядає кожне ім’я для сертифіката. Якщо вважаєте відмову помилковою, напишіть на learn@vladtimchenko.dev, і її перегляне людина.

Хто обробляє ваші дані на наше доручення

Section titled “Хто обробляє ваші дані на наше доручення”

Google (Google Cloud і Firebase). Уся платформа працює на інфраструктурі Google:

  • Firebase Hosting віддає вебсайт.
  • Firebase Authentication з Identity Platform відповідає за вхід.
  • Cloud Run виконує наш API і перевірку лаб.
  • Firestore зберігає описані вище дані.
  • Cloud Storage зберігає аватари.
  • Cloud Tasks і Eventarc виконують фонові завдання (запуски лаб, обробку аватарів, видалення акаунтів).
  • Cloud Logging зберігає серверні логи.
  • Cloud Vision (SafeSearch) і Cloud Natural Language перевіряють аватари й імена.
  • App Check з reCAPTCHA Enterprise перевіряє, що запити до нашого API надходять зі справжнього браузера на нашому сайті. Він завантажується лише тоді, коли ви входите або вже ввійшли, і Google може зберегти cookie для цієї перевірки безпеки.

GitHub. Якщо ви входите через GitHub, GitHub підтверджує, хто ви. Якщо лаба просить репозиторій, перевірка читає цей публічний репозиторій (коміти й файли) через GitHub API. Якщо ви обираєте аватар із GitHub, браузери завантажують його з GitHub.

LinkedIn, лише якщо ви натискаєте «Додати в LinkedIn» на сертифікаті: браузер відкриває LinkedIn із назвою сертифіката, датою, id і посиланням.

Firestore, Cloud Run, Cloud Storage, Cloud Tasks і Eventarc працюють у регіоні Google Cloud europe-west1 (Бельгія, ЄС). Firebase Hosting доставляє сторінки через глобальну мережу Google. Дані Firebase Authentication зберігаються й обробляються згідно з умовами Firebase від Google. Коли Google чи GitHub обробляють дані за межами ЄС, діють їхні умови обробки даних.

Наші сервери записують технічні дані про запити (час, запитана адреса, статус відповіді, тип браузера та IP-адреса) для безпеки й виправлення помилок. Логи, пов’язані з вашим акаунтом, містять хеш ідентифікатора користувача, а не ваш email чи ім’я. Логи видаляються через 30 днів.

Сховище браузера, без cookies для відстеження

Section titled “Сховище браузера, без cookies для відстеження”

Ми не використовуємо cookies для відстеження чи реклами і не підключаємо аналітику. Якщо це колись зміниться, ми спершу попросимо вашої згоди. Сайт зберігає у сховищі вашого браузера такі записи, і вони не залишають ваш пристрій, якщо не сказано інше:

  • Вибрану тему (cd.theme).
  • До входу: уроки, які ви відкривали (cd.reading.v1). Після входу вони додаються до вашого прогресу і зникають із браузера.
  • Позначку, що в цьому браузері є сесія (cd.auth.v1, cd.auth.redirect), і які уроки вже записано сьогодні (cd.recorded.v1).
  • Останні URL, які ви вводили у формах лаб (cd.lab.inputs.v1), щоб не вводити їх знову.
  • Вашу сесію входу, яку Firebase Authentication зберігає в IndexedDB або локальному сховищі.

Нічого не стає публічним без вашого вибору:

  • Публічний профіль вимкнено за замовчуванням. Коли ви його вмикаєте, кожен, хто має посилання на /u/ваш-username, бачить ваше відображуване ім’я, username, аватар, дату реєстрації, чинні сертифікати й кількість пройдених лаб у кожному курсі. Ніколи ваш email, student id, id проєктів чи запуски лаб. Сторінки профілів просять пошукові системи не індексувати їх.
  • Сертифікати. Коли ви отримуєте сертифікат, його сторінка показує ім’я на сертифікаті, курс, дату, id сертифіката й пройдені лаби кожному, хто має посилання. Перед видачею ми показуємо, як саме виглядатиме ваше ім’я.
  • Аватари. Схвалений аватар зберігається як публічно доступне зображення, щоб сайт міг його показувати.

Скільки ми зберігаємо дані

Section titled “Скільки ми зберігаємо дані”
  • Дані акаунта: доки ви не видалите акаунт.
  • Запуски лаб: 365 днів від старту запуску.
  • Завантажені, але не оброблені зображення: 1 день.
  • Серверні логи: 30 днів.
  • Журнал аудиту адміністраторів: 2 роки.
  • Резервні копії бази даних (відновлення на момент часу): до 7 днів.

Будь-коли ви можете:

  • Експортувати дані. Налаштування, «Ваші дані», «Завантажити мої дані»: файл JSON з усім, що ми про вас зберігаємо (профіль, прогрес, запуски лаб, сертифікати, прив’язки проєктів, надіслані скарги, записи модерації).
  • Виправити дані. Змінюйте імена й аватар у налаштуваннях. Ім’я для сертифіката блокується після видачі сертифіката; щоб його виправити, напишіть нам.
  • Видалити акаунт. Налаштування, «Ваші дані», «Видалити мій акаунт». Ми видаляємо запис входу, профіль, прогрес, запуски лаб, прив’язки проєктів, файли аватара, публічний профіль і надіслані вами скарги. Ваші сертифікати відкликаються, а ім’я з них стирається; їхні сторінки повідомляють, що сертифікат більше не доступний. Записи журналу аудиту зберігають лише внутрішній id користувача, а серверні логи зникають через 30 днів.
  • Заперечити проти обробки, обмежити її або поставити інше питання щодо своїх даних: пишіть на learn@vladtimchenko.dev. Ми відповідаємо протягом місяця.
  • Поскаржитися до наглядового органу: в Україні до Уповноваженого Верховної Ради України з прав людини; в ЄС до органу із захисту даних вашої країни.

Щоб створити акаунт, вам має бути щонайменше 16 років.

Коли ця політика змінюється, ми оновлюємо її на цій сторінці й змінюємо дату набрання чинності вгорі. Про важливі зміни ми також повідомимо користувачів, які ввійшли, на сайті.