У цій статті ми обговоримо деякі найбільш поширені помилки програмістів-початківців, а також надамо кілька порад щодо їх усунення.
Усі ми хочемо бути класними програмістами. А чим більше мов програмування знаєш, тим ти кращий фахівець? Але, на жаль, на практиці так не працює.
- Братися за все одразу
Це дуже поширена проблема і практично всі програмісти-початківці з нею стикалися. Наприклад, ви навчаєте Java, потім знаходите в інтернеті безкоштовний курс з JS і фронтенду, за рекомендацією друга завантажуєте книгу по C++ і ще дивіться ролики в ютубі про Python…
Безумовно, коли починаєш вчити щось (і це справді захоплює) одразу з'являється бажання вивчити якнайбільше. Але такі «стрибки» призводять тільки до цілковитої заплутаності, й взагалі втрати будь-якого інтересу. Тому краще вибрати один найближчий напрямок і працювати в ньому. Але перш, розберімося — чого ми хочемо та правильно сформулюємо собі мету.
Для цього можемо скористатися системою постановки задач SMART. У її абревіатурі містяться характеристики, яким має відповідати поставлена мета (поряд із кожною характеристикою наведено приклад):
- Specific (конкретна мета) — хочу розробляти сайти
- Measurable (вимірна мета) — для цього потрібно знати мовне середовище JS + HTML + CSS
- Attainable (досяжна мета) — запишуся на курси з фронтенду + куплю кілька книг і читатиму
- Relevant (актуальна мета) — це зараз у тренді та професія має попит на ринку
- Time-bound (обмежена в часі ціль) – через рік уже хочу почати працювати.
Отже, мету визначено і напрямок зрозумілий.
- Навчання «шматками»
Річ у тому, що в процесі навчання ми стикаємося з купою інформації, що черпається з різних джерел. В результаті знань багато, але вони поверхневі, слабо взаємопов'язані та практично не систематизовані.
Що робити?
Слід набратися терпіння, зосередитися та вивчати все послідовно. Так можна усунути практично всі прогалини інформації та легше орієнтуватися у вивченому матеріалі.
Рекомендацій щодо розв'язання цієї проблеми кілька:
– Почати писати нотатки.
Це можна робити будь-де, наприклад, у телефоні. Щодня пишіть кілька пропозицій про те, що вивчили. Наприклад, якщо вивчили, що таке поліморфізм чи інкапсуляція, досить буде просто написати їх визначення (головне застереження тут: писати потрібно своїми словами). Це допоможе трохи систематизувати навчання, до того ж під рукою буде особиста шпаргалка на випадок, якщо щось вилетіло з голови.
– Не беремо надто багато джерел для вивчення.
Якщо вивчаємо мову програмування, то цілком достатньо буде спеціалізованої книги, офіційної документації та перевірених форумів. Не потрібно паралельно читати кілька книг або ходити на кілька курсів. Це лише заплутує!
– Спробуємо знайти собі гарного наставника.
Це явно прискорило б навчання. Коли є досвідчений програміст, до якого можна звернутися за порадою або розв'язання проблеми, що цікавить, то це дає розуміння в цілому про майбутню роботу.
- Самокритика
Це, звичайно, проблема властива не лише програмістам, а й усім людям. Вона ділиться на 2 основні гілки:
- Недостатня самокритика.
Часто ми недооцінюємо свої сили й, коли вже настав час шукати роботу, боїмося чогось або вважаємо, що маємо недостатні знання. Але проблема в тому, що на певному етапі розвитку наших хардскіллів, без влаштування на роботу та здобуття практичних навичок не буде руху вперед.
- Занадто велика самокритика.
Якщо приходить розуміння, що ми всі вже пізнали та чекаємо на нашу першу високооплачувану роботу, то, швидше за все, будуть несподівані сюрпризи. Чи можна стати сеньйором і при цьому не бути джуном? Тому запасаємося терпінням та обираємо реальні можливості.
Як бачите, не варто вдаватися в крайнощі. Набагато правильніше ставиться критично, але при цьому не бояться робити помилки або пробувати щось нове.
І звичайно, для отримання об'єктивної оцінки наших сил, необхідно звертатися до досвідченіших людей у цій сфері, які вкажуть на недоліки та підкажуть, що слід підтягнути.
Олег Топорков