Чому так важко вчитися програмувати?


Дізнайтесь більше про нові кар'єрні можливості в EchoUA. Цікаві проекти, ринкова оплата, гарний колектив. Надсилайте резюме та приєднуйтеся до нас.

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

 

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

Вивчаючи різні мови, фреймворки, технології одну за однією, легко забути, наскільки страхітливо виглядає програмування для людини, з ним не знайомої. Початок навчання, яке зазвичай передбачає вивчення якоїсь мови програмування, багатьох лякає настільки, що вони відступають. Наприклад, “Hello, World!” на Java – широко відомій мові, яка стала промисловим і освітнім стандартом:

public class Main { public static void main (String args[]) { System.out.println ("Hello, World"!); }}

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

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

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

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

Підсумовуючи викладане, я хочу сказати всім, хто зараз вчиться програмувати: неважливо, що Ви вивчаєте, почуття втраченого є природним. Люди приділяють значно менше уваги вивченню засад, ніж вивченню складніших речей – і це нормально. Думку “я нічого не зможу” з часом змінить інша: “я просто цього ще не знаю”, але для цього треба набути досвіду й ознайомитися з програмуванням у цілому. Кращим є не той програміст, хто знає все, а той, хто здатний швидко адаптуватися в новій технології.

Програмування – одна з тих галузей, у якій чим більше вчишся, тим сильнішим стає розуміння того, як мало ти знаєш. І чим швидше Ви це зрозумієте і приймете як належне, тим швидше зможете розв’язати з будь-яку задачу.

Київ, Харків, Одеса, Дніпро, Запоріжжя, Кривий Ріг, Вінниця, Херсон, Черкаси, Житомир, Хмельницький, Чернівці, Рівне, Івано-Франківськ, Кременчук, Тернопіль, Луцьк, Ужгород, Кам'янець-Подільський, Стрий - за статистикою саме з цих міст програмісти найбільше переїжджають працювати до Львова. А Ви розглядаєте relocate?


Коментарі 1

  • Навчитися гарно писати програми дуже складний процес. Зі свого, не дуже багатого досвіду, скажу що місцями буває навіть дуже складно. Дуже часто зіштовхуєшся з різними типами проблем і голова часом починає кипіти від напруги. Шукаєш якесь рішення воно не відходить і так можуть проходити навіть години, а інколи і дні.

Залишити відповідь

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *