Good afternoon all,
After reviewing feedback across different platforms and discussing the proposal with various members of the community, I have decided to rephrase the concepts and title of the proposal to prevent misunderstandings of the proposal’s intentions and correct several other errors in formatting brought up to me. Note that the requested Algorand amount has also been decreased to 120000 from 150000.
This separate thread is being also being created to prevent confusion for any visitors who would like to visit the comments-to link in the proposal since the proposal has been revamped to focus on the main goal of the proposal.
title: AlgoLearn Platform; Interactive Learning for New Developers
author: “Costa, Leo (@atsoc1993)”
discussions-to: xGov-99 AlgoLearn Platform; Interactive Learning for New Developers
This proposal outlines a request for funding to pursue a comprehensive educational initiative aimed at empowering new developers in the blockchain space within the Algorand ecosystem. The project originates from a vision to create a learning platform for developing on the Algorand blockchain— a website with interactive IDEs (Integrated Development Environments) where you can not only learn but also try out coding directly, with access to a locally hosted Algorand testnet node for real-world practice. Although all functionalities of Algorand are open-sourced in some way or fashion across various GitHub repos, YouTube channels, and developer documentation, new developers will find themselves grasping at straws when trying to compile an application of their own.
For example, we have multiple showcasings for different varieties of completed smart contracts for different kinds of applications, but no content that explains why a smart contract is formatted the way it is, how to debug your smart contract, or how to walk through safely creating asserts to ensure prevention of exploits. These are just more complex issues, but even simple explanations or walkthroughs of various applications when developing on Algorand are spread thin across the ecosystem, with little substance explaining how things work. Starting with simple implementations and building into more complex projects, its vital to understand how everything comes together from start to finish; topics such as: compiling the final smart contract natively without using dAppflow, encoding and decoding the approval/clear programs, sending transactions, deducing the hex string for a particular method in a smart contract, and passing that specific method into an argument within a transaction object, including mandatory app arguments and foreign assets that need to be passed into transaction objects lest the transaction fails.
These points highlight the endless gaps in current educational content, and extremely common mishaps that could make a 1-2 hour long project takes days or even weeks for new developers. As much as I value the work we have done so far for educational content, it is an absolute must that we expand on several developer topics and ensuring all new developers brandish the tools we have available on Algorand with confidence. This series centers on the beginning of AlgoLearn, and all profits will be used to fund and captain AlgoLearn indefinitely. See “Present Proposal” section for details about AlgoLearn and what this proposal will manifest.
Leo Costa, experience providing lessons in programming to community members, creating walkthrough guides in video format and github.
Two years of development experience on the Algorand blockchain.
Proficiency in Algorand SDK’s, node setup, database usage, and blockchain querying.
Bumper three.js web3 game with smart contract implementations
Foodie City Marketplace
Seals Metaverse Unity game development
AlgoLotto Raffle website
Created and assisted in developing multiple complex bots eg; Pseudo-explorers and Marketplace Watchers
Six months of web application development
This proposal presents a request for funding to develop and launch AlgoLearn, a comprehensive educational platform aimed at enhancing developer proficiency within the Algorand ecosystem. AlgoLearn will be an innovative learning platform, featuring interactive IDEs where developers can learn, code, and interact with a public Algorand testnet node in real-time. While existing resources provide a scattered understanding of Algorand functionalities, AlgoLearn seeks to consolidate these learnings and offer in-depth, structured, and hands-on educational content. The platform will cover fundamental programming concepts, intitiating connections and querying the blockchain, executing all types of transactions, launching and interacting with smart contracts and assets adhering to different ARC standards. Beyond Algorand-specific content, AlgoLearn will offer comprehensive educational materials on FUNDAMENTAL programming concepts critical to blockchain development, ensuring a solid foundational knowledge base for developers.
AlgoLearn will also provide complete and easy to understand project examples that do NOT overload learners with hundreds of lines of code across multiple files— and instead, all project examples will be concise, and their successful testing in a local environment will be tightly guided to guarantee deployment and learner success.
The vision for AlgoLearn is to serve not just as a repository of information but as an active and interactive learning hub, facilitating real-time coding, problem-solving, and testing through its advanced IDEs.
AlgoLearn will start as a series of structured chapters, each focusing on distinct aspects of Algorand development:
Introduction to Algorand & Setup:
- Overview of Algorand ecosystem.
- Setting up development environment and interacting with Algorand nodes.
Programming Fundamentals & Algorand SDKs:
- Covering fundamental programming concepts.
- Detailed walkthroughs on using Algorand SDKs in supported languages.
Transactions on Algorand:
- Understanding all types of transactions.
- Hands-on tutorials on creating and executing transactions from asset transfers to smart contract interactions in at least 2 programming languages at conception.
Smart Contracts & ARC Standards:
- Diving into Algorand smart contracts compilation in Pyteal/Puya.
- Exploring different ARC standards for smart contracts and assets, as well as their applications with example implementations
Interactive IDE & Real-time Coding:
- Coding directly on the platform with an interactive IDE.
- Access to a public Algorand testnet node for real-world practice and testing.
Challenges & Quizzes:
- Reinforcing learning through practical challenges.
- Quizzes to test understanding and retention of the material.
Based on community feedback, future proposals will focus on:
- Expansion of the lecture series to cover advanced backend/frontend web application development on Algorand.
- Enhancing community engagement with the AlgoLearn Platform and/or providing initiatives for learning
- Development specifically in less popular languages; for example the Unity, Unreal or Swift Algorand SDK’s available as per community interest.
The integration of blockchain technology into the learning ecosystem through AlgoLearn represents a transformative step not only for developers choosing to enter the space but for existing community members interested in programming. The current landscape, while rich in potential, often leaves aspiring developers navigating disjointed resources. AlgoLearn is poised to bridge this gap by offering a structured, comprehensive, and interactive learning platform.
- Onboarding Platform: Funding will assist with development of AlgoLearn, which will facilitate an easy entry point for not only prospective developers, but our internal community members into Algorand development.
- Practical Learning: Offers hands-on experience through guided and in-depth tutorials and interactive web IDE’s.
- Innovation Stimulus: Encourages the creation of new, blockchain-integrated projects and streamlined learning/research.
- The AlgoLearn Platform should be expected to be complete within 3-4 months, although I matriculate part-time— the funding will provide resources to fully commit to AlgoLearn and foster it to conception.
Example for Proof of Work/Understanding: