Difference between revisions of "Internet Computer vision"

From Internet Computer Wiki
Jump to: navigation, search
m
 
(4 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
'''The Internet Computer''' blockchain is a real "world computer" that removes the traditional limitations of smart contracts using advanced new cryptography and distributed protocols.  
 
'''The Internet Computer''' blockchain is a real "world computer" that removes the traditional limitations of smart contracts using advanced new cryptography and distributed protocols.  
  
==Vision and Value Propositions==
+
==Web speed==
 
 
===Web speed===
 
  
 
Smart Contracts are fast and performant to allow developers to build anything. The design goal is that developers can build consumer-facing experiences that are as fast as they would expect from centralized servers. Dapp developers do not need to choose between "smart contracts" and "fast." In short, dapp users experience is so fast that users should not notice if their web experience is running on a blockchain or centralized provider.
 
Smart Contracts are fast and performant to allow developers to build anything. The design goal is that developers can build consumer-facing experiences that are as fast as they would expect from centralized servers. Dapp developers do not need to choose between "smart contracts" and "fast." In short, dapp users experience is so fast that users should not notice if their web experience is running on a blockchain or centralized provider.
Line 9: Line 7:
 
From a blockchain POV, [[Internet Computer Performance]] performance tests shows the IC latency at 200 milliseconds for query calls (reads) and 2 seconds for update calls (writes). As of December 1, 2021, The Internet Computer can handle 250,000 queries per second and 11,500 update calls per second.
 
From a blockchain POV, [[Internet Computer Performance]] performance tests shows the IC latency at 200 milliseconds for query calls (reads) and 2 seconds for update calls (writes). As of December 1, 2021, The Internet Computer can handle 250,000 queries per second and 11,500 update calls per second.
  
===Environment and cost===
+
==Environment and cost==
  
====Low direct costs====
+
===Low direct costs===
 
Unlike most blockchains, the efficiency and costs of the Internet Computer approaches the traditional IT stack so its is economically feasible to host dapps with lots of data and content.
 
Unlike most blockchains, the efficiency and costs of the Internet Computer approaches the traditional IT stack so its is economically feasible to host dapps with lots of data and content.
  
Line 25: Line 23:
 
|}
 
|}
  
====Low indirect costs====
+
===Low indirect costs===
  
 
Smart contracts as "secure-by-default" that comes with data replication removes a lot of software complexity that developers do not need to build. The design intent of the IC is to make development and deployment simple to reduce the time necessary to build and maintain software compared to traditional systems.
 
Smart contracts as "secure-by-default" that comes with data replication removes a lot of software complexity that developers do not need to build. The design intent of the IC is to make development and deployment simple to reduce the time necessary to build and maintain software compared to traditional systems.
  
===Network scales without limit===
+
==Network scales without limit==
  
 
Most blockchains have transactions limits baked into the protocol (e.g. adding more servers to Bitcoin does not increase its transaction volume) and need cumbersome workarounds to address scaling. The Internet Computer can process unbounded volumes of smart contract data and computation natively because it can grow in capacity by adding more nodes. That is how the network went from 19 blocks per second in July 2021 to 30 blocks per second by December 2021.  
 
Most blockchains have transactions limits baked into the protocol (e.g. adding more servers to Bitcoin does not increase its transaction volume) and need cumbersome workarounds to address scaling. The Internet Computer can process unbounded volumes of smart contract data and computation natively because it can grow in capacity by adding more nodes. That is how the network went from 19 blocks per second in July 2021 to 30 blocks per second by December 2021.  
Line 35: Line 33:
 
See Internet Computer Dashboard: https://dashboard.internetcomputer.org/
 
See Internet Computer Dashboard: https://dashboard.internetcomputer.org/
  
===Network scaling is transparent to systems===
+
==Network scaling is transparent to systems==
  
 
Network scaling is transparent to smart contract code which means that dapp developers do not need to worry about details about the network in order for their dapps to operate or scale. For example:
 
Network scaling is transparent to smart contract code which means that dapp developers do not need to worry about details about the network in order for their dapps to operate or scale. For example:
Line 45: Line 43:
 
Source: https://medium.com/dfinity/a-technical-overview-of-the-internet-computer-f57c62abc20f
 
Source: https://medium.com/dfinity/a-technical-overview-of-the-internet-computer-f57c62abc20f
  
===Web serving===
+
==Web serving==
  
====Dapp code hosted and executed on-chain====
+
===Dapp code hosted and executed on-chain===
 
Smart contracts on the Internet Computer serve web content directly to users. This is a distinguishing feature, on other blockchains a small part of the dapp logic runs in a smart contract, but the actual consumer-facing web or interface is hosted on a centralized cloud provider (e.g. AWS) instead of being served directly from the blockchain.
 
Smart contracts on the Internet Computer serve web content directly to users. This is a distinguishing feature, on other blockchains a small part of the dapp logic runs in a smart contract, but the actual consumer-facing web or interface is hosted on a centralized cloud provider (e.g. AWS) instead of being served directly from the blockchain.
  
 
The Internet Computer serving dapps whose code is hosted and executed entirely on-chain unlocks the Web3 potential of smart contracts.  
 
The Internet Computer serving dapps whose code is hosted and executed entirely on-chain unlocks the Web3 potential of smart contracts.  
  
====Reverse Gas Model (AKA "canister pays")====
+
===Reverse Gas Model (AKA "canister pays")===
 
In dapps built on Ethereum (as an example), users require a wallet or tokens to use it. This slows down adoption of dapps because using a dapp is not as simple as clicking on a website link; it requires users to buy tokens, install browser plugins, etc. Internet Computer dapps have he "Reverse Gas model" where users can interact with a dapp without having to pay in tokens since the canister can store a certain amount of [[cycles]] and pay for the user.
 
In dapps built on Ethereum (as an example), users require a wallet or tokens to use it. This slows down adoption of dapps because using a dapp is not as simple as clicking on a website link; it requires users to buy tokens, install browser plugins, etc. Internet Computer dapps have he "Reverse Gas model" where users can interact with a dapp without having to pay in tokens since the canister can store a certain amount of [[cycles]] and pay for the user.
  
 
As an example, the Motoko Playground dapp is hosted and executed entirely on-chain and it does not require visitors to pay for the computation: https://m7sm4-2iaaa-aaaab-qabra-cai.raw.ic0.app/
 
As an example, the Motoko Playground dapp is hosted and executed entirely on-chain and it does not require visitors to pay for the computation: https://m7sm4-2iaaa-aaaab-qabra-cai.raw.ic0.app/
  
====Internet Identity====
+
===Internet Identity===
  
 
[[Internet_Identity_technical_overview|Internet Identity]] is a blockchain authentication system that enables you to sign in securely and pseudonymously to dapps on the Internet Computer. This makes logging into dapps easy and safe for consumers.
 
[[Internet_Identity_technical_overview|Internet Identity]] is a blockchain authentication system that enables you to sign in securely and pseudonymously to dapps on the Internet Computer. This makes logging into dapps easy and safe for consumers.
  
===Network Nervous System===
+
==Network Nervous System==
  
 
The [[Network Nervous System]] (NNS) is the control center where the Internet Computer’s nodes and subnets are organized, tracked, and managed. The NNS is an automated in-protocol governance system that makes the network self-directed. Unlike Bitcoin or Ethereum, this means the Internet Computer blockchain can update itself via community-led proposals so the community controls the network.
 
The [[Network Nervous System]] (NNS) is the control center where the Internet Computer’s nodes and subnets are organized, tracked, and managed. The NNS is an automated in-protocol governance system that makes the network self-directed. Unlike Bitcoin or Ethereum, this means the Internet Computer blockchain can update itself via community-led proposals so the community controls the network.
Line 70: Line 68:
 
* Accelerates the number of improvements or updates to the network. In 2021, the Internet Computer had dozens of updates, giving the IC very fast development iterations while also being decentralized.
 
* Accelerates the number of improvements or updates to the network. In 2021, the Internet Computer had dozens of updates, giving the IC very fast development iterations while also being decentralized.
  
===Novel “canister” smart contract framework===
+
==Novel “canister” smart contract framework==
  
 
Smart contracts have proven to be powerful new types of software programs because of their tamperproof nature. They can host financial contracts and systems with billions of dollars in value. However, as the scope of smart contracts increase, performance really matters. Building an "airbnb clone" entirely with Ethereum smart contracts would be impractical due to performance bottlenecks on individual smart contracts, but it is easy with the Internet Computer's canisters (dapps/smart contracts). A rough but helpful analogy may be "you can build complex calculations and logic with an excel spreadsheet, but you would not build Twitter by cobbling up many spreadsheets."
 
Smart contracts have proven to be powerful new types of software programs because of their tamperproof nature. They can host financial contracts and systems with billions of dollars in value. However, as the scope of smart contracts increase, performance really matters. Building an "airbnb clone" entirely with Ethereum smart contracts would be impractical due to performance bottlenecks on individual smart contracts, but it is easy with the Internet Computer's canisters (dapps/smart contracts). A rough but helpful analogy may be "you can build complex calculations and logic with an excel spreadsheet, but you would not build Twitter by cobbling up many spreadsheets."
Line 80: Line 78:
 
* Integration with other blockchains e.g. canisters will be able to have Bitcoin addresses in the future
 
* Integration with other blockchains e.g. canisters will be able to have Bitcoin addresses in the future
  
===Service Nervous System (SNS) economic framework for dapps===
+
==Service Nervous System (SNS) economic framework for dapps==
  
 
The Internet Computer’s SNS feature will allow developers to create decentralized, token-based governance systems for their dapps.
 
The Internet Computer’s SNS feature will allow developers to create decentralized, token-based governance systems for their dapps.
Line 89: Line 87:
 
* Dapps run as extensions of the blockchain (microeconomy with macroeconomy)
 
* Dapps run as extensions of the blockchain (microeconomy with macroeconomy)
 
* Dapps can raise funds into the SNS; funds controlled by community
 
* Dapps can raise funds into the SNS; funds controlled by community
 +
 +
==See Also==
 +
* '''The Internet Computer project website (hosted on the IC): [https://internetcomputer.org/ internetcomputer.org]'''

Latest revision as of 22:27, 1 December 2022

The Internet Computer blockchain is a real "world computer" that removes the traditional limitations of smart contracts using advanced new cryptography and distributed protocols.

Web speed

Smart Contracts are fast and performant to allow developers to build anything. The design goal is that developers can build consumer-facing experiences that are as fast as they would expect from centralized servers. Dapp developers do not need to choose between "smart contracts" and "fast." In short, dapp users experience is so fast that users should not notice if their web experience is running on a blockchain or centralized provider.

From a blockchain POV, Internet Computer Performance performance tests shows the IC latency at 200 milliseconds for query calls (reads) and 2 seconds for update calls (writes). As of December 1, 2021, The Internet Computer can handle 250,000 queries per second and 11,500 update calls per second.

Environment and cost

Low direct costs

Unlike most blockchains, the efficiency and costs of the Internet Computer approaches the traditional IT stack so its is economically feasible to host dapps with lots of data and content.

For comparison:

Blockchain Storage Costs
Ethereum $350,000,000 USD per GB per year
Internet Computer $5 USD per GB per year

Low indirect costs

Smart contracts as "secure-by-default" that comes with data replication removes a lot of software complexity that developers do not need to build. The design intent of the IC is to make development and deployment simple to reduce the time necessary to build and maintain software compared to traditional systems.

Network scales without limit

Most blockchains have transactions limits baked into the protocol (e.g. adding more servers to Bitcoin does not increase its transaction volume) and need cumbersome workarounds to address scaling. The Internet Computer can process unbounded volumes of smart contract data and computation natively because it can grow in capacity by adding more nodes. That is how the network went from 19 blocks per second in July 2021 to 30 blocks per second by December 2021.

See Internet Computer Dashboard: https://dashboard.internetcomputer.org/

Network scaling is transparent to systems

Network scaling is transparent to smart contract code which means that dapp developers do not need to worry about details about the network in order for their dapps to operate or scale. For example:

Although subnets are the fundamental building blocks of the overall Internet Computer network, they’re transparent to users and software. Users and canister software only need to know the identity of a canister to call the functions that it offers.

Source: https://medium.com/dfinity/a-technical-overview-of-the-internet-computer-f57c62abc20f

Web serving

Dapp code hosted and executed on-chain

Smart contracts on the Internet Computer serve web content directly to users. This is a distinguishing feature, on other blockchains a small part of the dapp logic runs in a smart contract, but the actual consumer-facing web or interface is hosted on a centralized cloud provider (e.g. AWS) instead of being served directly from the blockchain.

The Internet Computer serving dapps whose code is hosted and executed entirely on-chain unlocks the Web3 potential of smart contracts.

Reverse Gas Model (AKA "canister pays")

In dapps built on Ethereum (as an example), users require a wallet or tokens to use it. This slows down adoption of dapps because using a dapp is not as simple as clicking on a website link; it requires users to buy tokens, install browser plugins, etc. Internet Computer dapps have he "Reverse Gas model" where users can interact with a dapp without having to pay in tokens since the canister can store a certain amount of cycles and pay for the user.

As an example, the Motoko Playground dapp is hosted and executed entirely on-chain and it does not require visitors to pay for the computation: https://m7sm4-2iaaa-aaaab-qabra-cai.raw.ic0.app/

Internet Identity

Internet Identity is a blockchain authentication system that enables you to sign in securely and pseudonymously to dapps on the Internet Computer. This makes logging into dapps easy and safe for consumers.

Network Nervous System

The Network Nervous System (NNS) is the control center where the Internet Computer’s nodes and subnets are organized, tracked, and managed. The NNS is an automated in-protocol governance system that makes the network self-directed. Unlike Bitcoin or Ethereum, this means the Internet Computer blockchain can update itself via community-led proposals so the community controls the network.

Advantages of the NNS:

  • Seamless community-driven evolution and governance without disruptive hard forks
  • Gives control of the network to token holders as well as node providers (in Bitcoin or Ethereum, only nodes affect the upgrades of the network)
  • Accelerates the number of improvements or updates to the network. In 2021, the Internet Computer had dozens of updates, giving the IC very fast development iterations while also being decentralized.

Novel “canister” smart contract framework

Smart contracts have proven to be powerful new types of software programs because of their tamperproof nature. They can host financial contracts and systems with billions of dollars in value. However, as the scope of smart contracts increase, performance really matters. Building an "airbnb clone" entirely with Ethereum smart contracts would be impractical due to performance bottlenecks on individual smart contracts, but it is easy with the Internet Computer's canisters (dapps/smart contracts). A rough but helpful analogy may be "you can build complex calculations and logic with an excel spreadsheet, but you would not build Twitter by cobbling up many spreadsheets."

Attributes that make Internet Computer smart contracts powerful ways of building dapps:

  • Orthogonal persistence (data lives in persistent memory pages) making managing data much easier
  • Actor model gives dapps a time-tested model for concurrency that scales (deterministic parallelism, internally and externally)
  • Dapps get access to system APIs uncommon in Ethereum smart contracts (but common tools in centralized solutions) such as public randomness
  • Integration with other blockchains e.g. canisters will be able to have Bitcoin addresses in the future

Service Nervous System (SNS) economic framework for dapps

The Internet Computer’s SNS feature will allow developers to create decentralized, token-based governance systems for their dapps.

This unlocks a few possibilities:

  • An advanced DAO can take control of a dapp
  • Dapps run under the control of a community (full decentralization)
  • Dapps run as extensions of the blockchain (microeconomy with macroeconomy)
  • Dapps can raise funds into the SNS; funds controlled by community

See Also