Научих някои неща по трудния начин, споделям опита си, така че не е нужно да преминавате през същото!

Срещата ми със сферата на програмирането не беше планирана. Появи се, когато бях лазерно фокусиран върху съвсем различна област и изграждах бъдещето си като завършен академик по международни отношения.

Е, трябва да призная, че това не беше лесен начин да се отклоня и, разбира се, си имаше цена. Но това е съвсем друга история. Ако искате да се задълбочите повече в тази история, вижте другата ми публикация 👇🏻

Защо напуснах докторската си степен и сте започнали да програмирате?

‹Грешка 1: Пуснете се по течението/›

Въпреки че имах куп хора около мен, които да ми помагат какво да правя или какво да гледам, все пак гледах много видеоклипове в YouTube със заглавия, подобни на „Кои езици за програмиране трябва да изберете в 20xx“.

Планирах да избера куп реномирани потребители на YouTube, да отбележа техните списъци с езици за програмиране, да видя кои са най-споменаваните и бум! Статистически съм от добрата страна.

Звучи като план, нали? Е, нека продължим.
Списъкът беше повече или по-малко като следния:

  • питон
  • питон
  • javascript
  • java
  • някои C семейство Lang
  • питон

Е, тогава е Python. Инвестирах времето си в python. Използвах куп библиотеки, създадох своите pip пакети и т.н. Основният аргумент беше, че Python се поддържа от много солидна общност, има много области на използване и е много лесен за научаване!

Да, но много от тях могат да бъдат и капан. Например, има много области на използване, но все още нямате представа в коя област ще работите. Много е лесно за научаване, да, но честно казано, това ли е всичко, от което се нуждаете като новак в областта на програмирането? Не искате ли да знаете какво се случва под капака? Може би - само може би - опитайте да проверите някои езици на ниско ниво и само общата представа за тях ще ви помогне да разберете много повече за езиците на високо ниво. Всички те ще започнат да имат смисъл.

В моя случай стигнах до извода, че Python е основно добър за науки за данни, автоматизация, скрапинг, киберсигурност. Ще бъде ли някоя от тях моята кариера? За мен не. В крайна сметка пощадих Python като език за хоби и отделеното ми време за този конкретен език намаля драстично. Така че буквално това беше грешка за мен. Сега смених езика на фокуса си, защото понякога тази голяма гъвкавост е недостатък.

‹Грешка 2: Урочни капани/›

Udemy, Udacity, Coursera, Codecademy: каквото и да е! Може да звучи малко кофти, но трябва да го кажа: уроците са като ножове, те могат да бъдат полезни или можете да се нараните с тях. Спомням си моите уроци за капани. Купете курс или се абонирайте за плейлист на YouTube bootcamp, изпийте кафето си и започнете да учите. Структури от данни, цикли, деклариращи променливи, класове, функции...

Но в края на курса вашата IDE и вие само се гледате. Току-що завършихте курса, би трябвало да можете да изпълнявате задачите, но не. Мислите си, че може би съм пропуснал тази точка, трябва да преразгледам тази тема или вероятно да проверя друг урок? След това започнете отначало. Порочен кръг, заешка дупка, безкраен цикъл, който се прекъсва само когато прекъснете и се откажете. Но тук се крие структурен проблем.

След като разберете, че всички езици по един или друг начин работят по един и същи начин, половината от работата е свършена. Номерът започва с прилагане, а не с пасивно учене!

Ето защо, запомнете, мотото за обучаващ се програмист е:

„Винаги е часът“

Напишете кода си, провалете, преработете го, отново се провалете. Прекарвайте времето си във форуми и разпитвайте наоколо, вместо да влизате в друг урок. Колкото повече пишете, толкова по-добре ще пишете с условието да научите добре основите. Това ни води до третата грешка:

‹Грешка 3: Четене Четене Четене/›

Идвам от социални науки. Всичко, което правим, е да четем това, което е свързано през цялото време. Трябва да видите моята библиотека 🤓 Стана моя втора природа да отида и да проверя книгите, да ги поставя в таблицата си и да чета, чета, чета. След това веднъж като разговарях с един от моите добри приятели Сафа Орхан, той ме посъветва, че:

„Това вече не са социални науки. Заменете четенето с писане. Колкото повече пишеш, толкова по-добър ставаш. Опитайте се да пишете минимум 30 минути на ден.

Това ми отне известно време да усвоя, винаги съм си представял писането на код като върхова точка. Първо, помислих си, трябва да плъзнете всички съществуващи книги, да прочетете кръстосано всички глави и щом почувствате, че сте там, да изпукате кокалчетата на пръстите си и да започнете да пишете като шеф.

Лоши новини, това никога няма да дойде при вас. Ако трябва да прочетете нещо, прочетете кодовете на другите. Ако искате да четете книги, направете това, което правя аз, поставете книгите си на четец на електронни книги и ги четете, когато сте в движение или може би преди да си легнете. Но основната ви дейност трябва да бъде писането. Няма повече какво да кажа тук.

„30 минути кодиране на ден почиства праха ви“

‹Грешка 4: Да бъдеш перце на вятъра/›

Не се придържайте към мейнстрийма. Основният поток е непостоянен. Бъдете по-солидни от това. Опитайте се да разберете каква титла искате да имате. Опитайте се да видите в коя област в програмирането искате да се видите. След това действайте според него.

Тази част може лесно да се свърже с грешка 1. Но искам да отворя нов етикет тук. Много от новодошлите като мен са много ентусиазирани да поставят максимален брой отметки на въпроса „Кои технологии сте запознати“. Не се тревожете за това на много ранен етап. По пътя ще съберете необходимото за вас. Това е технологично поле. Всичко остарява доста бързо. Може да звучи добре да знаем тази рамка или онзи език и т.н., но трябва да разберем, че тук правим компромис. А нашата мета за търговия е най-ценното ни: „време“.

Поставете си пътна карта. Проверете околността или работните места в града, в който искате да живеете. Най-важното е да проверите какво ви подхожда най-добре. Ако текущият поток показва, че фронтендът е подходящ, но инстинктът ви диктува друго, тогава не се насилвайте. Основното правило тук според мен е, направете работата си свое хоби и направете хобито си своя работа. Това ще създаде много точки за излизане от стрес във вашата психология.

И малък съвет: много хиляди също плуват в същия поток, мислете за това по същия начин по отношение на оста търсене-предлагане.

‹Грешка 5: Да си на грешната рали писта/›

Едно нещо, което забелязах е, че когато започна нещо ново, непрекъснато се сравнявам с другите. Това понякога ви помага да останете на път, но като цяло не е така. Много пъти се виждате разсеян, намръщен, унил. Казвате си „О, толкова съм слисан. Няма начин да наваксам лесно.’ Е, поздравления, току-що направихте сериозна грешка. Ще споделя с вас какъв е еликсирът тук.

Сравнете себе си с другите. Правете го през цялото време. Но различно. Вашият основен фокус определено трябва да бъде да се състезавате. Знаете ли играта Trackmania, където можете да се състезавате срещу предишния си геймплей? Това е настроението.

Сега е по-здравословно да се сравнявате с другите. Не за да ги надпреварвате, а за да ги филтрирате. „О, този може да ми помогне с това. Позволете ми да попитам това, нека да науча как да направя кода си по-тестваем от този човек.’ Но ежедневната ви надпревара все още е срещу вас самите.

Ако знаех колко важни са тези детайли, когато започнах, щях да съм много напреднал сега в сравнение с това, където се намирам в момента. Но тези думи дойдоха с крайната цена: ценното ми време. Надявам се да мога да помогна дори на един човек да спести повече време и да остане по-отдаден.

‹Кодирането е забавно, когато се забавлявате. Насладете се 😉 /›

Последвайте ме в Twitter