Առաջարկվող տեղեկատվական միջավայրը մի տեսակ ապակենտրոնացված սոցիալական ցանց է: Բայց ի տարբերություն շատ գոյություն ունեցող լուծումների, այս միջավայրը, բացի ապակենտրոնացումից, ունի մի շարք օգտակար հատկություններ և ստեղծվել է բավականին պարզ և ստանդարտ տեխնիկական լուծումների հիման վրա (էլ.փոստ, json, տեքստային ֆայլեր և մի փոքր բլոկչեյն): Սա թույլ է տալիս ծրագրավորման հիմնական գիտելիքներ ունեցող յուրաքանչյուրին ստեղծել իր սեփական ծառայություններն այս միջավայրի համար:
Ունիվերսալ ID
Ցանկացած առցանց միջավայրում օգտագործողի և օբյեկտի նույնացուցիչները համակարգի հիմնական տարրերից են:
Այս դեպքում օգտագործողի նույնացուցիչը էլփոստն է, որն իրականում դարձել է ընդհանուր ընդունված նույնացուցիչ՝ վեբ կայքերում և այլ ծառայություններում (jaber, openId) թույլտվության համար։
Փաստորեն, տվյալ առցանց միջավայրում օգտագործողի նույնացուցիչը մուտք+դոմեն զույգն է, որը հարմարության համար գրված է շատերին ծանոթ ձևով: Միևնույն ժամանակ, ավելի մեծ ապակենտրոնացման համար ցանկալի է, որ յուրաքանչյուր օգտվող ունենա իր սեփական տիրույթը: Ինչը մոտ է indieweb-ի սկզբունքներին, որտեղ տիրույթն օգտագործվում է որպես օգտագործողի նույնացուցիչ: Մեր դեպքում օգտատերը մականուն է ավելացնում իր տիրույթում, որը թույլ է տալիս մի տիրույթում ստեղծել մի քանի հաշիվ (օրինակ՝ ընկերների համար) և ավելի ճկուն է դարձնում հասցեավորման համակարգը։
Օգտվողի ID-ի այս ձևաչափը կապված չէ որևէ ցանցի հետ: Եթե օգտատերը իր տվյալները տեղադրում է TOR ցանցում, ապա նա կարող է օգտագործել տիրույթներ .onion գոտում, եթե սա DNS համակարգով ցանց է բլոկչեյնում, ապա տիրույթներ .bit գոտում: Արդյունքում օգտատերերին և նրանց տվյալները հասցեագրելու ձևաչափը կախված չէ այն ցանցից, որի միջոցով դրանք փոխանցվում են (մուտք+տիրույթ համակցությունն օգտագործվում է ամենուր)։ Նրանց համար, ովքեր ցանկանում են օգտագործել bitcoin/ethereum հասցեն որպես նույնացուցիչ, կարող եք փոփոխել համակարգը՝ օգտագործելու ձևի կեղծ էլփոստի հասցեները: [email protected]
Օբյեկտների հասցեագրում
Այս առցանց միջավայրը իրականում օբյեկտների մի շարք է, որոնք նկարագրված են կառուցվածքային, մեքենայական ընթեռնելի ձևով, վերաբերում են այլ օբյեկտներին և կապված են կոնկրետ օգտագործողի (էլ.փոստի) կամ նախագծի/կազմակերպության (տիրույթի) հետ:
urn:opendata անվանատարածքում urn-ները օգտագործվում են որպես օբյեկտի նույնացուցիչներ: Օրինակ, օգտվողի պրոֆիլն ունի այնպիսի հասցե, ինչպիսին է.
urn:opendata:profile:[email protected]
Օգտատիրոջ մեկնաբանությունն ունի այնպիսի հասցե, ինչպիսին է՝
urn:opendata:comment:[email protected]:08adbed93413782682fd25da77bd93c99dfd0548
որտեղ 08adbed93413782682fd25da77bd93c99dfd0548 պատահական sha-1 հեշ է, որը գործում է որպես օբյեկտի id, և [էլեկտրոնային փոստով պաշտպանված] - այս օբյեկտի սեփականատերը:
Օգտագործողի տվյալների հրապարակման սկզբունքը
Ձեր սեփական տիրույթը վերահսկողության տակ ունենալով՝ օգտատերը կարող է հեշտությամբ հրապարակել իր տվյալները և բովանդակությունը։ Եվ ի տարբերություն indiebeb-ի, սա չի պահանջում html էջերով կայք ստեղծել՝ ներկառուցված իմաստային տվյալներով։
Օրինակ, օգտվողի մասին հիմնական տեղեկատվությունը գտնվում է datarobots.txt ֆայլում, որը գտնվում է այնպիսի հասցեում, ինչպիսին է.
http://55334.ru/[email protected]/datarobots.txt
Եվ այն ունի հետևյալ բովանդակությունը.
Object: user
Services-Enabled: 55334.ru,newethnos.ru
Ethnos: newethnos
Delegate-Tokens: http://55334.ru/[email protected]/delegete.txt
Այսինքն, ըստ էության, դա key->vale ձևի տվյալների հետ տողերի հավաքածու է, որը պարզ խնդիր է ծրագրավորման հիմնական գիտելիքներ ունեցող յուրաքանչյուրի համար: Եվ դուք կարող եք խմբագրել տվյալները, եթե ցանկանում եք, օգտագործելով սովորական նոթատետր:
Ավելի բարդ տվյալներ (պրոֆիլ, մեկնաբանություն, գրառում և այլն), որոնք ունեն իրենց urn-ը, ուղարկվում են որպես JSON օբյեկտ՝ օգտագործելով ստանդարտ API (http://opendatahub.org/api_1.0?lang=ru), որը կարող է. տեղակայվել որպես օգտագործողի տիրույթում և երրորդ կողմի կայքում, որին օգտատերը պատվիրել է իր տվյալների պահպանումը, հրապարակումը և խմբագրումը (datarobots.txt ֆայլի Services-Enabled տողում): Նման երրորդ կողմի ծառայությունները նկարագրված են ստորև:
Պարզ գոյաբանություն և JSON
Հաղորդակցման միջավայրի գոյաբանությունը համեմատաբար պարզ է արդյունաբերության գիտելիքների բազայի գոյաբանությունների համեմատ: Քանի որ հաղորդակցության միջավայրում կա ստանդարտ օբյեկտների համեմատաբար փոքր հավաքածու (գրառում, մեկնաբանություն, հավանում, պրոֆիլ, ակնարկ) համեմատաբար փոքր հատկություններով:
Հետևաբար, նման միջավայրում օբյեկտները նկարագրելու համար բավական է օգտագործել JSON-ը XML-ի փոխարեն, որն ավելի բարդ է կառուցվածքով և վերլուծությամբ (կարևոր է չմոռանալ մուտքի ցածր շեմի և մասշտաբայնության անհրաժեշտության մասին):
Հայտնի urn-ով օբյեկտ ձեռք բերելու համար մենք պետք է կապ հաստատենք օգտագործողի տիրույթի կամ երրորդ կողմի ծառայությունների հետ, որոնց օգտատերը պատվիրել է իր տվյալների կառավարումը:
Այս առցանց միջավայրում յուրաքանչյուր տիրույթ, որի վրա գոյություն ունի առցանց ծառայություն, ունի նաև իր datarobots.txt-ը, որը գտնվում է նմանատիպ բովանդակությամբ օրինակ.com/datarobots.txt հասցեում.
Object: service
Api: http://newethnos.ru/api
Api-Version: http://opendatahub.org/api_1.0
Որից մենք կարող ենք իմանալ, որ մենք կարող ենք տվյալներ ստանալ օբյեկտի մասին այնպիսի հասցեով, ինչպիսին է.
JSON օբյեկտն ունի հետևյալ կառուցվածքը.
{
"urn": "urn:opendata:profile:[email protected]",
"status": 1,
"message": "Ok",
"timestamp": 1596429631,
"service": "example.com",
"data": {
"name": "John",
"surname": "Gald",
"gender": "male",
"city": "Moscow",
"img": "http://domain.com/image.jpg",
"birthtime": 332467200,
"community_friends": {
"[email protected]": "1",
"[email protected]": "0.5",
"[email protected]": "0.7"
},
"interests_tags": "cars,cats,cinema",
"mental_cards": {
"no_alcohol@main": 8,
"data_accumulation@main": 8,
"open_data@main": 8
}
}
}
Ծառայությունների ճարտարապետություն
Երրորդ կողմի ծառայություններն անհրաժեշտ են վերջնական օգտագործողների համար տվյալների հրապարակման և որոնման գործընթացը պարզեցնելու համար:
Վերը նշված ծառայությունների տեսակներից մեկն է, որն օգնում է օգտվողին հրապարակել իր տվյալները ցանցում: Կարող են լինել բազմաթիվ նմանատիպ ծառայություններ, որոնցից յուրաքանչյուրը օգտվողին տրամադրում է հարմար ինտերֆեյս տվյալների տեսակներից մեկը խմբագրելու համար (ֆորում, բլոգ, հարց-պատասխան և այլն): Եթե օգտատերը չի վստահում երրորդ կողմի ծառայություններին, ապա նա կարող է իր տիրույթում տեղադրել տվյալների սպասարկման սկրիպտ կամ ինքնուրույն մշակել այն։
Ի լրումն ծառայություններից, որոնք թույլ են տալիս օգտվողներին հրապարակել/խմբագրել տվյալները, առցանց միջավայրը տրամադրում է մի շարք այլ ծառայություններ, որոնք կատարում են համեմատաբար բարդ առաջադրանքներ, որոնք բավականին խնդրահարույց են վերջնական օգտագործողի հանգույցներում իրականացնելը:
Նման ծառայության տեսակներից մեկը տվյալների հանգույցներն են (
Նման բաց, ապակենտրոնացված առցանց միջավայրում ծառայությունների առկայությունը զգալիորեն նվազեցնում է օգտվողների մուտքի խոչընդոտը, քանի որ կարիք չկա տեղադրել և կարգավորել իրենց սեփական հանգույցը: Միևնույն ժամանակ, օգտատերը շարունակում է վերահսկել իր տվյալները (ցանկացած պահի նա կարող է փոխել ծառայությունը, որին պատվիրակված է տվյալների հրապարակումը կամ ստեղծել իր սեփական հանգույցը):
Եթե օգտատերը բոլորովին շահագրգռված չէ իր տվյալներին տիրապետելու հարցում և չունի իր սեփական տիրույթը կամ տիրույթին ծանոթ որևէ մեկը, ապա լռելյայն նրա տվյալները կառավարվում են opendatahub.org-ի կողմից։
Ո՞ւմ հաշվին է այս ամենը։
Նման գրեթե բոլոր ապակենտրոնացված նախագծերի հիմնական խնդիրը, թերեւս, կայուն զարգացման և աջակցության համար բավարար մակարդակով դրամայնացնելու անկարողությունն է:
Donate + նշաններն օգտագործվում են այս առցանց միջավայրում զարգացման և շուկայավարման ծախսերը ծածկելու համար:
Բոլոր նվիրատվությունները, որոնք օգտատերերը կատարում են ներքին նախագծերին/ծառայություններին, հանրությանը հասանելի են, մեքենայական ընթեռնելի և կապված էլփոստի հետ: Սա թույլ է տալիս դրանք հաշվի առնել, օրինակ, առցանց սոցիալական վարկանիշը հաշվարկելիս և հրապարակել օգտատերերի էջերում։ Երբ նվիրատվությունները դադարում են անանուն լինել, ապա իրականում օգտատերերը չեն նվիրաբերում, այլ «չիպ են անում»՝ աջակցելու ընդհանուր տեղեկատվական միջավայրին: Ճիշտ այնպես, ինչպես մարդիկ ներխուժում են ընդհանուր տարածքները վերանորոգելու համար՝ համապատասխան վերաբերմունք ունենալով այն մարդկանց նկատմամբ, ովքեր հրաժարվել են մուտք գործել:
Բացի նվիրատվություններից, միջոցներ հայթայթելու համար օգտագործվում են սահմանափակ քանակությամբ (400.000) թողարկված ժետոններ, որոնք շնորհվում են բոլոր նրանց, ովքեր նվիրատվություններ են անում հիմնական հիմնադրամին (էթնոգենեզ):
Լրացուցիչ նշանների առանձնահատկություններ
Յուրաքանչյուր նշան «բանալի» է այս առցանց միջավայր մուտք գործելու համար: Այսինքն՝ դուք կարող եք օգտվել ծառայություններից և լինել առցանց միջավայրի մաս միայն այն դեպքում, եթե ունեք առնվազն 1 նշան, որը կապված է էլ.փոստի հետ:
Նշանները լավ սպամի զտիչ են իրենց սահմանափակ բնույթի պատճառով: Որքան շատ օգտատերեր լինեն համակարգում, այնքան ավելի դժվար է նշան ձեռք բերելը և ավելի թանկ է բոտերի ստեղծումը:
Մարդիկ, նրանց տվյալներն ու սոցիալական կապերն ավելի կարևոր են, քան տեխնոլոգիաները
Նկարագրված առցանց միջավայրը տեխնիկապես համեմատաբար պարզունակ լուծում է: Բայց դրա մեջ ավելի կարևորը ոչ այնքան տեխնոլոգիան է, որքան մարդիկ և սոցիալական կապերն ու տվյալները (բովանդակությունը)՝ ստեղծված միջավայրում։
Ստեղծված սոցիալական համայնքը, որի անդամներն ունեն իրենց ունիվերսալ նույնացուցիչները (էլ.փոստ և սեփական տիրույթ) և կառուցվածքային տվյալներ (URN հասցեներով, գոյաբանությամբ և JSON օբյեկտներով), երբ ավելի լավ տեխնիկական լուծում հայտնվի, կարող է այս բոլոր տվյալները փոխանցել այլ առցանց միջավայր, պահպանելով ձևավորված կապերը (վարկանիշներ, վարկանիշներ) և բովանդակությունը։
Այս գրառումը նկարագրում է ցանցային ինքնակազմակերպված համայնքի տարրերից մեկը, որը, ի լրումն ապակենտրոնացված առցանց միջավայրի, ներառում է մի շարք օֆլայն տարածքներ, որոնք մեծացնում են առցանց միջավայրի առավելությունները և հանդիսանում են «հաճախորդներ», որոնք մեծապես որոշում են դրա ֆունկցիոնալությունը: Բայց սրանք այլ հոդվածների թեմաներ են, որոնք ուղղակիորեն կապված չեն ՏՏ-ի և տեխնոլոգիայի հետ:
Source: www.habr.com