# Discussion around an RFP for the creation of video courses on CosmWasm Contract Development

**URL:** <https://gov.archway.io/t/discussion-around-an-rfp-for-the-creation-of-video-courses-on-cosmwasm-contract-development/379>\
**Category:** Proposal Discussions\
**Created:** [November 9, 2023, 7:28pm UTC](https://gov.archway.io/t/discussion-around-an-rfp-for-the-creation-of-video-courses-on-cosmwasm-contract-development/379 "2023-11-09T19:28:57Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![emperor](https://avatars.discourse-cdn.com/v4/letter/e/a8b319/32.png) [@emperor](https://gov.archway.io/u/emperor)\
**Post date:** [November 9, 2023, 7:28pm UTC](https://gov.archway.io/t/discussion-around-an-rfp-for-the-creation-of-video-courses-on-cosmwasm-contract-development/379/1 "2023-11-09T19:28:57Z")

</div>

# Introduction:

Developers have diverse learning preferences, and while many excellent written guides and tutorials exist, some developers prefer to learn from high quality video content. Video tutorials offer a dynamic way to present complex information, making learning more accessible and engaging. With that in mind, our goal is to have a series of comprehensive video course tutorials that cater to learners who thrive on visual and auditory learning methods.

# Project Overview

We are soliciting proposals from qualified members of the Archway community to produce comprehensive video courses on CosmWasm Contract development. The primary goal of the courses is to empower developers with the basic knowledge required to create the most amazing dapps on top of the Archway protocol. We have identified the Terra Academy’s course ([https://academy.terra.money/collections](https://academy.terra.money/collections)) structure as an ideal format, which this RFP is based upon.

# Scope of Work

These courses should be structured to provide developers and enthusiasts with comprehensive insights into the realms of Rust programming, smart contract development via CosmWasm, the expansive world of NFTs, and how users can interact with these contracts. Each course should be tailored to facilitate deep understanding, hands on practice, and mastery of the topics at hand.

## Rust Basics

The Rust basics course is designed to provide a holistic introduction to the Rust programming language, especially tailored for aspiring CosmWasm smart contract developers. The course will be structured to facilitate a gradual learning curve, starting from an introduction to Rust, progressing through its fundamental concepts, and delving into the deeper intricacies of the language. Our intention is to ensure that by the end of the course, developers are well-equipped to harness the power of Rust in their smart contract development.

Outlined below is a possible structure of the course content:

1. **Course Introduction** :

2. **Variables in RUST** :

3. **Options, Result, and Match** :

4. **Other RUST Specifics** :

## CosmWasm Smart Contracts

This course on CosmWasm Smart Contracts should be designed to be a comprehensive guide for developers, allowing them to harness the capabilities of CosmWasm to its fullest. Beginning with foundational concepts and leading into advanced functionalities, this course endeavors to make participants proficient in creating, deploying, and managing smart contracts on the Archway network.

Outlined below is a possible structure of the course content:

1. **Introduction to CosmWasm** :

2. **CosmWasm Quick Start** :

3. **CosmWasm Libraries** :

4. **Using Storage in CosmWasm Contracts** :

5. **CosmWasm Controllers** :

## CosmWasm Testing

Testing is a critical component of smart contract development, given the immutable nature of blockchain deployments, where errors can be costly and sometimes irreversible. This course should be crafted to equip developers with the expertise necessary to ensure the reliability and security of their smart contracts by imparting a thorough understanding of the testing paradigms applicable to the CosmWasm environment.

Outlined below is a possible structure of the course content:

1. **Introduction to Smart Contract Testing** :

2. **Setting Up a Test Environment** :

3. **Unit Testing in CosmWasm** :

4. **Integration Testing** :

## CosmWasm NFTs

The CosmWasm NFT course delves deep into the CW721 standard, one of the pillars behind NFT development in the Cosmos ecosystem. This course is meticulously crafted to cater to both novices eager to understand the world of NFTs and seasoned developers looking to sharpen their expertise in creating and managing NFTs using the CW721 standard on CosmWasm. Going beyond the basic NFT solutions would also be ideal for more advanced usage and the use of the Area52 Cyborgs NFT course ([https://area-52.io/do-cyborgs-dream-of-nfts](https://area-52.io/do-cyborgs-dream-of-nfts)) could be something to look into.

Outlined below is the structured content of the course:

1. **Course Overview** :

2. **Intro to CW721 NFTs** :

3. **Advanced Usage of CW721** :

4. **Minting NFTs** :

5. **NFT Marketplace Integration** :

6. **NFT Metadata and Customization** :

7. **Smart Contracts for NFT Management** :

## CosmWasm Frontend Integration

Being able to have users execute actions on your CosmWasm smart contracts is extremely useful if you want to build a user base and have users continue to utilize your platform. The following course should help developers to connect their frontend dapp to their CosmWasm smart contract solution to create the best possible user experience.

Outlined below is a possible structure of the course content:

1. **Setting Up the Frontend Development Environment** :

2. **Integrating CosmWasm with the Frontend** :

3. **State Management in dapp Frontends** :

4. **Security Considerations for dapp Frontends** :

# Proposal Requirements

To ensure comprehensive and effective video courses, we’re seeking proposals that align with our vision and can deliver high-quality content tailored for our target audience. While we acknowledge the diversity of experience and approach among potential creators, there are specific criteria we’ve identified as crucial to meet our objectives. These criteria not only serve as a guideline for submissions but also as a means to gauge the vendor’s understanding, capability, and alignment with our project’s goals.

Outlined below are the essential requirements for the proposals:

1. **Experience** :

2. **Course Outline** :

- A detailed breakdown of the course modules, topics, and estimated durations to provide a clear roadmap of the content flow.

1. **Previous Work Examples** :

2. **Budget Breakdown** :

3. **Timeline Estimation** :

# Selection Criteria

The success of these courses relies heavily on choosing the right vendor who can deliver content that aligns with our community’s values, needs, and aspirations. Our selection process is not just about evaluating the tangible aspects of the proposal but also understanding the underlying thought, passion, and commitment behind it. We’ve established a set of criteria that will guide our decision-making process, ensuring that we partner with a vendor that best represents our vision and goals for this initiative.

Outlined below are the pivotal factors influencing our selection:

1. **Quality of Previous Work** :

2. **Proposal Clarity** :

3. **Cost-effectiveness** :

4. **Delivery Timeline** :

---

<div class="post-metadata">

**Author:** ![NODERS](https://yyz1.discourse-cdn.com/flex029/user_avatar/gov.archway.io/noders/32/176_2.png) [@NODERS](https://gov.archway.io/u/NODERS)\
**Post date:** [January 15, 2024, 2:15pm UTC](https://gov.archway.io/t/discussion-around-an-rfp-for-the-creation-of-video-courses-on-cosmwasm-contract-development/379/2 "2024-01-15T14:15:09Z")

</div>

Our team would like to take over this task and deliver high quality educational courses (as they were mentioned in the proposal) within reasonable timeframe. Here are the details:

Timeframe: we will produce first video course (Rust Basics) within 2 weeks and if you like our work than we will proceed and create 4 more courses (timeframes for those would be anounced as soon as we start working on them, but should be within pretty much the same timeframe of 2-3 weeks per course) as they were described in the proposal.

Team: 5-6 people will be working on the production (scenario writer, 2 developers, designer, video maker, coordinator).

Structure: The course will consist of video series (5-10 minutes long each), presentation/slides and multiple-option questionnaire.

1. Setting Up the Rust Development Environment

Installing Rust  
Setting up the development environment for Rust programming  
Introduction to Cargo  
Hello world program

1. Basic Rust Syntax and Concepts

Variables and data types  
Mutability and Shadowing  
Functions and control flow  
Traits

1. Working with Rust Data Structures

Arrays and vectors  
Generics  
Structs and Enums  
Working with Tuples in Rust  
Pattern matching and destructuring

1. Understanding Ownership and Borrowing

Ownership rules in Rust  
Borrowing and references  
Lifetimes in Rust

1. Error Handling and Result Type

Handling errors with Result and Option  
Propagating errors with ?

1. Functional Programming Basics in Rust

Closures and iterators  
Most used higher-order functions

1. Basics of testing in Rust

2. Best Practices and Resources

Best practices for writing idiomatic Rust code  
Additional resources for further learning and exploration

Design/Style: as provided in Archway Media kit

Compensation: additional delegation to our node of 2,5 mm Arch per video course.  
_Important: If you dont like what we produce you shall take back the granted delegation._

Our expirience: we have created dozens of various marketing/educational material for crypto projects (twitter fan pages, articles, threads, guides, online/offline events, trading/project overview videos).  
We can create a TG group with representatives of Archway to show materials we have produced for other projects and also to have a channel of quick coordination.
