Hiteles útmutató a blokklánc fejlesztéséhez

Kriptopénzek, ICO-k, varázslatos internetes pénz - ez az egész baromi izgalmas, és te, a lelkes fejlesztő, be akarsz szállni az őrületbe. Honnan indulsz?

Örülök, hogy izgatott vagy ezen a téren. Én is. De valószínűleg nem világos, hogy hol kezdjem. A blokklánc rohamos sebességgel halad, de nincs egyértelmű átjárási pont a tanuláshoz.

Amióta otthagytam az Airbnb-t, hogy teljes munkaidőben dolgozzak a blockchain-on, sokan keresték meg azt a kérdést, hogyan lehet teljes munkaidőben bekerülni a blockchain térbe. Tekintsük ezt a mérvadó (és elkerülhetetlenül hiányos) útmutatómnak a blokklánc-tervezésbe való bekerülésről.

Ez az útmutató tíz részből áll:

  1. Miért kellene megtanulnia a blokklánc fejlesztését?
  2. Előfeltételek
  3. A Bitcoin elméleti alapjai
  4. Magad építs egy blokkláncot
  5. Ethereum és intelligens szerződés-programozás
  6. Intelligens szerződésbiztonság
  7. Az edzőkerekek levétele
  8. Saját projektek építése
  9. Navigálás a blockchain közösségben
  10. Munkát szerezni

Miért kellene megtanulnia a blokklánc fejlesztését?

Mielőtt megválaszolnám ezt a kérdést, hadd jegyezzem meg: a blockchain jelenleg egy masszívan túlértékelt hely. Ezek az árak tarthatatlanok, és mindenképpen összeomlás következik. Ez mind korábban megtörtént, és valószínűleg megismétlődik. De ha hosszú távon dolgozik ezen a téren, megtanulja levonni az árakat. Emin Gun Sirer szavaival élve - az árak jelentik a kriptovaluták legkevésbé érdekes részét. Ezek rendkívül fontos technológiák, és visszavonhatatlanul megváltoztatják a világot.

Ha nem vagy biztos benne, nem tudom megmondani, hogy be kell-e ugranod. De öt okot mondhatok, amelyek meggyőztek az ugrásra:

  1. Még mindig korán van.

A Bitcoin-t 10 évvel ezelőtt találták ki, de az innováció mértéke csak az elmúlt néhány évben érte el a lázas szintet, különösen az Ethereum 2015-ös indulásával. Ethereum, amely még mindig nagyon éretlen.

Még akkor is, ha most kezdi, néhány éven belül reálisan világszínvonalú szakértővé válhat. A legtöbb ember egyszerűen nem csinálta ezt olyan sokáig, és nem lesz olyan nehéz utolérni. A mostani kezdet hasonló lenne a mély tanulási szakértőkhöz, akik a témát a 2000-es évek végén kezdték el tanulmányozni.

2. Ennek a térnek még nincs erős tehetségcsatornája.

Az egyetemek legjobb és legfényesebb hallgatóinak többsége a gépi tanulásra, a webprogramozásra vagy a játékfejlesztésre koncentrál. Persze, a blokkláncok egyre szexibbek a nyilvános diskurzusban, de még mindig furcsa és felforgató téma, amely a karrierjét kockáztatja.

Korán a blockchain kizárólag a cypherpunkok, a paranoidok és a furcsaságok birodalma volt. Ez csak nemrégiben változni kezdett. Csak azáltal, hogy kíváncsi és nyitott gondolkodású fejlesztő leszel, rengeteg értéket fog hozni a térben.

3. Az innováció nagy része az egyetemen kívül zajlik.

Satoshi Nakamoto tudomásunk szerint nem volt akadémikus. Még nincs olyan egyetem vagy intézmény, amely koherens blokklánc-koncentrációt kínálna. Az itteni innováció nagy részét rajongók, vállalkozók és független kutatók vezették. Szinte minden, amit tudnia kell, fehér dokumentumok, blogbejegyzések, nyilvános Slack csatornák és nyílt forráskódú szoftverek. Csak annyit kell tennie, hogy felhúzza az ujját, és beleugrik a harcba.

4. A tehetség iránti kereslet messze meghaladja a kínálatot.

Csak nincs elég fejlesztő ezen a téren, és nem tudnak elég gyorsan képezni őket. Mindenki versenyez a blockchain tehetségek felvételéért, és a projektek érzik a tehetség összeroppanását. A legjobb vállalatok közül sokan nem tudnak annyit fizetni az embereknek, hogy maradjanak, mert túl sok lehetőségük van. Ha van némi készség az öv alatt, akkor könnyű lesz munkát adni.

5. A kriptopénzek nagyon rohadtul klasszak.

Hol lehet még sci-fi anyagokat építeni, például kriptográfiailag biztosított, decentralizált pénzt? Ez most a vadnyugat - és ez jót és rosszat hoz. A tér nagyobb átláthatóságot használhat fel, és a szabályozás végül meg fog valósulni. De kétségtelen, hogy a kriptovaluták az egyik leginnovatívabb terület, amelyben jelenleg dolgozhat.

Naval Ravikant egy nemrégiben készült interjúban elmondta: a siker kulcsa az, ha olyan dolgokat adunk a társadalomnak, amilyet akar, de nem tudja, hogyan kerüljön önmagába. Ilyen dolgokért nem lehet iskolába járni; ha tehetné, a világnak már biztosan rendelkezésre állna.

Tehát építsen olyat, amit senki más nem tud építeni. Jelenleg a blokkláncok vadonatújak, és annyi minden maradt hátra. Ha sikerül felépítenie a decentralizált technológia jövőjét, a világ remekül megjutalmaz.

Tehát mondd, hogy be akarod dobni a kalapodat. Mit kell tudni, mielőtt ringbe kerül?

Előfeltételek

Azt javaslom, hogy erősítse meg az alapismeretek megértését, mielőtt tovább merülne. A blokkláncok a számítástechnika, a kriptográfia és a közgazdaságtan évtizedes kutatásainak tetejére épülnek. Satoshi Nakamoto renegát volt, de jól ismerte az őt megelőző történelmet is. Ahhoz, hogy megértsd, miért működnek a blokkláncok, meg kell értened az építőköveiket - mi történt a blokkláncok előtt, és miért nem működtek ezek a dolgok.

Íme néhány jó előfeltétel, hogy ismerkedjünk, fontossági sorrendben.

Ne feledje, hogy ezek a linkek csak egy kiindulási pontot jelentenek, valószínűleg érdemes mélyebben belemerülni ezekbe a témákba.

Számítástechnika

Adatszerkezetek

Érdemes megismernie a főbb adatstruktúrák jellemzőit és komplexitási garanciáit: összekapcsolt listák, bináris keresési fák, hash térképek és grafikonok (konkrétan irányított aciklusos grafikonok, amelyek kiemelkedően szerepelnek a blokkláncokban). Segít abban, hogy a semmiből építsék fel őket, hogy jobban megértsék működésüket és tulajdonságait.

Titkosítás

A kriptográfia a kriptovaluták névadója és alapköve. Valamennyi kriptovaluta a nyilvános / privát kulcsú titkosítást használja az identitás és a hitelesítés alapjául. Azt javaslom, hogy tanulmányozza az RSA-t (könnyű megtanulni, és nem igényel túl erős matematikai hátteret), majd nézze meg az ECDSA-t. Az elliptikus görbe kriptográfia lényegesen elvontabb matematikát igényel - nem fontos megérteni az összes részletet, de tudd, hogy ez az a kriptográfia, amelyet a legtöbb kriptovalutában használnak, beleértve a Bitcoin-ot is.

A másik fontos kriptográfiai primitív a kriptográfiai hash függvény. Ezek felhasználhatók elkötelezettségi konstrukciók összeállításához, és a Merkle-fák építőelemei. A Merkle fák lehetővé teszik a Merkle bizonyításokat, az egyik legfontosabb optimalizálást, amelyet a blokkláncok használnak a méretezhetőség érdekében.

Elosztott rendszerek

Van néhány jó tankönyv az elosztott rendszereken, de ez egy terjedelmes és nehéz tanulmányozási terület. Az elosztott rendszerek elengedhetetlenek a blokkláncokról való érveléshez, ezért itt kell megalapoznia egy alapot, mielőtt a blokklánc programozással foglalkozna.

Miután már nem egyetlen gépen él, el kell kezdenie a következetesség és a konszenzus gondolkodását. Érdemes tudni, mi a különbség a linearizálható és az esetleges konzisztencia modellek között. Meg kell tanulnia a hibatűrő konszenzusos algoritmusok, például a Paxos és a RAFT garanciáit is. Ismerje az elosztott rendszerben az idővel kapcsolatos érvelés nehézségeit. Értékelje a biztonság és az életszerűség közötti kompromisszumot.

Ezzel a háttérrel meg fogja tudni érteni a bizánci hibatűrő konszenzus körüli nehézségeket, amelyek a nyilvános blokkláncok elsődleges biztonsági követelményei. Érdemes megismernie a PBFT-t, az egyik első skálázható algoritmust, amely bizánci hibatűrő konszenzust eredményez. A PBFT az alapja számos, nem munkabiztos blockchain konszenzus algoritmusnak. Még egyszer: nem kell megértenie a PBFT helyes működésének és miértjének részleteit, de meg kell kapnia az általános elképzelést és annak biztonsági garanciáit.

Nagyon hasznos megérteni az adatbázisok terjesztésének hagyományos módszereit (lényegében a blokkláncok mégiscsak adatbázisok). Tudjon meg többet az aprításról (például következetes hasholással), a vezető-követő replikációról és a kvórumon alapuló vállalásokról. Keressen olyan elosztott hash táblákat (DHT), mint a Chord vagy a Kademlia.

Hálózatépítés

A blokkláncok decentralizációja nagyrészt peer-to-peer hálózati topológiájukból származik. Mint ilyen, a blokkláncok a korábbi P2P hálózatok közvetlen leszármazottai.

A blokklánc kommunikációs modell megértéséhez meg kell értenie a számítógépes hálózatok alapjait: ez azt jelenti, hogy megértsük a TCP vs UDP-t, a csomagmodellt, hogyan néznek ki az IP-csomagok, és nagyjából hogyan működik az internetes útválasztás.

A nyilvános blokkláncok általában pletykaprotokollakon keresztül terjesztik az üzeneteket áradással. Tanulságos elsajátítani a P2P hálózat tervezésének történetét, a Napstertől a Gnutelláig, a BitTorrentig és a Torig. A blokkláncoknak megvan a maguk helye, de ezeknek a hálózatoknak a tanulságait és a tervezésüket használják.

Közgazdaságtan

A kriptovaluták eleve multidiszciplinárisak - ez része annak, ami annyira elbűvölő és radikális. A számítástechnika, a rejtjelezés és a hálózatépítés mellett a gazdasággal is mélyen összefonódnak. A kriptovaluták számos biztonsági tulajdonságot nyerhetnek gazdasági struktúrájuk révén, amelyet gyakran kriptogazdaságnak neveznek . Mint ilyen, a gazdaságtan elengedhetetlen a kriptovaluták megértéséhez.

Játékelmélet

A kriptovalutákba bevált közgazdaságtan legfontosabb ága a játékelmélet, a kifizetések és az ösztönzők vizsgálata több ügynök között. Itt nem kell rendkívül mélyrehatóan elmenned , de meg kell értened a játékelméleti elemzés alapvető eszközeit, és azt, hogyan használhatod fel őket az egylövéses és az iterált játékok ösztönzőinek elemzésére.

A repertoárjában két kulcsfogalomnak a Nash-egyensúly és a Schelling-pontnak kell lennie, mivel ezek kiemelkedően fontosak a kriptogazdasági elemzésben.

Makroökonómia

A kriptopénzek nem csak protokollok, hanem pénzformák is. Mint ilyen, reagálnak a makroökonómia törvényeire (ha törvényeknek nevezhetjük őket). A kriptovalutákra különféle monetáris politikák vonatkoznak, és kiszámíthatóan reagálnak az inflációra és a deflációra. Meg kell értenie ezeket a folyamatokat és azok hatásait a kiadásokra, megtakarításokra stb.

Egy másik értékes gazdasági fogalom a pénz sebessége, különösen, mivel megfelel egy valuta értékelésének.

Mikroökonómia

A kriptovaluták szintén mélyen összefonódnak a piacokkal, amihez a mikroökonómia megértése szükséges. A kereslet és kínálat görbéihez erős intuícióra lesz szükség. Képesnek kell lennie arra, hogy indokolja a versenyt és az alternatív költségeket (ezek gyakran vonatkoznak a kriptovaluta bányászatra). Számos érmeforgalmazás és kriptogazdasági rendszer esetében az aukcióelmélet kiemelkedő szerepet játszik.

Remélem, hogy Ön már ismeri ezeket a témákat. Ha igen, nyugodtan átugorhatja vagy teljesen átugorhatja őket.

Oké, mostanra már átmented és felhalmoztad az alapjaidat (vagy esetleg kihagytál egy csomót, ki számol?), Így most, hogy kordában van az elmélete, kezdjük a blokklánc fejlesztését.

A Bitcoin elméleti alapjai

2008 októberében Satoshi Nakamoto közzétett egy fehér könyvet, amelyben leírta a decentralizált digitális pénznem protokollját. Ezt a protokollt Bitcoinnak nevezte.

Mielőtt megértené a blokkláncok mögött rejlő nagy ötleteket, el kell kezdenie a Bitcoint és meg kell ragadnia Satoshi eredeti betekintését.

Először azt javaslom, hogy építse ki megérzéseit a munkavégzés igazolásáról és a villa választási szabályról (más néven Nakamoto konszenzusról). Kezdd itt:

Azt javaslom, hogy nézzen meg egynél több videomagyarázatot, hogy az ötlet a fejébe kerüljön:

Nagy. Most, hogy felépítette intuícióját, ez a cikk mélyebb, végpontok közötti áttekintést nyújt a Bitcoin működésének kritikus összetevőiről.

Magad építs egy blokkláncot

Most, hogy rendelkezik a magas szintű intuícióval, itt az ideje, hogy felépítse saját, munkáján alapuló blokkláncát. Ne aggódjon, ez könnyebb, mint amilyennek hangzik. Íme néhány jó forrás.

Először van egy video előadásom, ahol pontosan átlátom, hogyan kell ezt megtenni a Ruby-ban (ajánlom megnézni akkor is, ha Ön nem Ruby-programozó):

Forrás és diák itt.

Más blokklánc-megvalósítások is megtalálhatók, különféle programozási nyelveken írva. Folytasd és építsd a sajátodat, és győződj meg arról, hogy ez többnyire funkcionális.

Ha eddig elérted, akkor jól meg kell értened, hogyan lehet egy egyszerű fizetési alkalmazást megvalósítani egy blokklánc (azaz Bitcoin) tetején. Mostanra elegendő háttérrel kell rendelkeznie ahhoz, hogy képes legyen elolvasni és megérteni az eredeti Bitcoin-tájékoztatót.

A Bitcoin bányászatának közgazdaságtanának és mechanikájának megértése érdekében javaslom megnézni a Bitcoin bányászatról szóló előadást a Bitcoin és a Cryptocurrencies Princeton tanfolyamon.

Ha idáig eljutott, akkor elég jól meg kell értenie a Bitcoint ahhoz, hogy végigjárja a Bitcoin blokk fejlécét, és megértse, mit jelentenek az egyes komponensei. Azt is meg kell tudni játszani egy Bitcoin blokk felfedező és navigálni nyers Bitcoin tranzakciókat.

Itt az alkalom, hogy tanulmányozzuk a Bitcoin és a kriptovaluták történetét. Az alábbi videó, amelyet az UC Berkeley Decal ajánl, jó áttekintést nyújt.

További extra hitelforrások:

  • A Bitcoin tudományos elődei
  • A Bitcoin mechanikája: UTXO-k és Bitcoin szkript (a Bitcoin szkript nem túl fontos, csak nagyjából tudd meg, hogy mire képes)
  • Rövid útmutató a Bitcoin villákhoz
  • Puha villák és bányászjelzés
  • Dupla kiadások, 51% támadás és önző bányászat
  • Visszajátszási támadások
  • A Bitcoin méretezhetőségi problémái, amelyek a legtöbb Bitcoin-ökoszisztéma vita tárgyát képezik. Lenne ötlete, miért vitatkoznak ennyire a bitcoinok a blokkméretről.
  • Szegregált tanú, más néven SegWit, nem alapvető fontosságú, de sokat felmerül.
  • A Lightning Network, a Bitcoin egyik legfontosabb skálázási megoldása, általánosít más blokkláncokra is
  • Bitcoin teljes csomópontok, Bitcoin díj statisztikák, diagramok, diagramok és több diagram
  • Bitcoin energiafogyasztási index (a közzétételkor a Bitcoin bányászat annyi energiát fogyaszt, mint Peru egésze)
  • Gwern éleslátó esszéje a Bitcoin selejtes ineleganciájáról
  • Jameson Lopp rengeteg más erőforrással rendelkezik a Bitcoin-on, ha mélyebbre akarsz menni a nyúl lyukán.

Ethereum és intelligens szerződés-programozás

Most, hogy létrehozott egy blokkláncot és megértette a Bitcoin dinamikáját, itt az ideje elmélyedni az Ethereumban.

Megérted, hogyan érhetik el a blokkláncok és a munkabiztonság elosztott, bizánci hibatűrő konszenzust a peer-to-peer hálózaton belül. De a fizetési hálózat csak egy alkalmazás, amelyet egy ilyen blokklánc tetején futtathat. 2013-ban Vitalik Buterin, az Ethereum készítője azt kérdezte: mi lenne, ha blokkláncot használna egy decentralizált számítógép megvalósításához?

Az Ethereumban fizetsz a bányászoknak, hogy a programokat ezen az elosztott virtuális gépen hajtsák végre. Ez azt jelenti, hogy tetszőleges számításokat hajthat végre, egy Turing-teljes programozási nyelv használatával (ellentétben a Bitcoin szkriptjével). Nyilvánvaló, hogy ez magában foglalja a fizetésekkel kapcsolatos alkalmazásokat is, így az Ethereum lehetővé teszi a Bitcoin funkcionalitásának egy halmazát, és újjászületett az innovációban.

Ezzel eljutottunk az intelligens szerződésekhez - az ilyen virtuális gépen futó programok neve. Az intelligens szerződés közvetlenül kapcsolatba léphet a blokklánc kriptovalutájával, egy program végrehajtásával összhangban. Más szavakkal, létrehozhat olyan pénzügyi szerződéseket, amelyek automatikusan érvényre juttatják magukat. Ez egy vad ötlet, és mindenféle sci-fi futurisztikus dolog, amit megtehetsz, ha átfogod ezt a programozási modellt.

Az Ethereum lehetővé tette az ICO-k és a fejlesztők hullámát a blokklánc tetején. Ez a Bitcoin mögött a második legnagyobb kriptovaluta, több mint 10-szer több a következő legnépszerűbb platform fejlesztője, rendelkezik a legerősebb fejlesztői csapattal, a legérettebb eszközökkel, valamint az ICO-k és projektek többsége rajta van. Emellett a legtöbb iparági támogatással rendelkezik, ami hosszú utat jelent. Nagy valószínűséggel, ha blokklánc fejlesztést végez, akkor kódot fog írni az Ethereum intelligens szerződéseihez. (Még ha nem is az, elengedhetetlen ahhoz, hogy megértsük, mi történik ezen a téren.)

Először az Ethereum részletesebb, magas szintű magyarázata:

Az Ethereum mögött meghúzódó ötletek a kriptogazdaság terén is innovációs hullámot indítottak el. Bele kell merítenie a lábujjait a DAO-k körüli ötletekbe, és az összes sci-fi lázálomba, amelyre utalnak.

Oké, ez elég fantázia, ássunk bele a technikába

Itt van egy jó áttekintés az Ethereum sárga papírjáról és belső részéről, Preethi Kasireddy. Az Ethereum nem a Bitcoin UTXO modelljét, hanem számla modellt használ - hamarosan meglátja, hogy ez miért könnyíti meg az intelligens szerződések megírását.

Mint minden technológia esetében, az Ethereummal is megismerkedhet a legjobban, ha néhány kis projektet épít.

Az Ethereum domináns programozási nyelve a Solidity, amely egy statikusan tipizált JavaScript-esque nyelv. Ez egy olyan nyelv, amelyben sok szemölcs és sok megkérdőjelezhető tervezési lehetőség van. Az olyan robusztusabb nyelvek, mint a Viper, helyettesíthetik, ha készen állnak a gyártásra, de egyelőre a Solidity az intelligens szerződéses programozás nyelve. Ez alapvetően az Ethereum JavaScript-je, ezért meg kell tanulnia (és annak buktatóit).

Az első kitettség a Solidity fejlesztéshez javasoljuk, hogy dolgozzon át minden CryptoZombies oktatóanyagot. Ez egy elragadó és kiváló minőségű Codecademy-jellegű bemutató, amely megtanítja a Solidity programozás alapjaira.

Most, hogy megkapta az étvágyát, itt az ideje, hogy önállóan fejlődjön.

Az Ethereum „hello world” egy ERC-20-nak megfelelő tokent épít. Ajánlom ezt az útmutatót első útmutatóként, amely végigvezeti Önt a folyamaton.

A Remix egy böngészőben található Solidity szerkesztő és fordító - ez alapvetően az Ethereum fejlesztésének edző kerekei, ezért azt javaslom, hogy dolgozzon át a Remix gyakorlatának többi részén. De érdemes felállítani egy helyi blokkláncot is, és megismerni az Ethereum eszközeit. Ez az oktatóanyag jól végzi a végpontok közötti blokklánc-verem végigvezetését, és elmagyarázza a darabokat, ahogy haladnak.

Ezután javaslom egy szavazási rendszer kiépítését. Ezt hívnám az Ethereum Todo alkalmazásának. Karl Floerschnek remek oktatóprogramja van, ahol végigvezet egy biztonságos elkötelezettség-felfedés szavazási rendszert.

Remek, most a félidős vizsga alkalmával: készítsen egy biztonságos érme-dobó játékot, ahol két játékos biztonságosan fogadhat az érme megfordításáról. Ezúttal nincs oktatóanyag, csináld egyedül. Gondoljon a lehetséges támadásokra - hogyan csalhatnak meg a játékosok? Biztosíthatja, hogy őszintén játszanak? Íme néhány tipp.

Intelligens szerződésbiztonság

A biztonság elengedhetetlen a blokklánc fejlesztéséhez. Az okos szerződéseket katasztrofális hackek sújtották, köztük a DAO hackelés, a Parity Wallet hack és a szeretettel elnevezett Parity Wallet hack 2 (most saját pólóval). Mindenképpen el kell olvasnia mindhárom feltörés elemzését, ha intelligens gyártási szerződéseket fog írni.

Az igazság az, hogy az okos szerződéseket rendkívül nehéz helyrehozni . Habár a programozási eszközlánc javulni fog, hogy megnehezítse ezeket a pontos támadásokat, végső soron a programozói hibának köszönhetőek. Számos finomabb hiba is felmerül, amelyek az intelligens szerződéses programozásból származnak, például az élenjárásban vagy a véletlenszerűség biztonságos generálásában.

Intelligens szerződés-fejlesztőként a biztonságot kell kiemelten kezelnie. Az intelligens szerződés-programozásban nincs „gyors mozgás és törés”. Ez azt jelenti, hogy minden olyan kódot, amely jelentős pénzmozgásokat kezel, statikus analizátorokon keresztül kell futtatni, mint például az Oyente vagy a Securify, alaposan tesztelni, majd egy tapasztalt intelligens szerződéses könyvvizsgáló által ellenőrizni. Meg kell próbálnia támaszkodni az előzetesen auditált összetevőkre is, például az OpenZeppelin nyílt forráskódú szerződéseire.

A biztonsági szempontok megerősítése érdekében azt javaslom, hogy dolgozzon az The Ethernaut by OpenZeppelin segítségével, egy olyan játékkal, ahol az intelligens szerződések sebezhető pontjait találja és támadja meg. Közülük sokan megismétlik a vadonban támadt okos szerződések elleni valós támadásokat.

Phil Daiannak kiváló okos szerződés-feltörési kihívásai is vannak, a Hack This Contract néven.

Ha túl van ezen, erősen ajánlom, hogy olvassa el a ConsenSys által összeállított Intelligens szerződéses bevált gyakorlatok teljes egészét. Számítson rá arra, hogy okos szerződéses programozási karrierje során többször is megnézze ezt a dokumentumot. Az irodalomjegyzéket szintén érdemes feltárni, hogy a biztonsági szakértők további olvasmányokba jussanak.

Az edzőkerekek levétele

Ha eddig elérted, akkor készen kell állnod arra, hogy elmész a Remix mellett, és elkezdj egy komoly Solidity fejlesztési verem használatát.

A legtöbb fejlesztő a VSCode-ot vagy az Atom-ot javasolja a szövegszerkesztőhöz, mivel megfelelő Solidity bővítményekkel rendelkeznek. A helyi blokklánccal való interakcióhoz használja a Ganache-ot (korábban TestRPC), a Truffle keretrendszert pedig a (JS-alapú) tesztekhez és a build-folyamat konfigurálásához.

Itt az ideje, hogy megvizsgálja az IPFS-t, amelyet teljesen decentralizált fájltárolóként használhat, sokkal olcsóbb költségekkel, mint az Ethereum blokklánc. Itt van az alkotó, Juan Benet rövid magyarázata:

Az Ethereum és az IPFS teljes csomópontokkal való interakcióhoz az Infura a legtöbb fejlesztő ajánlása. Az Etherscan és az ETH benzinkút hasznos valós idejű statisztikákat nyújt az Ethereum hálózaton.

Miután elkészült a teljes Web3 verem, próbáljon telepíteni egy végpontok közötti Dapp-et (decentralizált alkalmazás). Ez az oktatóanyag egy teljes, teljes verem áttekintést nyújt a háttérrendszer Node és Postgres használatával, és ez az oktatóanyag megmutatja, hogyan hozhat létre teljesen decentralizált alkalmazást, az IPFS-t használva tartóssági rétegként.

Saját projektek építése

Most már jól kell éreznie a legtöbb technikát - ami hátra van, el kell kezdenie dolgokat építeni és mélyebben bejutni a blockchain közösségbe.

Először kezdje el felépíteni saját projektjeit. Ha van valami remek ötlet, amiért izgulsz, menj, építsd meg, és győzz meg másokat, hogy csapkodjanak veled! Ha még nincs ötleted, vagy nem érzed jól magad a kezedben, sok kiváló minőségű, nyílt forráskódú projekt fogadja a közreműködést. Az OpenZeppelin jó lehet az intelligens szerződések megkezdéséhez.

Még jobb, azt javaslom, hogy kezdjen egy aktívan kidolgozott projekt megtalálásával, amelynek rajongója vagy. Szálljon fel a Slack vagy a Rocketchat oldalára - a fejlesztők általában könnyen hozzáférhetők. Mondja meg nekik, hogy szeretne közreműködni, és kérjen néhány apró feladatot (vagy találjon megoldatlan problémákat a Github-on).

Ne feledje, hogy miközben a protokollokra és az intelligens szerződések fejlesztésére összpontosítottam, a blokklánc-vállalatoknak webfejlesztőkre van szükségük alapvető funkcióik kiépítéséhez. Ezek a szerepek gyakran megkövetelik a blokkláncokkal való interakciót, ezért elengedhetetlen a blokkláncok működésének jó mentális modellje - de a blockchain indításakor sok mérnök számára a legtöbb munka Python webszerver felépítésében vagy egy React frontend tervezésében lesz, és a blokklánccal való interakció ennek a munkának csak kis része lehet. Nem kell az intelligens szerződés-fejlesztésre szakosodni - a valóságban ez csak egy része a működő blokklánc-veremnek.

A nyílt forráskódú hozzájárulásokon túl sok blockchain hackaton is folyamatosan felbukkan. A legtöbb projektnek van egy ingyenes nyilvános Slackje, amelyhez csatlakozhat, és az Ethereum számára is van egy nagyon aktív Gitter-csatorna, ahol rengeteg fejlesztő lóg. Ahogy mélyebbre mész az űrbe, végül megtalálod a társcsoportodat, legyen az Slack, Telegram vagy Gitter csatornákban. Bárhol is van, keresse meg embereit és folytassa a tanulást.

Navigálás a blockchain közösségben

A blockchain világ megértésének legjobb módja az, ha elmélyül benne. Olvassa el és hallgassa meg a legokosabb embereket, különösen azokat, amelyeket a múltban írtak. Ez mindig is az volt a stratégiám, amikor új domaint próbáltam megismerni, és ez osztalékot jelentett számomra.

Rengeteg jó blockchain tartalom van, de sok baromság is. Itt van az információs étrend, amelyet ajánlok.

Média

A három fantasztikus podcast a Software Engineering Daily Blockchain interjúi, amelyek jó technikai bevezetést nyújtanak számos témához és kriptovalutához. Innentől kezdve az Epicentert és az Unchained-t ajánlom - érdemes visszamenni és meghallgatni a régebbi epizódokat. Egy másik érdekes, hamarosan megjelenő technikai podcast a Conspiratus. Azt javaslom, hogy iratkozzon fel ezekre.

Van néhány jó Youtube-csatorna (bár rengeteg szemét van a Youtube-on). Iratkozzon fel az Ethereum Alapítványra, és nézze meg a Devcon3 előadásokat. A Berkeley-i Blockchain számos előadásukat rögzíti, amelyek többsége kiváló műszaki áttekintés. A Decypher Media beszélgetéseket, folyóirat-áttekintéseket és oktatóanyagokat is közzétesz. Jackson Palmer vonzó heti áttekintéseket tartalmaz, ezek kevésbé technikai oldalon vannak, de nagyon egyenletesen vannak bemutatva.

Online olvasás

A valós idejű blockchain csevegéshez leginkább két helyen él: Reddit és Twitter. A Reddit számára a legtöbb szubréddit nagyon alacsony minőségű, és a zaj dominálja őket. Az r / Ethereum következetesen megfelelő minőségű (és van néhány rendben levő alfaj a specifikus kriptovalutákhoz). A legtöbb subreddits-ben elsősorban a spekulánsok dominálnak, és nem használják jól a figyelmét. Maradjon távol a Bitcoin-hoz kapcsolódó alprogramoktól. A Bitcoin köztudottan az egyik legmérgezőbb közösséggel rendelkezik, és a Reddit ezt csak felnagyítja.

A Twitter inkább vegyes táska. Jóban vagy rosszban a legtöbb blockchain ember a Twitteren él. A Blockchain Twitter először kissé rejtély volt számomra, de végül kialakítottam egy informális ontológiát a Twitter blockchain emberekről. Tapasztalatom szerint ötféle blockchain személyiség létezik: az építők, a vállalkozók, az újságírók, a kereskedők és a „gondolatvezetők”.

Kerülje a „gondolatvezéreket”, mint a pestis. A vállalkozók jól lehetnek, bár többnyire hype férfiakként viselkednek, vagy tweetelnek saját projektjeikről. A befektetők többnyire az árakról és a hype-y projektekről tweetelnek, tehát ha ez a te dolgod, az a te dolgod. Az újságírók hajlamosak tweetelni a nap legfontosabb híreiről - javasoljuk, hogy maradjanak távol, hacsak nincs szükségük valós idejű elemzésre, amire valószínűleg nem. Ha aktív kereskedő vagy, fontos lehet, de ha a blokkláncra építesz, a legtöbb valós idejű dolog zavaró tényező.

Fordítson a legnagyobb figyelmet az építőkre. Ők az emberek, akik a legfontosabbak most, és akik előremozdítják a technológiát.

Néhány képviselő minden kategóriából (először keresse meg, kiket követnek ezek az emberek, ha ki szeretné tölteni Twitter-hírcsatornáját):

Építők

  • Vitalik Buterin, Ethereum
  • Zooko Wilcox, ZCash
  • Nick Szabo, az intelligens szerződések feltalálója
  • Vlad Zamfir, Ethereum
  • Marco Santori, Cooley LLP
  • Riccardo „fluffypony” Spagni, Monero
  • Matt Liston, Gnosis

Vállalkozók

  • Balaji Srinivasan, Earn.com
  • Erik Voorhees, Alakváltó

Befektetők

  • Naval Ravikant, MetaStable
  • Ari Paul, a Blocktower Capital
  • Linda Xie, Scalar Capital
  • Chris Burniske, helyőrző

Újságírók

  • Tuur Demeester, Adamant Research
  • Laura Shin, Forbes

(Kövess engem is, bár határozottan nem tartozom ebbe a listába.)

Mindez azt javasolja, hogy minimalizálja a Twitter és a Reddit expozícióját. Ha nem újságíró vagy nappali kereskedő, akkor nagy eséllyel nem kell tűzoltóság valós idejű csevegés. A fontos információk aszinkron módon fognak megjelenni. Számos olyan jó hír összefoglalása létezik, amelyek összefoglalják a nap / hét legfontosabb híreit, amelyeket a saját idejében fogyaszthat el anélkül, hogy a figyelempiac kegyelmébe kerülne.

Javaslom, hogy iratkozzon fel az Inside Bitcoin-ra a legfontosabb kriptográfiai hírek napi emésztéséhez (ez nemcsak a Bitcoin-t fedi le). A token projektek esetében a Token Economy kiváló heti felírásokkal rendelkezik, a Week in Ethereum pedig jól elemzi a fejlesztőközpontú eseményeket az Ethereum ökoszisztémában.

Ezen túl valószínűleg nem kell figyelnie a valós idejű híreket. Összpontosítson a dolgok építésére és a tanulásra.

Érdemes követni a legjobb blogokat. A hosszú formájú tartalom általában a legjobb durranás. Javaslom, hogy kövesse ezeket:

  • Vitalik Buterin a kiváló blokklánc- és kriptogazdasági elemzésért (olvassa el az összes régebbi blogbejegyzését is, Vitalikot széles körben tekintik a generációban egyszer gondolkodóként)
  • Hackelés, blokklánc biztonsági elemzésekhez terjesztve Cornell kutatói által
  • Megszámlálhatatlan, Nick Szabo világító blogja kihívó és választékos esszékkel a kriptopénzek társadalomban betöltött szerepéről
  • Money Stuff, Matt Levine Bloomberg szindikációja, vágással és éles elemzéssel, amely a piacok, a pénzügyek és a blockchain-hírek kereszteződését érinti
  • Vlad Zamfir az állam és az állami blokkláncok mérsékelt és óvatos nézőpontjaiért
  • Chris Burniske egy sor kiváló blogbejegyzésért a kriptográfiai eszközök értékeléséről
  • Jameson Lopp nagyszerű technikai bejegyzéseiért a blokklánc ökoszisztémára épülő szoftvermérnök szemszögéből
  • Tim Swanson nagy számfala, a blockchain mánia józan és rendíthetetlen dekonstrukciójaért, különösen a vállalati térben

(Olvassa el a blogomat is, bár ismét nem tartozom ehhez a listához.)

Könyvek és tanfolyamok

Ha strukturáltabb megközelítést szeretne az anyag elsajátításához, ott van néhány jó minőségű könyv és tanfolyam (és sok rossz minőségű könyv).

A blokkláncok legjobb átfogó tankönyve a Bitcoin és a Cryptocurrency Technologies (amely a Princeton Coursera tanfolyamot kíséri). Az egyetlen másik könyv, amelyet ezen a téren ajánlanék, az Andreas Antonopoulos és a készülő Mastering Ethereum, a Bitcoin elsajátítása, társszerzője az Ethereum társalapítója, Gavin Wood. Az egyik nem technikai könyv, amelyet ajánlanék, a Digital Gold Nathaniel Popper. Nagyjából minden más, amit érdemes elolvasni, a blogokban lesz, nem pedig a könyvekben - ez a tér olyan gyorsan mozog, hogy a legfontosabb alakoknak ritkán van idejük könyveket írni, és a könyvek gyakran elavultak a megjelenésük idejére.

Ha strukturáltabb megközelítést szeretne az anyag elsajátításához, van néhány jó minőségű tanfolyam (és sok rossz minőségű). Már összekapcsoltam néhány előadást a Princeton Coursera tanfolyamon (a videók szintén a Youtube-on vannak), valamint az UC Berkeley matricáját. Hallottam jó dolgokat a Consensys Akadémiáról azoknak az embereknek is, akik intelligens szerződés-fejlesztésbe akarnak kezdeni.

4 hetes szemináriumot is tartok a szoftverfejlesztők számára a kriptopénzekről a Bradfield School of Computer Science-ben, SF-ben. A tanfolyam csak SF-ben zajlik, és a férőhelyek száma korlátozott, mivel ez egy kicsi és mélyreható szemináriumi stílusú osztály. De ha szoftvermérnök vagy az SF-ben, és többet akarsz megtudni a kriptopénzek mögött meghúzódó elméletről és gyakorlatról, az számodra megfelelő lehet.

Munkát szerezni

Mint korábban mondtam, a blockchain startupok őrültként vesznek fel. Ha valóban eljutottál idáig, és még az általam javasolt dolgok felét is megtetted, akkor valószínűleg már alkalmazható vagy ezen a téren. Az AngelList nagyszerű leírást készített arról, hogyan lehet elhelyezkedni a kriptotérben.

Számos jó összesítő létezik a blockchainhez kapcsolódó álláshirdetésekhez:

  • AngelList kripto startupok
  • BlockchainJobz
  • Ethereum Jobs
  • Legyen kriptóban
  • Blockchain Job Board
  • Crypto Jobs List
  • Google állások (blockchain keresési lekérdezés)
  • ConsenSys munkahelyek (Ethereum venture stúdió, sok projekttel az égisze alatt)

Néhány különösen ígéretes blockchain startup, amelyről tudom, hogy fejlesztőket vesz fel:

  • 0x
  • Dharma Labs
  • Polgári

Számos nagyobb vállalat is található a kriptográfiai fejlesztők piacán:

  • A Coinbase, a kriptográfia Google-je mindig őrültként alkalmaz
  • Stellar and Ripple, ha közvetlenül vállalkozásbarátabb kriptovalutákon akar dolgozni
  • A Square integrált néhány blokkláncot, bár nem biztos benne, hogy külsőleg alkalmaznak-e
  • IBM, Visa vagy JP Morgan, ha fel akarja rúgni a régi iskolát

(Ne feledje, hogy ez a konkrét céglista szuper Bay Area-központú, mert ott lakom, így a futásteljesítménye változhat. A munkaközvetítők azonban globálisabbak.)

De véleményem szerint a legjobb módja annak, hogy bekapcsolódjon egy vállalatba, ha megtalál egy olyan projektet, amelyen izgul, és közvetlenül hozzájuk fordul. A legtöbb blockchain csapat hajlandó távvezérlőt bérelni a megfelelő tehetségért. Sok fejlesztő könnyen elérhető a Twitteren, a Github-on vagy a nyilvános Slack-csatornáikon. Ha szilárd portfóliója van és képes bemutatni a technikai szeletelést, a legtöbb ember lenyűgöz, ha kezdeményez.

És ennyit értem. Ha a fentieket elvégezte, akkor be kell állítania, és valószínűleg hamarosan még messzebb leszel, mint én.

A nyúl féreglyuk

Amit mutattam neked, az csak a kezdet. A kriptovaluták még gyerekcipőben járnak, és valóban hiszem, hogy ez a leggyorsabban fejlődő tér, ahol dolgozhatsz. Biztos vagyok benne, hogy ez az útmutató egy éven belül elavult, és olyan sok csodálatos projekt van, amelyet még nem alkalma volt beszélni. De ha bejut erre a térre, megfelelő időben megtalálja őket.

Fedezd tovább. Javulj tovább. Tanulj tovább.

Remélem, látni fogod, hogy csatlakozol hozzánk.

Haseeb