developer-grants
developer-grants copied to clipboard
LEOS - a Web3 learning platform with on-chain verification
Project name
LEOS
Grant category
- Developer training
- Educational material
Description
Design and implement a basic course about Flow blockhain with on-chain verification of the hands-on exercises. This course is designed to ensure seamless on-boarding of non-programmers to the Flow blockchain
Optionally also provide a course creation tool to facilitate course creation on the LEOS platform. This tool can be used to create courses related to Cadence with hands-on verification. Each course will have multiple modules and the hands-on exercises will be verified on the blockchain. This will make it easy to teach the Cadence smart contract programming language and also to verify the expertise of Cadence coders.
In addition the course creation tool can also be used by non-tech people to create courses explaining various dapps present in the Flowverse.
Problem statement
The Web3 revolution is here and Flow ecosystem is an important part of this revolution. However, we have a huge problem. It is not easy to onboard new people into the ecosystems. Existing efforts towards teaching people about the platforms are typically focused on just explaining the concepts but without verification of the hands-on exercises needed to either make the non-coders comfortable or to help the coders deploy and have their smart contracts verified.
LEOS is focused on seamless onboarding of new users to the web3 ecosystem. Towards this we have already created a course focused on the Stacks ecosystem (https://app.leos.guru/ ). This is being used extensively to onboard new users into the Stacks community. Other dapps in the Stacks ecosystem are also considering using the LEOS platform to create educational material which will then be used as a customer acquisition tool. A course on Clarity smart contract programming language is also planned on this platform to make it easy to onboard developers in an efficient and scalable fashion.
Proposed solution
We are proposing to design, build and implement this project in two parts.
- One part is to create a course focused on newbies who are not coders to the Flow community.
- The second optional part is focused on a course creation tool to make it easy to create courses with on-chain verification on the Flow blockchain. -- This course creation tool can be used to create one or more multi-module course on the Cadence smart contract programming language. -- This tool can also be used by non-tech people working for the dapps in the Flowverse to create a multi-module course with on-chain verification introducing their dapp. This can be a very valuable customer acquisition tool for such dapps.
So for a person new to Flow - no more having to coordinate time with their friends to have them explain and show the various features of the Flow ecosystem before the new person can start either using the dapps on Flow or creating new dapps on Flow.
A brief video about LEOS is given at https://drive.google.com/drive/folders/17he8NB_9Gw1amTpUlHkp5N7QbXageP56?usp=sharing
Impact
- We expect that this will result in thousands of people being onboarded into the Flow ecosystem. Some of these will become users of the dapps while many others will become the creators of dapps.
- In addition, the courses on the LEOS platform will also save lot of resources that a dapp has to spend on building and marketing educational material about the dapp.
Milestones and funding
Milestone | Deliverables | Timeline | Risks | USD proposal |
---|---|---|---|---|
1 - Course design | Design document for Cadence 101 course for beginners | 2 person weeks | - | 8000 |
2a - Implementation of Cadence 101 course - part a | A Cadence 101 course at app.leos.guru - implementation of modules with on-chain verification | 4 person weeks | - | 16000 |
2b - Cadence 101 course - part b | Testing, QA and deployment | 3 person weeks | - | 11000 |
2c - Cadence 101 course - part c | Start of Marketing to other ecosystems on discord, Twitter etc - goal is to reach 10,000 people on various discord and twitter communities. This milestone will be considered complete and will be paid once 100 wallets (of new people) complete the Cadence 101 course. | 2 person weeks | - | 5000 |
3 - Maintenance | Resolving issuing and fixing bugs | 3 months after deployment | - | 2000 |
Total funding proposed: USD 42000
Team
Name | Role | Bio | Contact |
---|---|---|---|
Farooq | Web2 founder, ML and Backend Engineer, Smart | @blockchain092 (on twitter) | [email protected] |
A.Warsi | Web 2 founder, Business Dev and Project Manager | @adnanwarsi (on twitter) | [email protected] |
and other contractors that worked with us on the existing Stacks course. |
The course will tentatively consist of the following modules. The design will be finalized during the course design phase.
- Module 1: Introduction to Flow, Cadence and setting up the environment and testnet account
- Module 2: Creating and deploying simple smart contract on testnet covering basic concepts such as contracts, variables, functions and transactions
- Module 3: Writing and deploying smart contract on testnet with advanced data types such as arrays, structs etc
- Module 4: Writing and deploying smart contract on testnet using Interfaces, Resources, References etc
- Module 5: Writing and deploying smart contract on testnet with NFTs and FTs
- Module 6: Deploying on the mainnet
Thanks for the submission, @fanjum11! We'll review and get back to you shortly with feedback.
Hi @fanjum11 - thanks for your patience!
We've reviewed your proposal and would like to see the milestones oriented a bit more around the expected impact of the course/course creation tool that you'll be building here. Specifically:
- Let's focus this grant specifically on the Flow course and remove the course creation tooling for the purpose of this grant. Tooling can be reviewed as a separate grant proposal. Can you please update this proposal accordingly?
- For Milestone 2, it would be helpful to see this cost balanced more in terms of build out of the course and adoption of the course. Can you please suggest an adoption milestone to this regard?
Thanks!
Hi @chrisackermann ; thank you for your detailed feedback. We appreciate this.
I have modified the proposal to focus only on the Flow course as you suggested. I have also added details for milestone 2 The modified proposal is given below.
Milestone | Deliverables | Timeline | Risks | USD proposal |
---|---|---|---|---|
1 - Course design | Intro to Flow course design document | 2 person weeks | - | 8000 |
2a - Implementation of Flow course - part a | A Flow course at app.leos.guru - implementation of modules and connection to blockchain | 4 person weeks | - | 16000 |
2b - Flow course - part b | Testing, QA and deployment | 3 person weeks | - | 11000 |
2c - Flow course - part c | Start of Marketing to other ecosystems on discord, Twitter etc - goal is to reach 10,000 people on various discord and twitter communities. This milestone will be considered complete and will be paid once 500 wallets (of new people) complete the Flow course. | 1 person week | - | 5000 |
3 - Maintenance | Resolving any issues with deployment during outreach to communities | 3 months | - | 2000 |
Total: $42,000.00
Marketing will be focused on the adoption of the course by people new to the Flow ecosystem. We will be engaging with thought leaders in other ecosystems as well as with various discord communities in order to reach thousands of new users once the Flow course is deployed on the LEOS platform.
Thanks @fanjum11!
Could we reframe 2c here as an adoption milestone so that we're focusing on the impact vs the marketing efforts? Instead of this milestone being the outreach, we'd prefer this to be paid on achieving a certain level of adoption of the course.
Could you please reframe this and propose an adoption milestone there instead?
Hi @chrisackermann i have modified milestone 2c above with a focus on the impact in terms of the level of adoption.
Let me know if this is sufficient. thanks for all your help.
Hi @fanjum11, thanks for the modification!
Can you specifically note the deliverable as the adoption, with a specific target number of people who have completed the course? This milestone should be specified/designed to be paid when that level of adoption is reached.
Thanks @chrisackermann ; i added the language to 2c as - This milestone will be considered complete and will be paid once 500 wallets (of new people) complete the Flow course.
Thanks @fanjum11, this is looking great. Please reflect the updated proposal from the comments into the original proposal in the description of this GH issue, so that it's more visible.
Could you please provide a little more background in terms of how these courses will work re: hands-on exercises with on-chain verification?
Hi @chrisackermann sure I will modify the original proposal with the addition of 2a, 2b and 2c. I will also remove the optional sections in the original proposal.
About your question related to hands-on exercises with on-chain verification.
The course is targeted towards people new to the Flow ecosystem. This course will consist of multiple modules. We will have one hands-on exercise in each module. And we verify on the Flow blockchain if every hands-on exercise is successfully completed.
For example
- the intro module will ask the user to download and install a non-custodial wallet like Lilico. We verify if the user has installed and connected the wallet - if so, the user passes module 1.
- In second module we ask them to buy Flow tokens and check if they have non-zero Flow tokens. We verify this on the Flow blockchain and they pass if they satisfy this condition.
- similarly other modules will assign exercises to the user such as send some Flow tokens, mint a NFT, check flowscan and answer questions asked, to swap coins etc. And we verify if the user has successfully performed each of the assigned exercises by verifying the transactions on the Flow blockchain.
- Every one of these modules is designed to make the user more and more comfortable using Flow blockchain while also understanding Flow and how it's different from other blockchains.
Users who complete all modules will be awarded a non-transferable NFT. Note that finalizing the design of the modules will be part of step 1 above.
This will be similar to the Stacks course at https://app.leos.guru/app which has 8 modules. Each module has an exercise that the user completes. We verify if the user completed the exercise on the Stacks blockchain. And the user is awarded a non-transferable NFT (SBT) once we verify on the Stacks blockchain that the user has successfully completed all 8 modules.
Hi @fanjum11 - this is great, thanks for the additional context!
Users who complete all modules will be awarded a non-transferable NFT. Note that finalizing the design of the modules will be part of step 1 above.
To confirm, this will be a Flow NFT, correct? Have you considered a FLOAT for this particular case? https://floats.city/
Separately, do you have a specific outline for the course prepared that you can share? It will be helpful to see the specifics of your plan similar to what you have for the 8 modules of the existing Stacks course.
Hi @chrisackermann Yes we were planning a Flow NFT. FLOAT seems interesting - I had not looked at it. But we will consider this. Thanks for pointing that out.
We have a tentative outline of the course given below. This is similar to the 8 modules that you see for the Stacks course at https://app.leos.guru/app. We might modify some of these during milestone 1 (course design).
- Module 1: Setup
- Module 2: Receive FLOW
- Module 3: Send FLOW
- Module 4: Using Flow Blockchain explorer
- Module 5: Multiple Keys to an account
- Module 6: NFT Mint
- Module 7: Smart Contracts deployment for normal people
- Module 8: Swapping Tokens
Hi @chrisackermann
let us know if you need any other information from us. We are quite excited to get started on this.
Hi @fanjum11 - thanks for these updates!
I'm a little concerned that the subject matter in the course modules could be a little too high level and not in-depth enough based on the outlined you've shared. While I could see it being helpful as a very intro-level resource for someone new to Flow, it seems a bit too consumer-focused than we're looking for here.
Instead, do you have any alternative ideas around a more developer-centered course (developer new to Flow) vs this more consumer-focused/non-technical intro to Flow?
Hi @chrisackermann thanks for the comments.
Yes, we can take the same approach for creating a developer focused course as we have for the course above.
Btw, we are doing this for the Stacks ecosystem. We are currently working on a Clarity (smart contract language like Cadence) course focused on new developers. This will be the second course in Stacks in addition to the Stacks 101 course that is already available at https://app.leos.guru/app
Such an approach will consist of a) multiple modules that ensure that the user has built a full project when all modules are done. b) each module will have concepts, quizzes and hands-on exercises that are verified on the blockchain. Thus, the user will be building up the project and having it verified in multiple steps in the form of modules. We have found that this is a better approach for new developers.
Note that once we have the backend infrastructure (hooking into the Flow blockchain) done, developing other courses will become very efficient.
Given this,
- Let me know if you want us to modify the above proposal to create a course focused on new developers.
- As an alternative we can develop two courses - one focused on new developers and another focused on consumers/users new to Flow for slightly additional cost.
Thanks @fanjum11!
Our preference would be to focus on helping developers learn Cadence and what's unique/possible. Would you be open to focusing this course on that instead of the consumer/user focus?
Hi @chrisackermann
Sure we are open to that. We will have the course focus on helping new developers learn Cadence.
Thanks, @fanjum11! Would you mind updating the proposal in order to reflect this focus and let me know when ready to review again? Thanks!
Hi @chrisackermann
Thanks; I have modified the very first entry here based on our discussion by specifying that this will focus on Cadence - calling it the Cadence 101 course. I have also added a tentative outline of the modules we expect to create in this course. Please let me know if you need additional information.
Hi @chrisackermann let us know if you need any other information from us. I updated the proposal last week to focus on teaching Cadence to new devs. Thanks
Hi @fanjum11, sorry for the delay! Thanks for making those updates - we're reviewing your updates and will get back shortly!
Hi @fanjum11, thanks for your patience!
We've reviewed this proposal and would like to see the milestones more aligned with the number of Cadence developers that are enabled by going through the courses here. Would you be open to structuring the milestones a payments to have more of a weighting on the intended outcomes?
Hi @chrisackermann we have a payment milestone tied to number of developers who complete the course in 2c above. Are you suggesting something different? If so, can you propose what might work for your team.
Note that the initial costs involve preparing the course and implementing it on our platform with hooks into the Flow blockchain for the on-chain verification. The users can start learning Cadence once the solution is implemented. this corresponds to the completion of phase 2b above.
Hi @fanjum11!
It's good to see the adoption milestone noted in 2c, however we're looking for a better alignment of incentives around the intended outcome/impact - which is the amount of developers completing the course.
Would you consider tying more weight of this grant towards adoption vs up-front development costs? Could even consider a tiered set of adoption milestones in this case, if that makes it helpful.
Hi @chrisackermann Thanks for your reply. Two comments:
- We will need to finish steps 1, 2a, and 2b before we can engage the developers. Therefore these steps cannot be tied to the number of devs completing the course.
- Hence step 2c is the earliest when we can engage with the devs; we can expand on this and add more marketing resources to increase the number of devs completing this course beyond 100 and these new milestones can be tied to the number of devs completing this course. Let me know if you would like us to do this.