Ressourcer, jeg brugte til at lære mig Blockchain-udvikling

Jeg begyndte at investere i kryptokurver sidste år og fortsatte bare ned ad blockchain kaninhullet derfra. Hvor jeg bor især, er meget af blockchain-samfundet fokuseret på ting som handel og investering i kryptokurver. Selvom det var sjovt at investere i starten, var jeg ikke så interesseret i det. Så jeg startede min egen lokale meetup-gruppe for at fokusere på blockchain-udvikling.

Meetup-gruppen tillod mig at oprette forbindelse og lære sammen med medlemmer af samfundet, og jeg har brugt det til at udarbejde en liste over ressourcer, som jeg og de andre medlemmer har fundet nyttige. Disse ressourcer er arrangeret fra de mest grundlæggende blockchain-forklaringer til de underliggende systemer såvel som bygningsapplikationer oven på blockchain.

Der er meget støj derude. Jeg håber, dette hjælper dig med at få mening ud af det hele, hvis du er interesseret i at blive en blockchain-professionel.

Indholdsfortegnelse:

  1. Lær det grundlæggende
  2. Dapp-udvikling med Ethereum
  3. Spilteori
  4. Kryptografi
  5. Audio / supplerende materialer
  6. Andre typer Blockchain-udvikling
  7. Forskning

Grundlæggende - Hvordan Blockchain-teknologier fungerer

Det kan tage et minut at pakke hovedet rundt om kompleksitet i blockchain-teknologier. Denne teknologi omfatter så mange forskellige områder: datalogi, spilteori, kryptografi og økonomi for blot at nævne nogle få. Således er det vanskeligt i første omgang at lære ind og ud af, hvordan det hele fungerer.

Her er et par ressourcer, som jeg synes giver et godt og klart overblik over, hvordan blockchain virkelig fungerer.

  1. Start med denne video, der nedbryder, hvordan den fungerer:

2. Se begge videoer her (der er en vis overlapning med den tidligere ressource, men det vil cementere begreberne i dit sind) og leg rundt med demoen på siden:

Blockchain-demo

En live blockchain-demo i en browser. anders.com

3. Læs kapitlet "Hvad er Ethereum" fra GitHub-bogen "Mastering Ethereum"

Dapp-udvikling med Ethereum

Der er mange forskellige blockchains nu, der giver dig mulighed for at oprette applikationer og smarte kontrakter. Ethereum er langt den mest populære løsning, hvor Solidity er dets dominerende programmeringssprog. Jeg foreslår, at du først prøver at bygge dapps med disse teknologier.

Langt den bedste måde at lære at kode med soliditet er Cryptozombies. Det er et interaktivt kodemiljø, der lærer dig, hvordan du programmerer Solidity trin for trin, mens du bygger et zombiespil! Det er også opdateret med nye versioner af Solidity, hvilket er svært at komme forbi i det stadigt skiftende blockchain-rum.

Hvis du vil have noget ud over Cryptozombies, er der to andre anbefalinger, jeg har til at lære soliditet:

  1. Youtube-videoserie til udvikling af dapp - Denne kanal forklarer tingene meget godt, men syntaksen er ikke helt opdateret, så du bliver muligvis nødt til at google nogle ting, hvis du får fejl. Den Remix-editor, han bruger, giver dig tip om, hvad du har brug for at ændre, så du skal have det godt.
  2. Stephen Grider om Udemy - dette er et betalt kursus, men du kan få en aftale for ~ $ 9,99 USD, og ​​den har gode eksempler og indhold.

Når du er færdig med Cryptozombies, er det en god ide at lære at bruge Remix IDE til oprettelse, fejlretning og implementering af kontrakter. Dokumenterne har en hurtig start og masser af trinvise instruktioner med skærmbilleder for at komme i gang.

Du bør også lære om Ethereum-klienter og tegnebøger. Disse links forklarer alt hvad du behøver at vide. Metamask er et browser-plugin og en fantastisk måde at komme i gang (det er til Chrome eller Firefox, men Chrome ser ud til at fungere meget bedre).

Lær derefter mere avanceret udvikling af smarte kontrakter. Start med at læse dokumentationen om soliditet. Det går ind i mere avancerede koncepter og har også nogle gode eksempler på dapps. Ethereum.org havde også nogle gode dapp-eksempler til at se igennem som denne. Du kan kopiere eksemplerne lige ind i Remix IDE og teste dem selv.

Når du har et godt kendskab til soliditet og smarte kontrakter, skal du begynde at kigge igennem nogle eksempler på open source. Standard go-to ser ud til at være Crypto Kitties (du kan se kontraktkoden på enhver Ethereum-adresse på etherscan.io), men der er mange flere, der kan være gode læringsværktøjer. Du kan søge i GitHub og Etherscan for at finde mere.

Der foregår meget udvikling i Ethereum-rummet omkring udviklerværktøjer og sikkerhed. Her er nogle fantastiske biblioteker og værktøjer i denne retning, som du kan tjekke ud:

  • Åbn Zeppelin
  • Truffle Development Framework
  • ConsenSys - Smart Practice Best Practices

Spilteori

Nogle af de problemer, som blockchain har til formål at løse, er fra spilteori, især The Byzantine Generals Problem. Dette problem behandler konsensus mellem mange forskellige parter uden at skulle stole på, at ethvert individ ikke er ondsindet.

The Great Courses Plus tilbyder en fremragende forelæsningsserie om forskellige emner inden for spilteori. De har en månedlig abonnementsmodel med en to-ugers gratis prøveperiode. De 24 forelæsninger på 30 minutter dækker en bred vifte af emner inden for spilteori, og jeg synes, det er fantastisk til en samlet forståelse af emnet.

Kryptografi

Jeg er bestemt ikke en ekspert her, men jeg lærer løbende om, hvordan kryptografi fungerer, og hvordan det kan anvendes til blockchain. Dette område kommer virkelig dybt ind i matematikken, da Ethereum og mange andre blokkæder bruger Eliptical Curve Cryptography.

Som en noob i dette rum er her nogle ressourcer, jeg har fundet nyttige:

  • Coursera Cryptography I - Gratis at revidere kurset; betalt, hvis du vil have et certifikat.
  • Kapitel om kryptografi i Ethereum Mastery-bogen

Supplerende lydmateriale

  • Podcast: Software Engineering Daily, Blockchain - Dette er min foretrukne blockchain podcast. De gør et meget godt stykke arbejde med at forklare komplekse emner og har en række brancheledere på showet.
  • Podcast: CryptoDisrupted - Værten bringer mange gæster fra interessante projekter i blockchain-rummet. Jeg har nydt det meste af det, jeg har lyttet til med denne podcast.

Andre typer Blockchain-udvikling

Ethereum-samfundet har langt de fleste udviklere og læringsressourcer, så det er et godt sted at komme i gang med blockchain-udvikling. Jeg tror, ​​du ville være afladende, hvis du dog ikke udforskede anden innovation i rummet. Nedenfor er nogle interessante projekter.

Lisk - Gør blockchain-udvikling mere tilgængelig, da alt er indbygget i JavaScript.

EOS - Skaberen, Dan Larimer, havde bygget flere andre succesrige blockchain-løsninger, inden han startede dette projekt. EOS formodes at løse nogle af problemerne med Ethereum, som skalering og sikkerhed. Det kaldes undertiden "The Ethereum Killer".

Interchain-protokoller - Dette er nogle løsninger, der hjælper med at lette transaktioner mellem forskellige blockchains og har også interessante løsninger til at hjælpe med blockchain-skalering:

  1. Kosmos
  2. Polka prik
  3. Interledger

Hyperledger - En open source-samarbejdsindsats skabt til at fremme tværs af industriens blockchain-teknologier. Det er hostet af The Linux Foundation.

Holo - En post-blockchain-teknologi, der forsøger at løse problemerne med skalerbarhed og centralisering i nutidens blockchain-teknologier.

Forskning og nuværende udvikling

Når du først har lært det grundlæggende, er det så vigtigt at læse forskningsopgaver for at opnå mestring i blockchain-rummet. Her er nogle steder, hvor jeg har haft succes:

  • The Morning Paper - Blockchain-artikler
  • Indsamling af whitepapers fra ICO'er
  • //blockchain.mit.edu/
  • //www.blockchainresearchinstitute.org/

Konklusion

Jeg vil løbende studere blockchain-udvikling og forsøge at finde nye og interessante løsninger. Efterlad en kommentar eller send en besked til mig, hvis jeg mangler noget her.

Lige nu planlægger jeg flere artikler om virksomheder, projekter og mennesker af interesse i blockchain-rummet. Følg mig, hvis du er interesseret i nogen af ​​disse ting.