This is a thread of links to resources which I have found useful while learning smart contract development on #Tezos
Even if you're not interested in coding, these links are helpful for comprehending decentralized technology and deciding which projects you believe in.
Interactive learning platform for the LIGO language.
I prefer SmartPy for now, due to my prior knowledge of Python. But I do want to understand LIGO syntaxes someday, and I plan to use Tezos Academy for that.
Collection of a broad variety of knowledge useful for any developer entering the Tezos world for the first time.
Some of it is LIGO-specific, but as a SmartPy user this is still one of my favorite documents.
4/?
wiki.tezosagora.org/whitepaper
Tezos White Paper (2014)
Explains the concepts behind the proposed "self-amending crypto-ledger" of Tezos
wiki.tezosagora.org/positionpaper
Tezos Position Paper (2014)
Describes the value proposition of Tezos and the potential benefits of its design choices
I think TZIPs (and the discussion surrounding them) are one of the best ways to get a nuanced understanding of Tezos and its many innovations.
7/?
One last TZIP comment:
github.com/mathMakesArt/r…
I rendered all the TZIP markdown files into PDFs. The (default) formatting isn't exactly pretty, but it's still a lot more printer-and-ereader-friendly than the websites themselves. Sharing in case it's useful to someone.
This document and their "How to Minimize Transaction Costs of Tezos Smart Contracts" article (medium.com/tqtezos/how-to…) are great development resources.
"I recommend you go through the FA2 template even if it seems overwhelming at first, it’s worth spending some time to understand how it’s working behind the scenes."
-@cryptoversewars
11/?
smartpy.io/explorer.html
The SmartPy Explorer is an incredibly useful tool. Its features are too many to list in a tweet, but it's very helpful and perfectly integrated into the SmartPy online IDE.
Importantly, you can build and send custom interactions with your contracts.
12/?
smartpy.io/wallet.html
The SmartPy Wallet is yet another utility in the online IDE. It has tools for interacting with software wallets (like Temple) and Ledger hardware wallets.
You can also import directly from the Tezos Faucet (faucet.tzalpha.net). Easy testnet XTZ!
13/?
smartpy.io/michelson
The SmartPy Michelson viewer is the last utility I'll mention for now. Among other features, it allows you to check Michelson code for errors and to parse it into JSON format.
Validation allows confidence in metadata compatibility.
Following the metadata standard is crucial. It is defined by TZIP-16 (see tweets 5-7 in thread).
15/?
github.com/search?q=%22im…
Search "import smartpy as sp" on GitHub to view open-source examples of SmartPy contract code!
NOTE: You must be signed in with a GitHub account to view code search results.
Beyond the upgrade concept, it's also given me a better understanding of the big_map type.
18/?
There are 2 main ways to facilitate contract upgrades.
The Serokell docs above achieve this by storing all contract contents in packed bytes form within a big_map.
Looking for resources about founding a project with decentralized governance.
Specifically I want to make a DAO token & eventually allow all contract administration decisions to be voted on by holders.
How to decide on a fair distribution model? How to balance present & future?
I would also love for the actual development of the project to be funded by platform fees. Distributed between not only myself but any future contributors.
But I don't want to overcharge.
Maybe it's best to start with one fee model, but adapt it over time based on votes?
Maybe in terms of "dividends" being paid from platform revenue to developers, it's better to keep that separate and not determine reward fraction based on governance token ownership?
I don't want DAO members incentivized to vote for raising their own payment at expense of fund.