Awesome
GNOLANG 101
<div align="center"> <img src="./banner.png" /> </div>Contents
Introduction
Welcome to GNOLANG 101!
This course is designed for aspiring programmers who are looking to become a smart contract developer on Gnoland, a scalable layer 1 with built-in concurrency.
Existing smart contract platforms are struggling with mass adoption due to technical issues such as 1) low throughput, 2) non-interoperability, or 3) flawed tokenomics.
Gnoland addresses these problems with the highly performant Tendermint Consensus algorithm and Gnolang, a fork of Golang. This course focuses on Gnolang, the language that is used in the core modules of Gnoland and its dapps. Highlights of Gnolang as described in its official docs are as follows:
- Like interpreted Go, but more ambitious.
- Completely deterministic, for complete accountability.
- Transactional persistence across data realms.
- Designed for concurrent blockchain smart contracts systems.
Gnolang is in its early stage, and therefore we're in need of passionate developers that can help us build the tools, applications, and modules to create a vibrant ecosystem centered around quality software.
This course consists of resources, tutorials, and guides that will help you get started on your journey as a Gnolang developer. By the end of the course, you will understand how to write and publish contracts on the Gnoland blockchain in Gnolang. If you ever run into any issues, reach out for help on the Discord server where we have active developers willing to support newcomers!
*This course assumes that you have a moderate degree of programming skills.
Resources
A full list of resources that you will need to access throughout the course.
Reading
Repositories
- gno
- awesome-gno
- www.gno.land
- tendermint
- tendermint2
- bounties
- gno-basics
- adena-extension
- decentralists DAO
Tutorials
Tools
Course
Read the instructions and follow the checklist in order.
Instructions
read
: Items to be read, be they journals, write-ups, or even lines of code.do
: Items that require you to perform specific tasks. These items usually include writing and running your own code.- Clone this repo and check off items to track your progress!
Checklist
-
-
read
the README file
-
-
-
read
the Philosophy
-
-
-
read
the Plan
-
-
-
read
the Roadmap
-
-
-
do
the Official Golang Tutorial (skip if you know Golang)
-
-
-
do
Buildgnokey
and create an account
-
-
-
read
packageavl
-
-
-
read
packagedom
-
-
-
read
packagegrc20
-
-
-
read
packagevault
-
Community
Contribute
Gnolang is a new language with new updates being shipped almost every day. We'll try to keep this course as up-to-date as possible, but we'd appreciate your help to cover as much information as possible.
Please take a look at the contribution guidelines and become a TA by helping us develop this course!