Tutorial Hell: чому важко писати код з нуля і як подолати ступор перед пустим файлом

💡 Усі статті, обговорення, новини для початківців — в одному місці. Приєднуйтесь до Junior спільноти!

Усім привіт! Хочу підняти тему, яка знайома багатьом на старті в IT — Tutorial Hell.

Коли робиш завдання з курсів чи відео, все здається зрозумілим і логічним. Але варто відкрити порожній файл і спробувати зробити щось своє — настає ступор. Здається, що знаєш синтаксис, але не розумієш, як зібрати все в робочий код.

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

А ви стикалися з цим? Як долали Tutorial Hell і починали робити власні проєкти?
👍ПодобаєтьсяСподобалось0
До обраногоВ обраному0
LinkedIn
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

Декомпозиция, модульность.
не вижу особоіх проблем

Мені «допомагали» жорсткі терміни виконання задачі — настільки жорсткі, щоб не було часу боятись почати, щоб підстьогував страх не встигнути.
І починайте з головного — не з супутніх штук, як то boilerplate code, розпихування файлів по папочкам і т.п. — це прокрастинація. Робіть одразу головне.

у мене навпаки — вже скільки років не можу перейти від практики до теорії)))

Мені свого часу дуже допомогло вирішення задач на різних платформах (CheckIO, codewars, codingame, etc.), особливо формат — вирішення на швидкість паралельно з іншими користувачами. Воно ще потім дуже сильно допомагало у проходженні live coding етапів співбесід. Бо коли вирішуєш на швидкість по 10-20 задач щодня, то мозок вже так привчається швидко читати умову задачі і генерувати код у відповідь, що це вже майже на рівні автоматизму. На деякі задачі вдавалося витрачати менше, ніж 60 секунд (!!!), і в ці секунди входило все — і прочитати умову задачі, і придумати рішення, і накодити його, і відправити — щоб воно пройшло всі автотести для перевірки коректності (автотести були розроблені авторами задач, хоча б це не доводилося писати самому).

І після такого веселого досвіду, коли тобі дають на live coding задачу і 45 хвилин на неї, а ти розумієш, що тобі вистачить і 5 хвилин, то найскладніше — це грамотно розприділити час, щоб не показати себе ні занадто повільним кандидатом, ні занадто швидким, бо нажаль для багатьох інтерв’юерів overperformer кандидат також виглядає як red flag, так само як і underperformer. Але причина цього криється в особливостях людської психіки, а не в об’єктивній оцінці технічних навичок, нажаль.

Не знаю... Мені інколи вистачало просто сказати як це робиться, без коду. На співбесідах мені ніколи не задавали нічого з такого, що ти не знав би як робити.

Я навпаки, часто задавав гробік, потім давав підказки, бо мені важливо було зрозуміти, чи будуть до мене прислуховуватися, комунікація, тощо.

60 секунд це не задача як на мене, бо треба ще набрати код... Що в принципі означає, що рішення це менше ніж 60 символів, 3-4 рядка, ... таке..

Це більш загальне питання як почати, ще Спольскі писав про потік. Тому для мене це питання як війти у потік, коли ти завантажуєш усі необхідне в контекст, і тоді починаєш рухатися як локомотив. Тут мене рятує LLM, бо в принципі можна просто попросити його написати код, чи висловитись з чого почати. Звісно, що в більшості випадків ти отримуєш щось ідіотичне, але ти починаєш доводити помилки, і через який контекст завантажено і проблема зупинитися: 22 година, треба завершувати, але давай це зробимо ще... 24 година... 4 година...

як казав класик: писати, так само як і пісяти, треба коли вже не можеш... )

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

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

Тому, ймовірно, справа не лише у страху чистого аркуша, а й у тому, чи вчили людину мислити задачею та планом, а не просто повторювати код з уроків.

Пам’ятаю своє вивчення програмування в училищє («Оператор ЕОМ») ще в кінці бандитських 90-х — спочатку у тетрадці блок-схеми, алгоритми, потім вже пишеш туди ж построково Паскаль, і лише в фіналі — сідаєш з тєтрадочкой за комп і вводиш все.

Гадаючи — «запуститься чи нє?». )))

Я досі практикую програмування на папері, особливо коли на компʼютері не вдається.

Але варто відкрити порожній файл і спробувати зробити щось своє — настає ступор.

Ви мабуть жартуєте?! Берете порожній файл і детально пишете що саме вам треба зробити. Після цього викликаєте ШІ — і він не тільки усе напише на якій потрібно мові, я ще й розтлумачить вам кожен рядок.

Тобто проблема не в тому, що ти не вмієш писати код, а в страху чистого аркуша і складнощах із тим, щоб зліпити окремі знання в одну купу.

Одна проблема так і залишилася: це нерозуміння що треба зробити або невміння сформулювати завдання. «Garbage In, Garbage Out» (GIGO) .

«Which way you ought to go from here?» said the Cat. «That depends a good deal on where you want to get to,» said the Cat. «I don’t much care where,» said Alice. «Then it doesn’t matter which way you go,» said the Cat.

Я зараз так «зфакапився» з ШІ...

Коли радісно такий готовий був викласти свої перші «навайбкоджені» плагіни для роботи з ШІ ж «наГітХаб», у портфолію вложити — але вирішив ретельно по коду пройтись, щоб соромно дуже потім не було — а там ТАКЕЕЕ... О____О

Коротше, тепер повний рефакторінг роблю.

І розбираю кожну-кожну для чіткого розуміння дії строку.

ШІ без доброго плану, знання архітектури і ретельного оформлення завдання пише дуже хаотично. «Спагєтті-код» аж прьот!

Зате навички «Джуна» з таким «помічником» зростають швидко трошки до «Міддла». )

особенно тяжело выходит когда сам не особо понимаешь или в предметной области, или в языке — тогда тяжело понять, в какой момент ИИ начинает галюцинировать
без контроля — там полается полный ужас, дублирование кода, классов, черти что, спагетти
ТАКЕЕЕ — отличное, но неполное описание :)

Ага. 100%!

Проблема в том, что код Пайтон, что я делал с ИИ (навайбкодил набор различных утилит и даже один клиент для Телеграм), я понимал более-менее вполне.

Не идеально — но хоть как-то мог сразу в процессе за чистотою кода проследить.

А ЯваСкрипт для плагинов — нет. И вот в плагинах получился полный бред. )))

Ну, так обучение программиста «в боевых условиях», по факту, и происходит. ;)

Особенно прикольно звучат потом оправдания ИИ — когда с архитектурой уже нормальной подошёл.

«Ты же хотел получить быстрый MVP, вот я и думал, что...»... )))

Вообще, оправдания ИИ, почему он глючит — и как он извиняется при этом — отдельная шикарнейшая тема!

Підписатись на коментарі