New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

As a new user, I want coding exercises, so I can learn web3. #631

Open
owocki opened this Issue Mar 16, 2018 · 15 comments

Comments

Projects
None yet
6 participants
@owocki
Copy link
Member

owocki commented Mar 16, 2018

Description

(spec discussion)

Gitcoin is a project that's in the vanguard of web3, and as such, we get a lot of new users who are just learning blockchain development.

One common question is "I'm just learning blockchain development. Where should I start?"
While we have typed up some documentation on this, gitcoinco/gitcoinco#38 , those resources are external to Gitcoin and are scattered all over the place. We should have a resource internally that is used to onboard users to web3.

What

Create a branded install of FreeCodeCamp at codecamp.gitcoin.co

And create the following tracks:

Tracks

web3 basic concepts

Lessons:

  1. What is public/private key cryptography?
  2. What is a blockchain?
  3. Why does blockchain matter?
  4. What is Bitcoin?
  5. What is Ethereum?
  6. What is gas?
  7. What is a wallet?

Metamask track.

Lessons:

  1. What is a dapp?
  2. What does Metamask do?
  3. Install Metamask
  4. Different networks: rinkeby vs mainnet
  5. Get gas from a rinkeby faucet
  6. How do I pay gas?
  7. What is gas price? What kind of tradeoffs are associated with gas price selection?
  8. Links to some Some basic dapps

Solidity beginner track.

Lessons:

  1. Contract Example
  2. Hello World
  3. State Mutations on the blockchain
  4. Difference between .sendTransaction() and .call()
  5. Create your first Ethereum Smart Contract
  6. Setup an IDE/truffle locally w. ganache/testprc

Drip Marketing Campaign

When a user joins Gitcoin community, we will have a drip marketing campaign for them, which will include much of this content. Ref: #448

Day 1: web3 basic concepts
Day 2: Metamask
Day 3: Solidity Beginners

Interoperability

When each lesson is completed, the system should be interoperable with Gitcoin, and the user should receive a badge on their github profile denoting that they've completed each track.

@mkosowsk

This comment has been minimized.

Copy link

mkosowsk commented Mar 16, 2018

@owocki hmm... the tiny gears in my head are turning, I wonder if Gitcoin core has been talking to Cryptozombies about a collaboration? 🤔

The Blockstreet team which was a winner at ETHDenver also could be a nice conversation, I chatted a bit with some of their team members if you'd like an intro 👍

@owocki

This comment has been minimized.

Copy link
Member

owocki commented Mar 16, 2018

remind me what Blockstreet does?

@mkosowsk

This comment has been minimized.

Copy link

mkosowsk commented Mar 16, 2018

It's similar to Cryptozombies as a way to learn Solidity but it

  1. Runs User-submitted code against unit tests as opposed to just doing a git diff of User-submitted code vs. an accepted solution
  2. Gave the user a real deployed dapp at the end of the tutorial to play around with

I haven't messed around with Cryptozombies Lesson #5 so unsure what that team has been doing, but Blockstreet seemed pretty compelling to me 👍

Github: https://github.com/blockstreetboys/blockstreet
DevPost: https://devpost.com/software/blockstreet
YouTube video explaining it: https://www.youtube.com/watch?time_continue=1&v=og-7jC1UYxE

@e-n-l

This comment has been minimized.

Copy link

e-n-l commented Mar 17, 2018

Somewhat parallel discussion in #633

@PixelantDesign

This comment has been minimized.

Copy link
Contributor

PixelantDesign commented Mar 18, 2018

Blockstreet app is amazing. They presented to us at ETH Denver! Would be great to partner somehow.

@mkosowsk

This comment has been minimized.

Copy link

mkosowsk commented Mar 18, 2018

Great! Will ping them now 👍

@owocki

This comment has been minimized.

Copy link
Member

owocki commented Mar 19, 2018

@mkosowsk there isnt a liscense file in their repo. they should add one so we can know what the terms of forking their project is :)

id also be curious to see whether they plan to continue maintaining blockstreet in the future

@eswarasai

This comment has been minimized.

Copy link
Contributor

eswarasai commented Mar 19, 2018

@owocki -- I'd be interested in taking this up

@Dan-Nolan

This comment has been minimized.

Copy link

Dan-Nolan commented Mar 21, 2018

Hey all, sounds like a great idea! The Blockstreet would be happy to collaborate on this.

We're currently working on releasing our first modules which will help teach writing Solidity/web3.js and injecting it into dapps. All the lessons laid out here sound like they would be excellent complimentary materials.

@mkosowsk

This comment has been minimized.

Copy link

mkosowsk commented Mar 21, 2018

@Dan-Nolan Awesome, please keep us posted on when those first modules are live! 👍 👍 👍

@owocki

This comment has been minimized.

Copy link
Member

owocki commented Mar 22, 2018

hey @Dan-Nolan -- is blockstreet planning on doing them open source or interested in whitelabeling them?

my email is kevin at gitcoin dot co or im on slack at gitcoin.co/slack if youd like to discuss off thread

@Dan-Nolan

This comment has been minimized.

Copy link

Dan-Nolan commented Mar 22, 2018

Hey there! We're currently developing in a private repository since we have a vision for how we'd like it to work and then we plan to open source the development of the learning modules to make it more community driven once the fundamental aspects are laid out.

I'll jump in the Slack and we can discuss further.

@owocki

This comment has been minimized.

Copy link
Member

owocki commented Mar 22, 2018

sounds like dan & co are going to launch in the next few weeks.. but we don't know if they'll want to partner yet.

personally i'd like to air on the side of action for this.. but i already have a few projects in the hopper and can't promise i'll be around to do a lot of product / architecture thinking for the next few weeks. @eswarasai i'd be happy to fund this now if you feel like you could move forward pretty autonomously. but if not, maybe we revisit in 2 weeks/

@owocki

This comment has been minimized.

Copy link
Member

owocki commented Apr 12, 2018

hey @Dan-Nolan i'd love to touch base for an update when you have one!

@Dan-Nolan

This comment has been minimized.

Copy link

Dan-Nolan commented Apr 25, 2018

Sure, we're testing it out on a beta. I'll send you an invite through Slack

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment