SCF #16
Award Completed
Easy A - #SummerOfSoroban

EasyA creates a Soroban crash course and gets devs from its huge network of 500k+ engineers building on Soroban via its app.

Awarded
Awarded
Budget request:
$
136,800
*
WebsiteCode

Project Stage

Category

Soroban
Education & Community

Based in

United Kingdom

Team size

10

Active since

January, 2019
Products & Services

Product: Soroban builder crash course in the EasyA app


What is EasyA?

With 500k+ developers from top universities, companies and projects across the US, UK and Europe, EasyA has grown into one of the world’s most trusted and engaged developer communities in the last 3 years. EasyA developer projects have been funded by a16z, Polygon Labs and many other top VCs. Founded by Oxbridge/Ivy League grads, EasyA works very closely with 250+ of the world’s best blockchain clubs, frequently ranks as one of the top apps on the App Store, and has been featured as Apple’s App of the Day. Our crash courses and hackathons with the world’s leading Web3 networks such as Polkadot, Algorand, Polygon, Tezos, Binance, ImmutableX, Solana and many more attract the world’s most talented hackers, since EasyA is a powerful signal to them of quality and excellence.


The Problem: Why does Stellar need EasyA?

Most developers think Stellar is only a payments/asset-transfer network. They don’t know about the huge opportunities Soroban will unlock once it brings smart contracts to Mainnet later this year.

Soroban therefore needs to inspire these developers to attract them to build in the ecosystem. This is of paramount importance to securing Stellar’s position as a world-leading chain. Soroban needs to:

  1. Increase monthly active Stellar developers via EasyA’s unique, direct-to-developer channels
  2. Teach developers about the novel use-cases Stellar are looking for, so these can inspire more developers to build on Stellar
  3. Build a funnel of top projects for VC funding
  4. Boost Stellar's Electric Capital score by actively increasing GitHub repository activity

Via this proposal, EasyA will target all 4 of these goals and ensure Stellar cements its reputation as a world-leading chain for all builders and innovators (not just for payments).

The secondary effects of this will also be very powerful. Increasing developer activity will itself improve perception of Stellar in metrics tracked by builders when choosing a chain (such as the Electric Capital / a16z Developer Report).


Target audience:

  1. Builders who want to found their own startups on Soroban
  2. Web2/Web3 developers who want to learn about Soroban but just want the technical TL;DR
  3. Students who are excited about Web3 and want to build their BIG idea on Soroban


How: Through Stellar educational content in the EasyA mobile app

EasyA gets its unique network of the world’s best developers (in the US, UK and Europe) learning about and building on Soroban. Via the EasyA app we will funnel a consistent and proven pipeline of top developers into the Soroban ecosystem. These developers will be from EasyA’s huge network of 500,000+ developers at top institutions from Harvard to Meta to Google and other leading Web3 projects.


Outcome: 1,500 developers onboarded to Stellar, with 300 developers graduating.

No items found.
Previous Project(s)
No items found.
Progress so far
Goals
To get there, we request a budget of  
$
136,800
*
  to:
Additional information

How do we know we’ll achieve these targets?

We’ve worked with the world’s leading chains such as Solana, Polkadot, Polygon and many more to get the best developers building on them. Here’s how.

As seen in the uploaded screenshots, the modules will range from introductory multiple-choice questions accompanied by bite-size explainers, through to embedded quizzes, right up to actual coding to teach and show developers the real-life development experience of a Soroban developer.

In our most recent Solana in-app educational challenges, we had a huge 20,000 developers completing at least one challenge, with a further 8,000 completing all of them.

Unlike any other platform, the people completing EasyA challenges are exactly the types of people who will actually go on to grow Stellar as founders, engineers and product leaders.

From our experience teaching the thousands of developers we have trained so far, we will use a core theme-based and outcome-oriented framework to set learners up for success.


Content Plan

Our first step will be to finalise the precise content with the Soroban dev rel team, but the below is an example of broadly what this will look like for a single Soroban module:


Learning Outcome

Introduce developers to:

  • What is Soroban
  • Dispelling misconceptions about Stellar
  • How it’s different to other ecosystems
  • What can be built with Soroban
  • Where to find Soroban courses/docs
  • How Web2/Ethereum skills translate to Stellar development


Walk developers through where they can get live support on their journey, such as:


Guided walkthrough of:


Where to start when building on your own:

  • Example Stellar dApps and how to leverage them to kickstart development, such as the awesome Crowdfunding dApp


How to join the community longer-term:


Importantly, we will also be encouraging developers to share their journey on Twitter under the #BuildOnSoroban hashtag. This will not only help them keep up their momentum but also create huge reach for Soroban and ecosystem partners.

At the end of each mini course, developers will be prompted to post what they just learnt to Twitter, creating a viral flywheel that supercharges Soroban exposure and encourages other devs to get involved!


Funding announcement!

As the crypto winter thaws again, EasyA teams are at the top of their field. Just recently, EasyA hackathon project Lockbox from Harvard raised $500,000 from a16z and another EasyA hackathon project MintStars raised $600,000 from PolygonLabs and other notable VCs. As the world’s leading community of Web3 builders, with the right support EasyA projects thrive in the blockchain ecosystems they’re born into.

For a more visual explanation of EasyA (including case studies with other blockchains) our full pitch deck is available here: https://docsend.com/view/ideic8sedfer66cb

Pitch deck
No items found.
Deliverables
First Deliverable

Thank you for reviewing our Proof of Intent for #SummerOfSoroban! We’ve been hard at work over the past several weeks exploring the best possible ways to get our community building on Soroban, how best to explain complex topics to them and also seeing what will excite them most. This is a brief executive summary of our plan, with the full outline below!

Our core vision is to inspire developers to build on Soroban. From our discussions with developers so far, the biggest challenge is that developers who know about Stellar think of it as purely a payments/asset-transfer network. Therefore, we need to teach them about Soroban and the world of opportunity this opens up for them!

The biggest pain point facing developers is in trying out Soroban, since it is so new and developers do not have the Soroban environment set up on their computers. However, from speaking with the developer community so far, the biggest lightbulb moment for developers is when they see the big players already within the ecosystem, such as Moneygram and Circle (for USDC). They are captivated by the idea of being the first to tap into this community and the advantages of being one of the first teams to launch smart contract-enabled dApps into it, which is unique amongst other blockchains in existence right now; other blockchains are either very new and don’t have a pre-existing ecosystem of established partners, or they have a pre-existing ecosystem but it is saturated with projects/dApps.

From our deep dive into the Stellar crash courses and educational materials, the challenges such as Fast Cheap And Out of Control (FCAOOC) and the Stellar/Soroban Quests/Side-Quests are awesome. We will build on their success, and improve upon these by really focusing on building hype around Soroban via EasyA’s community and focusing on bringing these participants into the community longer term by getting them building and expanding their Github repos with Soroban, including deploying their smart contracts on Futurenet!

We’ve immersed ourselves in the Soroban ecosystem over the past several weeks, and have developed the following skeleton crash course focusing on the key themes identified in our developer research and discussions with the Stellar team! This outlines the course with the following framework as requested:


  1. Topic: The overall subject area (and main title of the course that developers will see)
  2. Key Learning Objective: The goal of this module (what we want developers to achieve/learn)
  3. Subtopics: The key areas developers will learn (along with brief descriptions and sources)
  4. Exercises: What developers will be required to do to proceed to the next module


Having crafted this content plan, we’re more excited than ever to get our community building on Soroban! If you have any feedback at all, whether it’s particular areas you would prefer us to get developers to explore or even just topics you think we should emphasise in our messaging, please do let us know! We’d love to hear it!


- Phil, Dom and the EasyA Content and Engineering Team


Check out a teaser of what the Soroban in-app modules will look like in the EasyA app!


Content Plan (Skeleton Outline)

Module 1:

Topic: Why Stellar/Soroban


Key Learning Objective: Grab developers’ attention. This is the most important part of the developer acquisition funnel. If we don’t grab their attention here, they won’t continue. Therefore, we need to inspire developers as to why they should invest their time into learning about Soroban. Our key learning objective is therefore to understand why Soroban was created, and the opportunities it unlocks: ‘Show, don’t tell’.


By the end of this module, developers should be ecstatic about being amongst the first developers to tap into Stellar’s ecosystem via Soroban, and will be super excited to learn about how to build on it.


Subtopics:


  1. How big and active the Stellar community is
  2. What makes it special: sending money
  3. Real-world use-case: The problem with remittances + leveraging Moneygram (Anchors/Ramps)
  4. What we’re going to build by the end of the crash course: Kickstarter for Startup Ideas
  5. The problem: Stellar has never supported smart contracts. Until now…


In this module we’ll start by inspiring developers about how big the Stellar community is.


Exercises:

Multiple-choice questions testing developers on their understanding of Stellar and:

  1. What it was built for originally
  2. How big the community is
  3. The real-world problems it solves
  4. Post on Twitter announcing they’re building on Soroban


Module 2:

Topic: How Soroban adds the missing piece of the puzzle


Key Learning Objective: Understand what Soroban is and how it sits within the Stellar ecosystem. Our goal is to continue inspiring developers and create hype/FOMO. We can turn Soroban’s nascency into an advantage: developers building on Soroban now will get to be the very first to tap into the huge community and world of assets which Stellar has built over the past almost decade. Imagine being the first DEX on Ethereum. That’s the opportunity developers have with Soroban.


After completing this module, developers will understand what Soroban is, the distinction/integration with Stellar, and will be primed to start diving into the technicals.


Subtopics:


  1. What Soroban brings to Stellar for the first time: smart contracts
  2. What this means: You can now build complex apps beyond just asset transfers
  3. Why this is such a big opportunity for developers: Tap into Stellar’s mature ecosystem of on-ramps and off-ramps, and all the real world assets already on Stellar
  4. How bustling the ecosystem is (supported by data from SCF). For example, in H1 2023 SCF funded 75 unique projects, and awarded over $4.8M of XLM this year alone via SCF.
  5. What is Soroban then?
  6. Not a new blockchain: adds smart contract functionality to Stellar
  7. Totally integrated with Stellar: Soroban smart contracts can interact with Stellar assets, use the same accounts (apart from interacting with AMMs, Sponsorships etc)
  8. What this means for us: Why this will make Soroban the perfect platform for launching our Kickstarter for Startups (e.g. opportunities in the developing world, operating trustlessly etc)


Exercises:

Multiple-choice questions testing developers on their understanding of Soroban and:

  1. What Soroban does
  2. How it brings smart contracts to Stellar
  3. The problem without Soroban
  4. How Soroban integrates with the existing Stellar ecosystem (e.g. other Stellar operations, assets etc)


Module 3:

Topic: How Soroban works


Key Learning Objective: Understand what Soroban’s overall building blocks are. The goal isn’t to learn all the underlying theory, but to give developers the main tools they need to understand how to build the keystone project. We don’t want developers dropping off when they see tons of technical jargon immediately. They can go down the rabbit hole afterwards, but we want to get them to actually building with Soroban as quickly as possible. Learning the tools is just a means to an end.


By the end of this module, developers will understand the fundamental building blocks they’ll use when building on Soroban. They will also have seen and successfully edited simple Soroban Rust smart contracts.


Subtopics:

  1. What Soroban smart contracts look like: Rust (with code snippets)
  2. What happens under the hood: compiled to WASM
  3. Limitations of Rust for Soroban because of the contract execution environment, meaning we use the: Rust Dialect
  4. What is means to have ‘Batteries Included’: What the SDK provides (data structures, utility functions, signature verification, on-chain storage etc)
  5. Other SDKs and their uses: JS, Python, Flutter (with code snippets)


Here's an example of a code snippet we'll get developers to edit/correct! https://drive.google.com/file/d/11a3ecV0Nj1Rafui1_VRguJRPkdfFJ5rZ/view?usp=share_link


Exercises:

Code exercises:

  1. Changing “Hello” to “Hello World”
  2. Filling in the blanks for making API calls using the Rust and non-Rust SDKs


Multiple-choice questions testing developers on the preceding topics:

  1. What language Soroban supports
  2. What the limitations of writing Rust for Soroban are
  3. What the Rust SDK does
  4. The roles of other SDKs (i.e. not for writing smart contracts)


Module 4:

Topic: Building our Kickstarter for Startups


Key Learning Objective: Write the smart contract for our Kickstarter for Startups keystone project. This will be an exciting project for developers, since it is something they can actually launch as their own project afterwards (rather than a ‘Hello World’). This will be based on the Soroban Crowdfunding Dapp Example. The final project will enable end-users to fund startup ideas proposed by people in a Web3 version of Kickstarter. This will enable developers to ‘learn by doing’.


By the end of this module, developers will have completed the Rust smart contract for the keystone project, and in doing so will have learnt about the key fundamentals of Soroban: authentication, initialization, state management, storage, transfers, events and error handling.


Subtopics:

  1. The problems with Kickstarter and why we need to build it on Soroban: censorship, trust, geographic availability, currency restrictions etc
  2. How Soroban allows us to fix this: censorship-resistant, trustless, decentralised, available anywhere, with any currency we want, tapping into the Stellar ecosystem etc
  3. It’s easier than we think thanks to the SDK: Setting up and adding the Soroban SDK to the Cargo.toml (with code snippet)
  4. Our first job (allow people to set up new campaigns): Writing an `initialize` function and adding the parameters we’ll need
  5. Saving the campaign: Understanding how Storage works in Soroban
  6. Accepting backers’ money: Making a `deposit` function
  7. Preventing people from backing their own kickstarters: Understanding Authorisation in Soroban
  8. Enabling entrepreneurs to get the proceeds of their fundraise: Our `withdraw` function.


Here's an example screenshot of how the coding exercises will put everything into perspective and apply developers' knowledge: https://drive.google.com/file/d/1FPa0ug7NXvHSbxnMxbgeaH0P2Zh6UAC4/view?usp=share_link


Exercises:

Code exercises:

  1. Add the correct SDK name to the code snippet
  2. Change the name of the project
  3. Complete the initialization function
  4. Ensure only the Kickstarter owner can withdraw the funds from the smart contract


Multiple-choice questions testing developers on the preceding topics:

  1. Why our Kickstarter should be built on Soroban
  2. We we need to use the Storage API when initializing our campaign
  3. The distinction between authorisation and authentication
  4. How we add support for deadlines within the smart contract


Github exercises:

  1. Fork the Soroban Crowdfunding Dapp Example
  2. Star the Soroban Crowdfunding Dapp Example


Module 5:

Topic: Connecting the front-end (understanding State and Events)


Key Learning Objective: Teach developers how to connect the backend (smart contract) they have just written to a front-end that end-users can interact with. We will focus on showing users how they can build a wallet connection and overall connect these different pieces together. Core Web2 front-end development knowledge (e.g. React) is assumed, so we can focus on the new and exciting parts brought to us with Soroban.


By the end of this module, our learners will understand the full flow of how end-users will interact with their smart contract.


Subtopics:

  1. The problem with having just a smart contract (not user friendly)
  2. The importance of having a great front-end
  3. Using State and Events to update our UI + Why we need a front-end in particular here: so everyone knows how much the Kickstarter has been funded, whether the target has been reached etc
  4. The good news: we can use our favourite front-end frameworks (e.g. React)
  5. How to use Soroban Dapp Tooling (Soroban Bindings)
  6. Updating our smart contract to expose these events to our front-end: Using the `publish` function
  7. Using Soroban React to: fetch data from the smart contract (`useContractValue`) and submit transactions (`useSendTransaction`)
  8. How to connect to a wallet (with a full, visual simulation)


Here's a screenshot of the front-end code developers will need to edit: https://drive.google.com/file/d/1pXi3rsNkOTX1-hpDqx0Yr2blKEmreaU9/view?usp=share_link


Exercises:

Coding exercises:

  1. Personalising the name of the Kickstarter for Startups project
  2. Adding the correct Soroban React hooks
  3. Using `useContractValue` to fetch the correct data
  4. Updating our smart contract to publish events


Multiple-choice questions testing developers on the preceding topics:

  1. How smart contracts can publish events
  2. What SDKs we should use to connect our front-end to our smart contract
  3. What wallets we can use


Module 6:

Topic: Deploying our smart contract!


Key Learning Objective: Teach developers how to deploy a smart contract on Futurenet. By now, our developers have learnt about how to write a smart contract and how to connect their front-end to it. This module will therefore show them how to put it all together and move to the final step in getting it out to their end-users: deployment!


After this module, developers will have deployed their smart contracts to Futurenet and will have the sample repo ready to go in their Githubs!


Subtopics:

  1. Recap of where we’ve got so far: Smart contract + front-end, but no users!
  2. How to get to users: Intro to Futurenet!
  3. Building our smart contract for production with `cargo build`
  4. Using Soroban CLI for deploying
  5. Deploying live on Futurenet
  6. Seeing the the smart contract live on the blockchain
  7. Next steps: Joining the Soroban ecosystem


Here's what the wallet connection will look like in the EasyA app! https://drive.google.com/file/d/1RsXRHxnobioRUN-jcBSvlyWxCg1vtX9M/view?usp=share_link


Exercises:

Code exercises:

  1. Completing the missing commands for using the Soroban CLI
  2. Completing the commands for building our smart contract using `cargo build`
  3. Deploying our smart contract on Futurenet


Multiple-choice questions testing developers on the preceding topics:

  1. When we need to build our smart contract for release mode vs testing
  2. Which tools to use for deploying our smart contract
  3. Which network we should deploy on for testing
  4. How to continue building on Soroban

How can a reviewer check you completed your first deliverable?

A reviewer can check we have completed our first deliverable by reviewing the final skeleton plan we have created for the content. The plan is fully documented along with a detailed outline of the course, with topics, sub-topics, brief descriptions and which types of exercises (e.g. coding, multiple choice, smart contract deployment etc) the learner will be required to complete. This empowers any reviewer clearly to see what the course will look like when it is fully implemented in the next milestones, along with how the KPIs will be achieved.


If any reviewers do have any questions at all, just let us know! We're excited to start building out the course in full!

EasyA Ltd

With 500k+ developers from top universities and companies across the US, UK and Europe, EasyA is one of the world’s most trusted and engaged developer apps. Founded by Oxbridge/Ivy League grads, EasyA works closely with 250+ of the world’s best blockchain clubs and has been featured as Apple’s App of the Day. Our hackathons and crash courses on the world’s leading Web3 networks (e.g. Polkadot, Algorand, Polygon, Tezos, Binance, ImmutableX, Solana etc) attract the world’s best builders.

Team

EasyA’s co-founders (both Oxbridge and Ivy League graduates) are serial hackathon winners active in crypto since 2013, giving them an in-depth understanding of what makes hackathons succeed and how new protocols can attract the best talent. Prior to founding EasyA, Phil founded two groundbreaking marketplace startups and worked at top New York law firm Sullivan & Cromwell. He was one of the youngest people ever to pass the New York Bar and consistently ranked top of his year as a scholar at Cambridge University. Our other co-founder, Dom, worked at The Blackstone Group and Goldman Sachs, after graduating Cum Laude from The Wharton School, University of Pennsylvania as a Joseph Wharton and Benjamin Franklin Scholar.