Имах няколко искания да говоря за моята история и пътя, който поех, за да намеря първата си работа като уеб програмист.

Прекарах много време в усъвършенстване на уменията, които имам, вероятно повече от необходимото. Много дни се събуждах в 6 часа сутринта и работех на ежедневната си работа до 14 часа, прибирах се вкъщи и включвах до 1 или 2 сутринта и повтарях по-дълго, отколкото трябваше. Можех да бъда по-ефективен в обучението си, ако имах подходящо ръководство.

Искам да направя едно нещо пределно ясно. Не съм умен и не е нужно да си умен, за да направиш кариера от развитие. Аз съм идиот, който прави неуместни шеги и бива удрян в лицето и давен за шега (MMA). Аз съм кокалче, глупак. И все пак аз все още съм Хомо Сапиен и мога да разбера нещата по-добре от всеки друг познат ни вид, мога да се адаптирам към стресови фактори и да науча сложни неща. Ако приемем, че не сте орангутан, който чете толкова далеч в бъдещето, вие също сте човек и можете да правите тези неща.

Ще бъде трудно.

Не мога да подчертая това достатъчно. Сигурен съм, че сте гледали мотивационни видеоклипове, в които се говори за шлифоване и упорита работа, е, сега ще трябва да изживеете тези глупости. Често се сещах за цитата: „Всеки иска да бъде гангстер, но никой не иска да прави гангстерски глупости.“ Очевидно не убивам никого, нито продавам наркотици (AFAYK), но мога абсолютно да пренеса това в живота си и да взема това мислене със себе си. Понякога трябва да свършите неприятната работа и да се почувствате сякаш се опитвате да съборите дърво с шибаната лъжица.

Първата стъпка е да се почувствате комфортно с неудобството. Кое е нещото, което избягвате да учите или правите в момента? За мен беше да науча какво, по дяволите, е regex и как да ги използвам. Страхувах се да го науча и си дадох милиони причини защо мога да се справя без тях, но истината е, че ако има хора, по-умни от вас, използващи техника, инструмент или технология има причина за това. Колкото и досадни и елитарни да са много разработчици, те не са в бизнеса да губят време или енергия, би било умно за вас да приемете съвет от всеки, който е готов да ви го даде. Ако някой с 10-годишен опит ви каже, че би било разумно да научите за JSON заявките, не спорете с него, както направих аз в Reddit преди много време. Вие просто не знаете по-добре от професионалист, на каквото и да е ниво, обещавам ви това.

Откъде да започна?

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

Езикът няма значение, текстовият редактор няма значение, проектът няма значение. Важното е да разберете какво представляват променливи, обхват, масиви, функции, цикли, класове, обекти, изрази и различни типове данни. Разбирането в този контекст не означава да прочетете определение, това означава да ги използвате толкова много, че вече не можете наистина да обясните каква е тяхната цел, тя просто е вкоренена във вас. Това е като да си завържеш обувките, не можах да накарам някого да го направи, но мога да го направя за две секунди, без да мисля. Има много по-сложни неща, които трябва да научите и те са просто градивни елементи за неща от по-високо ниво.

Ако искате написан в камък отговор откъде да започнете, казвам на всички едно и също нещо. Посетете Repl.it, създайте акаунт и напишете програма на Python, която взема число и добавя едно към това число на всяка итерация. Просто е, но буквално оттам започнах, все още имам първата си програма, която някога съм написал в моя акаунт в Repl.it. Това беше for цикъл, който добавя единица към число и отпечатва това число. Толкова е просто.

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

Знам какво си мислите, езикът има пълно значение, защо да уча Python, когато искам работа като front-end разработчик? Добре, помните ли какво ви казах по-горе за това, че по-опитните хора винаги са прави на този свят? Е, прав съм, но не защото пиша глупава публикация в блога, а защото сгреших и това ми причини много разочарование и колебание. Никога не бях сигурен какво искам да правя с програмирането и се страхувах, че ако науча език, ще си губя времето. Синтаксисът е лесен за научаване, концепциите са много по-важни от начина, по който декларирате променливи или как завършвате изрази.

Когато станах компетентен в Python и исках да се разклоня, за да науча различни езици, избрах PHP и беше странно да декларирам променливи с $ и да завършвам всеки ред с точка и запетая, но заедно с няколко други синтактични неща, концепциите останаха до голяма степен същите . Страхът, че съм губил време с Python, постепенно избледня в радост, че съм научил Python. Изучаването на PHP помогна още повече, когато най-накрая реших, че трябва да науча JavaScript. Важни са идеите, а не начините, по които пишете идеите.

Дори ако решите да не изберете Python, на ниското ниво, на което сте в момента, езикът наистина няма значение. Мога да създам функция, която реализира цикъл while и връща стойност на всеки език.

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