Ինչ ես սովորեցի 10 տարվա ընթացքում Stack Overflow-ում

Ինչ ես սովորեցի 10 տարվա ընթացքում Stack Overflow-ում
Ես մոտենում եմ իմ տասնամյակին Stack Overflow-ում: Տարիների ընթացքում կայքի օգտագործման իմ մոտեցումը և դրա ընկալումը շատ է փոխվել, և ես ուզում եմ կիսվել իմ փորձով ձեզ հետ: Եվ ես գրում եմ այս մասին սովորական օգտատիրոջ տեսանկյունից, ով այնքան էլ ներգրավված չէ կայքի համայնքի կյանքում կամ նրա մշակույթի մեջ: Այս օրերին ես միայն պատասխանում էի VS Code-ի հետ կապված հարցերին, որի վրա աշխատում եմ: Այնուամենայնիվ, ակտիվորեն մասնակցում էի տարբեր թեմաներով քննարկումներին։ 10 տարում Ի տվել է մոտ 50 հարց և տվել 575 պատասխան, նայեց ուրիշների բազմաթիվ մեկնաբանությունների միջով:

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

Այսպիսով, ահա թե ինչ եմ ես սովորել Stack Overflow-ի օգտագործման 10 տարիների ընթացքում:

Դուք պետք է կարողանաք հարցեր տալ

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

Լավ հարցեր տալն իսկապես թերագնահատված հմտություն է (ինչպես և լավ խնդրի մասին զեկույց գրելը, այդ դեպքում): Նախ, ինչպե՞ս կարող ենք նույնիսկ որոշել, թե արդյոք հարցը «լավ է»: Stack Overflow-ի առաջարկներ ակնարկ, որը թվարկում է լավ հարցի հետևյալ հատկանիշները.

  • Արդյո՞ք այն համապատասխանում է կայքի թեմային:
  • Իրականացնում է օբյեկտիվ պատասխան.
  • Դեռ չի հարցրել։
  • Հետազոտվել է.
  • Հստակորեն նկարագրում է խնդիրը, սովորաբար նվազագույն, հեշտությամբ վերարտադրվող օրինակով:

Լավ, բայց ինչպիսի՞ն է գործնականում «հստակ խնդրի հայտարարությունը»: Ո՞ր տեղեկությունն է տեղին, իսկ ինչը՝ ոչ: Երբեմն թվում է, որ լավ հարց տալու համար նախ պետք է պատասխանն իմանալ:

Ցավոք, փոքր տեքստային դաշտն այստեղ չի օգնում: Այսպիսով, զարմանալի՞ է, որ այդքան շատ օգտատերեր տեղադրում են անորակ հարցեր: Երբեմն միակ պատասխանը, որ նրանք ստանում են, հղում է դեպի ինչ-որ շփոթեցնող փաստաթղթեր: Եվ նրանց բախտը դեռ կբերի։ Շատ անորակ հարցեր ուղղակի լուռ մերժվում են, և դրանք անհետանում են հարցերի անվերջանալի շարանը:

Լավ հարցեր տալը հմտություն է: Բարեբախտաբար, այն կարելի է զարգացնել։ Ես հիմնականում սովորել եմ մի փունջ հարց ու պատասխան կարդալով, նշելով, թե ինչն է աշխատել, ինչը ոչ: Ո՞ր տեղեկությունն է օգտակար և ինչն է նյարդայնացնում: Թեեւ դուք դեռ կվախենաք ձեռք բերած գիտելիքները գործնականում օգտագործել եւ հարցեր տալ։ Պարզապես փորձեք ձեր լավագույնը և սովորեք արդյունքներից: Պետք է խոստովանեմ, որ ես ինքս մի փոքր ամաչում եմ իմ որոշ վաղ անգրագետ հարցերից, թեև երևի սա վկայում է այն մասին, որ ես շատ եմ կատարելագործել իմ հարցադրման հմտությունները, քանի որ հայտնվել եմ այս կայքում:

Վատ և ոչ այնքան լավ հարցերը նույն բանը չեն

Ես չեմ շաքարի հաբը. որոշ հարցեր պարզապես վատ են:

Հարց, որը բաղկացած է սքրինշոթից և «Ինչու ՍԱ ՉԻ ԱՇԽԱՏՈՒՄ» արտահայտությունից: - վատ. Ինչո՞ւ։ Ակնհայտ է, որ հեղինակը գրեթե ջանք չի թափել։ Սա ոչ այնքան հարց է, որքան պահանջ՝ «այս գործն ինձ համար արեք»։ Ինչու ես դա անեի: Իմ ժամանակը չափազանց արժեքավոր է, որպեսզի վատնեմ օգնելու մեկին, ով չի ցանկանում սովորել սկզբից և չի գնահատի իմ օգնությունը: Իմացեք, թե ինչ է Stack Overflow-ը:

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

Այնուամենայնիվ, Stack Overflow-ի շատ մասնակիցներ, հավանաբար, երկու հարցերին էլ նույն կերպ կվերաբերվեն՝ դեմ քվեարկել և փակել: Սա հիասթափեցնող է և անջատում է շատ անփորձ օգտատերերի, նախքան նրանք կսովորեն ավելի լավ հարցեր տալ և նույնիսկ հասկանալ, թե ինչպես է աշխատում կայքը:

Իսկապես վատ հարցերը չարժեն ձեր ժամանակը: Բայց պետք է նկատի ունենալ, որ ոչ այնքան լավ հարցեր տվողները դա անում են ակամա։ Նրանք ուզում են լավ հարցեր տալ, պարզապես չգիտեն, թե ինչպես: Եթե ​​նորեկներին կուրորեն ու առանց բացատրության պատժես, ինչպե՞ս կսովորեն։

Լավ հարցը չի երաշխավորում պատասխանը

Stack Overflow-ը սովորաբար ավելի արագ պատասխաններ է տալիս պարզ հարցերի, որոնց կարող են պատասխանել շատ մարդիկ: Հարց ունե՞ք JavaScript-ում երկուական որոնման կամ HTML-ի վերաբերյալ: Հրաշալի՜ Ստացեք հինգ պատասխան մեկ ժամից պակաս ժամանակում: Բայց որքան բարդ կամ կոնկրետ է հարցը, այնքան քիչ հավանական է, որ պատասխան կստանաս՝ անկախ ձեւակերպման որակից։

Պատասխան ստանալու հավանականությունը նույնպես ժամանակի ընթացքում արագ նվազում է: Երբ հարցը մի քանի էջ խորանում է հոսքի մեջ, այն կորչում է: Մեկ շաբաթ անց, դուք կարող եք միայն աղոթել, որ ճիշտ գիտելիք ունեցող մեկը պատահի ձեր հարցին (կամ մեծահոգաբար սեղմի դրա վրա):

Ձեզ կարող են դուր չգալ ճիշտ պատասխանները

Ամեն ամիս ես ստանում եմ մի քանի «դեմ» ձայներ այսպես կոչված ոչ հանրաճանաչ պատասխանների համար: Սրանք պատասխանների այն տեսակներն են, որոնք, ըստ էության, ասում են, «պատճառն այն է, որ այն նախագծված է այդպես», կամ «դա հնարավոր չէ, որովհետև...», կամ «դա սխալ է, որը նախ պետք է շտկել»: Վերոնշյալ բոլոր դեպքերում հեղինակները լուծում կամ նույնիսկ լուծում չեն ստանում: Եվ ես կասկածում եմ, որ երբ մարդկանց դուր չի գալիս այն, ինչ ասում է պատասխանը, նրանք դեմ են քվեարկում դրան: Ես նույնիսկ հասկանում եմ նրանց, բայց դա չի նշանակում, որ պատասխանները սխալ են։

Իհարկե, ճիշտ է նաև հակառակը. լավ պատասխանները պարտադիր չէ, որ ասեն ձեզ այն, ինչ ուզում եք լսել: Լավագույն պատասխաններից մի քանիսը նախ պատասխանում են սկզբնական հարցին, բայց հետո նկարագրում են խնդրի լուծման այլ մոտեցումներ: Երբեմն ես պատասխանում եմ օգտատիրոջ հարցին, իսկ հետո երկար տեքստ եմ գրում այն ​​մասին, թե ինչու խորհուրդ չի տրվում դա անել:

Ամեն անգամ, երբ վերաբերմունքի արտահայտությունները պարզեցվում են վեր ու վար ձայների կամ «like» կոճակի վրա, կարևոր տարբերությունները կորչում են: Այս խնդիրը հաճախակի է հանդիպում ինտերնետում: Քանի՞ սոցիալական ցանց է ձեզ թույլ տալիս տարբերակել «ես սատարում եմ սա» և «կարծում եմ՝ լավ է ասված, նույնիսկ եթե դա ինձ դուր չի գալիս կամ համաձայն եմ»:

Ընդհանուր առմամբ, չնայած ամենամսյա բացասական քվեարկություններին, ես կարծում եմ, որ Stack Overflow համայնքը արդարացիորեն է քվեարկում: Մենք հավատարիմ կմնանք այս ճանապարհին:

Ես գրեթե երբեք չեմ հարցնում Stack Overflow-ում

Որքան երկար էի օգտագործում այս կայքը, այնքան քիչ հաճախ էի հարցեր տալիս դրա վերաբերյալ: Սա մասամբ պայմանավորված է իմ մասնագիտական ​​աճով։ Շատ խնդիրներ, որոնց հետ ես հանդիպում եմ աշխատանքում, չափազանց բարդ են պարզ հարցերով արտահայտելու համար, կամ չափազանց կոնկրետ են, որպեսզի որևէ մեկը ինձ ընդհանրապես օգնի: Ես հասկացել եմ կայքի սահմանափակումները, ուստի խուսափում եմ հարցեր տալուց, որոնց պատասխանը գրեթե վստահաբար չեմ ստանա։

Բայց ես այստեղ հազվադեպ էի հարցեր տալիս, նույնիսկ երբ նոր լեզու կամ շրջանակ էի սովորում: Ոչ այն պատճառով, որ նա այդքան հանճար է, այլ հակառակը: Պարզապես, Stack Overflow-ում տարիներ շարունակ լինելուց հետո, երբ ես հարց ունեմ, գալիս եմ այն ​​խորին համոզման, որ դժվար թե առաջինը լինեմ, ով դա տամ: Ես սկսում եմ փնտրել և գրեթե միշտ գտնում եմ, որ ինչ-որ մեկը մի քանի տարի առաջ արդեն նույն բանն է հարցրել:

Ուրիշների հարցերը դիտարկելը հիանալի միջոց է ձեր արտադրանքի մասին նոր բաներ իմանալու համար:

Հիմա ես աշխատում եմ VS կոդը, այնպես որ ես սովորություն դարձրի նայել vscode պիտակավորված հարցերին: Սա հիանալի միջոց է տեսնելու, թե ինչպես է իմ կոդը օգտագործվում իրական աշխարհում: Ի՞նչ խնդիրների են հանդիպում օգտվողները: Ինչպե՞ս կարող են բարելավվել փաստաթղթերը կամ API-ն: Ինչո՞ւ է մի բան, որը ես կարծում էի, որ բացարձակապես պարզ է, այդքան թյուրիմացության պատճառ է դառնում:

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

Եթե ​​դուք արտադրանք եք պահպանում մշակողների համար, մի մտածեք Stack Overflow-ի մասին որպես աղբավայր (կամ ավելի վատ՝ հարցական գերեզմանոց): Պարբերաբար ստուգեք՝ տեսնելու, թե ինչ հարցեր և պատասխաններ են հայտնվել: Սա չի նշանակում, որ դուք պետք է ինքներդ պատասխանեք յուրաքանչյուր հարցին, սակայն Stack Overflow-ի ազդանշանները չափազանց կարևոր են անտեսելու համար:

Հարցի, վրիպակի զեկույցի և հատկանիշի հարցման միջև գծերը մշուշոտ են:

VS Code-ի մասին Stack Overflow-ի վերաբերյալ բավականին մի քանի հարցեր իրականում սխալի մասին հաղորդումներ էին: Եվ շատ ուրիշներ իրականում նոր հնարավորությունների հարցումներ են:

Օրինակ՝ «Ինչու է VS Code-ը խափանում, երբ ես...» վերնագրով հարց: - սա վրիպակի զեկույց է: VS Code-ը չպետք է խափանվի տարբեր իրավիճակներում: Հարցերին պատասխանելը, որոնք վրիպակների հաշվետվություններ են, հակաարդյունավետ է, քանի որ հեղինակները կարող են գոհ լինել լուծումից և երբեք իրական վրիպակի հաշվետվություն չներկայացնել: Նման իրավիճակներում ես սովորաբար խնդրում եմ օգտվողներին ներկայացնել վրիպակի մասին հաշվետվություն Github-ում:

Այլ դեպքերում, տարբերությունները կարող են ավելի քիչ ակնհայտ լինել: Օրինակ՝ «Ինչու JavaScript IntelliSense-ը չի աշխատում VS Code-ում» հարցը։ Կախված նրանից, թե ինչպես է JavaScript IntelliSense-ը չի աշխատում, խնդիրը կարող է դասվել երեք կատեգորիաներից մեկին.

  • Եթե ​​դա օգտագործողի կազմաձևման խնդիր է, ապա դա իսկապես հարց է Stack Overflow-ի համար:
  • Եթե ​​նկարագրված դեպքում IntelliSense-ը պետք է աշխատի, բայց դա չի աշխատում, ապա սա վրիպակի զեկույց է:
  • Եթե ​​նկարագրված դեպքում IntelliSense-ը չպետք է աշխատի, ապա սա նոր գործառույթի խնդրանք է:

Ի վերջո, օգտատերերի մեծամասնությանը չեն հետաքրքրում այս նրբությունները. նրանք պարզապես ցանկանում են, որ JavaScript IntelliSense-ն աշխատի:

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

Մշակողները նույնպես մարդիկ են

Մարդիկ զգացմունքային են. Մարդիկ իռացիոնալ են. Մարդիկ ապուշ են. Ոչ միշտ, իհարկե, բայց երբեմն! Եվ հավատացեք, թե ոչ, մշակողները նույնպես մարդիկ են:

Կա մի ֆանտազիա, որը մենք՝ ծրագրավորողներս, սիրում ենք ինքներս մեզ ասել. «Մենք աշխատում ենք համակարգիչներով, ուստի պետք է ռացիոնալ լինենք: Մենք հասկանում ենք գաղտնի խորհրդանիշները, ուստի պետք է խելացի լինենք: Ծրագրային ապահովումը գրավել է աշխարհը, ուստի մենք պետք է սառը լինենք: Հիասքանչ Առաջ!!!»

Սա սխալ է. Իսկ եթե այդպես լիներ, ապա Աստված օգնական մնացած մարդկանց։ Նույնիսկ Stack Overflow-ում, այդ գործիքը մասնագետների համար, որը նախատեսված է որպես օբյեկտիվ գիտելիքների բազա, նույնիսկ VS Code-ի իմ սեփական, խիստ հատուկ անկյունում, ես շարունակում եմ բախվել բոլոր տեսակի վրդովմունքների՝ տրամաբանական մոլորությունների, վիրավորանքների, հոտի մտածելակերպի և այլնի հետ:

Մի կատակեք ինքներդ ձեզ. դուք հավանաբար այնքան կատարյալ չեք, որքան կարծում եք: Բայց դա չի նշանակում, որ մենք չպետք է փորձենք ձերբազատվել մեր թերություններից։

Ընկեր, ես եմ սա ստեղծել

Ես նույնպես մարդ եմ, և ժամանակ առ ժամանակ այն, ինչ կատարվում է Stack Overflow-ում, զայրացնում է ինձ: Օրինակ, երբ օգտատերը վստահորեն անհեթեթություն է գրում կամ պարզապես սխալ պատասխան է տալիս VS Code-ի հետ կապված հարցին, մի ապրանք, որը ես ստեղծել եմ և որը ես շատ լավ գիտեմ։ Տարօրինակ կերպով, թվում է, թե որքան սխալ է պատասխանը, այնքան ավելի հավանական է, որ ինչ-որ մեկն այն անվիճելի փաստ անվանի։

Երբ դա տեղի է ունենում, ես գործում եմ ինչպես նկարում և գրում եմ ճիշտ պատասխանը:

Ինչ ես սովորեցի 10 տարվա ընթացքում Stack Overflow-ում

Եվ մի քանի անգամ դա հանգեցրեց երկար թելերի. վայ ինձ, որ համարձակվեմ կասկածի տակ դնել իմ ստեղծածի իմացությունը: Դադարեք անընդհատ ճիշտ լինել, անիծյալ խելացի տղաներ: Որովհետև ես ճիշտ եմ!!!

Այս անհույսության մեջ հեշտ է ցինիկ դառնալ

Երբ բախվում ենք անորակ հարցերի անվերջ հոսքի, հեշտ է դառնալ ցինիկ: Նա երբեք չի՞ լսել Google-ի մասին: Արդյո՞ք նա նույնիսկ գիտի, թե ինչպես կառուցել համահունչ նախադասություններ: Ի՞նչ ես դու, շուն:

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

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

Թեև Stack Overflow-ը շատ բան է արել նորեկներին օգնելու համար, դեռ շատ ավելին կա անելու: Ես փորձեցի հավասարակշռություն գտնել կայքի չափանիշներին հավատարիմ մնալու և անփորձ օգտատերերի նկատմամբ մեղմ վերաբերմունքի միջև: Սա կարող է ներառել բացատրել, թե ինչու ես քվեարկեցի փակելու հարցը կամ տեղադրել մեկնաբանություն, որը խրախուսում է օգտվողին տրամադրել լրացուցիչ տեղեկություններ: Ես դեռ աճելու տեղ ունեմ։

Մյուս կողմից, ես չեմ վարանում 50 հեղինակություն ունեցող օգտատերերի դեմ քվեարկելու հարցում, ովքեր հարցեր են տալիս, ինչպիսիք են՝ «Ո՞րն է JavaScript-ի մշակման լավագույն VS Code դասավորությունը», կամ տեքստի փոխարեն վերբեռնում են կոդի օճառի սքրինշոթներ:

Երբեմն ես պարզապես ուզում եմ շնորհակալություն հայտնել քեզ

Stack Overflow-ում երախտագիտության թույլ մշակույթ կա: Հիշում եմ՝ ժամանակին կայքը ավտոմատ կերպով հարցերից կտրում էր «բարև» և «շնորհակալություն» բառերը։ Միգուցե սա դեռ արված է, ես չեմ ստուգել։

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

Արդյունավետությունը մեզանից չի պահանջում անհոգի ռոբոտներ դառնալ։ Կողմնակի ալիքը կարող է ապահովել մարդկանց միջև ավելի վավերական հաղորդակցություն, եթե, իհարկե, օգտատերերն իրենք են դա ցանկանում:

Երբեմն ուզում եմ իմանալ, թե ինչ է եղել պատասխանը ստանալուց հետո

Stack Overflow-ը գործում է գործարքային սկզբունքով. ոմանք հարցեր են տալիս, մյուսները պատասխանում են: Ի՞նչ է տեղի ունենում պատասխան ստանալուց հետո: Ով գիտի? Երբեմն ես զարմանում եմ այս մասին: Արդյո՞ք իմ պատասխանն օգնեց: Ո՞ր համեստ ծրագրին է նա օգնել։ Ի՞նչ սովորեց հարց տվողը:

Իհարկե, անհնար է բավարարել այս հետաքրքրասիրությունը։ Օգտատերերից պահանջելը, որ հաշվի առնեն, թե ինչպես են նրանք օգտագործելու ստացած տեղեկատվությունը, շատ խնդրահարույց կլինի, նույնիսկ եթե դուք կարողանաք դա անել: Բայց հետաքրքիր է մտածել դրա մասին:

Գեյմիֆիկացիան արդյունավետ է...

…գործընթացները խաղերի վերածելիս:

Ես դեռ մի փոքր անհանգստանում եմ, երբ տեսնում եմ փոքրիկ +10 կամ +25 պատկերակը կարգավիճակի տողում: Թերևս gamification-ի այս փոքրիկ հպումներն են պատճառը, որ ես վերադառնում եմ կայք արդեն 10 տարի: Բայց տարիների ընթացքում ես նաև սկսեցի մտածել, թե ինչ խաղ է Stack Overflow-ը և ինչ է նշանակում դրանում հաղթելը:

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

Հեղինակությունը չի նշանակում այն, ինչ դուք կարծում եք, որ դա նշանակում է:

Համբավը համարժեք չէ տեխնիկական իրավասությանը, հաղորդակցման հմտություններին կամ հասկանալու, թե ինչպես է աշխատում կամ պետք է աշխատի Stack Overflow-ը:

Չեմ ուզում ասել, որ հեղինակությունն անիմաստ է։ Դա պարզապես չի նշանակում, թե ինչ են նշանակում Stack Overflow-ի ադմինները կամ ինչ է նշանակում «հեղինակություն» բառը: Ես հասկացա, որ հեղինակությունը ազդեցության չափանիշ է։ Դիտարկենք կայքում հրապարակված երկու հիպոթետիկ պատասխաններ.

  • Մեկը սովորական git գործողության մասին: Երեք տողանոց պատասխան գրեցի երկու րոպեում՝ օգտագործելով Google-ը։
  • Մյուսը խճճված գրաֆիկների տեսության մասին է: Երևի միայն հարյուր մարդ ամբողջ աշխարհում կարող է պատասխանել դրան։ Ես գրեցի մի քանի պարբերություն և օրինակելի կոդը՝ բացատրելով խնդիրը և ինչպես լուծել այն:

Հինգ տարվա ընթացքում առաջին պատասխանը դիտվել է 5 միլիոն անգամ և ստացել 2000 կողմ ձայն։ Երկրորդ պատասխանը դիտարկվել է 300 անգամ և տրվել է երկու կոպիտ ձայն:

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

Այսպիսով, Stack Overflow-ում «հեղինակությունը» համարում եմ ազդեցության մի տեսակ: Իրական համբավը չի կարող չափվել միայն միավորներով, այն գալիս է համայնքից: Ո՞ւմ խորհուրդներին եմ լսում, ո՞վ է օգնում ուրիշներին, ո՞ւմ եմ վստահում: Միգուցե սրանք բոլորը տարբեր մարդիկ կլինեն՝ կախված նրանից՝ ես գրում եմ PHP-ով, թե iOS-ի համար:

Այս ասելով, ես չգիտեմ, թե ինչ պետք է անի Stack Overflow-ն այս առումով: Արդյո՞ք օգտատերերը նույնքան մոտիվացված կլինեին, եթե «հեղինակության» փոխարեն «խորամանկ միավորներ» վաստակեին: Արդյո՞ք օգտվողները կմնան նույնքան ներգրավված, եթե ընդհանրապես չլինի միավորային համակարգ: Չեմ կարծում։ Եվ այն առասպելը, որ Stack Overflow-ում «հեղինակությունը» համարժեք է իրական հեղինակությանը, ձեռնտու է ոչ միայն հենց կայքին, այլև նրա ամենաակտիվ օգտատերերին: Դե, իսկապես, ո՞ւմ դուր չի գալիս բարձրացնել իր հեղինակությունը:

Ոչ, ինչպես ամենից հաճախ է պատահում կյանքում, որպեսզի իրական պատկերացում կազմեք կատարվածի մասին, պետք է վերլուծել ոչ միայն թվերը: Եթե ​​գրառումը Stack Overflow-ում ունի 10 հազար միավոր, ապա տեսեք, թե ինչպես է այս մարդը շփվում, ինչ հարցեր ու պատասխաններ է հրապարակում։ Եվ բոլոր, բացառությամբ բացառիկ դեպքերում, հիշեք, որ Stack Overflow-ի միայն միավորները դժվար թե այլ բան ցույց տան, քան անձի՝ կայքից օգտվելու կարողությունից: Եվ իմ փորձից, նրանք հաճախ չեն էլ խոսում այս մասին:

Ես արդյունավետ չէի լինի առանց Stack Overflow-ի

Ամեն անգամ, երբ ես պետք է ինչ-որ բարդ բան անեմ git-ում, ես գնում եմ Stack Overflow: Ամեն անգամ, երբ ինձ ինչ-որ պարզ բան է պետք bash-ում, ես գնում եմ Stack Overflow: Ամեն անգամ, երբ ես ստանում եմ տարօրինակ կազմման սխալ, ես գնում եմ Stack Overflow:

Ես արդյունավետ չեմ առանց IntelliSense-ի՝ որոնման համակարգի և Stack Overflow-ի: Դատելով որոշ գրքերից՝ սա ինձ շատ վատ ծրագրավորող է դարձնում։ Ես, հավանաբար, շատ թեստեր կտապալվեի և շատ խնդիրներ չլուծեի խաղատախտակի վրա: Թող այդպես լինի. Լուրջ, ամեն անգամ, երբ ես օգտագործում եմ .sort JavaScript-ում, ես պետք է փնտրեմ տեղեկատվություն այն մասին, թե երբ կստանամ -1, 0 կամ 1, և ես ամեն օր գրում եմ JS՝ զարգացնելով լեզվի համար ամենահայտնի խմբագրիչը:

Ոչ, Stack Overflow-ը անհավանական գործիք է: Միայն հիմարը չէր օգտագործի իրեն հասանելի բոլոր գործիքները։ Ուրեմն ինչո՞ւ ինձ նման ներքին հիմար չլինել։ Պահպանեք ձեր ուղեղի ռեսուրսները կարևոր գիտելիքների համար, օրինակ՝ անգիր անելով Սայնֆելդի սերիալի բոլոր սյուժեները կամ հնարել բարդ բառախաղեր (որոնք այդքան բացակայում են այս հոդվածում, բայց կլինեն բոլորովին այլ բնույթի շատ ուրիշներ):

Stack Overflow-ը հրաշք է

Stack Overflow-ը թույլ է տալիս ցանկացածին, անկախ փորձից կամ գիտելիքներից, տեղադրել ծրագրավորման հարցեր: Այս հարցերին պատասխանում են բոլորովին անծանոթ մարդիկ, որոնցից շատերն իրենց կյանքի և կարիերայի ժամանակն անցկացնում են ուրիշներին անվճար օգնելու համար:

Հրաշքը հենց Stack Overflow-ի գոյության և աշխատանքի արդյունքն է։ Համոզված եմ, որ ամեն ինչ չէ, որ ստացվում է այնպես, ինչպես նախատեսել են դրա ստեղծողները, բայց նրանք փորձում են։ Չնայած բոլոր թերություններին, կայքը երկար տարիներ օգնում է հսկայական թվով մարդկանց, այդ թվում՝ ինձ։

Stack Overflow-ը հավերժ չի տևի: Մի օր ավելի լավ բան կգա: Հուսանք, որ սա մի բան է, որը կսովորի Stack Overflow-ի սխալներից և կվերցնի լավագույնը դրանից: Մինչ այդ, ես հուսով եմ, որ մենք այս կայքը չենք ընկալում որպես կանոն: Սա և՛ ուղենիշ է, և՛ կենդանի համայնք, որը մշտապես համալրվում է նոր մարդկանցով։ Եթե ​​դա ձեզ անհանգստացնում է, հիշեք, որ այս ամենը շատ փխրուն է, և նույնիսկ փոքր գործողությունները, ինչպիսիք են բարի նպատակներով, բայց դեռ անգրագետ նորեկներին օգնելը, կարող են դրական ազդեցություն ունենալ: Եթե ​​ես քննադատում եմ այս կայքը, դա միայն այն պատճառով է, որ ինձ հետաքրքրում է և գիտեմ, թե ինչպես այն ավելի լավը դարձնել:

PS

Ես դեռ դպրոցական էի, երբ եկա Stack Overflow: Ես նոր էի սկսում գրել (ES5!) JavaScript-ը Eclipse-ում, և թվում էր, թե հարցերի 90%-ը սկսվում էր «Օգտագործելով jQuery, պարզապես...»: Եվ չնայած ես չգիտեի, թե ինչ եմ անում, անծանոթ մարդիկ իրենց ժամանակը ծախսում էին ինձ օգնելու համար: Չեմ կարծում, որ այն ժամանակ իսկապես գնահատել եմ, բայց չեմ մոռացել:

Մարդիկ միշտ կցանկանան, որ Stack Overflow-ը լինի այլ բան. հարց ու պատասխանի կայք; կենցաղային խնդիրների լուծման գործիք; ծրագրավորման կենսամակարդակը. Եվ ինձ համար այս կայքը, չնայած իր աճին և թերություններին, իր հիմքում բաց համայնք է, որտեղ օտարներն օգնում են միմյանց սովորել և կատարելագործվել: Եվ դա հիանալի է: Ես ուրախ եմ, որ վերջին 10 տարիների ընթացքում եղել եմ Stack Overflow-ի մի մասը և հույս ունեմ, որ կշարունակեմ դա անել: Ես ուզում եմ հաջորդ տասնամյակում սովորել այնքան նոր բաներ, որքան նախորդ տասնամյակում:

Source: www.habr.com

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