Приветствую Вас, Гость
Главная » 2011 » Август » 21 » Ինչպես դառնալ Հակեր
14:55
Ինչպես դառնալ Հակեր
Ինչու է գրվել այս փաստաթուղթը

Որպես Jargon File-ի խմբագիր և այս բնույթի այլ հայտնի փաստաթղթերի հեղինակ, ես հաճախ եմ ստանում էլեկտրոնային նամակներ ոգևորված համացանցի նորեկներից, որոնցում նրանք հարցնում են. "Ինչ և ինչպես սովորեմ, որ դառնամ Հակեր”: Ցավոք սրտի, ինչպես կարող եք տեսնել, չկան որևէ FAQ-եր կամ էլեկտրոնային փաստաթղթեր, որոնք հասցեագրված լինեն այս կենսական կարևոր հարց պարզաբանմանը: Այսպիսով ահա ներկայացնում եմ Ձեզ իմը: Այդուհանդերձ, ես չեմ պնդում, որ սա բացառիկ փաստաթուխթ է այս թեմայի շուրջ, եթե Ձեր դուրը չի գալիս այն ինչ կարդում եք այստեղ, գրեք Ձեր սեփականը:
Եթե դուք կարդում եք այս փաստաթղթի պատճենը, ապա այս փաստաթղթի ընթացիկ հայերեն տարբերակը կարող եք գտնել http://www.gnu.am/ կայքում, իսկ օրիգինալ ընթացիկ տարբերակը http://catb.org/~esr/faqs/hacker-howto.html կայքում:

Ով է Հակերը

Jargon File-ը պարունակում է մի շարք սահմանումներ Հակեր տերմինին, որոնցից շատերը կապված են տեխնիկական հմտությունների և հաճույքի հետ, որը ստացվում է տարբեր խնդիրների լուծումներ գտնելուց և սահմանափակումների հաղթահարումից: Եթե դուք ցանկություն ունեք իմանալ, թե ինչպես դառնալ Հակեր, ապա իրականում միայն երկուսն են համապատասխանում:
Կա մի համայնք, ընդհանուր մշակույք, էքսպերտ ծրագրավորողների և համացանցի հրաշագործների, որը կերտում է իր պատմությունը տասնյակ տարիներ առաջվա մինիհամակարգիչներից, որոնք աշխատում էին ժամանակի բաժանմամբ, և ամենավաղ ARPAnet-ի փորձերից: Այս մշակույթի անդամներից է ծագել Հակեր տերմինը: Հակերներն են ստեղծել համացանցը: Հակերներն են ստեղծել այն Unix օպերացիոն համակարգը, որը կա այսօր: Հակերներն են գործարկել Usenet-ը: Հակերներն են ստեղծել World Wide Web-ը: Եթե դուք մի մասն եք այդ մշակույթի, եթե դուք նպաստում եք դրան և այդ մշակույթի այլ ներկայացուցիչներ գիտեն թե ով եք դուք ու անվանում են Ձեզ Հակեր, ապա դուք Հակեր եք:
Հակերը դա միայն ծրագրային-հակեր չէ: Կան մարդիք, ովքեր իրենց Հակերի վերաբերմունքը կիրառում են այլ վոլորտներում, այնպեսիք ինչպիսիք են էլեկտրոնիկան կամ երաժշտությունը – իրականում, դուք կարող եք գտնել Հակերներ որևէ գիտության կամ արվեստի ամենաբարձր մակարդակում: Ծրագրային Հակերները այդպիսի մարդկանց նույնպես անվանում են Հակերներ – որոշները պնդում են, որ Հակեր լինել չլինելը իրականում կախված չէ այն միջավայրից, որում նա աշխատում է: Սակայն այս փաստաթղթում մեր ուշադրությունը կկենտրոնացնենք ծրագրային Հակերների հմտություններին և դիրքորոշումներին, ինչպես նաև ընդհանուր մշակույթի ավանդություններին, որից ծնունդ է առել Հակեր տերմինը:
Կա մարդկանց ևս մեկ խումբ, ովքեր իրենց բարձրաձայն կոչում են Հակերներ, սակայն նրանք այդպին չեն: Դա այն մարդիք են (հիմնականում պատանիներ), ում քարկոծում են համակարգչային և հեռախոսային համակարգեր մուտք գործելու համար: Իրական Հակերները իրենց անվանում են Կրեկեռներ և չեն ցանկանում իրենց հետ գործ ունենալ: Իրական Հակերները համարում են Կրեկեռներին ալարկոտ, անպատասխանատու, և ոչ շատ խելացի: Այն, որ մարդը կարող է կոտրել անվտանգության համակարգը, չի դարձնում նրան Հակեր, նույն այն պատճառով ինչ մեքենաներ գողացողներին մեքենաների մասնագետներ: Ցավոք սրտի, բազում լրագրողներ և գրողներ սխալվելով օգտագործում են Հակեր բառը, նկարագրելով Կրեկեռներին և դա անվերջ զայրացնում է իրական Հակերներին, ոչ ավելի:
Հիմնական տարբերությունը այն է, որ Հակերները կառուցում են, իսկ Կրեկեռները ջարդում:
Եթե ցանկանում եք լինել Հակեր, շարունակեք կարդալ: Եթե ցանկանում եք լինել Կրեկեռ, կարդացեք alt.2600 նորությունների խումբը և պատրաստ եղեք բանտում անցկացնել 5-ից 10 տարի, երբ կհայտնաբերեք, որ այնքան ճարպիկ չեք, որքան պատկերացնում էիք: Եվ դա էր այն ամենը, ինչ ես ուզում էի ասել Կրեկեռների մասին:

Հակերնիրի մոտեցումները

Հակերները լուծում են խնդիրներ և կառուցում, նրանք հավատում են ազատությանն ու կամավոր փոխօգնությանը: Իսկ նրա համար, որ վարվեք այդպես, կարծես դա ձեր վարվելակերպն է, դուք պետք է իսկապես հավատաք այդ վերաբերմունքին:
Բայց եթե դուք կարծում ոք, որ անհրաժեշտ է մշակել Հակերի վերաբերմունքը միայն նրա համար, որ ընդունելի լինեք այդ մշակույթում, ապա դուք բաց եք թողել մի կարևոր փաստ: Դառնալ այնպիսի մարդ, ով հավատում է այդ ամենին կարևոր է ձեր համար, որ ձեզ օգնեն սովորել և պահեն ձեր ձգտումը: Քանի որ բոլոր արվեստներում, որտեղ ստեղծագործում են, առավել բանիմաց վարպետ դառնալու համար – դու առավել բանիմաց վարպետի մտածելակերպն ես ընդօրինակում – ոչ միայն ինտելեկտուալ, այլ նաև հոգեկանը:
Կամ, ինչպես հետևյալ, ժամանակակից Zen-ի, բանաստեղծության մեջ է.
Ուղղուն հետևելու համար.
Նայեք վարպետին,
Հետևեք վարպետին,
Քայլեք վարպետի հետ,
Տեսեք վարպետի միջոցով.
և դարձեք վարպետ:
Այնպես որ, եթե ցանկանում եք լինել Հակեր, կրկնեք վերոհիշյալը այնքան ժամանակ մինչև չհավատաք դրան:

1. Աշխարհը լի է հետաքրքրաշարժ խնդիրներով, որոնք սպասում են իրենց լուծումներին:
Լինել Հակեր շատ հաճելի է, սակայն այդ հաճույքը խլում է մեծ ջանքեր: Այդ ջանքերի համար անհրաժեշտ է շարժառիթ: Հաջող մարզիկի շարժառիթը դա իր մարմինը կատարյալի հասցնելուց ստացված հրճվանքն է, որով նա հաղթահարում է իր սեփական ֆիզիկական սահմանները: Նմանապես, Հակեր լինելու համար դուք պետք է ստանաք հաճույք խնդիրներ լուծելուց, խորացնելով հմտությունները և մարզելով ձեր բանականությունը:
Եթե դուք այդպիսին չեք բնականից, ապա դուք ստիպված եք դառնալ այդպիսին, որպեսզի դառնաք Հակեր: Հակառակ դեպքում դուք կսպառեք ձեր Հակերի էներգիան սեռական փոխհարաբերությունների, դրամի և սոցիալական հաստատման մեջ:
(Դուք նաև պետք է զարգացնեք հավատ ձեր ուսման կարողություններին – համոզմունք, որ թեև դուք չեք կարող իմանալ կամ սովորել այն ամենը ինչ ձեզ անհրաժեշտ է խնդիրը լուծելու համար, սակայն եթե դուք սովորել եք այն ամենը ինչ անհրաժեշտ է խնդրի միայն մի կտորը լուծելու համար, ապա դա բավարար է հաջորդ կտորը լուծելիս և այդպես շարունակ):

2. Ոչ մի խնդիր չպետք է լուծվի երկու անգամ:
Ստեղծագործող ուղեղը դա արժեքավոր և սահմանափակ ռեսուրս է: Այն պետք չէ իզուր ծախսել անիվի վերաբացահայտման վրա, երբ կան բազում հետաքրքրաշարժ, նոր խնդիրներ, որոնք սպասում են իրենց լուծումներին:
Հակերի պես վարվելու համար, դուք պետք է հավատաք, որ այլ Հակերների ժամանակը թանկ է – այնքանով, որ ձեր բարոյական պարտքն է կիսվել տեղեկություններով, լուծել խնդիրներ, ապա բաժանել լուծումները, միայն նրա համար, որ այլ Հակերներ կարողանան լուծել նոր խնդիրները, լուծվածներին անիմաստ վերադառնալու փոխարեն:
Նշենք, ինչևիցե, որ "Ոչ մի խնդիր չպետք է լուծվի երկու անգամ” չի ենթադրում, որ բոլոր առկա խնդիրների լուծումները սուրբ են, կամ որ կա միայն խնդրի մեկ ճիշտ լուծում: Հաճախ, մենք սովորում ենք խնդիրների կրճատված լուծումներ: Դա լավ է, և հաճախ անհրաժեշտ է, որ մենք հասկանանք, որ մենք կարող ենք ստեղծել ավելի լավը: Ինչը լավ չէ արհեստական տեխնիկական, իրավական կամ ինստիտուցիոնալ արգելքների (ինչպես փակ կողով) համար, որոնք կանխում են լավ լուծումներին վերաօգտագործումը և ստիպում են մարդկանց վերաբացահայտել անիվը:
(Դուք պարտավոր չեք հավատալ, որ դուք պետք է ձեր բոլոր ստեղծագործությունները բաժանեք, քանի որ այն Հակերները, ովքեր անում են այդպես ավելի հարգված են այլ Հակերների կողմից: Դա հակասում նրան, որ վաճառել Հակերի արժեքները այնքան, ինչքանը բավարար է ապահովվելու սննդամթերքով, վարձկալությամբ և համակարգիչնեսրով: Կարելի է օգտագործել Հակերի հմտությունները նաև ընտանիք պահելու կամ նույնիսկ հարստություն ձեռք բերելու համար, այնքան, քանի դեռ դուք չեք մոռանա ձեր հավատարմությունը արվեստի և մերձավոր Հակերների նկատմամբ):

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

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

5. Վերաբերմունքը չի փոխարինի իրավասությանը:
Հակեր լինելու համար, դուք պետք է մշակեք թվարկված մոտեցումները: Սակայն միայն մոտեցման պատճենմամբ դուք չեք դառան Հակեր, ոչ ավելի քան կդառնաք չեմպիոն ատլետ կամ ռոք աստղ: Հակեր դառնալը պահանջում է խելացիություն, պրակտիկա, և քրտնաջան աշխատանք:
Ուստի, դուք պետք է ձեռք բերեք անվստահության վերաբերմունք և հարգանք հմտություններին ցանկացած տեսակի: Հակերը թույլ չի տա գլուխկոտրուկներին անիմաստ ծախսել իր ժամանակը, սակայն իրենք երկրպարգում են իրավասությանը – հատկապես Հակերության մեջ, բայց ամենինչում իրավասությունն է գնահատվում: Իրավասությունը պահանջում է հմտություններ, որոնք վարպետներից քչերը ունեն, և իրավասությունը պահանջում է հմտություններ, որոնք ընդգրկում են մտքի սրություն, ճարպկություն, և գերազանց կենտրոնացում:
Եթե դուք մտածում եք իրավասության մասին, դուք կվայելեք դրա զարգացումը ձեր մեջ – քրտնաջան աշխատանքը և նվիրվածությունը կդառնա խաղալիք: Այս վերաբերմունը կենսական է Հակերնր դառնալու համար:

Հակերի հիմնական հմտությունները

Հակերի վերաբերմունքները կարևոր են, բայց հմտությունները առավել կենսական են: Վերաբերմունը չի կարող փոխարինել իրավասությանը, և այն պարունակում է որոշակի հմտությունների բազա, որոնք դուք պետք է ունենաք մինչ այն, երբ որևէ Հակեր կցանկանա ձեզ անվանել Հակեր:
Այդ բազան ժամանակի ընթացքում դանդաղ փոփոխվում է այնպես, ինչպես տեխնոլոգիան ստեղծում է նոր հմտություններ և հնացածները գործածությունից դուրս հանում: Օրինակ, դրանում ընդգրկված էր ծրագրավորում մեքենայի լեզվով, և չէր ներառում, մինչ վերջերս, HTML: Սակայն այժմ այն հստակ ընգրկում է հետևյալը`

1. Սովորեք ծրագրավորել:
Սա, իհարկե, Հակերների հիմնական հմտությունն է: Եթե դուք չգիտեք որևէ համակարգչային լեզու, ես խորհուրդ կտամ սկսել Python-ից: Այն մաքուր նախագծված է, լավ լուսաբանված, և համեմատաբար հեշտ է սկսնակների համար: Չնայած նրան, որ այն սկսնակների համար է, այն ոչ միայն խաղալիք է. այն շատ հզոր ու ճկուն է և հարմար խոշոր նախագծերի համար:
Եթե դուք ուզում եք լինել լուրջ ծրագրավորող, դուք պետք է սովորեք C, Unix-ի հիմնական լեզուն: C++-ը շատ սերտ կապված է C-ի հետ, եթե դուք գիտեք մեկը, սովորել մյուսը բարդ չէ: Ինչևիցե, այդ ծրագրավորման լեզուն լավագույնն է առաջինը սովորելու համար: Եվ, փաստորեն, ինչքան շատ ծրագրավորեք C-ով այնքան ավելի արդյունավետ կլինեք:
C-ն շատ արդյունավետ է, և տնտեսում է ձեր մեքենայի ռեսուրսները: Ցավոք սրտի, C-ն այդ արդյունավետության համար պահանջում է անել ռեսուրսների ցածր մակարդակի կառավարում (հիշողության): Ցածր մակարդակի կոդը բարդ է և հակված է սխալների, սխալների ուղղման համար պահանջվում է ժամանակ: Այսօրվա համակարգիչներով, իրենց հզորությամբ, դա վատ զբաղմունք է – առավել ճիշտ է օգտագործել ծրագրավորման լեզու, որը օգտագործում է համակարգչի ժամանակը ոչ այդքան արդյունավետ, որքան ձեր ժամանակը: Այսպիսով, Python:
Կան նաև այլ լեզուներ, որոնք առանձնահատուկ կարևոր են Հակերների համար, դրանք են Perl-ը և Lisp-ը: Perl-ը արժե սովորել պրակտիկայի համար, այն լայնորեն օգտագործվում է ակտիվ վեբ էջերում և համակարգչի ադմինիստրացիայի համար, այսպիսով նույնիսկ եթե դուք երբեք չեք գրելու ծրագրեր Perl-ով, դուք պետք է սովորեք կարդալ այն: Շատերը օգտագործում են Perl այնտեղ, որտեղ ես խորհուրդ կտամ օգտագործել Python, խուսափելու C ծրագրավորումից այնտեղ որտեղ չի պահանջվում C-ի մեքենայի արդյունավետությունը: Դուք պետք է կարողանաք հասկանալ նրանց կոդը:
Lisp-ը արժե սովորել ուրիշ պատճառով – այն կտա ձեզ մեծ փորձ, երբ դուք վերջապես ձեռք կբերեք այն: Այդ փորձը կդարձնի ձեզ ավելի լավ ծրագրավորող, նույնիսկ այն դեպքում եթե դուք այն երբեք չօգտագործեք:
Ըստ էության, լավագույն տարբերակը դա սովորել բոլոր հինգը` Python, C/C++, Java, Perl և Lisp: Բացի նրանից, որ դրանք հակերի համար ամենակարևոր ծրագրավորման լեզուներն են, նրանք ներակայացնում են շատ տարբեր մոտեցումներ ծրագրավորմանը, և յուրաքանչյուրը կդաստիարակի ձեզ կարևոր ձևով:
Սակայն տեղյակ եղեք, որ դուք չեք հասնի հակերի վարպետական աստիճանի կամ նույնիսկ պարզապես ծրագրավորող կուտակելով ծրագրավորման լեզուներ – ձեզ անհրաժեշտ է սովորել մտածել ծրագրավորման խնդիրների շուրջ ընդհանուր ձևով, անկախ որևէ ծրագրավորման լեզվից: Իսկական հակեր լինելու համար, դուք պետք է հասնեք այն կետին, որտեղ դուք կարող եք սովորել նոր ծրագրավորման լեզու օրերի ընթացքում վերանայելով այն ամենը, ինչը դուք արդեն գիտեք: Դա նշանակում է, դուք պետք է սովորեք մի քանի տարբեր լեզուներ:
Ես այստեղ չեմ կարող տալ ամբողջական հրահանգ այն մասին, թե ինչպես սովորել ծրագրավորել – դա բարդ է: Սակայն ես կարեղ եմ ասել ձեզ, որ գրքերը և դասընթացները չեն կարող անել դա – շատ, գուցե լավագույն հակերներից շատերը ինքնուս են: Դուք կարող եք սովորել ծրագրավորման լեզվի հատկանիշները – գիտելիքների պատառներ – գրքերից, բայց անձնական փորձը հաստատել է, որ գիտելիքները կարող են յուրացվել միայն պրակտիկայով և ուսուցմամբ: Այն ինչը կանի դա a) կոդ կարդալն է և b) կոդ գրելը:
Peter Norvig-ը, ով Google-ի լավագույն հաքերներից մեկն է և համահեղինակ առավել լայնորեն օգտագործվող դասընթացների AL-ում, գրել է մի գերազանց հոդված ուղղված Սովորեք Ինքնուրույն Ծրագրավորել 10 տարում: Նրա "հաջող ծրագրավորման բաղադրատոմսը” արժանի է ուշադրության:
Ծրագրավորել սովորելը նման է լավ բնական լեզվով գրել սովորելուն: Դա անելու լավագույն ճանապարհը կարդացեք նյութեր, որոնք գրված են վարպետների կողմից, գրեք ինքներդ, կարդացեք ավելի շատ, գրեք ավելի շատ, կարդացեք ավելի շատ, գրեք ավելի շատ … և կրկնեք այնքան մինչ ձեր գրածը կդառնա հզոր ու տնտեսող:
Դժվար է գտնել լավ կոդ, որը հարմար է կարդալու համար, որովհետև մատչելի խոշոր ծրագրերի սկզբնական կոդերի աղբյուրներ քիչ էին: Դա փոխվեց. բաց սկզբնական կոդով ծրագրեր, ծրագրավորման գործիքներ, և օպերացիոն համակարգեր (բոլորը գրված հաքերների կողմից), այժմ հասանելի են: Որը ինձ բերում է մեր հաջորդ թեմային…

2. Վերցրեք բաց սկզբնական կոդով Unix-ներից որևէ մեկը և սովորեք օգտագործել ու աշխատեցնել այն:
Ես ենթադրում եմ, որ դուք ունեք անձնական համակարգիչ կամ որևէ մեկի մուտք ունեք: (Մի պահ պատկերացրեք ինչ է նշանակում հետևյալը: Հաքերների մշակույթը սկզբնապես առաջացել է այն ժամանակ, երբ համակարգիչները այնքան թանկ էին, որ անհատը չէր կարող ունենալ սեփականը): Միակ առավել կարևոր կետը ցանկացած նորեկի համար Հաքերի հմտություններ ձեռք բերելու համար դա ձեռք բերել պատճեն Gnu/Linux-ի կամ BSD-Unix-ի կամ Open Solaris-ի, տեղակայել այն անձնական համակարգչում և աշխատեցնել այն:
Այո, կան նաև այլ օպերացիոն համակարգեր Unix-ից բացի: Սակայն դրանք բինար են – դուք չեք կարեղ կարդալ սկզբնական կոդը, և չեք կարող փոփոխել այն: Հաքկ փորցել սովորել Microsoft Windows մեքենայով կամ ցանկացած այլ փակ սկզբնական կողով համակարգում նման է նրան, ինչ փորցել սովորել պարել ձուլված համազգեստով:
Mac OS X-ում դա հնարավոր է, սակայն համակարգի միայն մի մասն է բաց կոդով – դուք հավանաբար կբախվեք պատին, և ուշադիր եղեք, որ չզարգացնեք Apple-ի սեփականություն հանդիսացող կոդը: Դուք կարող եք սովորել շատ օգտակար բաներ, եթե կենտրոնանաք Unix-ին:
Unix օպերացիոն համակարգը համացանցի համակարգ է: Քանի որ դուք կարող եք սովորել օգտվել համացանցից առանց Unix-ի իմացության, սակայն դուք չեք կարող լինել համացանցի Հաքկեր առանց Unix հասկանալու: Այդ իսկ պատճառով, Հաքկերների մշակույթը այսօր բավականին խիստ Unix կենտրենացված է: (Դա միշտ չէր այդպես, և որոշ հին ժամանակների Հաքկերներ դեռ ուրախ չեն դրա համար, սակայն Unix-ի և համացանցի միջև սիմբիոզը այնքան ամուր դարձավ, որ նույնիսկ Microsoft-ի ուժերը չեն կարող լրջորեն ազդել դրա վրա):
Այսպիսով օգտագործեք Unix – ես ինքս սիրում եմ GNU/Linux, սակայն կան այլ տարբերակներ (և այո, դուք կարող եք աշխատեցնել GNU/Linux և Microsoft Windows նույն մեքենայում): Սովորեք այն: Աշխատեցրեք այն: Մտածեք դրա մասին: Շփվեք համացանցի հետ դրա միջոցով: Կարդացեք կոդը: Փոփոխեք կոդը: Դուք կծրագրավորեք այնպիսի գործիքներ (որոնք ներառում են C, LISP, Python և Perl), որոնց մասին ցանկացած Microsoft Windows օպերացիոն համակարգով հոստինգում կարող են միայն երազել, դուք հաճույք կստանաք, և դուք կստանաք ավելի շատ գիտելիքներ հետո, երբ ավարտեք ձեր ուսումը ու ետ նայեք որպես վարպետ Հաքկեր:
Unix սովորելու մասին ավելին իմանալու համար, նայեք The Loginataka. Դուք կարող է ուզենաք նայել նաև The Art Of Unix Pragramming:
Linux ունենալու համար, նայեք Linux Online! կայքը. դուք կարող եք բեռնել այնտեղից կամ (ավելի լավ գաղափար է) գտնել տեղական Linux User Group տեղակայման մեջ օգնության համար:
Առաջին տաս տարվա ընթացքում, երբ այդ HOWTO-ն կար, ես համոզվել եմ, որ նոր օգտագործողների տեսակետից բոլոր GNU/Linux օպերացիոն համակարգերը գրեթե համարժեք են: Սակայն 2006-2007թթ. փաստացի առաջացավ մի լավ ընտրություն. Ubuntu: Մնացած համակարգերը ունեն իրենց կիրառման տեղերը, Ubuntun հեռու է և առավել մատչելի է GNU/Linux-ի նորեկների համար:
Դուք կարող եք գտնել օգնություն և ռեսուրսներ BSD Linux-ի համար www.bsd.org-ում:
Լավ տարբերակ է բեռնվել live CD GNU/Linux-ից, այն համակարգ է, որը աշխատում է սկավառակից, առանց կոշտ սկավառակի վրա որևէ փոփոխության: Այն դանդաղ է աշխատելու, քանի որ CD-ները դանդաղ են, սակայն դա մի ճանապարհ է, որի միջոցով կարող եք նայել հնարավորությունները, առանց մի մեծ բան անելու:
Ես գրել եմ մեկ օրինակ basics of Unix and the Internet:
Ես առաջարկում եմ տեղակայել կամ GNU/Linux կամ BSD, որպես մեկ նախագիծ, եթե դուք նորեկ եք: Ներկայումս տեղակայիչները անում են ամեն ինչ, ինչ հնարավոր է, նույնիսկ նորեկների համար: Այնուամենայնիվ, ես խորհուրդ կտամ կապվել տեղական Linux User Group-ի հետ և օգնություն խնդրել: Դա դժվար չէ, և կարող է հեշտացնել գործընթացը:

3. Սովորեք օգտագործել World Wide Web և գրել HTML:
Հաքերների մշակույթի ստեղծողներից շատերը իրենց աշխատանքը կատարում են անտեսանելի, օգնում են աշխատեցնել գործարաններ և գրասենյակներ ու համալսարաններ ազդեցություն չթողնելով ոչ-հաքերների կյանքի վրա: Համացանցը դա մի մեծ բացառություն է, հաքերների մի մեծ փայլուն խաղալիք, որը նույնիսկ քաղաքական գործիչներն են ընդունում փոխում է աշխարհը: Այդ իսկ պատճառով միայն (և բազմաթիվ այլ այդպիսի պատճառներով) դուք պետք է սովորեք այն թե ինչպես է աշխատում համացանցը:
Դա չի նշանակում միայն սովորել ինչպես օգտվել բրաուզերներից (բոլորն էլ կարող են դա անել), այլ սովորել ինչպես գրել HTML, համացանցի նշահարման լեզուն: Եթե դուք չգիտեք ծրագրավորել, HTML-ը կուսուցանի ձեզ մտավոր սովորություններ, որոնք կօգնեն ձեզ սովորել: Այսպիսով, ստեղծեք անձնական էջ: Փորձեք միանալ XHTML-ին, որը հանդիսանում է ավելի մաքուր լեզու, քան դասական HTML-ը:
Սակայն պարզապես անձնական էջ ունենալը չի դարձնի ձեզ հաքկեր: Համացանցում կան շատ անձնական էջեր: Դրանցից շատերը աննպատակ են, առանց բովանդակության:
Կարևոր լինելու համար, ձեր էջը պետք է ունենա բովանդակություն – այն պետք է հետաքրքիր լինի և/կամ օգտակար այլ հաքկերների: Եվ դա բերում է մեզ հաջորդ թեմային…

Կարգավիճակ հաքկերների մշակույթում

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

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

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

3. Հրապարակեք օգտակար տեղեկություններ:
Մի այլ լավ բան է հավաքել և ֆիլտրել օգտակար ու հետաքրքիր տեղեկությունները համացանցի էջերից կամ փաստաթղթերից, և այդ ամենը բոլորի համար հասանելի դարձնել:
Խոշոր տեխնիկական փաստաթղթերի հեղինակներին հարգում են նույնքան, որքան բաց կոդով ծրագրային ապահովման հեղինակներին:

4. Օգնել պահպանել ենթահամակարգը աշխատունակ:
Հակերների մշակույթը ( և համացանցի զարգացման տեխնիկան ) գոյատևում է կամավորների կողմից: Կա մի շատ անհրաժեշտ, սակայն ոչ գլամուր աշխատանք, որում անհրաժեշտ է կատարել – հասցեատերերի ցուցակների ադմինիստրացիա, նորությունների խմբերում մոդերացիա, խոշոր ծրագրային արխիվների կայքերի պահպանում, RFC-ների զարգացում և այլ տեխնիկական չափանիշներ:
Մարդիք, ովքեր անում են դա ստանում են հարգանք, որովհետև բոլորն էլ գիտեն, որ այդ աշխատանքը պահանջում են հսկայական ժամանակի ներդրում և այնքան էլ հաճելի չէ, ինչպես խաղալ կոդի հետ: Նրանք, ովքեր հետևում այդ ամենին և կատարում են այդ հոգնեցուցիչ աշխատանքը իրենց աշխատանքով ցույց են տալիս իրոնց նվիրվածությունը այդ ամենին:

5. Օգնեք Հակերների մշակույթին ինքներտ:
Վերջապես, դուք կարող եք օգնել և տարածել մշակույթը ինքներտ ( օրինակ, ինքներտ գրեք մի փաստաթուղթ նորեկների համար այն մասին, թե ինչպես է կարելի դառնալ Հակեր ): Պետք չէ զբաղվել դրանով այնքան ժամանակ մինչ դուք բավականաչափ ժամանակ չեք լինի այս մշակույթում և չեք դառնա հայտնի նախորդ չորս կետերից մեկի շնորհիվ:
Հակերների մշակույթը չունի ղեկավարներ, իհարկե, սակայն ունի մշակույթի հերոսներ, ցեղի մեծեր, պատմաբաններ և ներկայացուցիչներ: Երբ դուք կլինեք բավականաչափ ժամանակ այդ խրամատներում, դուք կարող եք դառնալ այդ մարդկանցից մեկը: Զգուշացեք. Հակերները չեն վստահում ճչացող ցեղային մեծերին, այսպիսով այս կարգի տեսանելի ընթացքը վտանգավոր է: Դրա փոխարեն դուք պետք է հանգիստ զբաղվեք ձեր աշխատանքով, առանց մտածելու այդ ամենի մասին և ամեն ինչ կհայտնվի ձեր գրկում, և հետո կարեղ եք լինել համեստ ու բարի ձեր կարգավիճակում:

Просмотров: 1033 | Добавил: arthos | Рейтинг: 0.0/0
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]