What is the Internet Computer?
The Internet Computer is blockchain technology and computing infrastructure initiated by the non-profit organization DFinity. Like the public Internet, the Internet Computer is a distributed computing platform consisting of thousands of connected and decentralized servers that host backend software. This idea mitigates the increasing monopolization of Internet services and enables “autonomous software” that runs without an owner.
The idea of the internet computer is a very old idea. Decades ago, people talked about peer-to-peer systems that allow a shared worldwide computer network. And this whole network can be seen as one computing unit. You can then rent parts of this global computing network.
As you know, Finxter is all about collective intelligence. So, of course, we’re very interested in this new and upcoming concept of the Internet Computer because it creates a new form of backbone intelligence. Like a human brain, it consists of myriads of cells that provide the computing power demanded by today’s super applications in search, social, education, and entertainment.
The Internet Computer research group even speaks of neurons that are the providers and enablers of the collective brain.
What Are the Advantages of the Internet Computer Protocol (ICP)?
The new token ICP used as a payment vehicle for the Internet Computer has launched in May 2021 on many cryptocurrency exchanges like Coinbase and Binance.
The interest in the Internet Computer increases exponentially. But why?
I think the reason is a lack of trust in the monopolistic Big Tech companies (FANG and alike). Companies like Amazon, Google, and Facebook own the infrastructure of the web. For example, if you want to create your own web-based applications, you need to load this application to the cloud, hosted by Google, Amazon, and so on.
Overcoming Vendor Lock-In
And you are locked in (“vendor lock-in“). For example, if your application scales with AWS Lambda, you have to create a sub infrastructure on Amazon’s data centers. You may need a load balancer, multiple computers hosting your application, a firewall, and many more units to create a scalable application. Sure, you can rent it on Amazon. But it’s complicated, expensive, and very demanding work.
If you develop your own app, you must address these issues. The providers of the platform are not 100% trustworthy because they are a company. Nothing against Amazon, I love them, and I think they provide unique value to the world. But over time, there’s a trust issue because your app runs by one organization.
Decentralized Hosting Service for Programmers
And a growing percentage of the GDP and the global economy moves online we will be more and more reliant on the providers of the cloud platform and the computing power.
The idea of the Internet Computer is to decentralize the hosting of today’s applications, and therefore, the global computing infrastructure.
From now on, if you as a developer want to develop your own application, you can decide:
- A: host your application on a cloud provider such as AWS or Google Cloud, or
- B: deploy your application on the Internet Computer.
The former is centralized and controlled by one organization and the controlling shareholders and regulators.
The latter is decentralized and controlled by the people owning the ICP tokens.
Of course, data centers will run the applications, and the owners of those data centers will be rewarded with the ICP coin.
It is straightforward to deploy an application on the Internet Computer. It may be simpler to deploy an app on the Internet Computer than deploying an app on AWS.
This is massive.
You don’t need load balancing. You don’t need to care about replication.
You don’t need to care about the concept of a database anymore. On your computer, you wouldn’t use a database to run your Python script. Instead, you’d use HashMaps, Sets, and Lists to store your data.
Similarly, on the Internet Computer, you use these same data structures to store your data, and the Internet Computer takes care of all of the distribution and data management.
Programming on the Internet Computer feels more like programming on your own computer. The infrastructure takes over the distribution effort.
But you can be sure that your application is 100% failure tolerant. It cannot be hacked by any single entity due to the decentralization.
This way, we can create true distribution transparency—one of the main ideas of distributed systems design.
User Management Issue
When creating your own app, you must sooner or later think about user management and authentication. You want to personalize your app and allow users to log in using their online persona.
If you host your application on a cloud owned by a company, you run into privacy and security issues. Your service cannot be trusted anymore as the user data is managed by multiple non-trusted organizations.
If you host your application on the Internet Computer, no single entity can tamper with it and you have complete control of all your data.
On top of that, implementing user management may be simpler on the Internet Computer as the user accounts already exist—you as a coder just need to connect the existing user accounts on the Internet Computer with your application and you’re ready to create personalized web applications such as social networks, search engines, and movie platforms.
The Internet Computer can be the next backbone of the Internet. And it is independent of governments, companies, and individual organizations.
Deploying apps on the Internet Computer will be much simpler than going the traditional route via TCP/IP, distribution, replication, synchronization, failure tolerance, and so on.
Solving these problems again and again by millions of developers is a huge waste of scarce resources and talent. The Internet Computer has the power to release these resources.
And in contrast to Ethereum, the Internet Computer is quite performant. You can run streaming apps like Netflix which is very hard for traditional Blockchains that are less scalable.
So, ICP solves the scalability and trust problems, as well as the governance problem. And it is already one of the biggest blockchains in the world in terms of market capitalization.
Where to Go From Here
If you want to learn more about these computer science concepts, check out my email academy where I teach you to program Python—and let me know in an email if you’re interested in further technical or economic concepts of the ICP.
Just subscribe to my email academy and send me a message by replying to one of mine:
While working as a researcher in distributed systems, Dr. Christian Mayer found his love for teaching computer science students.
To help students reach higher levels of Python success, he founded the programming education website Finxter.com. He’s author of the popular programming book Python One-Liners (NoStarch 2020), coauthor of the Coffee Break Python series of self-published books, computer science enthusiast, freelancer, and owner of one of the top 10 largest Python blogs worldwide.
His passions are writing, reading, and coding. But his greatest passion is to serve aspiring coders through Finxter and help them to boost their skills. You can join his free email academy here.