Що варто знати програмісту-новачку. Part 1

💡 Усі статті, обговорення, новини для початківців — в одному місці. Приєднуйтесь до Junior спільноти!

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

Я майже 14 років програмую: продовжую працювати, як фрилансер та навчаю новачків. Хочу, щоб у людей була можливість увірватися в ІТ, працювати з дому, та не хвилюватися за роботу.

Тому вирішив писати відповіді на питання від новачків.

Якщо ви новачок — пишіть свої питання під цим топіком. А якщо досвідчений кодер — діліться своїм досвідом. Він також буде корисний новачкам!

1. «Яку мову програмування обрати?»

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

Мені здається, що краще обирати технології, а потім — мови.

Наприклад, хочеться працювати з зовнішністю сайтів (front-end) — це JS, html та CSS. Хочеться розробляти ігри — обирають C#, бо до мови легко додати безкоштовний рушій Unity. Для розробки для Apple — Swift чи Objective-C

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

2. «Я інтроверт. Програмування мені підійде?»

Програмування підходить для будь-кого, хто здатен вчитися. Але працювати з людьми доведеться.

Фрілансер, як мінімум, спілкується з замовниками. З програмістом у компанії поруч працюють верстальники, дизайнери, тім-ліди, продакт- та проджек-менеджери.

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

3. «Правда, що треба навчатись щонайменше рік та все одно буде складно знайти роботу?»

Не зовсім так. Залежить від того, що хочете розробляти та в якому форматі працювати.

Наприклад, розробляти штучний інтелект у великій компанії Кремнієвої долини новачка не візьмуть. Розробляти сайти — це простіше. Отримати перші $100-300 можна через кілька місяців навчання.

Працюючи з новачками, я бачу як швидко вони починають програмувати: в командах створюють прості нотатники, браузерні ігри та сайти. Хоча кілька тижнів тому не знали, що вписувати в <head>, а що у <body>. З такими знаннями точно можна почати заробляти. Так, не стати новим Стівом Возняком, але заробляти можна.

І ще: почати фрілансером значно легше, ніж потрапити в штат. На фрілансі вчиш якийсь напрямок і шукаєш задачі саме в ньому.

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

Типова ситуація на фрилансі:

Хтось самостійно створив на Wordpress шаблонний інтернет-магазин. Розкрутив його і бачить, що стандартного рішення вже не вистачає. Хоче додати новий функціонал: наприклад, акції чи календар пропозицій і не знає, як це зробити на WP. Йому треба той, хто (1) знайде потрібний плагін, (2) встановить на сайт та (3) перевірить, чи все працює.

Такі замовлення не зроблять мільйонером, але дозволять новачку монетизувати знання.

Тому якщо ціль саме почати заробляти — алгоритм такий:

Йти у веб. Тут багато простих задач на 3-5-10 годин. Наприклад, люди тікають з Tilda, відмовляються від російських CRM-систем і шукають чи розробляють власні. Для цього потрібні верстальники, адміністратори чи програмісти.

Можна швидко вивчитись до перших замовлень. Для цього краще зайти на UpWork чи Freelancehunt та подивитись, яких замовлень найбільше. Те і почати вчити.

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

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

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

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

Кінець

Це перша частина. Будуть ще.

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





👍ПодобаєтьсяСподобалось2
До обраногоВ обраному1
LinkedIn
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

Питання від новачка: як правильно вчити Spring Security?

Підписатись на коментарі