Cointelegraph sleduje vývoj zcela nového blockchainu od počátku až po mainnet a dále prostřednictvím své série Inside the Blockchain Developer’s Mind, kterou napsalAndrew Levine skupiny Koinos.
Nedávno jsme vydali třetí a poslední verzi testovací sítě Koinos, a proto chci mluvit o něčem, o čem mluví jen málo projektů: Budování blockchainů jevývojové peklo. V tomto článku vysvětlím, proč a jak se ostatní vývojáři mohou vyhnout uvíznutí v něm.
Naši nejlepší obchodní roboti
Budování blockchainu na první pohled nezní tak těžce. Blockchain je pouze kombinací dobře zavedených kryptografických primitiv, které při správné implementaci umožňují sestavení účetní knihy obsahující ověřitelnou historii transakcí v síti. Čím je síť decentralizovanější, tím je historie důvěryhodnější.
![Uvnitř mysli vývojářů blockchainu: Jak se vyhnout vývojářskému peklu](https://cryptoboom.com/images/22-1647803177293.png)
Blockchain „rámce“
Ve snaze usnadnit vytváření nových blockchainů vydaly další týmy blockchainové „rámce“, které by teoreticky měly eliminovat potřebu vývojářů starat se o budování samotného blockchainu, aby se mohli soustředit na jakékoli jedinečné funkce, do kterých chtějí zabudovat. blockchain. Cosmos, EOSIO a Polkadot’s Substrate jsou příklady takových blockchainových rámců.
Když náš tým přestal pracovat na Steem (první bezpoplatkový blockchain na světě), naším původním záměrem bylo využít existující blockchainový rámec k vybudování blockchainu navrženého tak, aby byl co nejpřístupnější. Strávili jsme čtyři roky vylepšováním bezpoplatkového designu Steemu a zjistili jsme, že přenesením tohoto řešení do existujícího blockchainového rámce bychom mohli dodat blockchain, který je mnohem dostupnější než jakýkoli jiný blockchain v relativně krátkém čase.
Příbuzný:Uvnitř mysli vývojáře blockchainu: Konsenzus o vypálení blockchainu
Skutečně bez poplatků a pro všeobecné použití
Byli jsme však překvapeni, když jsme zjistili, že žádný ze stávajících rámců nám neumožnil vytvořit skutečně bezcitnou uživatelskou zkušenost, kterou jsme chtěli přinést na trh. Nechtěli jsme pouze odstranit poplatky na technické úrovni, chtěli jsme umožnit vývojářům vytvářet aplikace, které lze používat zdarma.. Postrádaly také řadu dalších funkcí, o kterých jsme se domnívali, že jsou nutné k poskytování přijatelné vývojářské zkušenosti.
Síla univerzálního blockchainu nepramení z funkcí, které blockchainoví inženýři do blockchainu zabudují, ale z funkcí, které vývojáři do tohoto blockchainu přidávají jako chytré smlouvy. To platí dvojnásob pro blockchain framework, který by měl být opravdu nejvícuniverzální blockchain si lze představit, protože celá myšlenka je umožnit lidem vybudovat jakýkoli druh blockchainu, který si dokážou představit. A přesto nás stávající rámce nedokázaly zmocnit nás, jednoho z nejzkušenějších vývojových týmů blockchainu, v našich pokusech vybudovat blockchain, který jsme chtěli vybudovat, různými způsoby..
Stávající frameworky nejenže znemožnily vývojářům vytvářet volně použitelné aplikace, ale také je nutily učit se nové a často obtížné programovací jazyky a dramaticky omezovaly rychlost, jakou by se aplikace i samotný blockchain mohly zlepšovat.
Příbuzný:Uvnitř mysli vývojářů blockchainu: Vytvoření bezplatné sociální DApp
Uvolnění vývojářů
Chtěli jsme vybudovat blockchain, který umožní vývojářům vytvářet šíleně skvělé aplikace, které by obyčejní lidé rádi používali. To vývojářům umožnilo pracovat v programovacích jazycích, které již znali a milovali (to, čemu říkáme „podpora univerzálních jazyků“); což umožnilo jejich aplikacím (a samotnému blockchainu) se rychle vyvíjet; a hlavně jim to umožnilo vytvářet aplikace, které bylo možné používat zdarma.
Ale abych to postavilblockchain, nejprve jsme potřebovali skutečně univerzální blockchainový rámeccož by nám nejen umožnilo vybudovat blockchain našich snů, ale jako přirozený důsledek toho, že jde o nejuniverzálnější rámec, jaký si lze představit, by mělo umožnit komukoli vybudovat blockchain svéhosny.
Koinos je ten konečný univerzální blockchainový rámec, který bude sloužit jako základ pro konečnou bezcitnou vrstvu 1: hlavní síť Koinos. Koinos Blockchain Framework (KBF) je navržen tak, aby byl co nejjednoduššíblockchain, který si lze představit, obsahující pouze ta kryptografická primitiva nezbytná k sestavení blockchainu a správná „systémová volání“, která umožňují přidávat nejširší škálu chování v pásmu (bez hard forku) prostřednictvím nahrání chytré smlouvy.
![Uvnitř mysli vývojářů blockchainu: Jak se vyhnout vývojářskému peklu](https://cryptoboom.com/images/72-1647803180440.png)
Nekonečná možnost upgradu
Výhodou tohoto designu je nekonečná možnost upgradu, ale cena spočívá v tom, že správné systémové volání je o to důležitější. Vynechání systémového volání nebo jeho nesprávné navržení by znamenalo, že se budete muset vypořádat s hard forkem, kterému se lze vyhnout. Protože hard forky jsou tak časově náročné, politické a rušivé, jsou jediným největším faktorem omezujícím schopnost blockchainu se zlepšovat, což nakonec pocítí každý jednotlivý vývojář, jehož aplikace je postavena na takové platformě.
Nyní můžeme vidět, jak se vývojáři aplikací i blockchainu mohou dostat do pasti vývojářského pekla: pracovat v programovacích jazycích, které jim nevyhovují, na platformách, které je nutí začlenit poplatky a které se zlepšují hlemýždím tempem. Za těchto podmínek mají i malé změny neuvěřitelně vysoké sázky a my jsme ani nepočítali se scénáři, kde jsou v ohrožení miliony, někdy miliardy dolarů.
To je vývojářské peklo. Jako hlavní vývojový tým stojící za blockchainem Steem, který musel dohlížet na 23 hard forků, známe tento terén lépe než téměř kdokoli jiný, a proto jsme byli tak odhodláni ho vypudit, no...k čertu.
Vybudovat Koinos Blockchain Framework od nuly se zcela novou architekturou mikroslužeb a dostat to do bodu, kdy bychom mohli spustit verze 1 a 2 testovací sítě, bylo neuvěřitelně náročné. Ale integrace zpětné vazby, kterou jsme získali z těchto testovacích sítí, oprava chyb, které odhalily, a dokončení všech důležitých systémových volání byla úplně jiná úroveň. Ale prošli jsme tím vývojovým peklem s nadějí, že to uděláme tak, že ostatní už nikdy nebudou muset.
Harbinger
Testnet v3 je tedy více než „jen další“ verze testnetu. Jedná se o konečnou verzi Koinos Blockchain Framework, a proto nyní budeme na testnet odkazovat nikoli číslem verze, ale názvem: Harbinger. Je to vyvrcholení téměř dvou let práce, identifikace a implementace všech nezbytných systémových volání potřebných k tomu, aby vývojářům blockchainu poskytla maximální úroveň svobody a umožnila vývojářům jejich aplikací těžit z platformy, která se zlepšuje rychleji než kterákoli jiná. blockchain tam venku.
Samozřejmě, kdykoli se snažíte vyřešit skutečně důležitý problém, určitá úroveň vývojového pekla je nevyhnutelná. Chcete se jen ujistit, že nepřijímáte technologie, které zbytečně zvyšují sázky, a že cíl, o který usilujete, stojí za to.
Pro nás je tímto cílem nejen ušetřit blockchainové vývojáře (včetně nás) od bezpočtu hodin strávených ve vývojářském pekle, ale také využít tuto novou technologii k vybudování Koinos mainnetu: ultimátní bezcitné vrstvy 1, která umožňuje vývojářům vytvářet šíleně skvělé aplikace založené na blockchainu.
Už žádné vývojářské peklo
KBF si klade za cíl odstranit vývojářské peklo tím, že umožňuje vývojářům budovat jakýkoli blockchain, který si dokážou představit, jednoduše psaním chytrých smluv, což je nekonečně jednodušší než práce v samotném kódu blockchainu. A přesně v takové pozici se nyní nacházíme. Zatímco vývoj blockchainového rámce byl neuvěřitelně náročný, nyní, když je u konce, vše, co je potřeba k dokončení Koinos mainnetu, jsou jen dvachytré kontrakty: jeden pro náš algoritmus proof-of-burn konsensu a druhý pro řízení.
Nejen, že je psaní chytrých smluv mnohem jednodušší než vývoj blockchainu, ale také to znamená, že vývojáři blockchainu nyní mohou využívat stále se rozšiřujících nástrojů, které jsou k dispozici vývojářům chytrých smluv, jako je AssemblyScript SDK, které vytvořil jeden z členů naší komunity. AssemblyScript nejenže vytváří mnohem efektivnější chytré smlouvy než ty napsané v C++ (to bylo překvapení), ale vývojářům v JavaScriptu zpřístupňuje vývoj chytrých smluv.
Vzhledem k tomu, že KBF promění každého vývojáře chytrých smluv v potenciálního vývojáře blockchainu, znamená to, že vývoj vlastních blockchainů bude nyní přístupný vývojářům JavaScriptu s ještě více jazyky, jako je Rust.
Pokud vás zajímá provozování Harbingeru, zjednodušili jsme spuštění uzlu, abyste mohli být v provozu za méně než pět minut.
Tento článek neobsahuje investiční rady ani doporučení. Každý investiční a obchodní tah zahrnuje riziko a čtenáři by měli při rozhodování provést vlastní průzkum.
Názory, myšlenky a názory zde vyjádřené jsou pouze autorem a nemusí nutně odrážet nebo nereprezentovat názory a názory společnosti Cointelegraph.