5 начина на академията за кодиране ви учи как да бъдете програмист

Снимка на Clément H на Unsplash

Заден план

Казвам се Ник Култас и в момента пребивавам в Рено, Невада. Тук има много малка общност, що се отнася до програмистите / разработчиците. Скоро осъзнах това, когато започнах да посещавам местния си колеж на общността в изпълнение на моите сътрудници на науките, като се насочих към местния университет за компютърни науки / програмиране. Именно през това време попаднах на училище Lambda, 6-месечна академия за редовно обучение за компютърни науки / уеб развитие. Колкото повече се вглеждах в това, толкова повече се вълнувах и времето беше перфектно. Първоначално бях нервен, уплашен, определено затрупан. Въпреки това, след като завърших 70 + проекти, които не включват проект Capstone в края, получих толкова много знания как да бъда професионален програмист. Не само съм се научил; нови езици за кодиране и синтаксис, аз също научих истинските меки умения и песъчинки, необходими за да станете професионален разработчик.

1. Как да мислим като разработчик

След като написах това заглавие, попитах жена ми - ако тя прочете само заглавието, какво би си помислила? Отговорът й беше - „Как да бъдем компютърно умен / Научете кода.“ Сигурен съм, че това ще е първоначалната мисъл на повечето хора, които четат това, но има толкова много да мислим като програмист, отколкото просто да научим код. Като разработчик / програмист непрекъснато решавате проблеми, мислите за креативни начини да стигнете до решение, използвайки предварително решени проблеми като насока на нещата, които да избягвате, когато създавате нов проект. Разбивате всеки проблем на битове и парчета и решавате всяка секция наведнъж, в крайна сметка ви води до отговора на цялостния въпрос. Научих това наистина бързо в училище Lambda, особено скачах в код / ​​проекти, с които не бях запознат. Успях да използвам информацията, която задържах от лекции и практически упражнения, за да разбия проблема на парчета. Бих работил през всяко парче поотделно, докато общият отговор не стане ясен. С този нов начин на обучение и подходи към проблеми, ако някога попаднах на нещо подобно след това, знаех как да го поправя точно тогава и там.

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

2. Програмиране на двойки / Работа в екипи.

Първоначално, когато бях подходен с концепцията за двойно програмиране, това наистина ме изнерви, особено в интензивна и потапяща среда. Хората идват от всякакви различни среди в училището Ламбда, включително и такива с предишни познания по писане на код. Не исках да звуча "неинтелигентно", защото другите може да знаят повече от мен, а аз не исках да изглеждам в ущърб на партньорите си. Комуникацията с партньора (ите) ми, да разбера дали те знаят повече от мен или ако знам повече от тях, ми помогнаха да се науча как да сдвоявам програма ефективно и да работя в екип ефективно. По време на този процес се научих как да общувам възможно най-ефективно, като задавам въпроси или предлагам идеи за подобряване на проект. Това също ми помогна да мога да обясня мисловния си процес, докато пиша код. Освен това ми помогна да обясня защо може би съм избрал да направя нещо над друг, особено когато съм навигатор и партньорът ми е шофьорът.

Ламбда училище е онлайн програма, така че всички в програмата работят дистанционно. Докато двойката програмира и работи по проекти на Capstone, не можехме просто да отидем до бюрото до нас и да зададем въпроси. Разчитахме на Zoom като нашата основна платформа за споделяне на обаждания / екран и по този начин ние комуникираме постоянно, както и съобщения на Slack. Този процес определено ми показа колко е важно да мога да общувам с партньора си.

3. Устойчивост, последователност и песъчинка

Работейки към вашия път към ставане на професионален разработчик / програмист, уменията да сте постоянни и последователни, както и да имате песъчинки, всички играят огромна роля. Винаги трябва да се съсредоточите върху задачата под ръка и да знаете, че винаги има начин да намерите решение. Да бъдеш последователен с кода си е ключово. Трябва постоянно да се информирате за нови езици, рамки и актуализации. Никога не сте готови да работите върху проект, винаги има неща, които можете да върнете назад и да актуализирате, за да подобрите проекта или приложението. Освен че песъчината също е постоянна, може да има моменти, когато искате да разбиете лицето си в клавиатурата си, опитвайки се да намерите решение. В тези конкретни моменти трябва да останете мотивирани със задачата под ръка и да продължите да разрешавате проблема, пред който сте изправени.

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

4. Преодоляване на пречките

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

Ламбда училището ме научи, че мога да правя това, за което съм си поставил мнението. Когато се сблъскахме с проблем или пречка в училището Ламбда, независимо дали е проблем в кода или грешка за разрешаване, винаги сме имали насоки, но никога не ни беше даден отговор. Трябваше да продължим да работим, докато сами не стигнахме до решенията. Това е най-хубавото нещо, защото ми помогна лично да осъзная на какво съм способен. Мога да намеря отговор дали това ще бъде чрез повече проучвания, като изкажа моите стъпки на глас към себе си (или жена си) или проследя предишните си стъпки. Не мога да ви кажа колко пъти съм обяснявал проблем на жена си (която не знае нищо за програмирането), само за да угасне крушката в главата ми и да спре на половината път, защото намерих отговор.

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

Снимка на Джошуа Ърл на Unsplash

5. Личен и професионален растеж

Досега докоснах личното израстване, докато бях в училище „Ламбда“, но има много повече от това, отколкото мога да наместя в една статия. Разработих нови успешни черти, преодолях препятствия и общувах / сдвоявах програмирани с партньор (и). Аз също имах огромен професионален растеж. Започвам кариерата си на 21 години и това ме накара да осъзная, връзките са огромни! Не само когато става въпрос за професионален разработчик / програмист, но и в живота и като цяло. Създадох невероятни връзки не само чрез инструктори и персонал, но и с моите връстници. Това също не спира. Продължих да се свързвам и да науча как да изграждам връзки с хора, които са професионални разработчици от всички сфери на живота.

Научих как да давам професионален принос в проектите и как да обясня дълбоко своята позиция. Вече съм в състояние да обясня мисловния си процес и причината, поради която моят партньор (и) избрах определен технологичен стек за екипен проект. Аз съм в състояние да общувам с връстниците си при започване на проект и обмислям кои биха били най-добрите стъпки за постигане на най-добър резултат. Решаването на проблеми, когато кодирането е огромно, и аз съм в състояние ефективно да решавам проблеми с партньор (и) или екип, за да стигна до най-доброто решение.

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

Благодаря на всички, че отделихте време от деня си, за да прочетете това!