Обявяване на техническа награда за 1 милион долара

Фокусиран е върху инструменталното развитие и развитието на инфраструктурата

Наскоро завършихме и изплатихме първите си няколко технически изкушения на Gitcoin. Това, което започна като експеримент, сега се превърна в вдъхновение за ангажиране на разработчиците в изграждането на екосистемата Harmony.

Цел

В Harmony вярваме, че ще донесем ценности, като първо изградим солидна основа, върху която хората могат да изграждат страхотни блокчейн продукти и да използват случаи. За тази цел ние се стремяхме да се съсредоточим върху основния протокол и се гордеем с напредъка си до момента. В същото време виждаме, че основният протокол, който изграждаме, е само базов лагер. Нашето пътуване - в огромната блокчейн пустиня, която ни чака - започва тук, но ние знаем, че за това пътуване ще ни трябва повече от базов лагер. Много повече за 10 милиарда души, които да направят това пътуване.

Така че ние идентифицирахме и съставихме списък на няколко такива ключови области, които трябва да бъдат изградени около основния ни протокол. И бихме искали да помолим колегите строители да се присъединят към нас. Ние проектираме тази богата програма, за да улесним живота на разработчиците, партньорите и операторите на възли да взаимодействат с блокчейна на Harmony.

Ако видите район и си помислите „Ей, това е моят дом!“, Моля, помислете за присъединяване към нашите усилия, за да можем заедно да направим това пътуване.

dApp & SDK тръбопровод

Мост на екосистемата Ethereum

Моделите за акаунти и транзакции (и електронно представяне), които използваме днес, са до голяма степен взети от Ethereum, въпреки че нашият консенсус протокол - пренасяйки ги като полезен товар - драстично се различава. В същото време забелязахме, че многопластовата природа на екосистемата на Ethereum дава възможност на приложения и инструменти като Metamask и Truffle да се свързват с веригата Ethereum, без задължително да говорят протокола Ethereum на тел: Достатъчно е те да говорят JSON-RPC на Ethereum.

Затова бихме искали да видим доставчик на JSON-RPC, който говори с нашия протокол и се свързва с нашата мрежа. Казано по-просто, това ще бъде Web3.js за Harmony, на който Metamask и други инструменти и продукти на екосистемата Ethereum могат да говорят.

Хармония SDK

Дори и да имахме собствен мост, съвместим с Web3.js, това няма да е единственото нещо, което трябва да взаимодейства с нашата мрежа. Инструменти за разработчици като Truffle са добри примери: Те често се нуждаят от по-ниско ниво и по-фин достъп до мрежата, отколкото предоставя Web3.js. Ще имаме и собствени функции, несъвместими лесно с модела Ethereum на склад и Web3.js вероятно ще се окаже неадекватен за тях.

Затова бихме искали SDK / библиотека от по-ниско ниво, която може да говори с мрежата Harmony, като говори и разбира същия протокол и семантика. Мостът Harmony Web3.js, споменат по-горе, може да използва и да позволи на този SDK да направи специфичния за Хармония тежко повдигане и да се съсредоточи правилно, като е съвместим с Ethereum адаптиращ слой.

Инструменти и приложения (фаза 2)

След като имаме SDK и мост на място, ще сме готови да приветстваме съществуващите Ethereum dApps и инструменти за разработка. Ако използвате или разработите такива dApps и / или инструменти, бихме искали да ви поканим да опитате нашата мрежа.

Разгръщане на възел

Нашата мрежа се нуждае от възли. Много от тях. Но ако това беше голяма караница, никой няма да се притеснява. Така че искаме да направим лесно и безболезнено да настроим и работим с възел. Това включва, наред с други неща, преместване на технически препятствия и тежести извън пътя на оператора на възела, така че да не се налага да се безпокоят нито веднъж за тях.

Първата стъпка би била, разбира се, безболезнено разгръщане: Ако операторът на възел вече е имал акаунт на AWS, трябва да е лесно за тях да изпълняват възли там. Същото е и за Azure, Google Compute Platform, Digital Ocean. Същото е и за техния собствен компютър у дома. И лаптопа им.

Напълно персонализирането на разполагането на всяка от тези платформи е болезнено, така че не искаме да вървим по този път. Вместо това искаме да предоставим изображение на Docker и да оставим операторите на възли лесно да го изтеглят и пускат на контейнерната платформа по техен избор (Docker за Windows, Docker за Mac, AWS ECS / EKS…).

Като най-запознати със собствената си двоична хармония, ние от Harmony планираме да създадем стандартизирано и добре документирано изображение на контейнера като атомен компонент в опциите за разполагане. Бихме искали да поканим инженери за разполагане да направят това изображение и да оставим операторите на възли да го изпълняват.

Мониторинг на възел / клъстер / мрежа

Някои оператори на възли са хобисти от време на време, но други са по-сериозни: Те влагат сериозно количество ресурс в работа на възел, работят за сериозно време - дори за неопределено време - и очакват също толкова сериозна награда. За тях е от първостепенно значение да поддържат и функционират възлите си, а също и да се уверят, че са в здрава мрежа. Те не искат нещата или ситуациите да се влошат - а наградата им да намалее - без те да знаят. Ако се случи лошо нещо, те искат да разберат и да направят нещо за това възможно най-скоро. Те искат да наблюдават своите възли и мрежата.

Уловката е, че не всички оператори на възли са твърди технолози. Не бива да очакваме те да създадат своя собствена система за наблюдение, съобразена с протокола Harmony, за техния клъстер от един милион символи. Вместо това ние искаме да им дадем правилни инструменти за използване, така че те да могат лесно да следят инвестициите си и да се върнат.

На по-техническо / тактическо ниво смятаме, че би било най-изгодно, ако всеки оператор може да локализира своя възел (или клъстер от възли) с стека ELK (Elasticsearch, Logstash, Kibana) + Elastic Beats (Metricbeat + Filebeat) :

  • Metricbeat изпраща здравни показатели за цялата възлова система на Elasticsearch;
  • Filebeat изпраща дневници на възел в Elasticsearch (както в цялата система, така и в Harmony);
  • Logstash (незадължително) агрегира и обогатява дневник / показател с контекстна информация;
  • В този случай Beats излъчва данни към Logstash, който след това обработва данните, преди да ги изпрати на Elasticsearch.
  • Elasticsearch съхранява и индексира дневници (търсене в цял текст) и показатели (време за търсене);
  • Кибана действа като табло за управление на оператора; и
  • Скрипт за наблюдение улавя аномалиите и сигнализира на операторите.

Имаме предварителна версия, която работи с PagerDuty, но това беше насочено към нашите собствени нужди и бихме искали да поканим сезонни инженери на девес с опит в стека ELK, за да изградим по-рационална, лесна за разгръщане и използване система.

Ето списък на наличните проекти

  • Harmony-Ethereum Bridge: web3.js, Metamask, Truffle
  • Разгръщане на хармонията: Докер, Кубернети, тунелиране
  • Harmony Ops: Elasticsearch, Logstash, Kibana, Beats

Как да започнем

Ние ще актуализираме всички издания и проекти на нашия Github. Скоро ще видите тези баунти, публикувани в популярни мрежи за награди. Всяка награда ще има своята уникална стойност на изплащане въз основа на необходимия обхват и усилия.

Изплащанията ще бъдат в маркери Harmony, които ще бъдат изплатени при успешното приключване на наградата. За да започнете да изграждате заедно с нас, присъединете се към нашия чат Discord и не се колебайте да ни пишете на [email protected]

Извикайте на Юджийн Ким за очертаване на програмата за технически награди за Хармония и принос към този пост!