Հումանիտարից մինչև ծրագրավորող թվերով և գույներով

Բարև, Հաբր: Ես ձեզ վաղուց եմ կարդում, բայց դեռ չեմ հասցրել գրել իմ սեփականը: Ինչպես միշտ՝ տուն, աշխատանք, անձնական գործեր, այստեղ-այնտեղ, և հիմա նորից հետաձգեցիք հոդվածը գրելը մինչև ավելի լավ ժամանակներ: Վերջերս ինչ-որ բան փոխվեց, և ես ձեզ կասեմ, թե ինչն ինձ դրդեց նկարագրել իմ կյանքի մի փոքրիկ հատվածը ծրագրավորող դառնալու մասին օրինակներով, որոնք կարող են օգտակար լինել սկսնակների, կասկածողների և տղաների համար, ովքեր անկեղծորեն չեն հավատում իրենց: Գնա՛

Սկսեմ հեռվից՝ մանկության տարիներին ծնողներս ինձ նվիրել են հսկայական քանակությամբ հանրագիտարաններ և գրքեր՝ բոլոր առիթների համար: Նվեր տալու ցանկացած պատճառ գիրք է: Հետո, իհարկե, ես երախտապարտ չէի նրանց, այլ ուղղակի դա ընկալում էի որպես ինքնին: Բայց ժամանակի ընթացքում, խոսելով այլ մարդկանց հետ, ես տարօրինակ եզրակացություն արեցի. շատերը չգիտեին այն, ինչ ես գիտեի, չէին լսում անուններ, հասկացություններ, հասկացություններ, չէին կարդում հեղինակներ և չէին դիտում ֆիլմեր: Հենց այս պահին մի խորաթափանցություն եկավ՝ ահա՛ ԳԻՏԵԼԻՔ: Երկար ժամանակ չգիտեի, թե որտեղ կարող եմ կիրառել այս ամենը, քանի որ մարդկանց հետ ուղղակի շփվելը ոչ մի կերպ չի վճարում, իսկ հետաքրքիր պատմություններ պատմելու մասնագիտությունն այն ժամանակ չկար (հիմա կան բլոգերներ. , YouTube, TED-ED և այլն): Անգլերեն էի սովորում երկար ու տքնաջան, քանի որ... «Դա խոստումնալից էր և օգտակար կլիներ ապագայում», - այն ժամանակ, իհարկե, վստահություն չկար իմ ապագա մասնագիտության նկատմամբ, ուստի «չեմ ուզում» ինձ նորից ու նորից քշեցին դասերի։ Հիմա, իհարկե, աներևակայելի շնորհակալ եմ, որ այդ պահին չցատկեցի և կարողացա լավ բազա ստանալ, ինչը, իհարկե, կարևոր դեր խաղաց ապագա մասնագիտությունս ընտրելու հարցում։

Ես պարզ հումանիստ չեմ, այլ «հիբրիդ». ունենալով զարգացած փափուկ հմտություններ և սիրելով կազմակերպել մարդկանց գործունեությունը, ես միևնույն ժամանակ հետաքրքրված եմ ֆիզիկայով, քիմիայով, տնտեսական երևույթներով, համակարգչային գիտությամբ և գիտահանրամատչելի նյութերով: Դպրոցում ես նույնիսկ քննություններ հանձնեցի ֆիզիկայից և ընդունվեցի տեխնիկական համալսարան բյուջեով։ Դիմելով միանգամից մի քանի բուհերի տրամագծորեն հակառակ ֆակուլտետների՝ մինչև վերջին պահը վստահ չէի, թե ինչ ընտրել։ Բյուջե դիմելուց, բոլոր թղթերը ստորագրելուց և դեկանի հետ խոսելուց հետո ես ու հայրս եկանք տուն և կատարած գործերով գնացինք:

Այնուամենայնիվ, երբ առավոտյան արթնացա, զարմացա, երբ հասկացա, որ իմ գլխում մի նյարդայնացնող և փշոտ միտք է նստել. «Ես պետք է գնամ մանկավարժական»: Ինչպե՞ս է այն ձևավորվել այնտեղ՝ ինքնուրույն, թե՞ ստվերային գործընթացների արդյունքում, ինչպիսին Մենդելեևն է, երբ նա երազում համակարգել է տվյալները՝ ձեռք բերելով պարբերական տարրերի աղյուսակի գիտելիքներ: Երբեք չեմ իմանա, բայց գնացի ծնողներիս մոտ, նրանց նկարագրեցի խնդիրը, բավականին հյութեղ գնահատականներ ստացա իմ ներկա մտքի գործընթացների, դրանց ուղղության և ընդհանուր զարգացման վերաբերյալ, բայց չնահանջեցի։

Ի վերջո, հասանք համալսարան, վերցրինք փաստաթղթերը (չնայած, որ դա ամենայն հավանականությամբ անօրինական էր, քանի որ ընդունելությունն անցել էր) և գնացինք այլ համալսարան դիմելու։ Այդ ժամանակ հայրս շատ կարճ սանրվածք ուներ, նոր էր աչքի վիրահատել և հանել ակնոցը և, ընդհանրապես, տիպիկ «90-ականների եղբոր» տեսք ուներ՝ չնայած 2 բարձրագույն կրթությանը և դասախոսական ստաժին: Իհարկե, նրանք չէին կարող հրաժարվել նման գունեղ կերպարից։ Այդ ժամանակվանից ես երբեք չեմ փոշմանել, որ ընդունվել եմ օտար լեզուների ֆակուլտետ։

Աշխատելով երեխաների հետ՝ ես հասկացա երկու բան.

  • Ինձ շատ է դուր գալիս, կարող եմ հետաքրքիր պատմություն պատմել, գրքերից ու հանրագիտարաններից քաղած տեղեկատվությունը ներդնել պատմության մեջ և, ամենակարևորը, արդյունքների հասնել անգլերենի դասավանդման ոլորտում:
  • Գումարի աղետալի պակաս կա, նույնիսկ եթե կես դրույքով աշխատանք եք կատարում (մասնավոր պարապմունքներ + բոլոր սեզոնային լեզվական ճամբար երեխաների համար)

Արդյունքում մի քանի տարի որպես ուսուցիչ աշխատելուց հետո (անգլերեն, գերմաներեն և մի քիչ իսպաներեն) որոշեցի հեռանալ մասնագիտությունից, քանի որ... ուղղակի այրվել է: Հավանաբար ձեզնից շատերին է ծանոթ այս զգացողությունը. թվում է, թե գործը նույնն է, նույն մարդիկ, գործը, այն ամենը, ինչ ձեզ սազում էր երեկ, բայց հոգին դիմադրում է ամեն աշխատանքային օր, երեխաների սխալները ներքուստ նյարդայնացնող են դարձել, խաղաղությունը, որը միշտ ինչ-որ տեղ է եղել ներսում, սկսեց անհետանալ, և խուճապային մտքեր հայտնվեցին ինչ-որ տեղ փախչելու մասին:

Իմ ողջ կարիերայի ընթացքում ես դիտարկում էի մասնագիտությունս փոխելու հնարավորությունը ավելի ակտուալ, մարդկանց հետ աշխատելու հետ կապ չունեցող՝ ծրագրավորման լեզուներ ինքնուրույն ուսումնասիրելու շուրջ 10 փորձ կատարելով։ C++, C#, Delphi, Python, Pascal, Java - այս ամենը բարդ էր, անհասկանալի, վախեցնող, ժամանակատար և անարդյունավետ: Իրականում ես պարզապես չունեի բավարար մոտիվացիա՝ ոչ 2008-2009 թվականների ճգնաժամը, ոչ էլ 2014-2015 թվականների խնդիրները չփոխեցին իմ վերաբերմունքը աշխատանքի նկատմամբ։ Եվ երբ զգացմունքային այրումը սկսվեց, պարզ դարձավ, որ ես չեմ կարող շարունակել այսպես աշխատել՝ հանուն երեխաների, որոնց չէի ուզում վիրավորել։

2018 թվականին ընկերուհուս հետ Կրասնոյարսկից տեղափոխվեցի Մոսկվա, նա տեղափոխվեց տեղի համալսարան, և ես աշխատանք գտա մասնավոր օտարալեզու դպրոցում։ Նոր վայր, արժանապատիվ աշխատավարձ, նոր մարդիկ և զգացմունքներ. այս ամենն ինձ թույլ տվեց շնչել իմ մեջ մոտ վեց ամիս, որից հետո վերադարձան հին խնդիրները։

Մասնագիտությունը փոխելու վերջնական որոշումը հասունացավ իմ մեջ, ուրվագծվեց ծրագիր, ուսումնասիրվեցին աշխատաշուկան և դիմորդների պահանջները, փորվեցին ընկերների և ծանոթների շփումները գոնե ինչ-որ կերպ կապված ՏՏ-ի հետ, և ես իմ մանրակրկիտ հարցերով հանեցի նրանց ուղեղը: . Ընդհանուր առմամբ, պլանը ստացվեց հետևյալ կերպ.

  1. Ընտրեք ամենապարզը, ամենաարագը արդյունքի առումով և հենց սկզբից աշխատանքի գիծ, ​​որը վճարում է ոչ պակաս, քան ձեր նախորդ տեղում: Այն դարձավ ճակատային զարգացում: Ինքներդ դատեք. C2 մակարդակում անգլերեն իմանալով, կոդի մեծ մասն ինձ համար ներկայացնում էր շարահյուսության հետ խառնված անգլերեն հրամաններ, որոնք բավականին լավ հիշվում էին (առաջնորդված «կա՛մ սա, կա՛մ դու ընդհանրապես չես աշխատում» ոճի մտքերով): Արդյունքը ճակատային մասում անմիջապես տեսանելի է. սա ավարտված էջ է: Վճարը նույնպես վատ չէ՝ 40 հազար ռուբլուց (ըստ hh.ru-ի)։ Աշխատավարձս այն ժամանակ մոտ 60-65 էր + անձնական կես դրույքով ~20 հազար։ Սա բավական չէր, բայց երբ պետք է ինքդ քեզ հետ կռվես միայն աշխատանքի գալու համար, ոչ մի գումար քեզ չի ուրախացնում։
  2. Վճարում և գործողությունների պլան. Ես նպատակ էի դրել 60+ ռուբլի, ուստի սկսեցի ուսումնասիրել համապատասխան front-end տեխնոլոգիաների ցանկը՝ HTML, CSS, JavaScript (ES5-6), React: Սրանք համալրվել են գործիքներով, որոնք հեշտացնում են կոդի կոորդինացումը և աշխատել տարբեր փուլերում՝ jQuery, Git, SASS, webpack, VS Code: Սա հնարավորություն տվեց ուրվագծել այս ամենն աստիճանաբար ուսումնասիրելու ծրագիր՝ միաժամանակ կիրառելով գիտելիքներ վեբ կայքերի ստեղծման, կոդով դասավորությունների ապամոնտաժման և ներդրման և ընկերների հետ խորհրդակցելու գործում:
  3. Ինքնուսումնասիրություն. 2019 թվականի փետրվարից մինչև 2019 թվականի հունիսը ես ուսումնասիրեցի այս ամենը, ջանասիրաբար ուսումնասիրելով փաստաթղթերը, կարդալով StackOverFlow և փնտրելով պատասխաններ ամենահիմար հարցերի համար, որոնք կարող էին առաջանալ: Ինձ համար դժվար էր. երբեմն կոդը պարզապես չէր ուզում աշխատել այնպես, ինչպես ես պատկերացնում էի: Բայց ես չհուսահատվեցի. կոդի օրինակի վերլուծությունը + փաստաթղթերը հուշեցին, թե որտեղ եմ սխալվել, ինչ եմ սխալ դրել և ինչ չեմ ավարտել: Այդ ժամանակ էր, որ ես ամեն օր գովում էի ծնողներիս, որ պնդել են, որ ես մանուկ հասակում անգլերեն սովորեմ. չէ՞ որ բոլոր համապատասխան փաստաթղթերը անգլերեն էին:

HTML-ն ու CSS-ն ինձ համար ամենահեշտն էին` մոտ 2 շաբաթ: Այս ընթացքում ես հավաքեցի որոշ դիզայներների կայքի դասավորությունը՝ օգտագործելով մաքուր HTML և CSS և հավաքեցի բոլոր հնարավոր հենակները, ուսումնասիրեցի մի շարք մոտեցումներ և հասկացա, որ այս բոլոր տողերը ձեռքով գրելը աներևակայելի ժամանակատար էր: Մի փոքր գուգլելուց հետո ես անմիջապես հանդիպեցի Bootstrap 4-ին և, ծանոթանալով հնարավորություններին, սկսեցի կարդալ փաստաթղթերը: Մի քանի օր մտախոհ ծխելու ձեռնարկներից հետո, որոնք ընդմիջվում էին YouTube-ում զանազան ուսուցողական տեսանյութեր դիտելով, ես ձեռնամուխ եղա ստեղծելու իմ սեփական լիովին արձագանքող կայքը՝ նկարներով, քարտերով և անիմացիաներով: Սա տևեց մոտ 2 շաբաթ, որի ընթացքում ես հայտնաբերեցի jQuery-ն որպես DOM-մանիպուլյացիայի գործիք:

Իհարկե, դա լավագույն ընտրությունը չէր, բայց ամեն ինչ պարզ ու հասկանալի էր, իսկ արդյունքն ինձ համար կարևոր էր։ Ի դեպ, խորհուրդ եմ տալիս այս փուլում չլսել զովացուցիչ ծրագրավորողներին, ովքեր առաջարկում են օպտիմալացումներ և բարելավումներ, այլ պարզապես գտնել կոդի ամենատարածված գործածությունը, նայել օրինակներ և պարզապես պատճենել ոճը: Առաջադրանքը սկզբնական փուլում մեկն է՝ քանի դեռ այն աշխատում է։ Միայն դրանից հետո կարող եք մտածել մնացած ամեն ինչի մասին, և երբ աշխատեք ընկերությունում, նրանք ձեզ կբացատրեն և ցույց կտան տեղական չափանիշները, որոնք դուք պետք է հետևեք:

Ամենադժվարը սկսվեց մաքուր JavaScript-ի ուսուցման փուլում. գլխումս շատ լուրջ հարց ծագեց՝ ինչո՞ւ սովորել սա, եթե jQuery-ն ավելի հեշտ է: Ես գնացի Google պատասխանի համար. պարզվեց, որ jQuery-ն շուտով կգնա այլ աշխարհ, բացառությամբ ժառանգական կոդի, և բոլոր իսկական ծրագրավորողները օգտագործում են JS, քանի որ շրջանակները գալիս և գնում են, բայց մաքուր JS-ը դեռ ակտուալ է: Մենք ուզում ենք աշխատանք գտնել և երկար ժամանակ անել, չէ՞: Այսպիսով, ես սկսեցի դիտել տեսանյութեր, փորձել կոդ և գործառույթներ գրել ուսումնական կայքերում և վերաշարադրել իմ նախորդ նախագծերը: Բնականաբար, սկզբում ստացվեց մի փոքր պակաս, քան ոչինչ, բայց մի երկու օր հետո ես այլևս չէի մտածում սլաք-ֆունկցիաներ գրելու մասին (որոնք պարզվեց, որ սովորականից ավելի պարզ էին), աշխատելով document.getElementById ընտրիչներով: , զանգվածների տեսակավորում և օբյեկտի տարրերի արդյունահանում .map, .filter, .reduce, API-ի և AJAX-ի հետ աշխատելու և այլնի միջոցով։

Եվ ես չսխալվեցի. React-ը սովորելիս ես հանդիպեցի մի տոննա JS կոդի, որը պետք է վերլուծել և հասկանալ, հակառակ դեպքում ոչինչ չէր ստացվի: Խորը շունչ քաշելով և թեթևակի խղճալով ինձ՝ ես կրկնապատկվող ուժով սկսեցի խորանալ գործընթացի էության մեջ։ Շատ շուտով պարզվեց, որ React-ը մի փոքր փոփոխված HTML (JSX) + տարբեր գործիքների հավաքածու է, որոնք հեշտացնում են էջը թարմացնելը և SPA (մեկ էջի հավելված) ստեղծումը։ Ավելացրեք մի պտղունց JS, և մենք կունենանք անիմացիաներ, բեռնում և անցումներ: Ընտելանալով շարահյուսությանը, ես վերցրեցի առաջին առցանց խանութի դասավորությունը, որը հանդիպեցի և գրեցի պարզ SPA, որը թույլ տվեց ինձ ընտրել կատեգորիաներ, նավարկել կայքում և փոխել ապրանքների հաշվիչները զամբյուղում:

Ընդհանրապես, ոչ մի վատ բան չկա նրանում, որ դուք կյանքում երբեք չեք ծրագրավորել, ոչ, եթե աստիճանաբար աշխատեք ինքներդ ձեզ վրա, ապա ամեն ինչ հնարավոր է: Անգամ առանց անգլերենի իմացության, կան բազմաթիվ ռուսալեզու կայքեր, որոնք կբավականացնեն նախնական փուլի համար։ Հաջողություն!

Հղում դեպի ուսումնական նյութեր, YouTube ալիքներ, հոդվածներ և այն ամենը, ինչ ես օգտագործել եմ իմ վերապատրաստման ընթացքում:

Source: www.habr.com

Добавить комментарий