From d37caadbe54f95d41a83b31293356b4033e8607a Mon Sep 17 00:00:00 2001 From: Jessie Mongeon Date: Thu, 26 Oct 2023 13:41:00 -0500 Subject: [PATCH 1/3] Re-adding What is IC page --- docs/concepts/what-is-IC.md | 96 +++++++++++++++++++++++++++++++++++++ 1 file changed, 96 insertions(+) create mode 100644 docs/concepts/what-is-IC.md diff --git a/docs/concepts/what-is-IC.md b/docs/concepts/what-is-IC.md new file mode 100644 index 0000000000..aa2826f62d --- /dev/null +++ b/docs/concepts/what-is-IC.md @@ -0,0 +1,96 @@ +# What is the Internet Computer? + +The **Internet Computer** is a blockchain that enables developers, organizations, and entrepreneurs to build and deploy secure, autonomous, and tamper-proof **[canisters](/how-it-works/canister-lifecycle/)**, an evolution of **smart contracts**. + +As a dapp developer, you might find it useful to think of the Internet Computer as providing the following key features: + +- A **globally-accessible, public blockchain** for running smart contracts at web speed, that can serve interactive web content to users. You can read more about the architecture of the IC [here](/how-it-works/architecture-of-the-internet-computer/). + +- A secure cryptographic protocol (**[Internet Computer protocol](/how-it-works/core-ic-protocol-overview/)**) run by nodes machines operated by independent node providers in independent data centers all over the world. This guarantees the secure execution of smart contracts. + +- A **network of independent blockchains**, known as [subnets](./nodes-subnets.md), connected using [chain-key cryptography](/how-it-works/#Chain-key-cryptography) that can [scale out](/how-it-works/scalability/) its capacity as required. + +## An open blockchain + +The Internet Computer is a blockchain hosted on node machines operated by independent parties and located in geographically distributed data centers. The nodes run the [Internet Computer protocol](/how-it-works/core-ic-protocol-overview/), an advanced cryptographic fault-tolerant protocol which ensures that smart contracts running on the blockchain cannot be tampered with or stopped. The Internet Computer is composed of individual subnet blockchains running in parallel and connected using [chain-key cryptography](/how-it-works/#Chain-key-cryptography). This means that canisters running on a subnet can seamlessly call canisters hosted in any other subnet of the Internet Computer blockchain. + +Another important feature of the Internet Computer is that it runs under the control of a decentralized, permissionless governance system, called **[Network Nervous System](/how-it-works/#Network-nervous-system)** (NNS), which runs completely on-chain. The NNS can make decisions on several topics, including scaling out the Internet Computer by creating new subnet blockchains, updating the node machines, and configuring parameters used in the Internet Computer protocol. Anyone can participate in the governance and submit new proposals to the NNS or vote on open proposals. To do so, users have to stake ICP, the Internet Computer utility token, and [create a **neuron** with the NNS](/docs/current/tokenomics/token-holders/nns-app-quickstart). + +## Building the next generation of software and services + +The Internet Computer protocol reduces platform-based risks and paves the way for innovation by re-imagining how software is built, deployed, and accessed. + +For example, with the Internet Computer, developers can focus on writing code using canisters without environment-related distractions such as: + +- Physical or virtual network configuration requirements. + +- Load balancing services. + +- Firewalls, network topology, or port management. + +- Database configuration and maintenance. + +- Storage volumes and devices. + +By enabling developers to focus on building applications and delivering value, the Internet Computer helps simplify the development process, reduce time to market, and foster innovation. + +For end-users, the Internet Computer provides a secure environment for accessing dapps with fewer risks. Because of the inherent security of the blockchain, programs running on the Internet Computer cannot be hijacked by malicious code, which also reduces the total cost of ownership for both application end-users or organizations. + +In addition, because dapps can be "autonomous" and public, developers can write services that communicate with each other and share functions in ways that increase productivity and efficiency while leaving room to innovate and improve projects with confidence. + +The Internet Computer also enables developers to use [cryptographically-secure identities](/how-it-works/web-authentication-identity/) to enforce access controls, reducing the need to rely on usernames and passwords or external identity management plug-ins. + +## Learn more + +- [Architecture of the Internet Computer](/how-it-works/architecture-of-the-internet-computer/). + +- [The Internet Computer Protocol](/how-it-works/core-ic-protocol-overview/). + +- [Peer-to-peer layer](/how-it-works/peer-to-peer-p2p/). + +- [Consensus layer](/how-it-works/consensus/). + +- [Message routing layer](/how-it-works/message-routing/). + +- [Execution layer](/how-it-works/execution-layer/). + +- [Chain-key cryptography](/how-it-works/chain-key-technology/). + +- [Chain-key tokens](/how-it-works/chain-key-tokens/). + +- [The Network Nervous System](https://internetcomputer.org/nns/). + +- [Service Nervous Systems](https://internetcomputer.org/sns/). + +- [Canisters](/how-it-works/canister-lifecycle/). + +- [Internet Identity](/how-it-works/web-authentication-identity/). + +## Get started developing on the IC + +- Get started developing on the IC by embarking on your [developer journey](/docs/current/tutorials/developer-journey). + +- [Designing a dapp](/docs/current/developer-docs/backend/design-dapps). + +- [Building backend canisters with Motoko](/docs/current/developer-docs/backend/motoko/). + +- [Building backend canisters with Rust](/docs/current/developer-docs/backend/rust/). + +## Connect with the IC community + +- [Developer Discord community](https://discord.com/invite/cA7y6ezyE2), which is a large chatroom for IC developers to ask questions, get help, or chat with other developers asynchronously via text chat. + +- [Developer journey forum discussion](https://forum.dfinity.org/t/developer-journey-feedback-and-discussion/23893). + +- [Developer tooling working group](https://www.google.com/calendar/event?eid=MHY0cjBubmlnYXY1cTkzZzVzcmozb3ZjZm5fMjAyMzEwMDVUMTcwMDAwWiBjX2Nnb2VxOTE3cnBlYXA3dnNlM2lzMWhsMzEwQGc&ctz=Europe/Zurich). + +- [Motoko bootcamp](https://github.com/motoko-bootcamp/bootcamp-2022), a week-long crash course to learning all things Motoko. + +- [Motoko developer working group](https://www.google.com/calendar/event?eid=ZWVnb2luaHU0ZjduMTNpZHI3MWJkcWVwNWdfMjAyMzEwMTJUMTUwMDAwWiBjX2Nnb2VxOTE3cnBlYXA3dnNlM2lzMWhsMzEwQGc&ctz=Europe/Zurich). + +- [Upcoming events and conferences](https://dfinity.org/events-and-news/). + +- [Upcoming hackathons](https://dfinity.org/hackathons/). + +- [Weekly developer office hours](https://discord.gg/4a7SZzRk?event=1164114241893187655) to ask questions, get clarification, and chat with other developers live via voice chat. This is hosted on our [developer Discord](https://discord.com/invite/cA7y6ezyE2) group. + From a44a3ba3b07756f6c9c0a0d0baf78abca7205c8f Mon Sep 17 00:00:00 2001 From: Jessie Mongeon Date: Thu, 26 Oct 2023 13:43:32 -0500 Subject: [PATCH 2/3] update sidebars and redirects --- plugins/utils/redirects.js | 3 +-- sidebars.js | 1 + 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/plugins/utils/redirects.js b/plugins/utils/redirects.js index 1238e58e89..2a78ab9c2d 100644 --- a/plugins/utils/redirects.js +++ b/plugins/utils/redirects.js @@ -172,9 +172,8 @@ const redirects = ` /docs/developers-guide/tutorials-intro.html /docs/current/tutorials/developer-journey/ /docs/quickstart/quickstart.html /docs/current/developer-docs/setup/ /apis/site/proxy /docs/current/references/http-gateway-protocol-spec - /docs/developers-guide/concepts/what-is-ic /docs/current/concepts/ + /docs/developers-guide/concepts/what-is-ic /docs/current/concepts/what-is-ic /language-guide/index /docs/current/tutorials/developer-journey/level-0/intro-languages - /docs/current/concepts/what-is-IC /docs/current/concepts/ /docs/current/concepts/data-centers /docs/current/concepts/ ` .split(/[\r\n]+/) diff --git a/sidebars.js b/sidebars.js index af3f42e76c..92183d022e 100644 --- a/sidebars.js +++ b/sidebars.js @@ -150,6 +150,7 @@ const sidebars = { id: "concepts/index", }, items: [ + "concepts/what-is-ic", "concepts/canisters-code", "developer-docs/gas-cost", "concepts/governance", From b15ef9c9fc2bf70c4cbb8f20cd878e5f62e829ed Mon Sep 17 00:00:00 2001 From: Jessie Mongeon <133128541+jessiemongeon1@users.noreply.github.com> Date: Thu, 26 Oct 2023 13:56:12 -0500 Subject: [PATCH 3/3] Rename what-is-IC.md to what-is-ic.md --- docs/concepts/{what-is-IC.md => what-is-ic.md} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename docs/concepts/{what-is-IC.md => what-is-ic.md} (100%) diff --git a/docs/concepts/what-is-IC.md b/docs/concepts/what-is-ic.md similarity index 100% rename from docs/concepts/what-is-IC.md rename to docs/concepts/what-is-ic.md