TL;DR: You can get a summary of this article on its last section
Dfinity is a blockchain-based cloud computing platform that aims to create an “internet computer” — the next-generation cloud or the decentralized internet.
In presenting this guide and review of Dfinity, I will divide my analysis into 5 sections, each containing a salient feature of the project, as follows:
Dfinity was founded in early 2015 by Dominic Williams in Palo Alto, California. Dominic Williams is a computer scientist, Crypto theoretician, and serial startup founder. He is now the president and chief scientist of the Dfinity Foundation. His recent research includes techniques like Threshold Relay and PSC chains .
The Dfinity Foundation is a nonprofit based out of Zürich, Switzerland with 100+ employees and research centres there as well as Palo Alto and San Francisco, California.
The Dfinity Foundation launched an ICO in early 2017 that raised 3.9M CFH, mostly in BTC and ETH that significantly appreciated before being encashed. A year into development, they raised $61M from Andreessen Horowitz and Polychain Capital , real heavyweights in the Crypto investment world and beyond. This was followed a few months later, in mid-2018, with another $100M by the same lead investors joined by another 9 VC funds. All in all, this gave Dfinity a war chest of $200M+ to bring about its vision of the Internet Computer.
Dfinity was inspired by the Ethereum vision of a “blockchain computer”. Looking at Bitcoin , Ethereum , and other proposals, the Dfinity team theorized and built a proposal for a decentralized public network that would run the next generation of software and open internet services, sidestepping for the time being the talk of distributing new financial instruments, mining, and other prevalent concepts in Crypto that have sought to expand on Bitcoin, building incarnations of “Bitcoin+”, so to speak.
Dfinity has achieved significant milestones since its founding. The Internet Computer project is now in its Bronze edition. Earlier this year at the World Economic Forum in Davos Dfinity demoed its technology with a test app called “LinkedUp”, a cheeky nod to an open version of LinkedIn. The web app was hosted directly on the internet on a Switzerland-based independent data centre. More recently, a TikTok replica of sorts called “CanCan” was shown off.
A terminal-based SDK and a new programming language called
Motoko were released prior to the development of LinkedUp, which was built by “1.5 engineers in three weeks” to demonstrate the ease-of-use of the infrastructure.
The Dfinity ICO gave a number of IOU rights to a future token, which some have called
DFN. The token is meant to act as a utility within the platform for paying data centres. To use the ICP protocol to, for example, install and run software or store data, a “gas” fee will be paid in tokens. Conversely, a data centre will be remunerated with these tokens. The amount of gas spent in any operation will be determined by the precise instruction being executed, the amount of data processed, and the amount of data stored. This is no different than cloud computing pricing. Tokens will also provide the utility of voting in the governance of the protocol, which will take an autonomous form. This is analogous to the concept of mining, but payment is made for providing processing power instead of just securing the network.
The protocol’s governance system is called the Network Nervous System (NNS). The centralised internet relies on ICANN and IANA to administer important systems at the core of the internet’s architecture, like the provision of ASN numbers which are a prerequisite for operating a BGP router. These organisations have been problematic for a variety of reasons: they are slow, undemocratic, and ultimately self-perpetuating like other bureaucracies. Dfinity’s NNS assigns DcIDs or data centre IDs to providers of computing capacity who make an application to the network. The NNS regulates capacity in the network and as well as adjusts the numbers of tokens that are forwarded to the data centres to make their remuneration predictable as the tokens are expected to be volatile in pricing while data centre costs will be largely constant. Ultimately, the NNS modulates the exchange rate between utility tokens and gas. The NNS also controls costs by managing permissions to data centres to connect more machinery via the use of a Request for Capacity (RCAP). Altogether, these guarantee the right incentives for independent data centres to participate in the network.
The Dfinity Whitepaper explains in detail the consensus mechanism in the ICP.
At the moment, Dfinity is securing a number of founding data centres around the world to launch the Internet Computer. Financial support may be provided in certain cases by Dfinity or participating third parties.
Dfinity is all geared up towards onboarding developers to build their projects on the Internet Computer. A number of programs and tools have been created to facilitate the growth of the whole ecosystem.
The Beacon Fund is open for applications. The idea is to invest in early-stage teams that can build open internet services and next-generation decentralized financial systems. There is a preference for developer-heavy and UX-savvy teams willing to work on applications that leverage network effects and apply the principles of open internet, decentralized finance, and tokenized governance in their value propositions. This ecosystem fund is stewarded by the Dfinity Foundation and Polychain Capital.
To increase the native performance of code running on the Internet Computer, Dfinity brought on board one of the co-creators of WebAssembly, Andreas Rossberg, who has now created the language Motoko.
Motoko and the architecture of the Internet Computer, in general, have the potential to save enormous amounts of resources in developing software. By far the most expensive resource in developing IT systems is talent, and currently, we face enormous complexity to develop and maintain simple applications, mostly to maintain them securely. Consider “CanCan”, the TikTok lookalike that was created to demo the potential of the Internet Computer: it took about 1,000 lines of code to write. Applications like Facebook, by contrast, are about 62 million lines of code long, and still suffer from performance issues.
A major milestone for Dfinity was the release of its Software Development Kit (SDK) that allow users to easily build applications and services in the Internet Computer. Each service is a canister which consists of metadata, static content, and Wasm of the compiled Motoko software. This portable system unit thus bundled logic and data. Canister architecture is extremely versatile and optimized for decentralized applications. For example, any canister can call functions directly from other canisters that have shared permissions to call with it. To create an open internet service, a developer marks shared functions as “permanent” and signs over control of those canisters to tokenized public governance canisters that become responsible for upgrades and configuration. The purpose of such permanent APIs would be to eliminate “platform risk” such as when monopolizing Big Tech shuts down access to APIs to avoid competition — no one wants to build on sand!
It is clear that since its early days the Internet has changed enormously. What was promised to be an open landscape for innovation unbounded by monopolizing forces and heavy-handed regulation did not last long, and gave us the Big Tech giants of today’s internet, with their anti-competitive behaviours that harm sustainable innovation. Dfinity is a truly top team that has come up with an exciting solution and made impressive strides in its goal of building a decentralized Internet Computer. Currently, the platform is open for development with its Tungsten Developer Network. For the smart and the brave, it is high time to request access to Tungsten and start developing the next-generation of internet-scale applications on Dfinity.
Super guide to get familiar with Dfinity - thanks Manny!