SlideShare a Scribd company logo
russ@algorand.com
Russ Fustino
Developer Advocate
Algorand
Algorand August Upgrade
The documents and statements presented on (or directly accessible from)
this presentation may contain forward-looking statements. These statements
relate to future events or Algorand Network's future performance, financial
or otherwise. Any statements that are not statements of historical fact
(including without limitation statements to the effect that the Company or its
management “believes”, “expects”, “anticipates”, “plans” (and similar
expressions) should be considered forward looking statements. There are a
number of important factors that could cause Algorand Network’s actual
results and outcomes to differ materially from those indicated by the forward
looking statements. The Algorand or any other party contained within
disclaim any obligation to update any forward looking statement.
Safe Harbor
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Experience with development and blockchain poll
4
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
ENTER TO WIN $100 Amazon Gift card
TODAY IN THIS SESSION!
Sign up for developer newsletter!
https://developer.algorand.org/pages/newsletter/
9
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Get the goods!!!
Developer site: http://developer.algorand.org
SDKs: https://github.com/algorand
PowerPoint:
Code: https://github.com/algorand-devrel/hackathon
10
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Problems with Blockchains
• Say I have a long running public address and then I
want to change the authorized private key?
• I have an account signing my transactions, but I
want to change it to Multisig or Logic Sig? How?
• I create a node and can not use it for days. Catching
up from the genesis block takes forever!
• The cost and speed of other smart contracts make
business models hard, UX spotty and tough to
implement
• How do I do searches on the Blockchain? Quick!
12
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Developers, Developers, Developers!!!
• 200 - CareerBuilder
• 1800 - Monster
• 4600 – Dice
• * The total number of Blockchain developers in late 2018
was estimated at around 105,000. [source paybis and dappros ]
13
§ Why Algorand?
§ Algorand Layer 1 Features
§ Fast Catchup
§ ReKeying
§ Indexer V2
§ Algorand Foundation Reward
Programs
§ Developer Tools!
§ Community Resources
§ Code Demos
Why Algorand?
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Why Algorand
Pure Proof of Stake Consensus
Efficient Blockchain: Scales to billions of users
Enterprise Speed: 1000 TPS, < 5s Block Times
Instant Finality: There are no soft forks.
Cost Effective: < $0.001 USD cost per transaction
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Pure Proof of Stake Consensus
ü Public and Permissionless
ü All users can participate in consensus
ü Blocks are confirmed by voting
ü Every token carries the same voting power
ü No need to delegate or bond
ü Minimal compute required
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Technical Innovation Continuing to Drive Adoption
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Year 1
26
Algorand Layer 1 Features
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Algorand Standard Assets (ASA)
Algorand Smart Contracts (ASC1)
Atomic Transactions
Algorand Layer 1 Features
Rekeying
Algorand Accounts
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Algorand Accounts
Smart Contract
Standard Account Multisig Account Logic Account
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Rekeying Accounts
Authorization
Public Address
Smart Contract
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
● Issue Layer 1 Native Token (NFT/FT)
○ Native Like the Algo
○ Create in Minutes
○ Require no on-chain code
● An administrator can
○ Mint and Burn units
○ Freeze Accounts
○ Revoke an Asset
○ Delegate
● Asset Spam Protection
○ Accounts Option In to ASA
● Quick Demo Algodesk.io
Algorand Standard Assets (ASA)
T
Block Block Block
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
● Native Function
○ Atomic transfers on Algorand is a native function instead of implemented
with 3rd party contracts
(No need for HTLC or notary)
● Easy and Secure
● Up To 16 Transactions
● All Must Succeed or All Fail
● Guarantees Exchange of Goods
Algorand Atomic Transfers
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
● Transaction Execution Approval Language
○ The contract logic on Algorand are described with TEAL
○ Python Enabled Compiler (PyTEAL)
● Two Types Of Smart Contracts
○ Stateless - Used to Approve Spending Transactions
○ Stateful - Onchain Global and Local Storage
● Combinable with Other Algorand Technology
○ Atomic Transfers
○ Algorand Assets
○ Combine Stateless and Stateful Contracts
Algorand Smart Contracts
Smart Contract
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
TEAL - Transaction Execution Approval Language
● Bytecode based stack language
● Returns True or False (Positive Value Left on Stack)
● SDK Support
● Templates
● > 70 Opcodes
● Access to ASA/Algo Balances
● Read all Transactions in a Group
● Stateful - Global/Local Storage Calls
● Stateless - Signature Verification
● PyTEAL library to write in python
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Teal Stack Architecture
txn CloseRemainderTo
addr SOEI...
==
txn Receiver
addr SOEI...
==
&&
arg 0
len
int 32
==
&&
arg 0
sha256
byte base64 VeU...
==
&&
txn CloseRemainderTo
addr RFGE...
==
...
Program
uint64/[]byte
uint64/[]byte
uint64/[]byte
Stack
…(up to 1000)
0: uint64/[]byte
1: uint64/[]byte
2: uint64/[]byte
Scratch Space
...
255: uint64/[]byte
0: []byte
1: []byte
2: []byte
Args
(This txn only)
…(up to 255)
● Sender
● Fee
● FirstValid
● FirstValidTime
● LastValid
● Note
● Lease
● Receiver
● Amount
● CloseRemainderTo
● VotePK
● SelectionPK
● VoteFirst
● VoteLast
● VoteKeyDilution
● Type
● TypeEnum
● XferAsset
● AssetAmount
● AssetSender
● AssetReceiver
● AssetCloseTo
● GroupIndex
● TxID
Transaction(s)
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
TEAL Example
txn CloseRemainderTo
addr SOEI...
==
txn Receiver
addr SOEI...
==
&&
arg 0
len
int 32
==
&&
arg 0
sha256
byte base64 VeU...
==
&&
txn CloseRemainderTo
addr RFGE...
==
...
Program
CloseRemainderTo
uint64/[]byte
uint64/[]byte
…(up to 1000)
● Sender
● Fee
● FirstValid
● FirstValidTime
● LastValid
● Note
● Lease
● Receiver
● Amount
● CloseRemainderTo
● VotePK
● SelectionPK
● VoteFirst
● VoteLast
● VoteKeyDilution
● Type
● TypeEnum
● XferAsset
● AssetAmount
● AssetSender
● AssetReceiver
● AssetCloseTo
● GroupIndex
● TxID
Transaction(s)Push Transaction
CloseRemainderTo to Stack
Stack
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
TEAL Example
txn CloseRemainderTo
addr SOEI...
==
txn Receiver
addr SOEI...
==
&&
arg 0
len
int 32
==
&&
arg 0
sha256
byte base64 VeU...
==
&&
txn CloseRemainderTo
addr RFGE...
==
...
Program
Byte constant
CloseRemainderTo
uint64/[]byte
…(up to 1000)
● Sender
● Fee
● FirstValid
● FirstValidTime
● LastValid
● Note
● Lease
● Receiver
● Amount
● CloseRemainderTo
● VotePK
● SelectionPK
● VoteFirst
● VoteLast
● VoteKeyDilution
● Type
● TypeEnum
● XferAsset
● AssetAmount
● AssetSender
● AssetReceiver
● AssetCloseTo
● GroupIndex
● TxID
Transaction(s)
Convert address to byte constant and
push to the stack
Stack
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
TEAL Example
txn CloseRemainderTo
addr SOEI...
==
txn Receiver
addr SOEI...
==
&&
arg 0
len
int 32
==
&&
arg 0
sha256
byte base64 VeU...
==
&&
txn CloseRemainderTo
addr RFGE...
==
...
Program
1/0
uint64/[]byte
uint64/[]byte
…(up to 1000)
● Sender
● Fee
● FirstValid
● FirstValidTime
● LastValid
● Note
● Lease
● Receiver
● Amount
● CloseRemainderTo
● VotePK
● SelectionPK
● VoteFirst
● VoteLast
● VoteKeyDilution
● Type
● TypeEnum
● XferAsset
● AssetAmount
● AssetSender
● AssetReceiver
● AssetCloseTo
● GroupIndex
● TxID
Transaction(s)
Pops the top two values off the stack and replaces with
1 or 0 depending on if they were equal
Stack
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
PyTEAL -Python Library
Returns
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Video on TEAL
https://youtu.be/OWFRP9McBmk
40
• Youtube.com/algorand
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Algorand Stateless Smart Contracts
● Replaces Signing of Transactions
● Two Usage Modes
○ Logic Account: any transactions sent from this account will be verified by the
predefined logic
■ Escrow Style Accounts
■ Split Payments
■ HTLC Contracts
○ Logic Signature: any transactions signed with this signature will be verified by the
predefined logic (Delegated Authority)
■ Recurring Payments
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Stateful Smart Contracts
Smart Contract
Global State
Local State
Application Call Transactions
Trigger Smart Contract
A
A
B
C
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Combining Layer 1 Features
Smart
Contract
V
Voting Commission Account
Vote ForCandidate A
Voting Smart Contract
Global State
Increment Candidate
A Vote Total
Atomically Grouped
Spend Voting Token
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Combining Layer 1 Features
Stateful
Smart
Contract
Crowdfunding Smart Contract
Atomically Grouped
Payment from Escrow to User 1
Stateless
Smart
Contract
Crowdfunding Escrow Account
User 1 Claims Escrow Funds
Indexer V2
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Indexer V2
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Indexer V2
• The Indexer works as a standalone service that reads committed blocks
from the Algorand blockchain and maintains a database of transactions,
accounts and assets that are searchable and indexed.
• Search filters:
• Round
• Date
• Address (Sender|Receiver)
• Balances
• Signature type
• Transaction type
• Asset holdings
• Asset name
47
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Indexer V2
• Look up historical account data for a particular round
• Result pagination
• Enriched transaction and account data:
• Confirmation round (block containing the transaction)
• Confirmation time
• Signature type
• Asset ID
• Close amount when applicable
• Rewards
48
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Indexer V2
• Build your own https://developer.algorand.org/docs/run-
a-node/setup/indexer/
• Use a service:
• Purestake
• https://www.purestake.com/
49
Fast Catchup!
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Fast Catchup
Problem: Catching up from the genesis block extends the time to
productivity
Solution: Nodes create catchpoints, a secure and downloadable
ledger as of specific blocks
51
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Fast Catchup Key Design Principles and Differentiators
Simple single command during startup
Secure continuous and easily verifiable trust
visible across network
Optional users are free to catch up in their
desired fashion
52
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Fast Catchup Use Cases
Lowers the bar for developer environments
Participate in consensus in a matter of
minutes
53
ReKeying!
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
ReKey
Problem: Private key security policies without operational
overhead. To change a signing key for and account, create a new
account.
Solution: Keep a long running public address and change the
authorized private key as desired
55
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Key Design Principles and Differentiators
Simple a single, optional, new field in existing
transactions
Flexible change to a single key, a multi-sig key, or
a stateless smart contract
Unlimited change your authorized private key as
frequently as desired
56
Algorand Foundation
Reward Programs
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Algorand Foundation Reward Programs
• Developer Awards Program
https://algorand.foundation/developer-incentive-awards-program
• Algorand Developer Ambassador Rewards (DevAms)
https://algorand.foundation/dev-ambassadors
• Grant Programs
https://algorand.foundation/grants-program
• Ambassador Rewards Program
https://algorand.foundation/2020-ambassador-rewards-program
64
Developer Tools!
Developers, Developers, Developers!!
•SDKs: REST -JavaScript, Python, Java, Golang
•CLI Tools: Play with node from command line
•SandBox - Quick Start Setup
•Indexer V2: Rest API for querying data from Blockchain
•Wallet - Algorand Mobile Wallet Android/IOS
•AlgoSigner - Chrome Plugin for SigningTransactions (now
available)
•Community Supplied
• Explorers
• API Services
• Wallets
• SDKs
• Online TEAL Editor and debugger
• Algorand Studio Editor
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
AlgoSigner – Chrome Extension
https://chrome.google.com/webstore/detail/algosigner/kmmolakhbgdlpkjkcjkebenjheonagdm
67
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Developer Newsletter – signup at
https://developer.algorand.org/pages/newsletter/
68
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Algorand Networks
69
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Open API REST V2 Specifications
• Algod
https://github.com/algorand/go-
algorand/blob/master/daemon/algod/api/algod.oas2.json
https://github.com/algorand/go-
algorand/blob/master/daemon/algod/api/algod.oas3.yml
• KMD :
curl http://$(cat ~/node/data/kmd-v0.5/kmd.net)/swagger.json >
swaggerkmd.json
• Indexer
https://github.com/algorand/indexer/blob/develop/api/indexer.oas2.json
https://github.com/algorand/indexer/blob/develop/api/indexer.oas3.yml
71
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Nodes. https://developer.algorand.org/docs/build-apps/setup/
• Create and run your own
• Mac
• Ubuntu
• Other Linux Distros (Example - Raspberry Pi)
• Used to take several hours to sync, but now Fast catch-up is here!
• Purestake API service
• Indexed, Archived
• Can access from SDK code on platforms
that do not have nodes (Windows)
• Sandbox
• Docker
• Not for production
• Snapshot start from current node
• No sync time
74
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Sandbox – The quickest way to get going
Docker Instance
https://github.com/algorand/sandbox
75
https://medium.com/algorand/introducing-sandbox-the-quick-way-to-get-started-on-algorand-8082c2d18854
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
developer.algorand.org
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Start Building!
Developer..algorand.org
80
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
https://developer.algorand.org/solutions/
81
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
https://developer.algorand.org/articles/
82
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
https://developer.algorand.org/tutorials/
83
Community Resources
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Become An Algorand Ambassador
• Work directly with the Algorand team and
learn from the best in the field
• Host your own hackathon or developer
meetup to help others in your community
build on top of Algorand
• Connect with other developers from all
over the world who are also building on
Algorand
• Get the latest news and updates about
our platform before anyone else hears
about it
86
è Visit community.algorand.org
Contact Stephen Duignan
stephen@algorand.foundation
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Community
• Community Landing page
https://community.algorand.org/
• Community Blog
https://community.algorand.org/blog/
(send email to ecosystem@algorand.com to post)
• Community Events
https://community.algorand.org/events/#/list
87
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Community C# SDK
https://github.com/RileyGe/dotnet-algorand-sdk
88
Code Demos
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Userful Resources
● Developer Portal (Documentation and Tutorials):
https://developer.algorand.org/
● Forum: https://forum.algorand.org/
● GitHub: https://github.com/algorand
● Discord: https://discord.gg/YgPTCVk
● PowerPoint: https://bit.ly/3j2hWaj
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
ENTER TO WIN $100 Amazon Gift card
TODAY IN THIS SESSION!
Sign up for developer newsletter!
https://developer.algorand.org/pages/newsletter/
92
Summary
§ Blockchain Basics
§ Why Algorand?
§ Algorand Layer 1 Features
§ Algorand Foundation Reward Programs
§ Developer Tools!
§ Algorand BetaNet, TestNet, MainNet
§ Local Nodes and Standup Instances
§ APIs, SDKs and Command Line tools
§ Community Resources
§ Code Demos
And the winner is…
Please fill out Feedback on session…
https://www.surveymonkey.com/r/PBCJN6Z
• Click to edit Master text styles
• Second level
• Third level
• Fourth level
• Fifth level
Sign up Today!
95
Questions?

More Related Content

What's hot

Algorand Educate: Algorand Development Environment
Algorand Educate: Algorand Development EnvironmentAlgorand Educate: Algorand Development Environment
Algorand Educate: Algorand Development Environment
Vanessa Lošić
 
Building with Algorand 2.0, everything you need to know
Building with Algorand 2.0, everything you need to knowBuilding with Algorand 2.0, everything you need to know
Building with Algorand 2.0, everything you need to know
Russ Fustino
 
Understanding Algorand's smart contract language
Understanding Algorand's smart contract language   Understanding Algorand's smart contract language
Understanding Algorand's smart contract language
Vanessa Lošić
 
Algorand
AlgorandAlgorand
Algorand
Andrew Huang
 
ASA Encode
ASA EncodeASA Encode
ASA Encode
Vanessa Lošić
 
Diving into Algorand - Overview, Key Metrics & Future Possibilities
Diving into Algorand - Overview, Key Metrics & Future PossibilitiesDiving into Algorand - Overview, Key Metrics & Future Possibilities
Diving into Algorand - Overview, Key Metrics & Future Possibilities
intotheblock
 
Response cards k12 qt ntx lt
Response cards k12 qt ntx ltResponse cards k12 qt ntx lt
Response cards k12 qt ntx lt
William McIntosh
 
DevDay: Mike Hearn Keynote, R3
DevDay: Mike Hearn Keynote, R3DevDay: Mike Hearn Keynote, R3
DevDay: Mike Hearn Keynote, R3
R3
 
R3 Corda Simple Tutorial
R3 Corda Simple TutorialR3 Corda Simple Tutorial
R3 Corda Simple Tutorial
Eric Lee
 
Ibp technical introduction
Ibp technical introductionIbp technical introduction
Ibp technical introduction
LennartF
 
DevDay: Writing a Secure CorDapp, (almost) Everything You Didn't Know You Nee...
DevDay: Writing a Secure CorDapp, (almost) Everything You Didn't Know You Nee...DevDay: Writing a Secure CorDapp, (almost) Everything You Didn't Know You Nee...
DevDay: Writing a Secure CorDapp, (almost) Everything You Didn't Know You Nee...
R3
 

What's hot (11)

Algorand Educate: Algorand Development Environment
Algorand Educate: Algorand Development EnvironmentAlgorand Educate: Algorand Development Environment
Algorand Educate: Algorand Development Environment
 
Building with Algorand 2.0, everything you need to know
Building with Algorand 2.0, everything you need to knowBuilding with Algorand 2.0, everything you need to know
Building with Algorand 2.0, everything you need to know
 
Understanding Algorand's smart contract language
Understanding Algorand's smart contract language   Understanding Algorand's smart contract language
Understanding Algorand's smart contract language
 
Algorand
AlgorandAlgorand
Algorand
 
ASA Encode
ASA EncodeASA Encode
ASA Encode
 
Diving into Algorand - Overview, Key Metrics & Future Possibilities
Diving into Algorand - Overview, Key Metrics & Future PossibilitiesDiving into Algorand - Overview, Key Metrics & Future Possibilities
Diving into Algorand - Overview, Key Metrics & Future Possibilities
 
Response cards k12 qt ntx lt
Response cards k12 qt ntx ltResponse cards k12 qt ntx lt
Response cards k12 qt ntx lt
 
DevDay: Mike Hearn Keynote, R3
DevDay: Mike Hearn Keynote, R3DevDay: Mike Hearn Keynote, R3
DevDay: Mike Hearn Keynote, R3
 
R3 Corda Simple Tutorial
R3 Corda Simple TutorialR3 Corda Simple Tutorial
R3 Corda Simple Tutorial
 
Ibp technical introduction
Ibp technical introductionIbp technical introduction
Ibp technical introduction
 
DevDay: Writing a Secure CorDapp, (almost) Everything You Didn't Know You Nee...
DevDay: Writing a Secure CorDapp, (almost) Everything You Didn't Know You Nee...DevDay: Writing a Secure CorDapp, (almost) Everything You Didn't Know You Nee...
DevDay: Writing a Secure CorDapp, (almost) Everything You Didn't Know You Nee...
 

Similar to Algorand August Release

Algorand Development Environment
Algorand Development Environment Algorand Development Environment
Algorand Development Environment
Vanessa Lošić
 
Algorand Educate: Intro to Algorand
Algorand Educate: Intro to AlgorandAlgorand Educate: Intro to Algorand
Algorand Educate: Intro to Algorand
TinaBregovi
 
Algorand Technical Workshop 2021
Algorand Technical Workshop 2021Algorand Technical Workshop 2021
Algorand Technical Workshop 2021
DanielBohnemann
 
Build Blockchain dApps using JavaScript, Python and C - ATO.pdf
Build Blockchain dApps using JavaScript, Python and C - ATO.pdfBuild Blockchain dApps using JavaScript, Python and C - ATO.pdf
Build Blockchain dApps using JavaScript, Python and C - ATO.pdf
RussFustino
 
Serverless ddd
Serverless dddServerless ddd
Serverless ddd
Asher Sterkin
 
Design Like a Pro: Scripting Best Practices
Design Like a Pro: Scripting Best PracticesDesign Like a Pro: Scripting Best Practices
Design Like a Pro: Scripting Best Practices
Inductive Automation
 
Algorand Smart Contracts
Algorand Smart ContractsAlgorand Smart Contracts
Algorand Smart Contracts
ssusercc3bf81
 
Best practices to build secure smart contracts
Best practices to build secure smart contractsBest practices to build secure smart contracts
Best practices to build secure smart contracts
Gautam Anand
 
Design Like a Pro: Scripting Best Practices
Design Like a Pro: Scripting Best PracticesDesign Like a Pro: Scripting Best Practices
Design Like a Pro: Scripting Best Practices
Inductive Automation
 
Rider - Taking ReSharper out of Process
Rider - Taking ReSharper out of ProcessRider - Taking ReSharper out of Process
Rider - Taking ReSharper out of Process
citizenmatt
 
Sista: Improving Cog’s JIT performance
Sista: Improving Cog’s JIT performanceSista: Improving Cog’s JIT performance
Sista: Improving Cog’s JIT performance
ESUG
 
DevOpsDays Taipei 2019 - Mastering IaC the DevOps Way
DevOpsDays Taipei 2019 - Mastering IaC the DevOps WayDevOpsDays Taipei 2019 - Mastering IaC the DevOps Way
DevOpsDays Taipei 2019 - Mastering IaC the DevOps Way
smalltown
 
Fibo proof of concept for blockchain applications
Fibo proof of concept for blockchain applicationsFibo proof of concept for blockchain applications
Fibo proof of concept for blockchain applications
Mike Bennett
 
2020 and Beyond: Navigating Claris Transformations & Innovations Post-Pandemic
2020 and Beyond: Navigating Claris Transformations & Innovations Post-Pandemic2020 and Beyond: Navigating Claris Transformations & Innovations Post-Pandemic
2020 and Beyond: Navigating Claris Transformations & Innovations Post-Pandemic
DB Services
 
Ethereum-Cryptocurrency (All about Ethereum)
Ethereum-Cryptocurrency (All about Ethereum) Ethereum-Cryptocurrency (All about Ethereum)
Ethereum-Cryptocurrency (All about Ethereum)
عطاءالمنعم اثیل شیخ
 
From class to architecture
From class to architectureFrom class to architecture
From class to architecture
Marcin Hawraniak
 
Secure Developer Access at Decisiv
Secure Developer Access at DecisivSecure Developer Access at Decisiv
Secure Developer Access at Decisiv
Teleport
 
Clean pragmatic architecture @ devflix
Clean pragmatic architecture @ devflixClean pragmatic architecture @ devflix
Clean pragmatic architecture @ devflix
Victor Rentea
 
Streaming SQL for Data Engineers: The Next Big Thing? With Yaroslav Tkachenko...
Streaming SQL for Data Engineers: The Next Big Thing? With Yaroslav Tkachenko...Streaming SQL for Data Engineers: The Next Big Thing? With Yaroslav Tkachenko...
Streaming SQL for Data Engineers: The Next Big Thing? With Yaroslav Tkachenko...
HostedbyConfluent
 

Similar to Algorand August Release (20)

Algorand Development Environment
Algorand Development Environment Algorand Development Environment
Algorand Development Environment
 
Algorand Educate: Intro to Algorand
Algorand Educate: Intro to AlgorandAlgorand Educate: Intro to Algorand
Algorand Educate: Intro to Algorand
 
Algorand Technical Workshop 2021
Algorand Technical Workshop 2021Algorand Technical Workshop 2021
Algorand Technical Workshop 2021
 
Build Blockchain dApps using JavaScript, Python and C - ATO.pdf
Build Blockchain dApps using JavaScript, Python and C - ATO.pdfBuild Blockchain dApps using JavaScript, Python and C - ATO.pdf
Build Blockchain dApps using JavaScript, Python and C - ATO.pdf
 
Serverless ddd
Serverless dddServerless ddd
Serverless ddd
 
Design Like a Pro: Scripting Best Practices
Design Like a Pro: Scripting Best PracticesDesign Like a Pro: Scripting Best Practices
Design Like a Pro: Scripting Best Practices
 
Algorand Smart Contracts
Algorand Smart ContractsAlgorand Smart Contracts
Algorand Smart Contracts
 
Best practices to build secure smart contracts
Best practices to build secure smart contractsBest practices to build secure smart contracts
Best practices to build secure smart contracts
 
Design Like a Pro: Scripting Best Practices
Design Like a Pro: Scripting Best PracticesDesign Like a Pro: Scripting Best Practices
Design Like a Pro: Scripting Best Practices
 
Rider - Taking ReSharper out of Process
Rider - Taking ReSharper out of ProcessRider - Taking ReSharper out of Process
Rider - Taking ReSharper out of Process
 
Sista: Improving Cog’s JIT performance
Sista: Improving Cog’s JIT performanceSista: Improving Cog’s JIT performance
Sista: Improving Cog’s JIT performance
 
DevOpsDays Taipei 2019 - Mastering IaC the DevOps Way
DevOpsDays Taipei 2019 - Mastering IaC the DevOps WayDevOpsDays Taipei 2019 - Mastering IaC the DevOps Way
DevOpsDays Taipei 2019 - Mastering IaC the DevOps Way
 
Fibo proof of concept for blockchain applications
Fibo proof of concept for blockchain applicationsFibo proof of concept for blockchain applications
Fibo proof of concept for blockchain applications
 
2nd presantation
2nd presantation2nd presantation
2nd presantation
 
2020 and Beyond: Navigating Claris Transformations & Innovations Post-Pandemic
2020 and Beyond: Navigating Claris Transformations & Innovations Post-Pandemic2020 and Beyond: Navigating Claris Transformations & Innovations Post-Pandemic
2020 and Beyond: Navigating Claris Transformations & Innovations Post-Pandemic
 
Ethereum-Cryptocurrency (All about Ethereum)
Ethereum-Cryptocurrency (All about Ethereum) Ethereum-Cryptocurrency (All about Ethereum)
Ethereum-Cryptocurrency (All about Ethereum)
 
From class to architecture
From class to architectureFrom class to architecture
From class to architecture
 
Secure Developer Access at Decisiv
Secure Developer Access at DecisivSecure Developer Access at Decisiv
Secure Developer Access at Decisiv
 
Clean pragmatic architecture @ devflix
Clean pragmatic architecture @ devflixClean pragmatic architecture @ devflix
Clean pragmatic architecture @ devflix
 
Streaming SQL for Data Engineers: The Next Big Thing? With Yaroslav Tkachenko...
Streaming SQL for Data Engineers: The Next Big Thing? With Yaroslav Tkachenko...Streaming SQL for Data Engineers: The Next Big Thing? With Yaroslav Tkachenko...
Streaming SQL for Data Engineers: The Next Big Thing? With Yaroslav Tkachenko...
 

More from Russ Fustino

Introduction to Xamarin Forms
Introduction to Xamarin Forms Introduction to Xamarin Forms
Introduction to Xamarin Forms
Russ Fustino
 
Video Streaming
Video StreamingVideo Streaming
Video Streaming
Russ Fustino
 
Visual studio enterprise 2017 mobile by Russ Fustino
Visual studio enterprise 2017 mobile by Russ FustinoVisual studio enterprise 2017 mobile by Russ Fustino
Visual studio enterprise 2017 mobile by Russ Fustino
Russ Fustino
 
OutSystems: A more efficient way to build apps!
OutSystems: A more efficient way to build apps!OutSystems: A more efficient way to build apps!
OutSystems: A more efficient way to build apps!
Russ Fustino
 
Rock'in with Russ & Xamarin Forms (FBI Deck)
Rock'in with Russ & Xamarin Forms (FBI Deck)Rock'in with Russ & Xamarin Forms (FBI Deck)
Rock'in with Russ & Xamarin Forms (FBI Deck)
Russ Fustino
 
Implementing awesome crash reporting in production apps webcast
Implementing awesome crash reporting in production apps webcastImplementing awesome crash reporting in production apps webcast
Implementing awesome crash reporting in production apps webcast
Russ Fustino
 
Improving Your App Quality with Raygun Error Reporting
Improving Your App Quality with Raygun Error ReportingImproving Your App Quality with Raygun Error Reporting
Improving Your App Quality with Raygun Error Reporting
Russ Fustino
 
JavaScript for ASP.NET programmers (webcast) upload
JavaScript for ASP.NET programmers (webcast) uploadJavaScript for ASP.NET programmers (webcast) upload
JavaScript for ASP.NET programmers (webcast) upload
Russ Fustino
 

More from Russ Fustino (8)

Introduction to Xamarin Forms
Introduction to Xamarin Forms Introduction to Xamarin Forms
Introduction to Xamarin Forms
 
Video Streaming
Video StreamingVideo Streaming
Video Streaming
 
Visual studio enterprise 2017 mobile by Russ Fustino
Visual studio enterprise 2017 mobile by Russ FustinoVisual studio enterprise 2017 mobile by Russ Fustino
Visual studio enterprise 2017 mobile by Russ Fustino
 
OutSystems: A more efficient way to build apps!
OutSystems: A more efficient way to build apps!OutSystems: A more efficient way to build apps!
OutSystems: A more efficient way to build apps!
 
Rock'in with Russ & Xamarin Forms (FBI Deck)
Rock'in with Russ & Xamarin Forms (FBI Deck)Rock'in with Russ & Xamarin Forms (FBI Deck)
Rock'in with Russ & Xamarin Forms (FBI Deck)
 
Implementing awesome crash reporting in production apps webcast
Implementing awesome crash reporting in production apps webcastImplementing awesome crash reporting in production apps webcast
Implementing awesome crash reporting in production apps webcast
 
Improving Your App Quality with Raygun Error Reporting
Improving Your App Quality with Raygun Error ReportingImproving Your App Quality with Raygun Error Reporting
Improving Your App Quality with Raygun Error Reporting
 
JavaScript for ASP.NET programmers (webcast) upload
JavaScript for ASP.NET programmers (webcast) uploadJavaScript for ASP.NET programmers (webcast) upload
JavaScript for ASP.NET programmers (webcast) upload
 

Recently uploaded

Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604
Fermin Galan
 
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing SuiteAI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
Google
 
openEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain SecurityopenEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain Security
Shane Coughlan
 
Fundamentals of Programming and Language Processors
Fundamentals of Programming and Language ProcessorsFundamentals of Programming and Language Processors
Fundamentals of Programming and Language Processors
Rakesh Kumar R
 
Artificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension FunctionsArtificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension Functions
Octavian Nadolu
 
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdfVitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke
 
May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
Adele Miller
 
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Łukasz Chruściel
 
Enterprise Resource Planning System in Telangana
Enterprise Resource Planning System in TelanganaEnterprise Resource Planning System in Telangana
Enterprise Resource Planning System in Telangana
NYGGS Automation Suite
 
Graspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code AnalysisGraspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code Analysis
Aftab Hussain
 
GraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph TechnologyGraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph Technology
Neo4j
 
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI AppAI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
Google
 
AI Genie Review: World’s First Open AI WordPress Website Creator
AI Genie Review: World’s First Open AI WordPress Website CreatorAI Genie Review: World’s First Open AI WordPress Website Creator
AI Genie Review: World’s First Open AI WordPress Website Creator
Google
 
APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)
Boni García
 
Launch Your Streaming Platforms in Minutes
Launch Your Streaming Platforms in MinutesLaunch Your Streaming Platforms in Minutes
Launch Your Streaming Platforms in Minutes
Roshan Dwivedi
 
A Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of PassageA Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of Passage
Philip Schwarz
 
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
Alina Yurenko
 
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
Łukasz Chruściel
 
Using Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional SafetyUsing Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional Safety
Ayan Halder
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 

Recently uploaded (20)

Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604
 
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing SuiteAI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
 
openEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain SecurityopenEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain Security
 
Fundamentals of Programming and Language Processors
Fundamentals of Programming and Language ProcessorsFundamentals of Programming and Language Processors
Fundamentals of Programming and Language Processors
 
Artificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension FunctionsArtificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension Functions
 
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdfVitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdf
 
May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
 
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
 
Enterprise Resource Planning System in Telangana
Enterprise Resource Planning System in TelanganaEnterprise Resource Planning System in Telangana
Enterprise Resource Planning System in Telangana
 
Graspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code AnalysisGraspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code Analysis
 
GraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph TechnologyGraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph Technology
 
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI AppAI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
 
AI Genie Review: World’s First Open AI WordPress Website Creator
AI Genie Review: World’s First Open AI WordPress Website CreatorAI Genie Review: World’s First Open AI WordPress Website Creator
AI Genie Review: World’s First Open AI WordPress Website Creator
 
APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)
 
Launch Your Streaming Platforms in Minutes
Launch Your Streaming Platforms in MinutesLaunch Your Streaming Platforms in Minutes
Launch Your Streaming Platforms in Minutes
 
A Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of PassageA Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of Passage
 
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
 
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
 
Using Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional SafetyUsing Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional Safety
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 

Algorand August Release

  • 2. The documents and statements presented on (or directly accessible from) this presentation may contain forward-looking statements. These statements relate to future events or Algorand Network's future performance, financial or otherwise. Any statements that are not statements of historical fact (including without limitation statements to the effect that the Company or its management “believes”, “expects”, “anticipates”, “plans” (and similar expressions) should be considered forward looking statements. There are a number of important factors that could cause Algorand Network’s actual results and outcomes to differ materially from those indicated by the forward looking statements. The Algorand or any other party contained within disclaim any obligation to update any forward looking statement. Safe Harbor
  • 3. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Experience with development and blockchain poll 4
  • 4.
  • 5. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level ENTER TO WIN $100 Amazon Gift card TODAY IN THIS SESSION! Sign up for developer newsletter! https://developer.algorand.org/pages/newsletter/ 9
  • 6. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Get the goods!!! Developer site: http://developer.algorand.org SDKs: https://github.com/algorand PowerPoint: Code: https://github.com/algorand-devrel/hackathon 10
  • 7. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Problems with Blockchains • Say I have a long running public address and then I want to change the authorized private key? • I have an account signing my transactions, but I want to change it to Multisig or Logic Sig? How? • I create a node and can not use it for days. Catching up from the genesis block takes forever! • The cost and speed of other smart contracts make business models hard, UX spotty and tough to implement • How do I do searches on the Blockchain? Quick! 12
  • 8. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Developers, Developers, Developers!!! • 200 - CareerBuilder • 1800 - Monster • 4600 – Dice • * The total number of Blockchain developers in late 2018 was estimated at around 105,000. [source paybis and dappros ] 13
  • 9. § Why Algorand? § Algorand Layer 1 Features § Fast Catchup § ReKeying § Indexer V2 § Algorand Foundation Reward Programs § Developer Tools! § Community Resources § Code Demos
  • 11. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Why Algorand Pure Proof of Stake Consensus Efficient Blockchain: Scales to billions of users Enterprise Speed: 1000 TPS, < 5s Block Times Instant Finality: There are no soft forks. Cost Effective: < $0.001 USD cost per transaction
  • 12. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Pure Proof of Stake Consensus ü Public and Permissionless ü All users can participate in consensus ü Blocks are confirmed by voting ü Every token carries the same voting power ü No need to delegate or bond ü Minimal compute required
  • 13. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Technical Innovation Continuing to Drive Adoption
  • 14. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Year 1 26
  • 15. Algorand Layer 1 Features
  • 16. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Algorand Standard Assets (ASA) Algorand Smart Contracts (ASC1) Atomic Transactions Algorand Layer 1 Features Rekeying Algorand Accounts
  • 17. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Algorand Accounts Smart Contract Standard Account Multisig Account Logic Account
  • 18. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Rekeying Accounts Authorization Public Address Smart Contract
  • 19. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level ● Issue Layer 1 Native Token (NFT/FT) ○ Native Like the Algo ○ Create in Minutes ○ Require no on-chain code ● An administrator can ○ Mint and Burn units ○ Freeze Accounts ○ Revoke an Asset ○ Delegate ● Asset Spam Protection ○ Accounts Option In to ASA ● Quick Demo Algodesk.io Algorand Standard Assets (ASA) T Block Block Block
  • 20. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level ● Native Function ○ Atomic transfers on Algorand is a native function instead of implemented with 3rd party contracts (No need for HTLC or notary) ● Easy and Secure ● Up To 16 Transactions ● All Must Succeed or All Fail ● Guarantees Exchange of Goods Algorand Atomic Transfers
  • 21. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level ● Transaction Execution Approval Language ○ The contract logic on Algorand are described with TEAL ○ Python Enabled Compiler (PyTEAL) ● Two Types Of Smart Contracts ○ Stateless - Used to Approve Spending Transactions ○ Stateful - Onchain Global and Local Storage ● Combinable with Other Algorand Technology ○ Atomic Transfers ○ Algorand Assets ○ Combine Stateless and Stateful Contracts Algorand Smart Contracts Smart Contract
  • 22. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level TEAL - Transaction Execution Approval Language ● Bytecode based stack language ● Returns True or False (Positive Value Left on Stack) ● SDK Support ● Templates ● > 70 Opcodes ● Access to ASA/Algo Balances ● Read all Transactions in a Group ● Stateful - Global/Local Storage Calls ● Stateless - Signature Verification ● PyTEAL library to write in python
  • 23. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Teal Stack Architecture txn CloseRemainderTo addr SOEI... == txn Receiver addr SOEI... == && arg 0 len int 32 == && arg 0 sha256 byte base64 VeU... == && txn CloseRemainderTo addr RFGE... == ... Program uint64/[]byte uint64/[]byte uint64/[]byte Stack …(up to 1000) 0: uint64/[]byte 1: uint64/[]byte 2: uint64/[]byte Scratch Space ... 255: uint64/[]byte 0: []byte 1: []byte 2: []byte Args (This txn only) …(up to 255) ● Sender ● Fee ● FirstValid ● FirstValidTime ● LastValid ● Note ● Lease ● Receiver ● Amount ● CloseRemainderTo ● VotePK ● SelectionPK ● VoteFirst ● VoteLast ● VoteKeyDilution ● Type ● TypeEnum ● XferAsset ● AssetAmount ● AssetSender ● AssetReceiver ● AssetCloseTo ● GroupIndex ● TxID Transaction(s)
  • 24. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level TEAL Example txn CloseRemainderTo addr SOEI... == txn Receiver addr SOEI... == && arg 0 len int 32 == && arg 0 sha256 byte base64 VeU... == && txn CloseRemainderTo addr RFGE... == ... Program CloseRemainderTo uint64/[]byte uint64/[]byte …(up to 1000) ● Sender ● Fee ● FirstValid ● FirstValidTime ● LastValid ● Note ● Lease ● Receiver ● Amount ● CloseRemainderTo ● VotePK ● SelectionPK ● VoteFirst ● VoteLast ● VoteKeyDilution ● Type ● TypeEnum ● XferAsset ● AssetAmount ● AssetSender ● AssetReceiver ● AssetCloseTo ● GroupIndex ● TxID Transaction(s)Push Transaction CloseRemainderTo to Stack Stack
  • 25. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level TEAL Example txn CloseRemainderTo addr SOEI... == txn Receiver addr SOEI... == && arg 0 len int 32 == && arg 0 sha256 byte base64 VeU... == && txn CloseRemainderTo addr RFGE... == ... Program Byte constant CloseRemainderTo uint64/[]byte …(up to 1000) ● Sender ● Fee ● FirstValid ● FirstValidTime ● LastValid ● Note ● Lease ● Receiver ● Amount ● CloseRemainderTo ● VotePK ● SelectionPK ● VoteFirst ● VoteLast ● VoteKeyDilution ● Type ● TypeEnum ● XferAsset ● AssetAmount ● AssetSender ● AssetReceiver ● AssetCloseTo ● GroupIndex ● TxID Transaction(s) Convert address to byte constant and push to the stack Stack
  • 26. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level TEAL Example txn CloseRemainderTo addr SOEI... == txn Receiver addr SOEI... == && arg 0 len int 32 == && arg 0 sha256 byte base64 VeU... == && txn CloseRemainderTo addr RFGE... == ... Program 1/0 uint64/[]byte uint64/[]byte …(up to 1000) ● Sender ● Fee ● FirstValid ● FirstValidTime ● LastValid ● Note ● Lease ● Receiver ● Amount ● CloseRemainderTo ● VotePK ● SelectionPK ● VoteFirst ● VoteLast ● VoteKeyDilution ● Type ● TypeEnum ● XferAsset ● AssetAmount ● AssetSender ● AssetReceiver ● AssetCloseTo ● GroupIndex ● TxID Transaction(s) Pops the top two values off the stack and replaces with 1 or 0 depending on if they were equal Stack
  • 27. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level PyTEAL -Python Library Returns
  • 28. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Video on TEAL https://youtu.be/OWFRP9McBmk 40 • Youtube.com/algorand
  • 29. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Algorand Stateless Smart Contracts ● Replaces Signing of Transactions ● Two Usage Modes ○ Logic Account: any transactions sent from this account will be verified by the predefined logic ■ Escrow Style Accounts ■ Split Payments ■ HTLC Contracts ○ Logic Signature: any transactions signed with this signature will be verified by the predefined logic (Delegated Authority) ■ Recurring Payments
  • 30. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Stateful Smart Contracts Smart Contract Global State Local State Application Call Transactions Trigger Smart Contract A A B C
  • 31. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Combining Layer 1 Features Smart Contract V Voting Commission Account Vote ForCandidate A Voting Smart Contract Global State Increment Candidate A Vote Total Atomically Grouped Spend Voting Token
  • 32. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Combining Layer 1 Features Stateful Smart Contract Crowdfunding Smart Contract Atomically Grouped Payment from Escrow to User 1 Stateless Smart Contract Crowdfunding Escrow Account User 1 Claims Escrow Funds
  • 34. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Indexer V2
  • 35. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Indexer V2 • The Indexer works as a standalone service that reads committed blocks from the Algorand blockchain and maintains a database of transactions, accounts and assets that are searchable and indexed. • Search filters: • Round • Date • Address (Sender|Receiver) • Balances • Signature type • Transaction type • Asset holdings • Asset name 47
  • 36. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Indexer V2 • Look up historical account data for a particular round • Result pagination • Enriched transaction and account data: • Confirmation round (block containing the transaction) • Confirmation time • Signature type • Asset ID • Close amount when applicable • Rewards 48
  • 37. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Indexer V2 • Build your own https://developer.algorand.org/docs/run- a-node/setup/indexer/ • Use a service: • Purestake • https://www.purestake.com/ 49
  • 39. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Fast Catchup Problem: Catching up from the genesis block extends the time to productivity Solution: Nodes create catchpoints, a secure and downloadable ledger as of specific blocks 51
  • 40. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Fast Catchup Key Design Principles and Differentiators Simple single command during startup Secure continuous and easily verifiable trust visible across network Optional users are free to catch up in their desired fashion 52
  • 41. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Fast Catchup Use Cases Lowers the bar for developer environments Participate in consensus in a matter of minutes 53
  • 43. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level ReKey Problem: Private key security policies without operational overhead. To change a signing key for and account, create a new account. Solution: Keep a long running public address and change the authorized private key as desired 55
  • 44. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Key Design Principles and Differentiators Simple a single, optional, new field in existing transactions Flexible change to a single key, a multi-sig key, or a stateless smart contract Unlimited change your authorized private key as frequently as desired 56
  • 46. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Algorand Foundation Reward Programs • Developer Awards Program https://algorand.foundation/developer-incentive-awards-program • Algorand Developer Ambassador Rewards (DevAms) https://algorand.foundation/dev-ambassadors • Grant Programs https://algorand.foundation/grants-program • Ambassador Rewards Program https://algorand.foundation/2020-ambassador-rewards-program 64
  • 48. Developers, Developers, Developers!! •SDKs: REST -JavaScript, Python, Java, Golang •CLI Tools: Play with node from command line •SandBox - Quick Start Setup •Indexer V2: Rest API for querying data from Blockchain •Wallet - Algorand Mobile Wallet Android/IOS •AlgoSigner - Chrome Plugin for SigningTransactions (now available) •Community Supplied • Explorers • API Services • Wallets • SDKs • Online TEAL Editor and debugger • Algorand Studio Editor
  • 49. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level AlgoSigner – Chrome Extension https://chrome.google.com/webstore/detail/algosigner/kmmolakhbgdlpkjkcjkebenjheonagdm 67
  • 50. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Developer Newsletter – signup at https://developer.algorand.org/pages/newsletter/ 68
  • 51. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Algorand Networks 69
  • 52. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Open API REST V2 Specifications • Algod https://github.com/algorand/go- algorand/blob/master/daemon/algod/api/algod.oas2.json https://github.com/algorand/go- algorand/blob/master/daemon/algod/api/algod.oas3.yml • KMD : curl http://$(cat ~/node/data/kmd-v0.5/kmd.net)/swagger.json > swaggerkmd.json • Indexer https://github.com/algorand/indexer/blob/develop/api/indexer.oas2.json https://github.com/algorand/indexer/blob/develop/api/indexer.oas3.yml 71
  • 53. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Nodes. https://developer.algorand.org/docs/build-apps/setup/ • Create and run your own • Mac • Ubuntu • Other Linux Distros (Example - Raspberry Pi) • Used to take several hours to sync, but now Fast catch-up is here! • Purestake API service • Indexed, Archived • Can access from SDK code on platforms that do not have nodes (Windows) • Sandbox • Docker • Not for production • Snapshot start from current node • No sync time 74
  • 54. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Sandbox – The quickest way to get going Docker Instance https://github.com/algorand/sandbox 75 https://medium.com/algorand/introducing-sandbox-the-quick-way-to-get-started-on-algorand-8082c2d18854
  • 55. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level developer.algorand.org
  • 56. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Start Building! Developer..algorand.org 80
  • 57. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level https://developer.algorand.org/solutions/ 81
  • 58. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level https://developer.algorand.org/articles/ 82
  • 59. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level https://developer.algorand.org/tutorials/ 83
  • 61. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Become An Algorand Ambassador • Work directly with the Algorand team and learn from the best in the field • Host your own hackathon or developer meetup to help others in your community build on top of Algorand • Connect with other developers from all over the world who are also building on Algorand • Get the latest news and updates about our platform before anyone else hears about it 86 è Visit community.algorand.org Contact Stephen Duignan stephen@algorand.foundation
  • 62. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Community • Community Landing page https://community.algorand.org/ • Community Blog https://community.algorand.org/blog/ (send email to ecosystem@algorand.com to post) • Community Events https://community.algorand.org/events/#/list 87
  • 63. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Community C# SDK https://github.com/RileyGe/dotnet-algorand-sdk 88
  • 65. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Userful Resources ● Developer Portal (Documentation and Tutorials): https://developer.algorand.org/ ● Forum: https://forum.algorand.org/ ● GitHub: https://github.com/algorand ● Discord: https://discord.gg/YgPTCVk ● PowerPoint: https://bit.ly/3j2hWaj
  • 66. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level ENTER TO WIN $100 Amazon Gift card TODAY IN THIS SESSION! Sign up for developer newsletter! https://developer.algorand.org/pages/newsletter/ 92
  • 67. Summary § Blockchain Basics § Why Algorand? § Algorand Layer 1 Features § Algorand Foundation Reward Programs § Developer Tools! § Algorand BetaNet, TestNet, MainNet § Local Nodes and Standup Instances § APIs, SDKs and Command Line tools § Community Resources § Code Demos
  • 68. And the winner is… Please fill out Feedback on session… https://www.surveymonkey.com/r/PBCJN6Z
  • 69. • Click to edit Master text styles • Second level • Third level • Fourth level • Fifth level Sign up Today! 95