Как да станете пълноправен уеб разработчик през 2020 г.

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

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

  • Първо, какво всъщност прави пълния стек на разработчика?
  • Преди да се потопим, нека поговорим за този фокус
  • И така, откъде да започнем?
  • Преден край
  • Заден край
  • DevOps и облакът
  • Ами дизайнът?
  • Други неща, ако тепърва започвате
  • Други неща, ако търсите повече

Първо, какво всъщност прави пълния стек на разработчика?

Забавно и шумно е да се каже, че всеки разработчик на преден край е разработчик на пълен стек, но възможността да разположите уебсайт в Netlify не ви прави пълен стек.

Това не трябва да обезсърчава - просто реалистично, само че този опит няма да издържи добре на това заглавие в следващото ви интервю. Докато технически създавате и разгръщате работата си от началото до края, Netlify, Zeit и други доставчици ви дават силата да направите това с техните магически инструменти, които извеждат по-голямата част от операциите по стека извън уравнението.

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

Освен това, с гъвкавостта на опциите за инструментариум, като възможността да стартирате JS на сървър, нашите набори от умения могат да се прехвърлят в повече случаи на употреба от всякога.

Откъде сме дошли

Пейзажът на уеб разработката се променя бързо. Wordpress е крал CMS от известно време, представлявайки над една трета от уебсайтовете, които използват CMS и помагат на PHP да придобие популярност. Но други разработиха собствени решения.

Те представляват по-традиционен уеб стек като LAMP. В тези случаи имате уеб сървъри, които обикновено изпълняват някаква система за управление на съдържанието и език от страна на сървъра (като PHP), който ще взаимодейства с базите данни и ще създаде кода, който в крайна сметка ще бъде доставен на браузъра.

На всичкото отгоре може да имате Javascript, който прави някои интерактивни функции с CSS, управляващ показването на страницата. Сега в някои случаи наличието на управляван сървър на Wordpress е всичко, от което се нуждаете за определени уеб хостове. Но за други по-големи сайтове ще е необходим друг екип, който да управлява тези услуги и тръбопровода за внедряване за извеждане на кода в производство.

Къде сме и къде отиваме

Въпреки че Wordpress няма да отиде никъде, безсървърната и JAMstack архитектурите набират скорост. За тези, които не са запознати, идеята не е, че буквално няма сървъри, но по-скоро става въпрос за използване на сървъри, които се управляват за вас в облака.

Услуги като AWS Lambda ви позволяват да изградите „функция“, която обработва прости въвеждане и извеждане. Прикрепете това към API шлюза и веднага имате крайна точка, с която можете да взаимодействате, без никога да се налага да управлявате сървър.

Други като S3 ви позволяват да зареждате HTML, CSS, JS, изображения и всякакви други статични активи в хранилището и да обслужвате сайта директно от него. Нищо не се обработва на сървъра, вие просто обслужвате статичните файлове на клиента.

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

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

Екипите на DevOps вече управляват облачните ресурси и разполагания. Backend разработчиците сега изграждат API и код, който взаимодейства с услуги, използвайки инструменти като ламбда функции. А разработчиците от предния край работят предимно в приложенията на React или Vue за изграждане на Javascript, които достигат до услугите, създадени от вашите бекенд разработчици. Може да се спори, че това може да включва или да не включва неща като CSS, но това е друга опашка от червеи за това под какво заглавие попада „официално“ работата (спойлер: зависи от екипа).

Въпреки че все още има разделено чувство за задължения, линията се размива и прави по-управляемото да разпръснете фокуса си.

Преди да се потопим, нека поговорим за този фокус

Може да е доста примамливо да искате да се потопите направо и да покриете пълния спектър на пълния разработчик на стека, но има какво да се каже за фокуса. Това е в основата на израза „вале на всички сделки, магистър на никой“, където се опитвате да научите малко от всяка част от пълния стек и никога наистина да не овладеете нищо.

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

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

На всичкото отгоре част от това, че сте разработчик на пълен стек, не е задължително да можете да кажете, че знаете езици x, y и z. Разбирането на концепциите за кода и софтуерния дизайн, както и възможността да се справи с всяко предизвикателство, което е под ръка, стек настрана, е това, което прави страхотен разработчик.

В крайна сметка, опитайте се да разберете кое е най-доброто за вас и не позволявайте на високата ви амбиция да попречи на овладяването на вашето пътуване.

И така, откъде да започнем?

За целите на тази статия ще продължим с традиционните точки на прекъсване на това, което разбива стека (преден край, заден край и т.н.). Въпреки че някои хора казват, че това всъщност вече не е нещо, реално погледнато, има много работни места за разработчици на пълни стекове и всеки ден те се позовават на традиционните точки на прекъсване. „Пълният стек разработчик“ определено няма да отиде никъде.

Що се отнася до стека, ще се опираме на безсървърните / JAMstack архитектури, тъй като това просто ще продължи да расте. И ако ги научите, това само ще ви направи по-продаваеми с броя работни места, които се появяват около него.

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

Въпреки че може да работите в React и да ви е удобно в настоящата ви работа (това е добре!), Следващата ви работа може да е тежка за Vue или „изненада!“ ръководителят на вашия екип иска да пренапише приложението в Svelte. Опитайте се да разберете защо изобщо използвате рамка за потребителски интерфейс и как тя ви помага да разрешите проблема.

Сега нека да влезем в него ...

Преден край

Предният край на уебсайт или приложение обикновено е потребителският интерфейс, с който лицето, използващо вашата услуга, си взаимодейства. Най-големият езиков играч в играта е Javascript, където обикновено ще се опрете на UI библиотеки като React или Vue, за да управлявате компонентите на вашия проект.

Използването на тези потребителски интерфейси ще ви позволи да създадете „компоненти“, по същество блокове код, които в крайна сметка ще произвеждат HTML с възможност за създаване на взаимодействия и динамични състояния точно заедно с вашия код. Това става наистина мощно и макар че може да има малка крива, която да започне, става доста възхитително да се работи, след като го хванете.

Независимо дали са нови в областта или са добре опитни, в крайна сметка може да се сблъскате с jQuery. Въпреки че има своите достойнства и е послужил добре на общността, родните функции на Javascript наистина са нараснали и са създали по-малко търсене на функционалността, която jQuery успя да предостави. Сега разработчиците се опират на потребителските интерфейси и вградения Javascript вместо това.

Така че е добре да разберете какво е jQuery, но не препоръчвам да отделите време да го научите на този етап. Хубавото е, че ако изпратите работа, която го използва, можете да напишете роден Javascript точно заедно с jQuery, така че изучаването на ванилия Javascript сам по себе си е правилният отговор.

И така, какво трябва да науча?

Ако наистина сте начинаещ, отделете време, за да научите основни HTML и CSS. Може да не е толкова забавно и привлекателно, колкото да копаеш направо в Javascript, но надграждането върху основите на това, което прави мрежата, ще бъде ключово за започване на десния крак.

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

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

Говорейки за рамки, React и Vue са може би най-добрите кандидати предвид популярността им. React е най-популярният от куп и просто ще продължи да расте. Неговият екип непрекъснато работи за узряване на рамката и създаване на API, които ще помогнат за изграждането на модерни, бързи уеб приложения.

Първите стъпки със Create React App или Gatsby дори ще ви помогнат лесно да завъртите React приложение и веднага да влезете в позиция, в която можете да се занимавате с кода.

Въпреки че би имало ползи от извикването на CSS препроцесори и инструменти като Sass, сега има много решения за CSS, включително CSS в JS.

Въпреки че поставянето на CSS вътре в JS има някои плюсове и минуси, не е задължително да се посочва какво да се използва като определена посока, тъй като наистина ще зависи от екипа.

Разбирането на основите и силата на CSS и как да го използвате в неговата ванилова форма ще ви помогне да се подготвите за използването му, независимо от рамката.

Ресурси

  • freecodecamp.org Адаптивно сертифициране за уеб дизайн //www.freecodecamp.org/learn
  • „Поставете Javascript: Първо научете HTML и CSS“ //www.freecodecamp.org/news/put-down-the-javascript-learn-html-css/
  • MDN Intro to Javascript //developer.mozilla.org/en-US/docs/Web/JavaScript/A_re-introduction_to_JavaScript
  • Just Javascript имейл курс //justjavascript.com/
  • JSRobot Learning Game //lab.reaal.me/jsrobot/
  • responsejs.org Въведение в React //reactjs.org/tutorial/tutorial.html
  • Уроци за gatsbyjs.org //www.gatsbyjs.org/tutorial/

Заден край

В света на JAMstack задната част обикновено ще се отнася до API, които нашите предни краища използват за създаване на динамични преживявания чрез взаимодействие с крайни точки от клиента (като тези в CRUD API). Възможността да се правят тези заявки от клиента ще премахне необходимостта да се извършва каквато и да е от тези обработки, преди страницата да бъде доставена на браузъра.

Въпреки че не бива да се чувствате така, сякаш можете да кодирате само на един език, възможността да пишете в Javascript дава приятно предимство тук, тъй като можете да прераснете в основите на работата със задната страна на нещата с познат език (или обратно с предния край).

NodeJS е често срещано време за изпълнение, което ще намерите в повечето облачни среди като опция и ще ви даде подобно изживяване, което бихте очаквали в браузъра. Основната разлика е, че няма да имате достъп до определени API на браузъра, нито ще има windowобект и свързаните с него API.

Въпреки това, Python също е друг популярен език и се разраства, особено предвид популярността му в науката за данни и инженерната общност. PHP и Ruby, макар че и двете са валидни и ще ви дадат опции на пазара на труда, изглежда не са толкова популярни и не толкова в обща възходяща тенденция, колкото Javascript и Python.

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

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

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

И така, какво трябва да науча?

Ако вече работите по изучаването на Javascript от предната страна на нещата, продължете, като използвате Javascript за вашия бекенд. Завъртете ламбда, използвайки функциите на Netlify, където просто трябва да се съсредоточите върху кода, а Netlify се грижи за останалото (като всъщност да изградите и внедрите функцията си).

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

Може би да изградите крайна точка, която може да изпрати туит с помощта на Twitter API (но не го злоупотребявайте) Научете как да създадете база данни и да настроите функцията си да взаимодейства с нея в CRUD модел, което ще ви даде по-реалистичен случай на използване на това как едно типично приложение може да взаимодейства с бекенда.

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

Ресурси

  • „Супер лесно стартиране към безсървърно“ //kentcdodds.com/blog/super-simple-start-to-serverless
  • „Изграждане на безсървърни CRUD приложения с Netlify Functions & FaunaDB“ //www.netlify.com/blog/2018/07/09/building-serverless-crud-apps-with-netlify-functions-faunadb/

DevOps и облакът

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

Тази работа може да варира от много отговорности до няколко, независимо дали е писане на bash скриптове за персонализирано решение или писане на шаблон CloudFormation, който създава всички ресурси, необходими за изпълнение на приложение.

Обикновено ще намерите това включено като част от по-голяма оркестрация на работни потоци CI / CD, които автоматизират процеса на изграждане и внедряване.

И това постоянно се променя! Предвид безсървърния бум, изскочи безсървърната рамка, която управлява голяма част от това по-лесно за вас, което дори кара AWS да създаде свое собствено SAM решение. Инструменти като Jenkins съществуват от известно време за CI / CD част от нещата, но сега виждате Github, Gitlab и други доставчици на контрол на източници да предоставят свои собствени решения и инструменти като CircleCI, които се включват директно във вашия проект.

Все още не е перфектно - писането на шаблони за CloudFormation е обезсърчително. Писането на скриптове за автоматизация също не е най-забавното, макар че е изключително полезно, когато работи!

Но това се подобрява, където се вписват продукти като Netlify и Zeit. Докато те се коренят повече от статичната хостинг страна на нещата, където компилирате приложението си и го зареждате в хранилището, техните предложения нарастват, като функциите на Netlify, които са наистина само AWS Lambdas, които са по-лесни за настройка и внедряване до напълно функционираща крайна точка (това е сериозно супер лесно).

И така, какво трябва да науча?

Ако за първи път настройвате подобен тип неща, започнете с Netlify. Настройте приложение React или дори само обикновен HTML файл в хранилище на Github, свържете го с нов акаунт в Netlify и го гледайте как се разгръща.

От там, или ако вече имате малко опит, започнете да се интересувате какво се случва зад кулисите. Netlify вероятно приема вашия код, изпълнява командите, които сте настроили (като yarn build) във виртуална среда, изхвърля файловете, вградени в хранилище като S3, и поставя CDN пред него като CloudFront, за да служи от крайна точка.

Първо опитайте да направите това ръчно от вашия компютър, използвайки AWS конзолата и техния CLI, след това напишете скрипт, за да автоматизирате целия процес, интегриращ се с Circle CI във вашия проект Github, вместо Netlify, за да го внедрите в действителност в AWS.

Вземането на това ниво ще включва въртящи се услуги, с които вашият заден край може да взаимодейства. Имате ли база данни, която вашите услуги използват? Можете да автоматизирате завъртането на тази база данни с помощта на CloudFormation или bash скриптове.

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

И всичко това важи за всеки доставчик на облак или CI / CD, не само AWS и Circle CI. Изберете любимия си инструмент за облак и работен поток и стартирайте с него. Въпросът е да започнете да разглеждате нуждите на вашия проект и да проучите какво всъщност се случва в автоматизираните части на стека. Това ще ви помогне да научите повече и да станете по-изобретателни за нуждите на вашия проект.

Ресурси

  • „Ръководство стъпка по стъпка: Внедряване в Netlify“ //www.netlify.com/blog/2016/09/29/a-step-by-step-guide-deploying-on-netlify/
  • „Настройване на статичен уебсайт“ //docs.aws.amazon.com/AmazonS3/latest/dev/HostingWebsiteOnS3Setup.html
  • „AWS Certified Cloud Practitioner Training 2019 - Безплатен 4-часов видео курс“ //www.freecodecamp.org/news/aws-certified-cloud-practitioner-training-2019-free-video-course/
  • Вижте ресурсите на Javascript във Front End по-горе

Ами дизайнът?

Да, трябва да разберете основите на дизайна. Не, не е нужно да сте дизайнер.

Има много аспекти на дизайна, които ще ускорят способностите ви като разработчик. Въпреки че всички знаем, че визуалните и UX дизайнери произвеждат вълшебства, наличието на основни познания може да попречи на приложението ви да се превърне в огромно разочарование.

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

Помислете за разработчик отзад, който създава API, за да позволи на някой да управлява потребителите в приложение. Изискванията на API са доста слаби и включват само името на потребителя. Предвиждането, че като едно поле „име“ вместо „първо“ и „последно“, може да не е най-интуитивното решение за повечето. Но това може да е пропуск, който усложнява начина, по който разработчикът на предния край излага това в потребителския интерфейс, което би създало мъка за излагането на разработчика или би могло да направи объркващо за крайния потребител да консумира.

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

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

И така, какво трябва да науча?

Въпреки че не очаквам да вземете цял курс за това, опитайте се да бъдете осъзнати и любопитни. И може би следващия път не пропускайте онази статия за дизайна, която видяхте да изскача в Twitter на freeCodeCamp.

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

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

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

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

Ресурси

  • Дизайн за разработчици //thoughtbot.com/upcase/design-for-developers
  • Хак дизайн //hackdesign.org
  • Дизайн за хакери //designforhackers.com/
  • Въведение в уеб достъпността //webaim.org/intro/

Други неща, ако тепърва започвате

Голяма част от тази статия предполага, че имате някои основи, като например разбиране на това, което е git и контрол на източника, или просто настройване на редактора на кода. Ако наистина тепърва започвате, ще искате да имате просто разбиране на тези понятия, тъй като бързо ще стане по-предизвикателно без тях.

Има и нещо, което трябва да се каже за научаването как да използвате терминала си. Може да е поразително да не използвате GUI, ако сте нов, но след като се преместите, бързо ще разберете, че ще бъдете по-продуктивни, като използвате терминал и много проекти изискват използването на терминал така или иначе.

И така, какво трябва да науча?

Първо, първо, настройте редактора на кода си. Кодът на Visual Studio е в модата в момента, но има и други, които ще ви служат добре в зависимост от вашите предпочитания като Atom или Sublime Text. Дори ще намерите базирани на облак IDE като Repl.it или просто можете да започнете с по-ниска бариера за влизане, като играете в CodePen или JSFiddle.

Така или иначе, след като сте готови да получите кодиране, искате да разберете какво е контрол на източника, където git е най-големият играч в момента. Git е мощен инструмент, който ви позволява да проследявате промените в кода и да ставате по-продуктивни в сътрудничество с други разработчици.

Ще искате да се запознаете с някои от основните команди на git като добавяне на нови промени, както и какви са клоновете и как да ги използвате. Git е огромен свят, не е нужно да го овладявате веднага, бързо ще научите, че има безброй нови неща, които можете да научите по време на вашето пътуване до овладяване на вашия git fu.

За много инструменти, които ще използвате, има графични интерфейси като GitKraken, но все пак ще бъдете малко ограничени от това, което можете да направите. Да се ​​запознаете с терминалите по подразбиране на вашата машина или да изтеглите други опции като iterm2 (моите предпочитания) или Xterm.js ще бъде най-добрият ви залог. Бонус: ще се чувствате като филмов хакер всеки път, когато го използвате (или това съм само аз?).

Ресурси

  • Първи стъпки с Visual Studio Code //www.codecademy.com/articles/visual-studio-code
  • Git ресурси от Github //try.github.io/
  • Научете git чрез игра с разклоняване //learngitbranching.js.org/
  • Въведение в командния ред на Mac //blog.teamtreehouse.com/introduction-to-the-mac-os-x-command-line

Други неща, ако търсите повече

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

Тестване и различните методологии

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

Инструменти за браузър като Chrome DevTools

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

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

HTTP и как да отстранявате грешки в заявките в мрежовия панел

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

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

Мениджъри на софтуер и пакети с отворен код

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

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

Какво друго?

Този списък може да продължи вечно, тъй като има толкова много неща в света на кодирането. Какво друго смятате за важно в пътуването на човек, за да станете майстор на разработката? Изпратете ми туит или DM, ако смятате, че пропускам нещо важно!

Вие сте в огън! Дърпайки всичко заедно

Предвид целия опит, който сте натрупали с горепосоченото, трябва да сте в състояние да създадете цяло приложение от самото начало до края. Разбирате ли силата, която имате?

Тук започва забавлението. Опитайте се да създадете ново приложение - няма значение какво е, просто изградете нещо. Най-доброто нещо, което можете да направите за учене, е да натрупате опит чрез това. Няма значение дали това е един от милиона уроци за todo, които ще намерите, или като се научите да кодирате, като изградите една от най-големите социални мрежи като създателя на Instagram.

Оттук трябва да можете да създавате:

  • Преден край на уеб приложение, който се изпълнява в браузъра
  • Бекенд услуги, към които вашето уеб приложение може да отправя заявки чрез крайни точки
  • Напишете скрипт, който да включите в CI / CD инструмент, за да автоматизирате процеса на изграждане и внедряване
  • Бонус: вземане на добри решения за това как изглежда вашият интерфейс, така че хората наистина да могат да го използват!

Вървете напред и изграждайте! Споделете с нас вашето пътуване за развитие в Twitter, използвайки хаштаг #codejourney. Бихме искали да чуем повече за това къде сте били и какво сте построили или къде отивате и какво искате да изградите.

Последвайте ме за още Javascript, UX и други интересни неща!

  • ? Последвай ме в Туйтър
  • ? ️ Абонирайте се за моя Youtube
  • Регистрирайте се за моя бюлетин