тел. (044) 568-35-16
факс (044) 568-35-16
моб. (067) 998-25-37

США начнет продавать сланцевый газ Японии

На шляху до програмування. Рубежі, які потрібно взяти

«Стати розробником під силу кожному. Навчити писати код можна будь-яку людину », - вважає Павло Вейник , Java-розробник, ментор школи програмування ITStart. Під час навчання програмування студент проходить кілька важливих рубежів. Той, хто подолає всі - знайде себе в IT. Павло Вейник розповів про етапи і складності, які чекають студентів на шляху до програмування.

Перший етап - постановка мети і мотивація

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

Часта ситуація, з якої я стикаюся: за майбутніх студентів дзвонить хтось. Мовляв, мій син хоче стати програмістом, навчіть його. Я завжди відповідаю: «Дуже добре, нехай він мені дзвонить сам». Як правило ці персонаж не передзвонюють. Люди, які виконують чужу волю, не пройдуть навіть перший безкоштовний урок, тому що у них немає внутрішнього ресурсу і розуміння, навіщо щось робити.

Друга поширена помилка в постановці мети - людина йде в програмування не для того, щоб щось зробити, а біжить від своєї професії - не важливо, куди. Він думає, що IT-сфера зараз на піку, тому потрібно йти в неї. Але програмування - не та область, куди можна втекти від ненависної роботи і відчути себе там як у своїй тарілці. Тут потрібні серйозні зусилля, старанність і постійна робота над собою.

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

Етап усвідомлення займає не менше півроку.

Другий етап - розвиток абстрактного мислення

Другий етап - розвиток абстрактного мислення

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

Усвідомлення того, що мислення недосконале для програмування, б'є по самооцінці, викликає почуття образи в учня. Часто на цьому етапі виникає гнів. Учні зляться на мене за те, що я задаю їм елементарні питання, кажу, що вони роблять неправильно досить прості речі. Через цей етап люди проходять болісно, ​​він є додатковою перевіркою мотивації. Одні не можуть подолати себе, інші справляються, але проходять через сильні емоції. Якщо учень не може прийняти нову реальність і перебороти себе, розвиваючи своє мислення, він, як правило, залишається ображеним на мене, і ми розлучаємося з конфліктом.

Етап роботи над мислення займає від тижня до місяця.

Третій етап - випробування часом

Людина, яка вчиться програмувати, повинен довести свою здатність до уїдливості, посидючості, вміння брати перешкоди п'ятою точкою і не зупинятися, поки завдання не вирішена. При цьому неважливо, скільки вже часу витрачено на пошук рішення. Потрібно навчитися приймати нескінченну кількість великих і дрібних зауважень і виправлень, при цьому сприймаючи їх як спосіб розвитку, а не як шкоду для власної значущості. Люди, які пройшли перші два етапи, відчувають тут себе спокійно, бо приймати критику і виправлення набагато простіше, ніж виправляти власні помилки мислення.

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

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

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

Етап випробування часом триває кілька місяців.

Четвертий етап - випробування завершенням

Четвертий етап - випробування завершенням

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

Людина нарешті стикається з реальністю, заради якої пішов з попередньої роботи. Нова реальність завжди лякає - це аксіома. Процес пошуку роботи - це завжди осягнення нового світу. Саме це є найскладнішим в пошуку нової роботи, а не тестове завдання. Коли людина приймає незнайому реальність, він набагато простіше проходить всі етапи пошуку роботи. Але буває так, що людина лякається і не пірнає в новий світ, починає від нього захищатися. Цей бар'єр багатьом пройти непросто.

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

Етап пошуку роботи займає до півроку.

«Немає більшого задоволення, ніж своя програма». Історії успіху Олексія та Олега

Про те, як вдалося подолати всі вищеописані етапи на шляху до розробника, поділилися два учня Павла Вейника.

Олексій Тарасенко: «Йдучи на курси, я хотів почати кар'єру програміста. Зараз працюю Java-розробником. Спочатку Павло поставив мені кілька прямих запитань: «Ви впевнені, що хочете пройти курс програмування? Навіщо вам java? »Довелося серйозно думати про те, що хочу робити і ким хочу стати. Програмування мені не завжди приносило задоволення, доводилося багато займатися, читати іноземну літературу і ламати голову над простими алгоритмами. Іноді чув наступне: «Ти перемудрил, переробляй». Але немає більшого задоволення, ніж працює програма, яку ви самі написали!

Під час навчання я познайомився з багатьма цікавими людьми: junior-програмістами , Хакерами, HR-менеджерами та директорами власних компаній. Це допомогло мені краще пізнати світ IT і визначити своє місце в ньому ».

Олег Воронович: «До того як вирішив займатися розробкою, я близько п'яти років працював інженером по комп'ютерних мережах. Я давно вже хотів освоїти якусь мову програмування, але зупиняло тільки усвідомлення того, що не впораюся сам. На навчання витрачав весь свій вільний час, всі вечори і вихідні. Павло мені скидав завдання, я висилав йому рішення на перевірку, задавав питання. Мене відразу ж затягнуло і складно не було. Єдина складність полягала в нестачі часу: потрібно було спочатку відпрацювати, а потім прийти додому і ще вчитися. Протягом довгого часу такий ритм вимотує. Але матеріал давався мені легко.

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

З новою роботою у мене все склалося вдало, навіть краще, ніж я думав. Я не міг собі дозволити звільнитися і сидіти склавши руки і без грошей, тому на попередній роботі я був до останнього дня: в п'ятницю звільнився, в понеділок вийшов на нове місце. До цього у мене була відпустка, який я витратив на стажування. Це був самий відповідальний етап ».

Роблю це свідомо, тому що робота розробника - це постійне докопування до суті, і якщо я буду надавати всю інформацію, як люди зможуть самі вивчити нову технологію?
Спочатку Павло поставив мені кілька прямих запитань: «Ви впевнені, що хочете пройти курс програмування?
Навіщо вам java?