Академія ITSTEP - повноцінна IT-освіта для дорослих і дітей. Ми навчаємо з 1999 року. Авторські методики, викладачі-практики, 100% практичних занять.

Кам'янське
ШАГ логотип

Новачки думають, що написати код складно. IT-журналіст розповів, чому це помилкова думка

ITSTEP Academy

Програмування

08.09.2022

19354 перегляда

Клайв Томпсон — технічний письменник, журналіст у The New York Times та Wired, автор книг «Coders» та «Smarter Than You Think». На думку колег, Клайв — найвідоміший автор публікацій про програмування та технології.

У статті «Programming Isn't Hard - But It's Frustrating» журналіст поділився особистою історією: як Клайв розчарувався у програмуванні та зрозумів причину. Головне — перетворювати невдачу на позитивний досвід.

Публікуємо авторський переклад статті Клайва.

Як я дійшов висновку: проблема розробника – розпач та невдачі

«Терпіть розчарування — тільки так ви навчитеся кодингу»

Моє дитинство пройшло у 70-х. Я часто грав у Mattel Auto Race – приставку для однієї гри. У ній ви керуєте машиною (це точка на екрані, розміром з палець) і намагаєтесь не врізатися в інші автомобілі.

Приставка Mattel Auto Race. Справа — екран з машиною, а зліва — важелі керування. Під екраном — кнопка руху авто в сторони.

Через 50 років я згадав про цю гру. У суботу ввечері вирішив зробити версію гонки на P5 – фреймворку на Javascript.

У мене виходило: витратив годину на ігрове поле, проїжджаючих автомобілів та логіку руху. Проект здався легким, тому вирішив ускладнити. За задумом, автомобілі мали з'являтися не за алгоритмом, а будь-коли.

Виникла перша проблема — я не міг керувати новим алгоритмом. Машини не з'являлися як потрібно. Повозився з кількома варіантами і нічого не зрозумів. Я розчарувався та закинув проект.

Минуло 2 дні. Я не згадую про проект, бо сумніваюсь. Я не маю навичок професійного кодера — я любитель з основами програмування в рюкзаку. Якщо я досяг межі можливостей — не знаю, що вигадати далі і як виправити проблему. Іноді думаю, що знову зіткнувся із завданням, у якому немає рішення.

Я уникаю складних проектів, щоби не розчаруватися. А всім відповідаю: «Програмувати не важко. Важче – не розчаруватися після невдачі».

Чому програмування – це щоденне розчарування

Я усвідомив це після статті «What Does Saying That 'Programming Is Hard' Really Say, and About Whom?» Бретта Беккера зі школи комп'ютерних наук Дубліна. У публікації Бретт ставить під сумнів: «програмування — це складно».

Ви могли чути від викладачів, зі статей чи від знайомих розробників, що навчання програмуванню — неймовірно складне заняття. В статті Беккер не знайшов доказів, що кодити складніше, ніж працювати медсестрі, адвокату чи шеф-кухарю.

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

Коли писав книгу «Coders», я опитав 200 програмістів. Часто люди повторювалися: навчитися програмувати не складно. Успіх залежить від уважності до деталей.

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

Чому ми розчаровуємось у кодингу

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

Розглянемо на прикладах:

  • Написали функцію – вона не працює.

  • Забули поставити кому в рядок коду або помилилися в змінних — код не працює.

  • Функція підтягує дані із сторонньої бібліотеки. А ви не розумієте, де помилилися.

  • Команда писала код кілька років. Проект закрили, а потім передали вам. Робіть із програмою все, що хочете. Але вона має працювати.

Ось що я написав у «Coders» щодо розчарування:

«У липні 1949-го вчений Моріс Вілкс піднімався сходами, коли зрозумів: «Я витратив більшу частину життя, щоб знайти помилки у власних програмах».

Розробник не пише код щодня. Він слідкує, як працює система. Хапається за голову від помилок і намагається виправити ситуацію. І вирішити проблему виходить не в кожному випадку.

Від чого розробник може стати божевільним

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

Коли запитують: «Чи можу я навчитися програмувати?» — я відповідаю: «Звичайно. Кожен зможе, поки ви змагаєтесь з розчаруванням».

Програмування – не єдине заняття із розчаруваннями. Робота з людьми у маркетингу, медицині чи готельному бізнесі засмучує. Люди суперечливі, не люблять говорити і не завжди привітні.

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

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

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

Люди програмують у 18 років або після 30. З процесором на 2 ядра або на 10. Самостійно або з готовою навчальною програмою.

У Комп'ютерній Академії IT STEP Київ студенти не мають часу на розчарування. Кожну проблему потрібно перетворювати на вирішення. Учні знаходять помилки разом із викладачами. І так поповнюють портфоліо завданнями рівня Amazon, Cisco або криптовалютної біржі Binance з перших тижнів навчання.

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

Спробуйте! Перейдіть за посиланням, щоб дізнатися про навчальні програми ITSTEP більше.

Хтось думає, хтось так і не наважується. Ви ж робите перший крок. Ви попереду 9 із 10 новачків, які залишаються зі своїми думками та не рухаються далі.



Автор:

Редакція Академії ITSTEP

Освіта для дітей

Кібербезпека — це не «стати хакером»: чим насправді займаються спеціалісти

Коли підліток говорить, що його цікавить кібербезпека, у голові легко з’являється знайомий образ: темна кімната, чорна худі, десятки рядків коду й людина, яка «ламає сайти».

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

ШАГ логотип

Освіта для дітей

Дитина знімає відео, робить аватарки й постійно щось редагує: це теж може бути IT

Коли батьки чують «IT-навчання», першою асоціацією часто стає програмування. Якщо дитина не проявляє інтересу до коду, здається, що технологічний напрям їй просто не підходить.

Коли батьки чують «IT-навчання», першою асоціацією часто стає програмування. Якщо дитина не проявляє інтересу до коду, здається, що технологічний напрям їй просто не підходить. Але сучасний цифровий світ значно ширший. Монтаж відео, графічний дизайн, створення персонажів, 3D, вебдизайн, блогінг і робота з AI — усе це теж навички роботи з цифровими технологіями. Тому дитина, яка годинами налаштовує аватар, монтує ролик або вигадує дизайн власного каналу, можливо, вже показує інтерес до IT. Просто не в тій формі, яку дорослі звикли називати «комп

ШАГ логотип

Освіта для дітей

Школа, домашка і гуртки: як додати дитині IT і не перевантажити її

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

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

ШАГ логотип

Освіта для дітей

ШІ пише код за 10 секунд: чи є сенс підлітку вчитися програмувати у 2026 році?

Ще кілька років тому, щоб створити навіть просту програму, потрібно було самостійно написати код, знайти помилки й розібратися, чому щось не працює. Сьогодні достатньо описати задачу ChatGPT або іншому AI-інструменту — і за кілька секунд можна отримати готовий фрагмент коду, структуру сайту чи навіть невеликий застосунок.

Ще кілька років тому, щоб створити навіть просту програму, потрібно було самостійно написати код, знайти помилки й розібратися, чому щось не працює. Сьогодні достатньо описати задачу ChatGPT або іншому AI-інструменту — і за кілька секунд можна отримати готовий фрагмент коду, структуру сайту чи навіть невеликий застосунок. Тому у батьків і підлітків виникає закономірне питання: навіщо витрачати кілька років на вивчення програмування, якщо штучний інтелект уже може писати код замість людини? Можливо, краще просто навчитися правильно формулюва

ШАГ логотип

Цей сайт використовує Cookies

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