Try   HackMD

NEAR Certified Developer

This course is an opportunity for web developers to earn a Certificate of Completion that represents the ability to design, develop, test and deploy smart contracts on the NEAR platform.

Welcome

Glad you could join us. We will be working together over the next week to learn to build decentralized applications on the smart contract platform known as NEAR Protocol.

Here's a report of what's happening in the industry with these so-called "layer 1" platforms as of Dec 2020. The research makes it clear: NEAR is here.

This is a NEAR L2E (Learn-to-Earn) course, meaning: we pay you to complete the course.

Before Day 1

Please make sure you are familiar with a few of these basics before the week starts. Although you do not need to be an expert in these technologies, you should have no problem cloning a NodeJS project, downloading its dependencies and running a few scripts.

  • Basic JavaScript client and serverside development (see here and here)
  • Basic terminal control (see here and here )
  • Basic git commands (see here and here)

Please complete the pre-work, it will likely take between 1 and 4 hours.

Overview

During this course we will practice:

  • perceiving web 3 in the context of human history
  • reading contract code in Rust and AssemblyScript
  • writing contracts using Rust and AssemblyScript
  • testing contracts using unit and simulation tests
  • deploying contracts and a sensible user interface

The course will include lots of listening, watching, reading and writing. A minimum of 2 hours per day is recommended but up to 4-6 hours per day is likely, especially for developers with less than three years web development experience.

Working Agreement

  • We will meet for 60 mins on Monday and Friday for kickoff and demos, respectively
  • We will meet for 30 mins Tuesday, Wednesday and Thursday for standup and announcements
  • We will break up into small-groups a, b, c … etc. depending on cohort size, 3-5 people per group
  • We will meet with our small-group every day to align on progress, share confusion and promote aha! moments to the cohort
  • We agree to complete activities on a daily basis to the best of our ability
  • We agree to work towards a group project demo by the end of the week

Questions

All questions should be posted to 1 of 3 channels:

  • #help
    questions re: general logistics, general schedule, account issues, etc
  • #small-group-X (small-group-a, small-group-b, etc)
    pairing requests, comments on progress, encouragement, cries for help and mercy, etc
  • #day-# (day-0, day-1, etc.)
    assignment support, confusion re: some topic for the day, etc

Assignments

  • Assignments will be posted just-in-time to the #day-#
  • Questions related to the assignment, clarifications, concerns, etc should be posted in the same day channel to avoid confusion
  • Completed assignment submissions should be posted to the #day-# so that others may review your work and learn from it, especially if they're struggling.

Schedule

Pre-work

  • Some Days Before – [ START Perceiving web 3 ] (~10-15 hours of content)
    Learn to make sense of what is actually going on right now in the larger context of history.

Remote-first Online Course

  • Day 1 – Reading web 3
    Learn to read (smart?) contracts in Rust and AssemblyScript, there's really nothing to it.

  • Day 2 – Writing web 3
    Learn to write contracts that control identity and money, among other data types.

  • Day 3 – Testing web 3
    Learn to write unit and simulation tests for smart contracts.

  • Day 4 – Deploying web 3
    Learn to deploy your contracts to LocalNet and TestNet

  • Day 5 – Demonstrating web 3
    Demonstrate your group project in 5-10 minutes


Next Steps

  • Some Days After – Building web 3
    The adventure continues as a new member of our community

Recordings

Optimized Playlists

Full Slides and Long Recordings

  • Watch the full recordings on this playlist
  • Cohort 1: Feb 22 - Feb 26, 2021 Welcome and Kickoff slides
  • Cohort 2: Mar 8 - Mar 12, 2021 Welcome and Kickoff slides
  • Cohort 3: Mar 22 - Mar 26, 2021 Welcome and Kickoff slides
  • Cohort 4: Apr 5 - Apr 9, 2021 Welcome and Kickoff slides

FAQ

1. How much does this cost?

Nothing, in fact we pay you to complete this course.

2. Do I need to be a software developer to take this course?

No, you do not, but it won't be easy and you should budget 10 hours per day, no joke.

  • If you are a junior software developer who recently graduated from a bootcamp or has less than 3 years professional experience, you should budget 4-6 hours per day.

  • If you are an senior software developer with 5 years of professional experience or more, you should budget about 2-4 hours per day.

  • If you are an experienced blockchain developer then you will likely be able to keep up with this course with about 1 hour per day of work.

3. Do I need a Mac?

MacOS and Linux will be the easiest operating systems to use.

Windows may prove challenging but if you're ok with that, please join us.

4. How do I know if I'm winning?

There's no such thing as winning here because we're all lost. Welcome, friend.

5. When moon?!

Please don't.

6. Do you care if I cheat?

No, in fact cheating is encouraged. Let's get one thing straight: if you're serious about learning, the fastest way from here to there is to meet people, ask questions, look at some answers, look at even more answers, copy some examples, break things and finally, if you're lucky, learn something new.

As long as you're honest about what you're doing, you're always welcome here.

Just don't take credit for others people's work because that's lame.

7. I have zero time for all this. Can I just binge on some deep work on my own?

Hell yes! Here you go:

8. I have one hundred more questions.

That's awesome. Here is a real FAQ