интересен

Най-добрите начини да научите себе си на код

Снимка: Кристофър Гоувър (Unsplash)

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

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

Запитайте се: Защо искате да научите как да кодирате?

Отделете няколко минути (или ден), за да помислите за причините - причините - защо искате да научите език за програмиране. Бъдете честни със себе си. Опитвате ли се да научите най-ниския минимум за оценка на промоция? Търсите ли да направите голяма промяна в кариерата? Искате ли да създадете следващото най-голямо приложение? Развълнувайте съквартирантите си, като програмирате различните си умни устройства, за да направите нещо страхотно?

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

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

Изберете правилния език за програмиране

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

За по-интерактивни уебсайтове, включващи платежни системи или бази данни, ще трябва да знаете Javascript, PHP, SQL и Python, за да пеете всички компоненти. Производителите на мобилни приложения използват Swift или C, за да правят приложения за iOS, и Java или Kotlin за приложения за Android. Разработчиците на видеоигри ще се обърнат към Unity или дори C #, за да реализират своите идеи за игри.

Все още не можете да решите вашия език за програмиране на начинаещи? Повечето специалисти препоръчват да научите Python, C # или JavaScript, тъй като те предлагат най-широката полезност и гъвкавост в кариерата. За да ви помогне да направите решението си, разгледайте тази страхотна инфографика, която сравнява няколко популярни езика за програмиране.

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

Изпробвайте някои онлайн курсове

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

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

Искате повече подготовка за коучинг и кариера, без да правите начален старткамп? Опитайте да се запишете за курсовете за сертифициране на модел за абонамент от Udacity или Treehouse, където имате възможност да помолите учител за помощ, вместо да търпите грешките или въпросите си в кодирането сами. Не можете да направите много по-добре от 19-те долара кодиране от Udemy (още по-малко, когато има разпродажба) - дори студенти на пълен работен ден и студенти по компютърни науки се регистрират за тези класове, за да допълнят обучението си.

Без значение колко курсове сте завършили, на много начинаещи все още им е трудно да приложат сравнително основните си знания. За тази цел мнозина препоръчват безплатния практически JavaScript курс от Watch and Code, който се върти около един проект, който непрекъснато повтаряте.

Съсредоточете се върху научаването на компютърно мислене

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

Благодарение на интернет не е нужно да се запишете в четиригодишна колежа програма, за да научите основите на компютърните науки; редица класове на ниво колеж са достъпни онлайн безплатно (или номинална такса).

Не мога да препоръчам достатъчно достатъчно Въведение в компютърните науки на Harvard CS50x. Можете да одитирате курса безплатно чрез edX и да спечелите сертификат, като изпълните всички задачи или можете да отидете със собствено темпо и да гледате всички лекции, публикувани в Youtube. Можете да създадете своя собствена програма за компютърни науки на ниво колеж с тази селекция от петнадесет онлайн курсове (много от които също са изброени в нашата серия Goldavelez.com U).

Вземете книга

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

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

Като програмист-самоук може да се възползвате и от книги, които предлагат по-широки съвети за професията. Ще подобрите вашето мислене и навици, черти, които можете да приложите към всеки език, който решите да научите. Кодът на Стив Макконел на 900 страници, завършен: Практически наръчник за изграждане на софтуер (2-ро издание) се счита за окончателното ръководство за най-добри практики, с подкрепени с данни съвети за всичко - от дизайна на проекта до отстраняване на грешки в кода.

Следствие от този бегемот е Clean Code: Наръчник за Agile Софтуерна изработка на „Чичо Боб“ Робърт Мартин. Мартин смята, че кодът трябва да бъде ефективно написан за лесно тестване и мащабируемост, което прави това задължително четене за много съвременни екипи за разработчици.

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

Вижте някои интерактивни уроци или игри с кодиране

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

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

Игрите за кодиране също са забавен начин да намокрите краката си в програмирането. Ако имате час за убийство, можете да опитате обикновените Hour of Code игри. Освен това много училища вече използват Minecraft: Образователно издание, за да учат децата на основи за програмиране с кодиращи блокове и дори JavaScript. (Можете да изтеглите тази версия на Minecraft безплатно, ако имате акаунт в Office 365 за образование.)

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

Опитайте детска играчка

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

Ако искате да разберете по-добре връзката между хардуер и софтуер, тогава ще се радвате на Piper Computer Kit 2, който ви създава компютър с Raspberry Pi. Използвайки този сам лаптоп, можете да се научите да кодирате чрез неговите персонализирани предизвикателства в режима на Minecraft Story Mode, да използвате плъзгане и пускане Blockly език, за да научите физически изчисления или просто да вземете някои основни Python от предварително инсталираните уроци.

Въпреки че вероятно няма да можете да създадете свой собствен дроид BB-8, можете да се научите да кодирате един с BOLT на Sphero. Използвайки придружаващото приложение, можете да контролирате дроид топката си с помощта на кодиращите блокове за плъзгане и пускане, наречени Scratch, или нивото до JavaScript, за да програмирате по-модерни движения.

Научете любимите си устройства (и помощници) на нови трикове

Имате ли умно устройство като Amazon Echo? Можете да поставите своите умения за кодиране на тест, като създадете персонализирани мини програми, за да извлечете повече функционалност от цифровите помощници на устройствата си. Alexa на Amazon може вече да знае много основни „умения“ за гласова команда, като четене на най-новите заглавия на новини, но можете да я научите на по-сложни задачи, като кодирате в Node.js, Java, Python, C # или Go. (Или, ако искате да започнете с нещо по-лесно, опитайте по-простия сайт за скици на Alexa умения.)

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

Като пресъздадете съществуващи проекти, ще научите повече за вътрешната работа на вашето високо адаптивно устройство. Може дори да се вдъхновите да създадете нови начини да използвате вашия мини-компютър и да се задълбочите по-навътре в света на кода. (Можете дори да се запишете в платформата Raspberry Pi и програмирането на Python на UC Irvine за класа на Raspberry Pi Platform чрез Coursera, ако искате малко помощ, за да започнете.)

Гледайте видеоклипове за кодирането

Понякога е просто по-лесно да гледате как някой ви показва как се прави. В днешно време можете да намерите всякакви образователни видеоклипове по почти всяка тема, свързана с кодирането: бивши GoogleRours споделяне на решения за кодиране на интервюта, YouTube YouTubers на живо по кодиращи маратони и дори ветерани за програмиране, които ви показват как да отстранявате конкретна грешка на всеки език, който искате.

Препоръчвам да проверите CS Dojo, TheNetNinja и CS50 YouTube канал на Харвард. Ако нямате време да търсите перфектно кодиращо видео или канал, можете също да разгледате огромната видеотека на LinkedIn Learning за проверени и професионално изглеждащи уроци. Докато абонаментната абонаментна услуга от 30 долара на месец няма за какво да кихате, можете да гледате неограничено количество съдържание и теми - правейки LinkedIn Learning по-добра сделка от другите онлайн класове по заявка, които са с досадни ограничения.

Практикувайте с лични проекти

Без значение колко сертификати и работилници по кодиране завършите или колко езици за програмиране, които научите, доказателството за вашите умения за кодиране ще бъде във вашия програмен проект. Въпреки че вашият личен проект не трябва да бъде толкова амбициозен, колкото създаването на следващите Google Maps, би трябвало да работите на 24/7, за да подобрявате непрекъснато и разширявате обхвата си.

Започнете с малки, но мислете големи. Вашият проект трябва да включва умения, които в момента имате в инструментариума си, но също така трябва да имате план за бъдещи функции и умения, които ще трябва да превърнете тази визия в реалност. Без да приложите уменията си за кодиране в няколко проекта, вие дори не бихте се считали за професионални концертни концерти - така че започнете да планирате и практикувате. (Нашият съвет? Използвайте кодиращите си котлети, за да създадете невероятна настройка за игровата нощ.)

Празнувайте малки победи

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

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

Google вашите съобщения за грешки

Това е най-добрият ни съвет за кодиране: Ако не можете да разберете защо кодът ви е разбит, винаги можете да търсите решения онлайн. Вероятно не сте първият човек, който е направил грешката си в края на краищата, а някой в ​​интернет със сигурност вече е намерил решение на вашия проблем. Просто „копирайте и поставете“ съобщението си за грешка в Google (или предпочитаната от вас търсачка), добавете двойка кавички около цялата фраза, така че да не търсите само ключови думи, а след това натиснете „Enter“. Надяваме се, това малко трикът ще ви доведе до правилния отговор.

Ако все още имате проблеми, винаги можете да публикувате въпроса си на форуми на разработчици като Stack Overflow, програмиране на Reddit subreddit или GitHub. Никога не боли да се обадиш на приятел или интернет непознат.

Хакнете чуждия код

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

Вземете ментор (или научете някой друг)

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

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

Посетете кодиращ буткамп

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

Ако искате да станете професионалист и да станете програмист на пълен работен ден, интензивен и персонален кодиращ bootcamp може да ви помогне, особено ако се научите най-добре в структурирана среда с реални хора, за да ви мотивират. Въпреки това, тези видове стартови лагери често са най-скъпите и отнемащи време: Вие гледате 15 000 долара само за обучение, плюс разходи за живот за няколко месеца, докато не завършите висше образование.

За щастие, институции като Flatiron School и The Grace Hopper Program предлагат стипендии или отложено обучение, за да направят тези стартови камери по-достъпни за по-слабо представени групи като малцинства и жени в технологиите. Вижте отчета за курса за цялостна разбивка на многото онлайн и лични стартиращи камери - включително подробни прегледи от техните възпитаници, които могат да ви помогнат да решите дали bootcamp ще ви помогне да постигнете мечтите си за програмиране.