SlideShare a Scribd company logo
1 of 53
Download to read offline
Build Blockchain dApps using
JavaScript, Python and C#
Russ Fustino
Developer Advocate
russ@algorand.com
https://russ.algo.xyz/
No more assembly language!
Russ Fustino
Developer Advocate
russ@algorand.com
https://russ.algo.xyz/
3
Building
a dApp
is hard…
▪ Where do I begin?
▪ Writing a Smart Contract seems
difficult
▪ Transactions costs can be
prohibitive
▪ What are dApps anyway?
▪ What skill set do I need to be a
blockchain developer?
▪ What types of problems does
blockchain solve?
4
Agenda ▪ Use Cases
▪ Intro to Algorand
▪ Writing Smart Contracts
o C# - Algorand for Visual
Studio Extension
o JavaScript – Reach
o Python - Beaker
Open source:
https://github.com/algorand-devrel
https://github.com/algorand/go-algorand
5
Algorand Blockchain = Immutable Decentralized Ledger
Blocks
Transactions
Accounts
Assets Applications
6
What Types of Problems Can I Solve with Blockchain?
Problem: Farmers can not get paid for grain until they sell it.
Agrotoken – Grain-backed, tradable digital assets
“We transform grains into a digital asset, to store or exchange for supplies, services and other assets.”
https://agrotoken.io/
7
Problem: How to get
funds to people in need?
Disaster Relief
https://www.aid.technology/kokua
8
More Problems
Blockchain Solves …
Tamper-proof charity organizations :
o China Ministry using blockchain
− improve transparency of social
services
− tracking of donations / audit trail
Voting - tamper-proof
Healthcare - global access / medical records
Automotive
o supply chain visibility - vehicle
integrity
o details of wear and tear of spare
parts, sensors writing to blockchain
9
SIAE - Società Italiana
degli Autori ed Editori
(Italian Society of Authors and
Publishers)
Digital Copyright Assets using NFTs
(Non-Fungible Tokens)
• 4 million NFTs on Algorand for 95,000+ creators
• Copyrights for the first time - represented as
digital assets
• Decentralized and Transparent public blockchain
• Global and Open Infrastructure
• End-to-end Protection
• The Future
https://www.algorand.com/resources/news/siae-launches-4-million-nfts-on-algorand-for-creators
10
Algorand Layer 1 Features
▪ Algorand Accounts
▪ Algorand Standard Assets
(ASA)
▪ Atomic Transactions
▪ Algorand Smart Contracts
▪ Reporting with Indexer
Developer Docs:
https://developer.algorand.org
11
Algorand Standard
Assets (ASA)
FUNGIBLE TOKENS
• In Game Points
• Stable Coins
• Loyalty Points
• System Credits
• Cryptocurrencies
RESTRICTED
FUNGIBLE
TOKENS
• Securities
• Gov't Issued Fiat
NON-FUNGIBLE TOKENS
• In Game Items
• Supply Chain
• Real Estate
• Identity
• Certifications
• Collectables
RESTRICTED NON-
FUNGIBLE TOKENS
• Real Estate
• Ownership Registries
• Regulatory Certifications
12
Blockchain wastes
energy?
• Some of them do – proof of work
protocols vs. proof of stake
• Algorand is Carbon Negative
13
Blockchain
Transactions are
Expensive?
▪ Some blockchains range up to
$2000+ per transaction
o The average price per transaction
on the Ethereum blockchain was
$15, compared to fees during peak
traffic last fall as high as a few
hundred dollars. *
▪ Algorand is 1/20th of a cent
* https://www.fool.com/the-ascent/cryptocurrency/articles/ethereum-transaction-fees-hit-6-month-low/
14
Blockchain
Transactions are Slow?
▪ In most cases, 1-1.5 hours per
transaction on Bitcoin
▪ 12-14 seconds to mine one
Ethereum block
▪ Algorand has instant
transaction finality and is under
4 seconds for block generation
15
What are Salaries
Like? And the
Opportunities?
The entry level salary of a blockchain
developer is $115,000
7 percent of developer positions now have
blockchain requirements
Blockchain Developer
Developer
16
Global Spending on Blockchain Solutions
Blockchain development is poised to enter our technical lexicon in the same way
“client-server programming” or “asynchronous programming” have.
17
Blockchain Salaries Today!
https://survey.stackoverflow.co/2022/#salary-united-states
18
Writing smart contracts are considered complex?
▪ Developers often need a year of training to before safely handling state.
▪ Technology changes fast.
▪ State management within a contract involves...
o Learning a new (lower-level) language like TEAL or Solidity.
o Developing a skill set which is only applicable to the protocol/blockchain that
language supports.
o Limitations unique to each cryptographic protocol.
▪ Algorand’s ecosystem is booming and has great developer tools that make
writing dApps (Decentralized Apps) easy. To be covered soon.
19
Intro to Algorand
20
Algorand Blockchain Pure Proof-of-Stake Protocol
20
TRANSACTION
CERTAINTY
Fueling Advances in
Powerful Real-World
Applications
TRUE
SCALABILITY
ENERGY
EFFICIENCY
TECHNICAL
FLEXIBILITY
TRUE
SECURITY
COST EFFICIENCY
INFRASTRUCTURE
LONGEVITY
PLATFORM
EXTENSIBILITY
6000 TPS < 3.5s Block Times
21
DeFi is exploding – Stable Coins
Over 3 Billion in circulation.
22
Decentralized Exchanges - DEX
23
FIFA announces
partnership with Algorand!
• World football’s governing body
confirms collaboration with green
blockchain technology company
Algorand
• Algorand will become the official
blockchain platform of FIFA
• Partnership announced by FIFA
President Gianni Infantino and
Algorand founder Silvio Micali
https://twitter.com/Algorand/status/15212
66776276803585
24
FIFA NFT collectibles launched!
https://collect.fifa.com/
25
Sandbox
+ = sandbox
• Clone https://github.com/algorand/sandbox
• Defaults to Private Network (includes indexer) ./sandbox up
• TestNet use: ./sandbox up TestNet
(BetaNet, TestNet and MainNet are all supported)
26
Ecosystem Tools and Projects
https://developer.algorand.org/ecosystem-projects/
27
Writing Smart
Contracts
1. Algorand for Visual Studio (C# .NET)
2. Reach JavaScript Python
3. Beaker - Python
28
Algorand for
Visual Studio Extension C#
29
Installation
30
Build Web, Mobile, Console
31
Demo - File | New Project | Algorand Maui Solution
32
Demo - File | New Project | Algorand Web App
33
.NET Resources
▪ Algorand for Visual Studio Extension
https://github.com/FrankSzendzielarz/AlgorandVisualStudio
▪ .NET SDK
https://github.com/FrankSzendzielarz/dotnet-algorand-sdk
▪ NuGet package:
https://www.nuget.org/packages/Algorand2
34
Reach - JavaScript
35
What is Reach?
• Program
• High-Level Language
• Looks and feels like JavaScript
• Compile
• Interoperable with Just a Configuration Change
• Mathematically Guarantees Safety
• Outputs the Entire App (Not just Smart Contract)
• Deploy
• Launches Appropriate Node- Multiple Blockchains
• Runs Test Simulation
36
Reach Architecture
Developer Docs: https://docs.reach.sh/
37
Build with Reach Docs
▪ https://developer.algorand.org/docs/get-started/dapps/reach/
38
Using Wallet Connect with Reach Tutorial
Tutorial: https://developer.algorand.org/tutorials/using-walletconnect-with-reach-in-an-rsvp-system
39
Morra Game Solution Using Reach
https://developer.algorand.org/solutions/morra-game-using-reach/
40
Demo - Morra Game Verificatio
41
Beaker - Python
42
Web2 App Architecture
Frontend Web Server Database
43
Algorand SDK
Frontend Web Server
Database
Algorand dApp Architecture
Algorand Smart contract
AVM
Algorand SDK
Smart contract
44
Frontend Web Server
Database
Algorand Dapp Architecture
Algorand
Algorand SDK
Smart contract
AVM
Smart contract
Algorand SDK
Smart contract
45
What is Beaker?
Python smart contract
framework that improves:
● Code Organization
● Deployment / Interaction
● Debugging
In short, it handles all the heavy
lifting for you
Beaker is a Python framework for building Smart Contracts
on Algorand using PyTeal.
46
Demo - Beaker
https://github.com/algorand-devrel/beaker-calculator
47
Packages to Install
● Sandbox
● Pyteal
● Python Algorand SDK
● Beaker
git clone https://github.com/algorand/sandbox.git
48
Beaker Starter Kit
1. Launch Sandbox
2. Create Virtual Environment
3. Install all packages using
requirements.txt
python3 venv venv
source ./venv/bin/activate
pip install -r requirements.txt
./sandbox up dev
https://github.com/algorand-devrel/beaker-starter-kit
49
Homework
Beaker-TS
Beaker Starter Kit
https://github.com/algorand-devrel/beaker-ts
https://github.com/algorand-devrel/beaker-starter-kit
50
Resources
Discord
Server
Developer
Portal
https://discord.gg/YgPTCVk
https://developer.algorand.org
51
Code
Beaker:
Beaker Calculator
https://github.com/algorand-devrel/beaker-calculator
Beaker
https://github.com/algorand-devrel/beaker
Beaker Starter Kit
https://github.com/algorand-devrel/beaker-starter-kit
Beaker-TS
https://github.com/algorand-devrel/beaker-ts
Docs
http://beaker.algo.xyz
Auction Beaker-TS
https://github.com/algorand-devrel/beaker-auction/blob/master/web/src/index.ts
Reach: https://github.com/algorand-devrel/Walletconnect-Reach
Algorand for Visual Studio Extension:
https://github.com/FrankSzendzielarz/AlgorandVisualStudio
52
Summary ▪ Use Cases
▪ Intro to Algorand
▪ Writing Smart Contracts
o C# - Algorand for Visual
Studio Extension
o JavaScript – Reach
o Python - Beaker
PowerPoint: https://bit.ly/3TQzh92
Build Blockchain dApps using JavaScript, Python and C - ATO.pdf

More Related Content

Similar to Build Blockchain dApps using JavaScript, Python and C - ATO.pdf

Blockchain, Hyperledger and the Oracle Blockchain Platform
Blockchain, Hyperledger and the Oracle Blockchain PlatformBlockchain, Hyperledger and the Oracle Blockchain Platform
Blockchain, Hyperledger and the Oracle Blockchain PlatformJuarez Junior
 
Blockchain for Java Developers - Cloud Conference Day
Blockchain for Java Developers - Cloud Conference DayBlockchain for Java Developers - Cloud Conference Day
Blockchain for Java Developers - Cloud Conference DayJuarez Junior
 
How to Build a Decentralized Blockchain App with the Oracle Blockchain Platform
How to Build a Decentralized BlockchainApp with the Oracle Blockchain PlatformHow to Build a Decentralized BlockchainApp with the Oracle Blockchain Platform
How to Build a Decentralized Blockchain App with the Oracle Blockchain PlatformJuarez Junior
 
5 Questions Answered About Algorand - Here’s How to buy Algo in Canada!
5 Questions Answered About Algorand - Here’s How to buy Algo in Canada!5 Questions Answered About Algorand - Here’s How to buy Algo in Canada!
5 Questions Answered About Algorand - Here’s How to buy Algo in Canada!Bitcoin Wallet Canada
 
Wwc developing hyperledger applications v4
Wwc  developing hyperledger applications v4Wwc  developing hyperledger applications v4
Wwc developing hyperledger applications v4LennartF
 
Get the Exact Identity Solution You Need - In the Cloud - Overview
Get the Exact Identity Solution You Need - In the Cloud - OverviewGet the Exact Identity Solution You Need - In the Cloud - Overview
Get the Exact Identity Solution You Need - In the Cloud - OverviewForgeRock
 
blockchain workshop - hyperledger and oabcs - technical
blockchain workshop - hyperledger and oabcs - technicalblockchain workshop - hyperledger and oabcs - technical
blockchain workshop - hyperledger and oabcs - technicalJuarez Junior
 
Hyperledger Fabric - Blockchain for the Enterprise - FOSDEM 20190203
Hyperledger Fabric - Blockchain for the Enterprise - FOSDEM 20190203Hyperledger Fabric - Blockchain for the Enterprise - FOSDEM 20190203
Hyperledger Fabric - Blockchain for the Enterprise - FOSDEM 20190203Arnaud Le Hors
 
Wwc developing hyperledger applications v4
Wwc  developing hyperledger applications v4Wwc  developing hyperledger applications v4
Wwc developing hyperledger applications v4LennartF
 
Wwc developing hyperledger applications v2
Wwc  developing hyperledger applications v2Wwc  developing hyperledger applications v2
Wwc developing hyperledger applications v2LennartF
 
Introducing flow the new blockchain for open worlds
Introducing flow  the new blockchain for open worldsIntroducing flow  the new blockchain for open worlds
Introducing flow the new blockchain for open worldsBlockchain Council
 
Do It Yourself :: Web App - Web Api
Do It Yourself :: Web App - Web ApiDo It Yourself :: Web App - Web Api
Do It Yourself :: Web App - Web ApiHarish Kannarao
 
Hyperledger Composer Update 2017-04-05
Hyperledger Composer Update 2017-04-05Hyperledger Composer Update 2017-04-05
Hyperledger Composer Update 2017-04-05Dan Selman
 
The Story of SNCF Connect - biggest Flutter app in Europe (@FlutterHeroes 2023)
The Story of SNCF Connect - biggest Flutter app in Europe (@FlutterHeroes 2023)The Story of SNCF Connect - biggest Flutter app in Europe (@FlutterHeroes 2023)
The Story of SNCF Connect - biggest Flutter app in Europe (@FlutterHeroes 2023)François
 
A complementary currency toolkit in Clojure - Aspasia Beneti - Codemotion Ams...
A complementary currency toolkit in Clojure - Aspasia Beneti - Codemotion Ams...A complementary currency toolkit in Clojure - Aspasia Beneti - Codemotion Ams...
A complementary currency toolkit in Clojure - Aspasia Beneti - Codemotion Ams...Codemotion
 
Cloud-native Gerrit Code Review
Cloud-native Gerrit Code ReviewCloud-native Gerrit Code Review
Cloud-native Gerrit Code ReviewLuca Milanesio
 
Hyperledger community update February 2018
Hyperledger  community update   February 2018Hyperledger  community update   February 2018
Hyperledger community update February 2018Christopher Ferris
 
Get Ready for Coinbase Node
Get Ready for Coinbase NodeGet Ready for Coinbase Node
Get Ready for Coinbase NodeTinaBregovi
 

Similar to Build Blockchain dApps using JavaScript, Python and C - ATO.pdf (20)

Blockchain, Hyperledger and the Oracle Blockchain Platform
Blockchain, Hyperledger and the Oracle Blockchain PlatformBlockchain, Hyperledger and the Oracle Blockchain Platform
Blockchain, Hyperledger and the Oracle Blockchain Platform
 
Blockchain for Java Developers - Cloud Conference Day
Blockchain for Java Developers - Cloud Conference DayBlockchain for Java Developers - Cloud Conference Day
Blockchain for Java Developers - Cloud Conference Day
 
How to Build a Decentralized Blockchain App with the Oracle Blockchain Platform
How to Build a Decentralized BlockchainApp with the Oracle Blockchain PlatformHow to Build a Decentralized BlockchainApp with the Oracle Blockchain Platform
How to Build a Decentralized Blockchain App with the Oracle Blockchain Platform
 
Ivy Block - technicals.pdf
Ivy Block - technicals.pdfIvy Block - technicals.pdf
Ivy Block - technicals.pdf
 
5 Questions Answered About Algorand - Here’s How to buy Algo in Canada!
5 Questions Answered About Algorand - Here’s How to buy Algo in Canada!5 Questions Answered About Algorand - Here’s How to buy Algo in Canada!
5 Questions Answered About Algorand - Here’s How to buy Algo in Canada!
 
Wwc developing hyperledger applications v4
Wwc  developing hyperledger applications v4Wwc  developing hyperledger applications v4
Wwc developing hyperledger applications v4
 
Get the Exact Identity Solution You Need - In the Cloud - Overview
Get the Exact Identity Solution You Need - In the Cloud - OverviewGet the Exact Identity Solution You Need - In the Cloud - Overview
Get the Exact Identity Solution You Need - In the Cloud - Overview
 
blockchain workshop - hyperledger and oabcs - technical
blockchain workshop - hyperledger and oabcs - technicalblockchain workshop - hyperledger and oabcs - technical
blockchain workshop - hyperledger and oabcs - technical
 
Hyperledger Fabric - Blockchain for the Enterprise - FOSDEM 20190203
Hyperledger Fabric - Blockchain for the Enterprise - FOSDEM 20190203Hyperledger Fabric - Blockchain for the Enterprise - FOSDEM 20190203
Hyperledger Fabric - Blockchain for the Enterprise - FOSDEM 20190203
 
Wwc developing hyperledger applications v4
Wwc  developing hyperledger applications v4Wwc  developing hyperledger applications v4
Wwc developing hyperledger applications v4
 
Wwc developing hyperledger applications v2
Wwc  developing hyperledger applications v2Wwc  developing hyperledger applications v2
Wwc developing hyperledger applications v2
 
Introducing flow the new blockchain for open worlds
Introducing flow  the new blockchain for open worldsIntroducing flow  the new blockchain for open worlds
Introducing flow the new blockchain for open worlds
 
Do It Yourself :: Web App - Web Api
Do It Yourself :: Web App - Web ApiDo It Yourself :: Web App - Web Api
Do It Yourself :: Web App - Web Api
 
Hyperledger Composer Update 2017-04-05
Hyperledger Composer Update 2017-04-05Hyperledger Composer Update 2017-04-05
Hyperledger Composer Update 2017-04-05
 
The Story of SNCF Connect - biggest Flutter app in Europe (@FlutterHeroes 2023)
The Story of SNCF Connect - biggest Flutter app in Europe (@FlutterHeroes 2023)The Story of SNCF Connect - biggest Flutter app in Europe (@FlutterHeroes 2023)
The Story of SNCF Connect - biggest Flutter app in Europe (@FlutterHeroes 2023)
 
A complementary currency toolkit in Clojure - Aspasia Beneti - Codemotion Ams...
A complementary currency toolkit in Clojure - Aspasia Beneti - Codemotion Ams...A complementary currency toolkit in Clojure - Aspasia Beneti - Codemotion Ams...
A complementary currency toolkit in Clojure - Aspasia Beneti - Codemotion Ams...
 
Cloud-native Gerrit Code Review
Cloud-native Gerrit Code ReviewCloud-native Gerrit Code Review
Cloud-native Gerrit Code Review
 
Hyperledger community update February 2018
Hyperledger  community update   February 2018Hyperledger  community update   February 2018
Hyperledger community update February 2018
 
Coinbase Node
Coinbase NodeCoinbase Node
Coinbase Node
 
Get Ready for Coinbase Node
Get Ready for Coinbase NodeGet Ready for Coinbase Node
Get Ready for Coinbase Node
 

Recently uploaded

Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxnull - The Open Security Community
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAndikSusilo4
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?XfilesPro
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 

Recently uploaded (20)

Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & Application
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 

Build Blockchain dApps using JavaScript, Python and C - ATO.pdf

  • 1. Build Blockchain dApps using JavaScript, Python and C# Russ Fustino Developer Advocate russ@algorand.com https://russ.algo.xyz/
  • 2. No more assembly language! Russ Fustino Developer Advocate russ@algorand.com https://russ.algo.xyz/
  • 3. 3 Building a dApp is hard… ▪ Where do I begin? ▪ Writing a Smart Contract seems difficult ▪ Transactions costs can be prohibitive ▪ What are dApps anyway? ▪ What skill set do I need to be a blockchain developer? ▪ What types of problems does blockchain solve?
  • 4. 4 Agenda ▪ Use Cases ▪ Intro to Algorand ▪ Writing Smart Contracts o C# - Algorand for Visual Studio Extension o JavaScript – Reach o Python - Beaker Open source: https://github.com/algorand-devrel https://github.com/algorand/go-algorand
  • 5. 5 Algorand Blockchain = Immutable Decentralized Ledger Blocks Transactions Accounts Assets Applications
  • 6. 6 What Types of Problems Can I Solve with Blockchain? Problem: Farmers can not get paid for grain until they sell it. Agrotoken – Grain-backed, tradable digital assets “We transform grains into a digital asset, to store or exchange for supplies, services and other assets.” https://agrotoken.io/
  • 7. 7 Problem: How to get funds to people in need? Disaster Relief https://www.aid.technology/kokua
  • 8. 8 More Problems Blockchain Solves … Tamper-proof charity organizations : o China Ministry using blockchain − improve transparency of social services − tracking of donations / audit trail Voting - tamper-proof Healthcare - global access / medical records Automotive o supply chain visibility - vehicle integrity o details of wear and tear of spare parts, sensors writing to blockchain
  • 9. 9 SIAE - Società Italiana degli Autori ed Editori (Italian Society of Authors and Publishers) Digital Copyright Assets using NFTs (Non-Fungible Tokens) • 4 million NFTs on Algorand for 95,000+ creators • Copyrights for the first time - represented as digital assets • Decentralized and Transparent public blockchain • Global and Open Infrastructure • End-to-end Protection • The Future https://www.algorand.com/resources/news/siae-launches-4-million-nfts-on-algorand-for-creators
  • 10. 10 Algorand Layer 1 Features ▪ Algorand Accounts ▪ Algorand Standard Assets (ASA) ▪ Atomic Transactions ▪ Algorand Smart Contracts ▪ Reporting with Indexer Developer Docs: https://developer.algorand.org
  • 11. 11 Algorand Standard Assets (ASA) FUNGIBLE TOKENS • In Game Points • Stable Coins • Loyalty Points • System Credits • Cryptocurrencies RESTRICTED FUNGIBLE TOKENS • Securities • Gov't Issued Fiat NON-FUNGIBLE TOKENS • In Game Items • Supply Chain • Real Estate • Identity • Certifications • Collectables RESTRICTED NON- FUNGIBLE TOKENS • Real Estate • Ownership Registries • Regulatory Certifications
  • 12. 12 Blockchain wastes energy? • Some of them do – proof of work protocols vs. proof of stake • Algorand is Carbon Negative
  • 13. 13 Blockchain Transactions are Expensive? ▪ Some blockchains range up to $2000+ per transaction o The average price per transaction on the Ethereum blockchain was $15, compared to fees during peak traffic last fall as high as a few hundred dollars. * ▪ Algorand is 1/20th of a cent * https://www.fool.com/the-ascent/cryptocurrency/articles/ethereum-transaction-fees-hit-6-month-low/
  • 14. 14 Blockchain Transactions are Slow? ▪ In most cases, 1-1.5 hours per transaction on Bitcoin ▪ 12-14 seconds to mine one Ethereum block ▪ Algorand has instant transaction finality and is under 4 seconds for block generation
  • 15. 15 What are Salaries Like? And the Opportunities? The entry level salary of a blockchain developer is $115,000 7 percent of developer positions now have blockchain requirements Blockchain Developer Developer
  • 16. 16 Global Spending on Blockchain Solutions Blockchain development is poised to enter our technical lexicon in the same way “client-server programming” or “asynchronous programming” have.
  • 18. 18 Writing smart contracts are considered complex? ▪ Developers often need a year of training to before safely handling state. ▪ Technology changes fast. ▪ State management within a contract involves... o Learning a new (lower-level) language like TEAL or Solidity. o Developing a skill set which is only applicable to the protocol/blockchain that language supports. o Limitations unique to each cryptographic protocol. ▪ Algorand’s ecosystem is booming and has great developer tools that make writing dApps (Decentralized Apps) easy. To be covered soon.
  • 20. 20 Algorand Blockchain Pure Proof-of-Stake Protocol 20 TRANSACTION CERTAINTY Fueling Advances in Powerful Real-World Applications TRUE SCALABILITY ENERGY EFFICIENCY TECHNICAL FLEXIBILITY TRUE SECURITY COST EFFICIENCY INFRASTRUCTURE LONGEVITY PLATFORM EXTENSIBILITY 6000 TPS < 3.5s Block Times
  • 21. 21 DeFi is exploding – Stable Coins Over 3 Billion in circulation.
  • 23. 23 FIFA announces partnership with Algorand! • World football’s governing body confirms collaboration with green blockchain technology company Algorand • Algorand will become the official blockchain platform of FIFA • Partnership announced by FIFA President Gianni Infantino and Algorand founder Silvio Micali https://twitter.com/Algorand/status/15212 66776276803585
  • 24. 24 FIFA NFT collectibles launched! https://collect.fifa.com/
  • 25. 25 Sandbox + = sandbox • Clone https://github.com/algorand/sandbox • Defaults to Private Network (includes indexer) ./sandbox up • TestNet use: ./sandbox up TestNet (BetaNet, TestNet and MainNet are all supported)
  • 26. 26 Ecosystem Tools and Projects https://developer.algorand.org/ecosystem-projects/
  • 27. 27 Writing Smart Contracts 1. Algorand for Visual Studio (C# .NET) 2. Reach JavaScript Python 3. Beaker - Python
  • 31. 31 Demo - File | New Project | Algorand Maui Solution
  • 32. 32 Demo - File | New Project | Algorand Web App
  • 33. 33 .NET Resources ▪ Algorand for Visual Studio Extension https://github.com/FrankSzendzielarz/AlgorandVisualStudio ▪ .NET SDK https://github.com/FrankSzendzielarz/dotnet-algorand-sdk ▪ NuGet package: https://www.nuget.org/packages/Algorand2
  • 35. 35 What is Reach? • Program • High-Level Language • Looks and feels like JavaScript • Compile • Interoperable with Just a Configuration Change • Mathematically Guarantees Safety • Outputs the Entire App (Not just Smart Contract) • Deploy • Launches Appropriate Node- Multiple Blockchains • Runs Test Simulation
  • 36. 36 Reach Architecture Developer Docs: https://docs.reach.sh/
  • 37. 37 Build with Reach Docs ▪ https://developer.algorand.org/docs/get-started/dapps/reach/
  • 38. 38 Using Wallet Connect with Reach Tutorial Tutorial: https://developer.algorand.org/tutorials/using-walletconnect-with-reach-in-an-rsvp-system
  • 39. 39 Morra Game Solution Using Reach https://developer.algorand.org/solutions/morra-game-using-reach/
  • 40. 40 Demo - Morra Game Verificatio
  • 42. 42 Web2 App Architecture Frontend Web Server Database
  • 43. 43 Algorand SDK Frontend Web Server Database Algorand dApp Architecture Algorand Smart contract AVM Algorand SDK Smart contract
  • 44. 44 Frontend Web Server Database Algorand Dapp Architecture Algorand Algorand SDK Smart contract AVM Smart contract Algorand SDK Smart contract
  • 45. 45 What is Beaker? Python smart contract framework that improves: ● Code Organization ● Deployment / Interaction ● Debugging In short, it handles all the heavy lifting for you Beaker is a Python framework for building Smart Contracts on Algorand using PyTeal.
  • 47. 47 Packages to Install ● Sandbox ● Pyteal ● Python Algorand SDK ● Beaker git clone https://github.com/algorand/sandbox.git
  • 48. 48 Beaker Starter Kit 1. Launch Sandbox 2. Create Virtual Environment 3. Install all packages using requirements.txt python3 venv venv source ./venv/bin/activate pip install -r requirements.txt ./sandbox up dev https://github.com/algorand-devrel/beaker-starter-kit
  • 51. 51 Code Beaker: Beaker Calculator https://github.com/algorand-devrel/beaker-calculator Beaker https://github.com/algorand-devrel/beaker Beaker Starter Kit https://github.com/algorand-devrel/beaker-starter-kit Beaker-TS https://github.com/algorand-devrel/beaker-ts Docs http://beaker.algo.xyz Auction Beaker-TS https://github.com/algorand-devrel/beaker-auction/blob/master/web/src/index.ts Reach: https://github.com/algorand-devrel/Walletconnect-Reach Algorand for Visual Studio Extension: https://github.com/FrankSzendzielarz/AlgorandVisualStudio
  • 52. 52 Summary ▪ Use Cases ▪ Intro to Algorand ▪ Writing Smart Contracts o C# - Algorand for Visual Studio Extension o JavaScript – Reach o Python - Beaker PowerPoint: https://bit.ly/3TQzh92