5 բան, որ պետք է անել Հայաստանում ծրագրավորում սովորելու համար

Հայաստանում շատ շատերը (նաև հումանիտար կրթություն ունեցողները) ցանկանում են սովորել ծրագրավորում: Այս եզրակացությանը ես եկել եմ՝ ստանալով բազմաթիվ հումանիտար կրթությամբ, բայց տեխնիկական մղումներով CV-ներ իմ թիմում հիմա առկա Junior Android Developer-ի և iOS Developer-ի թափուր աշխատատեղերի համար:

Ծրագրավորումը մոդայիկ է, հետաքրքիր և բարձր վարձատրվող, ուստի շատ տրամաբանական է, որ մարդականց մոտ առկա է այն սովորելու մեծ ցանկություն: Ուստի և որոշեցի գրել այս փոքրիկ նյութը՝ օգնելու համար կողմնորոշվել, թե ինչ է պետք սովորել ու ինչի վրա է պետք ուշադրություն դարձնել շուկայում մրցունակ մասնագետ դառնալու համար:

Սովորիր անգլերեն

Do you know English ?

Եթե no, ուրեմն go home and study hard, որովհետև առանց գոնե բավարար անգլերենի իմացության ծրագրավորման ոլորտում որևէ բան անել չես կարող։ Անգլերենը այն լեզուն է, որով խոսում և մտածում է ծրագրավորման աշխարհը, անգլերենով են հրատարակվում ամենանոր ու ակտուալ գրականությունը և հրապարակվում վերջին նորությունները։ Ծրագրավորումը հիմնված է շարունակական կրթության վրա, ու եթե չգիտես անգլերեն, դու չես կարող տեղյակ լինել վերջին նորություններից ու լինել մրցակցային կադր աշխատաշուկայում։ Իհարկե, կան ինչ-որ գրքեր ռուսերեն լեզվով, որոնք, սակայն, արդիական չեն ու հանդիսանում են անգլերեն հրատարակությունների հնացած թարգմանություններ։ Ընդհանուր առմամբ, ռուսերեն հրատարակությունները հետ են ընկած անգլերեն սկզբնաղբյուրներից մի քանի ամսից մի քանի տարով։ Բաներ կան, որ ընդհանրապես բացակայում են ռուսալեզու գրականությունում։ Ռուսերենով ծրագրավորում սովորելը նման է Internet Explorer-ից օգտվելուն՝ դանդաղ է, ծրագրավորողներն այն չեն սիրում ու ամեն ինչ չէ, որ նրանով ճիշտ է երևում:

Ընտրիր ճիշտ ծրագրավորման լեզու

Քանի լեզու գիտես, այնքան մարդ ես, բայց ծրագրավորման ոլորտում կարևոր է ոչ այնքան քո իմացած լեզուների քանակը, որքան դրանց տիրապետելու խորությունը: Հայաստանում ամենաշատ աշխատատեղեղերը առկա են վեբ և մոբայլ ծրագրավորման ոլորտներում, ուստի եթե ուզում ես աշխատատեղի ընտրության հնարավորինս մեծ հնարավորություն ունենալ, վեբ ծրագրավորման համար ուսումնասիրիր PHP և JavaScript, իսկ մոբայլ ծրագրավորման համար՝ Java, Objective-C կամ Swift: Ծրագրավորման լեզուն սովորելուց հետո անհրաժեշտ կլինի սովորել նաև ծրագրավորման լեզվի կիրառական շրջանակը (application framework) , լինի դա Zend, Codeigniter կամ Android ու iOS SDK-ները: Հիշիր, որ ծրագրավորման լեզու սովորելը նման է շախմատ խաղալ սովորելուն՝ դու հեշտ կսովորես, թե որ ֆիգուրը ինչպես է շարժվում, սակայն քեզանից տարիներ կպահանջվեն՝ դրանք ճիշտ ձևով շարժելու համար: Նմանապես համարյա բոլոր ծրագրավորման լեզուների ուղղագրությունը (syntax) դու կսովորես շատ հեշտ, բայց դրանք գրագետ կիրառելու համար շատ ավելի մեծ ջանքեր կպահանջվեն:

Օգտվիր որակյալ ռեսուրսներից

Այն, թե ինչքան հաճելի և էֆեկտիվ կլինի քո ուսումնական պրոցեսը, կախված է նախ և առաջ այն ռեսուրսների որակից, որոնցից օգտվում ես: Ինտերնետը հիմա վխտում է տարբեր անվճար ուսումնական ռեսուրսներով ծրագրավորում սովորողների համար, որտեղ ամենաբարդից մինչև ամենապարզ ու հիմարակայուն ձևերով բացատրվում են ծրագրավորման կոնցեպտները ու տրվում են պրակտիկ խորհուրդներ արագ սովորելու համար: Դրանց մի որոշ մասը լավն է, մի ավելի մեծ մասը՝ ոչ, ուստի այստեղ ճիշտ ընտրություն կատարելը շատ կարևոր է: Բացի գրքերից՝ կարող ես ծրագրավորում սովորել կայքերում (ամենահայտնիներից է https://www.codecademy.com/-ը), որոնք ոչ միայն տալիս են տեսական գիտելիքներ, այլ նաև թույլ են տալիս գրել և փորձարկել քո գրած կոդը: Առկա է նաև հայկական լավ ռեսուրս՝ հայկական Sololearnը, որտեղ առկա են ծրագրավորման ամբողջական կուրսեր, և այն հասանելի է ոչ միայն համակարգչի վրա այլ նաև մոբայլ տարբերակով: Եթե չես ցանկանում սովորել ինքնուրույն, այլ կանոնավոր հաճախել դասերի, ապա կարող ես վճարել ամիսը 40,000–60,000 դրամ և ընդգրկվել Armenian Code Academy-ի դասերին, որը նաև դասընթացի վերջում ստեղծում է բարձր շանսեր հայկական լավագույն IT ընկերություններում աշխատանքի անցնելու համար: Ուստի տարբերակները շատ են, պետք է ընդամենը ցանկանալ:

Շփվիր մասնագետների հետ

Ծրագրավորման աշխարհը հիմնված է միմյանց փոխօգնության ու փորձի փոխանակման վրա, ուստիև կարևոր է ոչ միայն գիտելիքներ քաղել տարբեր ուսումնական ռեսուրսներից, այլ նաև շփվել տարբեր մասնագետների հետ ու սովորել անմիջականորեն նրանցից: Այս ճանապարհով ստացած գիտելինքը շատ ավելի արժեքավոր է, քանի որ կազմված է ոչ թե գրքային տեսական վերլուծություններից, այլ հիմնված է իսկական մասնագետների տարիների փորձի վրա: Բարեբախտաբար, Հայաստանում առկա են բազմաթիվ հարթակներ, որտեղ կարող ես ներկա գտնվել այդպիսի միջոցառումների: Ամեն տարի կազմակերպվում է Google Developers Group Armenia-ի DevFest-ը, որտեղ են հավաքվում տարբեր վեբ և մոբայլ ոլորտի պրոֆեսիոնալներ ու քննարկում Google-ի և այլ տեխ. հսկաների վերջին նորամուծությունները ու կիսվում փորձով: Պարբերաբար կայանում են նաև ProductTank Yerevan-ի հանդիպումներ, որտեղ ավելի շատ քննարկվում են արտադրանքի հետ կապված հարցեր, որ կարող է հետաքրքրել արտադրանքի դիզայնով կամ ստարտափերով զբաղվողներին: Բավական ակտիվ է գործում նաև Երիտասարդ հետազոտողների «Մերգելյան» ակումբը, որտեղ պարբերաբար անց են կացվում տարբեր զրույց-քնարկումներ ՏՏ ոլորտի մասին: Ի վերջո, տեխնիկական միջոցառումների հայկական էպիկենտրոնն է ԹՈՒՄՈ ստեղծարար արվեստների կենտրոնը, որի կազմակերպած միջոցառումներին են մասնակցում ոչ միայն Հայաստանից, այլ նաև արտասահմանից գերհզոր դեմքեր: Իմ նշածներից զատ, լինում են բազմաթիվ այլ միջոցառումներ: Բարեբախտաբար, միջոցառումների ցուցակն այնքան ավելի մեծ է, որ չի տեղավորվի ոչ իմ այս գրառման, ոչ էլ ձեր համբերության սահմաններում:

Ծրագրավորիր

Ծրագրավորում սովորելու ամենաարդյունավետ ձևը ծրագրավորելն է: Հնարավոր է, որ այս ռեկուրսիվ արտահայտությունը քեզ անհասկանալի թվա: «Բա ի՞նչ եղավ էդ իմ անգլերեն սովորելը, գրքեր կարդալը ու հանդիպումների գնալը», հնարավոր է հարցնես դու: Թվարկված ամեն ինչը միտված է քեզ առավելագույնս օգնելու և սատարելու ծրագրավորում սովորելու բարդ գործի մեջ, սակայն ոչինչ աշխարհում չի կարող փոխարինել այն զգացումը որ դու կապրես, երբ տեսնես, թե ինչպես է աշխատում քո գրած կոդը: Դու աչքերդ կփչացնես՝ մոնիտորի առաջ գիշերները ծրագրավորելով, անգիր կիմանաս առաջացող սխալների կոդերը, կռիվ կտաս բազմաթիվ ու զզվելիության տարբեր աստիճան ունեցող սխալների հետ, կըներանաս StackOverflow կայքին, բայց միևնույն ժամանակ ձեռք կբերես ծրագրավորման համար կենսականորեն անհրաժեշտ փորձ: Փորձը ծրագրավորողի ամենադանդաղ ու ամենադաժան ձեռք բերվող բայց նաև ամենաարժեքավոր հմտությունն է ու վճռական մրցակցային առավելությունը աշխատաշուկայում, ուստի և որքան արագ նստես համակարգչի առաջ ու միացնես «քո նախընտրած տեքստային խմբագրիչը», այնքան լավ:

Աշխարհում ՏՏ ոլորտը աճում է հսկայական արագությամբ, ու ծրագրավորողները հիմա ամբողջ աշխահում ամենապահանջված մասնագետներն են: ՏՏ ոլորտը նաև աշխարհի ամենաբաց ու ներառական ոլորտներից մեկն է. ոչ ոքի չի հետաքրքրում, թե ինչ համալսարան ես ավարտել (կամ ավարտել ես ընդհանրապես, թե ոչ), որտեղ ես ապրում կամ ինչ գույնի շորտեր ես նախընտրում հագնել: Կարևորն այն է, թե ինչ ես կարող անել: Իսկ անել կարելի է շատ բան, անհրաժեշտ է միայն համապատասխան ցանկություն:

Կարապետ Գյումջիբաշյան