Шлях самоучки: які плюси і підводні камені чекають на ньому програміста
Опитування понад 50 тисяч програмістів з 178 країн світу показав, що зараз більшість розробників ПЗ - самоучки.
До того ж вам напевно відомо, що багато відомих айтішники увійшли в професію самостійно, наприклад, Джек Дорсі - розробник Twitter, Марк Цукерберг - співзасновник Facebook, Кевін Сістром - гендиректор Instagram і ін.
У чому привабливість шляху розробника-самоучки?
Чому люди починають осягати ази програмування своїми силами? На це є безліч причин, і найпоширеніші я перерахую нижче. Але в першу чергу мені хотілося б розповісти вам, чому я сам прийняв рішення самостійно освоювати комп'ютерну науку.
Будучи студентом коледжу, я вже добре розумів, що якість викладання інформатики у нас знаходиться на жалюгідному рівні. Тому ентузіастам було важко. Неефективна система освіти не залишила мені іншого виходу, як самостійно почати вивчати програмування. Судіть самі: ми цілий рік вчили один єдиний ЯП - QBasic, та й то викладання було нікчемним.
Отже, можна виділити 3 найголовніші причини, чому люди вирішують стати програмістами своїми силами:
- недоступність вищої освіти через високу вартість навчання;
- рішення змінити сферу діяльності, кар'єру;
- захоплення інформаційними технологіями з юності.
Переваги самостійного навчання
Не подумайте, що я закликаю відмовлятися від вищих навчальних закладів. Але навіть на шляху до отримання диплома бажано додатково займатися самоосвітою: вивчати літературу, відвідувати курси, дивитися відео на цікаві для вас теми і переймати досвід у професіоналів. Це не тільки допоможе вам швидше розвивати навички, а й зробить ініціативним, рішучим, більш впевненим у власних силах.
Також ви зможете:
- навчитися вирішувати більшість IT-проблем;
- добре знати принципи роботи ПО;
- досконально володіти алгоритмами, базовими методами та ін. важливими речами, про які ніколи не розповідають на високому рівні в коледжах і університетах.

Недоліки шляху розробника-самоучки
Будьте готові до проблем, яких вам в будь-якому випадку не уникнути на старті свого занурення в світ програмного забезпечення. Щоб успішно подолати їх, вам знадобляться рішучість і дисциплінованість.
Як то кажуть, у будь-який троянди є шипи. Так що, незважаючи на всю принадність самостійного навчання, шлях розробника-самоучки досить тернистим.
Ми всі прекрасно розуміємо, як складно добитися хорошого результату, коли він нам світить лише в довгостроковій перспективі. Наприклад, як у випадку з переходом на правильне харчування або зміною розпорядку дня. Будь-яка серйозна справа вимагає подолання труднощів і великої роботи.
Які ж проблеми підстерігають початківців програмістів?
- знайти якісні освітні ресурси;
- виробити ефективну систему навчання і слідувати їй;
- ризик заробити «синдром самозванця»;
- нестача соціальної взаємодії;
- складності з тайм-менеджментом;
- недоступність спеціальностей, які вимагають високої кваліфікації;
- тривожні думки ( «у мене не вийде» і ін.).
Я теж через все це пройшов. І тому повторю: рішучість і дисциплінованість допоможуть подолати будь-які складнощі.
Як зробити самонавчання успішним?
Озбройтеся цими рекомендаціями - вони допоможуть вам швидше пройти шлях від початківця до справжнього професіонала:
- не бійтеся незнайомого коду - впевнено освоюйте його;
- шукайте і використовуйте для самоосвіти авторитетні ресурси;
- вкладайтеся в інструменти, які дозволяють економити час;
- вчіться усувати баги;
- чітко дотримуйтесь намічений план дій;
- ніколи не переставайте вивчати щось нове, розвивайтеся, вдосконалюйте навички.
Сподіваюся, що мої підказки будуть корисні тим, хто тільки ступив на шлях програміста. Будьте впевнені в своїх силах - і все вийде!