Сьогодні ти зробиш просту сторінку й покладеш її на сервер. На останньому уроці та сама сторінка стане лендингом, який ти показуватимеш журі на Demo Day. Це не 14 окремих завдань, а один файл, який добудовується з уроку в урок.
На уроці ти навчишся
Минулого уроку ти отримав акаунт, чотири теки й адресу, за якою відкривається твій index.html. Адреса працює. Але людина, яка про твій проєкт нічого не чула, закриє вкладку за десять секунд: там немає жодного речення про те, що це і для кого.
На уроці ти навчишся
У версії 0.1 твого брифа стоять три твердження: аудиторія велика, конкуренти дорогі, люди готові платити. Жодне з них поки не можна ні підтвердити, ні спростувати — це речення, а не виміри.
На уроці ти навчишся
З чистої таблиці ти дістаєш два числа: скільки грошей лишається з одного продажу і скільки продажів треба зробити, щоб вийти в нуль. Рахуєш це формулами юніт-економіки, а витрати на сервер із уроку 1 стають рядком fixed_costs. Обидва числа й діаграму ти публікуєш сторінкою analytics.html.
На уроці ти навчишся
Кольори, шрифти й знак твого продукту стають файлами, а не картинками в графічному редакторі. Ти перевіряєш контраст тексту за формулою WCAG, доводиш його щонайменше до 4,5:1 і записуєш рішення у CSS-змінні в блоці :root. На виході — brand.css і assets/logo.svg, які працюють на всіх сторінках аж до Demo Day.
На уроці ти навчишся
Бриф, market.csv, analytics.html і brand.css збираються в одну розповідь на три хвилини. Ти розкладаєш її на вісім блоків і робиш дві форми одного змісту: документ pitch.html зі змістом і посиланнями та слайди deck.html з однією думкою на екран. Наприкінці додаєш OG-теги й картку og.png, щоб посилання в чужому чаті відкривалося з картинкою, а не голим рядком адреси.
На уроці ти навчишся
За шість уроків ти ухвалив десятки рішень, і частина з них уже забулася. Сьогодні ти заводиш базу знань продукту: спершу як робочу базу в Notion, потім експортуєш її у теку ~/www/kb/ з вісьмома файлами .md. Кожна нотатка містить одну думку, одне джерело й front-matter із датою, тегами і статусом.
На уроці ти навчишся
Вісім окремих нотаток звʼязуються одна з одною. Ти розставляєш щонайменше 12 посилань [[назва]], доводиш кількість битих лінків до нуля, пишеш карту змісту kb/index.md і генеруєш із файлів .md звичайні HTML-сторінки. Після цього база знань відкривається за адресою https://studyua.91.219.61.4.nip.io/s/<логін>/kb/ у будь-кого, кому ти даси посилання.
На уроці ти навчишся
Ідеї перетворюються на список задач із виконавцями й датами. Ти набираєш щонайменше 25 карток без критики, групуєш їх за схожістю, розкладаєш у матрицю «цінність × зусилля» і позначаєш за MoSCoW, що робиш обовʼязково, а що не робиш зовсім. Підсумок — файл tasks.json, який наступного уроку прочитає сторінка roadmap.html.
На уроці ти навчишся
Список задач стає процесом. Ти ставиш собі WIP-ліміт — число задач, які дозволено тримати в роботі одночасно, пишеш Definition of Done по пунктах і ділиш задачі на три горизонти: зараз, далі й колись. Сторінка roadmap.html малює дошку в три колонки, не маючи в коді жодної назви задачі: усе вона читає з tasks.json.
На уроці ти навчишся
Сайт уперше починає приймати дані, а не тільки показувати їх. Ти складаєш анкету з 5–7 питань, верстаєш форму feedback.html, пишеш на сервері обробник ~/bin/form-handler і кладеш відповіді у файл ~/data/responses.csv поза вебкоренем. Далі перевіряєш командою curl, що цей файл справді не завантажується з інтернету.
На уроці ти навчишся
Між приватним CSV і публічною сторінкою стає автоматичний ланцюг. Скрипт bin/report.sh читає responses.csv, рахує кількість відгуків, середню оцінку й розподіл, підставляє числа в заготовку bin/report.tpl.html і кладе готовий report.html у ~/www/. Запускає скрипт cron за розкладом, тож сторінка оновлюється без тебе — і в публічний звіт не потрапляє жодного імені чи коментаря.
На уроці ти навчишся
Файли, зроблені за дванадцять уроків, уперше стають однією сторінкою. Ти добудовуєш index.html до семи секцій на спільному brand.css і ставиш у нього числа, які сторінка сама забирає з market.csv, tasks.json і звіту, а не вписані руками. Паралельно розбираєш вісім ролей у команді продукту й пишеш team.html, чесно позначивши ті ролі, які виконував сам.
На уроці ти навчишся
Нового сьогодні нічого не будуємо. Ти проганяєш перевірки check11 1…7 разом і лагодиш те, що зламали правки останніх тижнів, перевіряєш сторінку на екрані завширшки 360 px і виступаєш із трихвилинним пітчем плюс дві хвилини питань. Друга половина оцінки — два письмові відгуки чужим командам.
На уроці ти навчишся
/s/твій-логін/ · вхід на сервер: ssh твій-логін@91.219.61.4 · зміна пароля: passwd