JavaRush /Курси /Claude Code SELF /Перший великий проєкт

Перший великий проєкт

Claude Code SELF
Рівень 10 , Лекція 0
Відкрита

Ранок у Тьоми починається на тому самому куражі, на якому вчора закінчився день. Учора агент сам дограв шахову партію до мату — Тьома встиг сходити по чай, повернувся, а на екрані вже стояв фінальний мат. Він і зараз, ще не до кінця розплющивши очі, ловить це нове відчуття: ШІ дограє без мене. Не «я тисну — ШІ робить», а «я пішов — ШІ доробив».

І, ніби за замовленням, угорі в чаті з Артем2036 лежить свіжа картинка. Караван — довгий, важко навантажений — сам іде по рейках через пустелю. Ні погонича, ні жодної людини поруч. Просто повільно, впевнено повзе по нитці рейок до горизонту. Ні рядка тексту, як завжди.

Тьома усміхається в екран.

— Красиво, старший. Просто про мене. Поставив на рейки — і спи спокійно, сам доїде.

Там немає ні погонича, ні живої душі поруч: караван сам їде — от це по-нашому. Тьома закриває чат і тягнеться до ноутбука — там сьогодні справи цікавіші за чужі каравани.

На ноутбуці в нього ціла вітрина перемог. Змійка з озвученням. Лендінг, який живе в інтернеті за справжньою адресою. 2048, Тетріс, учорашні шахи, які агент дограв сам, радар землетрусів із живими точками, крипто-тiкер, який сам тягне курс. Половина вже у відкритому доступі — будь-яку можна відкрити реальній людині й почути «вау». Місяць тому він би за таке пів життя віддав — а тепер це просто його звичайні вкладки.

Він клацає по одній, по іншій, ганяє змійку кілька секунд.

— Ну змійка. Ну кулі. Було ж уже.

Всередині не тьохкає. Усе добре, усе вміє — і саме тому не чіпляє. Ще одна акуратна іграшка нічого нового всередині не запалить.

І рука сама тягнеться до самого низу закладок — туди, де з першого дня лежить те відео, яке він давно не відкривав. Тьома тисне play, перемотує до потрібного кадру й ставить на паузу.

Дошка бажань із майбутнього. Яхта, машина, ряд нулів, обведений маркером. А збоку, трохи осторонь від глянцю, — кривуватий скрин: місто з кубиків, де ходять від першої особи, як у великій дорогій грі, тільки все блочне, з квадратів. Тоді Тьома з майбутнього ковзнув по ньому голосом мимохідь, не пояснюючи. А нинішньому Тьомі саме цей факт із першого дня засів скалкою.

Бо це його давня, ще дитяча мрія. Гібрид, який він сто разів збирав у голові й жодного разу — на екрані: відкритий світ як у GTA, але цілком із блоків, як у Minecraft. Ходиш від першої особи, ставиш, ламаєш, будуєш що хочеш. Рік тому він уже навіть перестав про це мріяти — зрозумів, що наодинці таке ніколи не потягне. А тут воно висить на дошці його ж майбутнього, ніби вже зібране.

— Ага, — каже він картинці. — «Це я, просто пізніше». Ну то, може, вже час?

Рік тому ці слова з відео прозвучали б як глузування: дивись, я-із-2026, до чого ти хотів дорости, а в тебе за плечима нуль. Зараз — інакше. За плечима вже не нуль. За плечима — галерея власних проєктів.

— Сьогодні, — каже він уголос порожній кімнаті. І закриває відео.

1. Антон віддає комерційний проєкт

Але дотягнутися до мрії одразу йому не дають. Його перехоплює Антон — і вперше не з ескізом і не з «по-швидкому», а зі справжнім комерційним проєктом. Клієнтська промокампанія, ретроаркадна: цілий launch-портал. Загальна вітрина, нарахування нагород, лідерборд, бонусна мінігра всередині, окремі партнерські зони, правила, призи. Не «зроби щось робоче й ок» — великий реальний репозиторій із проєктом, за яким стоїть клієнт.

— Тримай, — каже Антон і кидає посилання на репозиторій. — Клієнтський портал. Великий, складний, серйозний проєкт.

— А чого не Олегу? — Тьома коситься. — Це ж, здається, його профіль, серйозна робота.

— Хотів Олегу, — не сперечається Антон. — Досвідчений, акуратний. Тільки він це буде місяць доводити до ладу: десь коми, десь крапки. За якість, звісно, дякую — але клієнту треба не через місяць, клієнту треба через тиждень. Іноді ринок диктує свій темп, і тут уже не до вилизування.

Він киває на галерею Тьми на другому екрані.

— А ти робиш швидко й показуєш товар обличчям. Подивився, що ти назбирав, — і вирішив дати тобі. Тільки слухай сюди, — Антон трохи знижує голос. — Мені цей портал потрібен через тиждень. Кров із носа. Я поставив на карту свою репутацію перед клієнтом. Не підведи.

— Не підведу, Антоне Едуардовичу, — відповідає Тьома легко, не сумніваючись. Адже в нього тепер є ціла ШІ-команда — через тиждень усе буде.

Хотів Олегу — а віддав йому. Недарма він учора всьому офісу шахи показував. Значить, він уже не «хлопчик з іграшками», а професіонал, якому довіряють серйозний проєкт. Антон із цим «через тиждень» нічим не ризикує — та й репутація, поставлена на карту, теж. Тьома з ШІ все зробить у найкращому вигляді.

Щойно Антон відходить, підходить Олег. Бачить у Тьми на екрані репозиторій — той самий, який він прочив собі, — і сповільнюється.

— О. Мій проєкт, значить, віддали, — каже неголосно, ні до кого, але так, щоб Тьома почув. — Клієнтський портал — хлопцеві, який місяць тому змійку збирав.

І сухіше, уже майже собі:

— Місяць. Місяць — і вже до реального клієнта. Ну-ну.

У голосі на секунду — не злість, а щось утомлене. Але він одразу ховає це за звичною сухою усмішкою й іде далі.

Тьома навіть не спиняється на цьому «змійку місяць тому збирав». В інший день, може, і вкололо б. Тільки не сьогодні — на сьогодні в нас великі плани.

— Та годі тобі, — кидає він услід легко, майже весело. — І без твоєї старої школи вивезу. Тиждень — і готово, без ТЗ на пʼять сторінок і тестів на кожний чих. Часи змінюються.

Олег кілька секунд дивиться на нього — не зло, а радше як на людину, яка сама не розуміє, куди лізе, — і мовчки йде. А Тьома вже відкриває репозиторій порталу.

І першим же рухом розуміє: це не другий лендінг. Папок багато, файлів ще більше, шматки називаються незнайомими словами, щось посилається на щось, чого він поки не бачив. За обсягом — на порядок більше за все, що він чіпав. Очима весь проєкт одразу не охопити.

У звичайний день це б загальмувало. Але не зараз. Зараз масштаб не лякає — заводить. Раз учора агент сам дограв партію, поки я пив чай, — може, і цю махину так само поставити на автопілот? Не розбиратися руками в кожній папці, а один раз запустити й дати доробити самому.

2. Відкрив портал — занудьгував — потягнуло до своєї гри

Насамперед Тьома чесно сідає за портал. Раз довірили — треба хоча б зрозуміти, що всередині. Він відкриває папки одну за одною, читає назви, лізе у файли. Годину сидить. Шматки чіпляються одне за одне, половина слів незнайома, карта в голові не складається — тільки густішим стає туман.

Ще за годину він ловить себе на тому, що перечитує один і той самий файл утретє й не розуміє ні рядка. Голова пливе. Портал великий, чужий і нудний до позіхання, а дедлайн через тиждень не став ближчим ані на крок.

— Усе, — каже він собі. — Мозок закипів.

Треба змінити картинку, інакше він тут засне обличчям у клавіатуру. І тут же згадує ранкове — дошку бажань, кубічний світ. Ось воно, протиотрута. Не чужа нудота, а своя мрія, та сама, дитяча. Трохи підживитися дофаміном — і повернутися до порталу свіжим.

Піддавшись азарту, він кидається до Сашка. Сьогодні нахабніше, ніж зазвичай: за плечима галерея, Антон портал довірив, чого думати. Пише розмашисто, як відчуває:

Збери мені гру в стилі Minecraft: цілий світ, щоб можна було ходити, ставити й ламати блоки.

Але Сашко сьогодні вередує — видає не гру, а запитання — спокійно й прямо: незрозуміло, який саме світ. Великий чи маленький? Який ракурс — зверху, збоку чи від першої особи? Що означає «ходити» — бігати, стрибати, літати? Скільки типів блоків? Нескінченний світ чи замкнена коробка? Під «у стилі Minecraft» можна зібрати сто різних варіантів, і який із них потрібен Тьомі — з такого чату не витягнути.

Перша реакція — роздратування: та годі, Сашко, ми ж сто разів це проходили, чого тут не зрозуміти, кубики й кубики. Він уже готовий наполягти. Але осікається — із цією стіною він уже не раз зіштовхувався: без ТЗ результат — ХЗ. Раніше обпікався на дрібницях — лендінгах, змійках. А зараз на кону мрія всього життя, тут помилитися найприкріше. Тому й не лізе сперечатися. Закриває чат із Сашком і йде до Льоші. За постановкою.

Льоша не дає мрії лишитися красивою абстракцією і насамперед звужує її до суті — спокійно, по-діловому.

«Як Minecraft» — це не мета, це яма. Справжній Minecraft люди роками пиляють великими командами. Тобі не потрібен справжній. Тобі потрібен маленький браузерний світ із кубиків, який ти сьогодні ж збереш сам і покажеш людям. Вид від першої особи — ходиш так, ніби дивишся власними очима. Просте переміщення. Поставити блок, прибрати блок. І невелика коробка-світ, а не нескінченний всесвіт. Оце збирається за день і дає те саме кайфове відчуття.

— Ну хоч дерева? — за звичкою торгується Тьома. — І блоків десь із десять різних, і день-ніч, щоб змінювалися. Я ж хочу прямо як справжній.

Ось так і тонуть, — відповідає Льоша рівно. — Кожне «хоч ще це» окремо здається дрібницею. А разом вони тебе топлять, і до вечора в тебе не світ, а напівзібрана купа, яку соромно показати. Візьми ядро, яке точно дає «вау», — походити й поставити блок. Зроби сьогодні, помацай, виклади. Дерева й день-ніч додаси потім, коли основа стоятиме.

Тьома ловить думку й сам її доповнює — він у цій справі вже не салага:

— Тобто мені одразу не весь Minecraft потрібен, а один маленький шматок, по якому реально походити. Головне — щоб відчувалося тим самим, а не «технічно все одразу».

— Мислиш правильно. Менший масштаб — більше шансів, що сьогодні ж буде «вау», а не «майже готово».

Льоша накидає коротке чесне ТЗ на цей маленький світ. Не «дай Minecraft», а пʼять зрозумілих пунктів: вид від першої особи, переміщення, поставити блок, прибрати блок, невеликий замкнений світ. Із цим уже можна йти до Сашка.

Тьома забирає постановку — і відчуває, як відпустило. Голова, забита порталом, провітрилася. Мрія з розмитого «хочу як у кіно» перетворилася на пʼять рядків, які сьогодні ж стануть грою. Можна повертатися до порталу — але спершу він доведе ось це до кінця.

Коментарі
ЩОБ ПОДИВИТИСЯ ВСІ КОМЕНТАРІ АБО ЗАЛИШИТИ КОМЕНТАР,
ПЕРЕЙДІТЬ В ПОВНУ ВЕРСІЮ