@gagdiez.near [Posted on DevHub](https://near.social/#/devgovgigs.near/widget/Post?id=959) ## Idea: Fully Automatized NEAR Dev Certificate Program **Summary**: I would like to ask for funding to mentor @flmel.near (an active member of our community) full-time in building a fully automatised Developer Certificate Program. #### NEAR Certificate Historical Background Two years ago we had the "NEAR Developer Certificate Program", which was composed by a video-call and an evaluation stage. Eventually, because of time constraints, lack of teachers, and the low level of the projects being submitted the modality was abandoned. Some time after, NF changed the certificate to a self-paced course composed by lengthly text documents followed by a multiple-choice quiz. The lessons took too long to be created and the project was abandoned half-way though. As of today, and to the best of my knowledge, the NCD is abandoned. #### Project: Fully Automatised NCD We would like to build a NCD as a BOS Component that presents multiple lessons. On each lesson the student will learn a new concept, and will be asked to deploy a contract on `testnet`, which an `evaluator` contract will check for correctness. For example, on a first lesson we will ask the student `student-name.testnet` to deploy a [hello world](https://docs.near.org/tutorials/examples/hello-near) smart contract in the `hello.student-name.testnet` account. Then, our `evaluator` will make calls to `hello.student-name.testnet` to make sure it can store and retrieve a greeting. The goal is to cover all the topics in [Building a Contract](https://docs.near.org/develop/welcome), and to heavily rely on the documentation as educational material. ##### Benefits and Limitations of this Approach This idea aims to balance the lessons from the past certification courses, which leads into a set of benefits, and a set of drawbacks: 1. **Benefit: Self-paced.** The students can learn at their own pace, and when in doubt, then can ask any of us thought the official channels, or come to the office hours!. 2. **Benefit: Automatic Evaluation.** It takes a lot of time to evaluate contracts manually, the `evaluator` saves that time for us. 3. **Benefit: Complex Topics.** The student needs to go through all lessons in order to get the certificate, meaning that they need to understand topics from `structures` to `cross-contract calls` or `contract updates`. 4. **Drawback: Cheating.** It is expected that some student will host their contracts in github, somebody else will find them and deploy the code to pass the NCD, thus obtaining a certification with low effort. All in all, the automatized NCD will be a great educational tool that people will be able to use to be onboarded in the community. #### About Us ##### @gagdiez.near (Guillermo) I am an active contributor to our community, having created most of the documentation and examples in [docs.near.org](https://docs.near.org), being one of the top contributors with `Components` in NEAR social, updating and supporting tools such as `create-near-app`, the `NEAR VSCODE extension`, `borsh-js` and giving support during `Office Hours` among others. **Role in the project:** I have [started building the project](https://github.com/gagdiez/evaluator/tree/main), but quickly realised it will take me forever to do it alone, so I would like to pass to a role of mentorship and assisting. ##### @flmel.near (Ethuil) Ethuil is historically one of our most active contributors in Discord, used to handle the NCD official Discord, and has developed community services widely used such as the [NEAR faucet](https://near-faucet.io/). **Role in the project:** Ethuil will take in building the project under my guidance, which will include the development of smart contract and BOS Component. ### Funding We expect this to be a two months work to have a basic version, and only need funding for the full-time work of @flmel.near, which, based on my interaction with is a P2/P3 engineer (using the Pagoda's nomenclature). We require **no funding** for myself (@gagdiez.near).