Порака до идниот програмер

Така, решивте да станете програмер.

Можеби сте заинтересирани да создадете нешто ново.

Можеби големите плати ве мамат.

Можеби само сакате да го промените вашето поле на активност.

Не е поентата.

Она што е важно е да одлучите вие станете програмер.

Што да се прави сега?

Порака до идниот програмер

И има неколку пристапи.

Прво: оди на универзитет за ИТ специјалност и да добијат специјализирано образование. Најбанален, релативно сигурен, исклучително долг, најфундаментален начин. Работи ако сè уште завршувате училиште или имате средства да се издржувате од една и пол (во најдобар случај, ако фатите сè на лет и можете да почнете да работите во втора година) до четири (ако комбинирате работа и учење не ти е силна страна ) години.

Што е важно да се знае овде?

  • Неопходно е да се избере вистинскиот универзитет. Погледнете ги програмите за обука, оценките. Добар показател се натпреварите од универзитетот. Ако универзитетските тимови барем периодично заземаат места во првите десет на релативно големи олимпијади за програмирање, тогаш кодирањето на универзитетот нема да биде зачеток (и покрај фактот што вие лично можеби воопшто не ве интересираат олимпијадите). Па, генерално, правилата на здравиот разум: малку е веројатно дека огранокот на Државниот универзитет во Бајкал во Братск ќе ве направи моќен полн оџак.
    Примери за добри универзитети: Московски државен универзитет/државен универзитет во Санкт Петербург (очигледно), Бауманка (Москва), ITMO (Санкт Петербург), НСУ (Новосибирск). И покрај сета нивна еминенција, сосема е можно да се влезе во нив со буџет, ако не се стремите кон врвни оддели.
  • Не само универзитет. И покрај фактот дека ќе бидете сеопфатно обучени за секакви работи, тоа не е доволно. Поради бирократијата, програмата за обука речиси секогаш ќе заостанува зад современите трендови. Во најдобар случај - за една или две години. Во најлош случај - за 5-10 години. Сами ќе треба да ја надополните разликата. Па, очигледно: ако го проучувате материјалот заедно со други студенти, тогаш секој од нив ќе биде ваш рамноправен конкурент. Ако по желба излезете напред, ќе изгледате многу подобро на пазарот.
  • Барајте работа што е можно порано. Почнав да работам во втора година. До крајот на универзитетот, јас веќе бев доста среден програмер, а не скромен помлад без искуство. Мислам дека е очигледно дека по завршувањето на факултетот, заработката 100 илјади е попријатна од заработката 30 илјади. Како да се постигне ова? Прво, видете ги точките А и Б. Второ, одете на состаноци, фестивали, конференции, саеми за работа. Следете го пазарот и обидете се да се вработите како помлад/приправник со скратено работно време во која било компанија за која сте барем приближно соодветни. Не плашете се од платени конференции: тие често нудат многу убави попусти за студентите.

Ако ги следите сите овие точки, тогаш до моментот кога ќе ја добиете вашата диплома, можете да станете исклучително добар специјалист со работно искуство и богато фундаментално знаење, кое самоуките често го занемаруваат поради нивната неприменета природа. Па, кората може да помогне ако одите во странство: тие често го гледаат ова таму.

Ако не се придржувате... Па, можете да добиете резултат така што ќе одите во тек, ќе копирате и ќе се подготвите за испитот преку ноќ. Но, колку мислите дека ќе бидете конкурентни тогаш? Се разбира, не велам дека треба да добивате А во сè. Треба само да стекнете знаење. Користете здрав разум. Проучете што е интересно и корисно и не грижете се за оценките.

Порака до идниот програмер

Главната работа не е она што тие се обидуваат да го втурнат во вас. Главната работа е она што е интересно и релевантно

-

Следно втор начин: курсеви за програмирање. Интернетот е апсолутно преполн со понуди да ве направат помлад за само 3 месеци часови. Само со портфолио, па дури и ќе ви помогнат да најдете работа. Само 10 илјади месечно, да.
Можеби ова ќе функционира за некого, но чисто IMHO: ова е целосна глупост. Не трошете време и пари. И затоа:

Човек кој е далеку од ИТ нема да може да ги разбере спецификите на професијата за 3 месеци. Воопшто нема шанси. Има премногу информации за апсорпција, премногу за разбирање и уште повеќе, премногу за да се навикнеш.

Тогаш што ќе ти продадат? Ќе ти продадат „механичка вештина“. Без многу да навлегувате во детали, тие ќе ви покажат што треба да напишете за да го добиете токму овој резултат. Со детални упатства и помош на наставник ќе напишете некаква апликација. Еден, максимум два. Еве го портфолиото. А помош за наоѓање работа е испраќање на слободни работни места на јуниори од големи компании каде што веројатно нема да добиете интервју.

Зошто е ова така? Едноставно е: многу е важно програмерот да размислува апстрактно. Програмер решава проблеми кои можат да се решат на милијарда можни начини. А главната задача е да се избере една, најправилната, од милијардите и да се спроведе. Создавањето на еден или два проекти според инструкции ќе ви даде одредено познавање на програмски јазик, но нема да ве научи како да решавате апстрактни проблеми. Да направиме аналогија: замислете дека тие ветуваат дека ќе ве научат да се занимавате со ориентација, ќе ве одведат по неколку едноставни патеки за пешачење, а потоа велат дека сте подготвени сами да ја освоите тајгата во зима. Па, што, те научија да користиш компас и да запалиш оган без кибрит.

Да резимираме: не им верувајте на оние кои ветуваат дека ќе ве „стркалаат“ за кратко време. Да беше ова можно, сите одамна ќе станеа програмери.

Порака до идниот програмер

Лево: Што ќе ве научат. Точно: Што ќе се бара од вас на работа?

-

Трет начин - патот што го избра мнозинството. Самообразование.

Најтешкиот, но можеби и најблагородниот начин. Ајде да го разгледаме подетално.

Затоа решивте да станете програмер. Каде да се започне?

Пред сè, треба да си одговорите на прашањето: зошто го сакате ова? Ако одговорот е „Па, се разбира, тоа не е особено интересно, но тие плаќаат многу“, тогаш можете да застанете таму. Ова не е место за вас. Дури и ако вашата волја е доволна за да просеете низ куп информации, да напишете илјадници линии код, да издржите стотици неуспеси и сепак да добиете работа, како резултат на тоа, без љубов кон професијата, ова само ќе доведе до емоционално исцрпување. Програмирањето бара огромна количина на интелектуален напор, и ако овие напори не се поттикнати од емотивно враќање во форма на задоволство за решен проблем, тогаш порано или подоцна мозокот ќе полуди и ќе ве лиши од способноста да решите што било. . Не е најпријатното сценарио.

Ако сте сигурни дека сте заинтересирани за ова, тогаш можете да одлучите за спецификите - што точно сакате да направите. Ако не знаете како програмерите може да се разликуваат едни од други, Google може да ви помогне.

Веднаш ќе го напишам првиот совет за да не заборавите: научете англиски. Потребен е англиски јазик. Не можете да одите никаде без англиски. Нема шанси. Без англиски не можете да станете нормален програмер. Тоа е тоа.

Следно, препорачливо е да се подготви патоказ: план според кој ќе се развивате. Проучете ги спецификите, погледнете ги слободните работни места во вашата специјалност, дознајте површно какви технологии се користат таму.

Пример патоказ за заднински програмер (не за секого, се разбира, ова е само една од можните опции):

  1. Основи на html/css.
  2. Пајтон. Основи.
  3. Мрежно програмирање. Интеракција помеѓу пајтон и веб.
  4. Рамки за развој. Џанго, колба. (забелешка: само за да разберете каков вид „џанго“ и „колба“ се тие, треба да ги погледнете слободните работни места и да прочитате што се бара таму)
  5. Длабоко проучување на питон.
  6. js основите.

Тоа многу, Повторувам, многу груб план, чија секоја точка е огромна сама по себе, а многу теми не се вклучени (на пример, тестирање на код). Но, ова е барем некаква систематизација на знаењето што ќе ви овозможи да не се збуните за тоа што знаете, а што не. Како што проучуваме, ќе стане појасно што недостасува, а овој патоказ ќе се надополнува.

Следно: најдете ги материјалите што ќе ги користите за проучување. Главните можни опции:

  • Онлајн курсеви. Не оние курсеви кои „јуни за 3 дена“, туку оние што учат една специфична работа. Често овие курсеви се бесплатни. Примери на сајтови со нормални курсеви: степик, coursera.
  • Онлајн учебници. Има бесплатни, shareware, платени. Сами ќе сфатите каде да платите, а каде не. Примери: htmlакадемија, Learn.javascript.ru, џанго книга.
  • Книги. Ги има многу, многу. Ако не можете да изберете, три совети: обидете се да земете нови книги, бидејќи... информациите стануваат застарени многу брзо; Издавачката куќа О'Рајли има прилично високо ниво на квалитет и нормална презентација; Ако е можно, прочитајте на англиски.
  • Состаноци/конференции/предавања. Не толку корисно во однос на богатството на информации, но исклучително корисно во однос на можноста да комуницирате со колегите, да поставувате релевантни прашања и да стекнете нови познанства. Можеби дури и најдете слободно работно место.
  • Google. Многу луѓе потценуваат, но способноста едноставно да се најдат одговори на некои прашања е многу важна. Слободно на Google работи што не ги разбирате. Дури и искусни постари лица го прават тоа. Способноста брзо да се најдат информации за нешто е во суштина иста како да се знае.

Добро, решивме за изворите на информации. Како да се работи со нив?

  1. Читајте/слушајте внимателно. Не читајте кога сте уморни. Навлезете во значењето, не прескокнувајте ги точките што изгледаат очигледни. Честопати преминот од очигледното кон неразбирливото се случува доста брзо. Слободно вратете се и препрочитајте.
  2. Земете белешки. Прво, ќе ви биде полесно да ги разберете вашите белешки кога има многу информации. Второ, на овој начин информациите подобро се апсорбираат.
  3. Направете ги сите задачи што ви ги предлага изворот. Иако не, не така. Дали СИТЕ задачи што ви ги нуди изворот. Дури и оние кои изгледаат едноставни. Особено оние кои изгледаат премногу комплицирани. Ако заглавите, побарајте помош проток на редење, барем преку Google translate. Задачите се напишани со причина, потребни се за правилно асимилирање на материјалот.
  4. Сами смислувајте задачи и правете ги и вие. Идеално, би требало да има повеќе пракса отколку теорија. Колку поцврсто го прицврстите материјалот, толку е поголема веројатноста дека за еден месец нема да го заборавите.
  5. Изборно: направете квизови за себе додека читате. Запишете незгодни прашања во посебен извор, а по една недела или месец, прочитајте и обидете се да одговорите. Ако не работи, обидете се повторно.

И ние ги повторуваме овие 5 точки за секоја технологија што се проучува. Само на овој начин (со темелно проучување на теоријата и густо покривање на практиката) ќе развиете висококвалитетна база на знаење со која ќе можете да станете професионалец.

И се чини дека сè е едноставно: учиме технологии еден по еден, го разбираме Зен и одиме на работа. Така е, но не е.

Повеќето луѓе кои учат програмирање одат вака:

Порака до идниот програмер

сликата е искрено украдена оттука

И тука треба да го разгледате секој од чекорите подетално:

Започнете: Имате нула знаење. Појдовна точка. Сè уште ништо не е јасно, но веројатно е исклучително интересно. Патеката започнува нагорно, но лесно. Многу наскоро ќе се искачите

Врв на глупоста: „Ура, ги завршивте првите неколку курсеви! Сè функционира!“ Во оваа фаза еуфоријата од првите успеси ги заслепува очите. Се чини дека успехот е веќе блиску и покрај тоа што се уште сте на почетокот на вашето патување. И додека се стремите кон овој успех, можеби нема да забележите како ќе започне вашето брзо паѓање во јама. И името на оваа јама:

Долината на очајот: Значи, ги завршивте основните курсеви, прочитавте неколку книги и одлучивте да започнете да пишувате нешто свое. И одеднаш не функционира. Се чини дека се е познато, но како да се комбинира за да функционира не е јасно. "Не знам ништо", „Нема да успеам“. Во оваа фаза многу луѓе се откажуваат. Всушност, знаењето навистина постои и никаде не испарило. Јасните барања и поддршка едноставно исчезнаа. Почна вистинското програмирање. Кога треба да маневрирате во простор каде што има цел, но нема средни фази, многу луѓе запаѓаат во ступор. Но, во реалноста, ова е само уште една фаза на учење - дури и ако првите десет пати сè излезе некако, со огромен труд, грдо. Главната работа е да се довршува работата одново и одново, барем некако. По единаесетти пат работите ќе бидат полесни. На педесетти ќе се појави решение кое ќе ви изгледа убаво. На стоти веќе нема да биде страшно. И тогаш ќе дојде

Падина на просветителството: Во оваа фаза јасно се појавуваат границите на вашето знаење и вашето незнаење. Незнаењето повеќе не е застрашувачко, постои разбирање како да се надмине. Ќе стане полесно да се маневрира во вселената без одлуки. Ова е веќе финишот. Веќе сфаќајќи што ви недостасува како специјалист, ќе го завршите и консолидирате потребното и ќе влезете на терен со мирна душа.

Плато на стабилност: Честитки. Ова е финишот. Вие сте експерт. Можете да работите, нема да се изгубите кога ќе се соочите со непозната технологија. Речиси секој проблем може да се надмине ако вложите доволно труд. И покрај фактот дека ова е финишот, тоа е само почеток на уште поголемо патување.

Патот на програмерот.

Среќно со ова!

Литература за факултативно читање:
За станување програмер и ефектот Данинг-Кругер: ѕиркаат.
Хардкор начин да станете програмер за 9 месеци (не е погоден за секого): ѕиркаат.
Список на проекти што можете да ги реализирате самостојно за време на вашите студии: ѕиркаат.
Само малку дополнителна мотивација: ѕиркаат.

Извор: www.habr.com

Додадете коментар