Part 3: Web Apps vs Distributed AppssteemCreated with Sketch.

in #blockchain6 years ago

This is part two of a (likely) seven part series on Bitcoin, Blockchain and Smart Contracts called “The Bitcoin Rabbit Hole”. Here is Part 1: Catch the (Bitcoin) Rabbit and Part2: Beneath the curtain .

While the public has been hypnotized by Bitcoin an entire industry is being reorganized. The entire software industry is shaking: we are at the forefront of a revolution as big and deep as the invention of the world wide web. To truly comprehend the impact of blockchain and smart contracts on banking, business, and across industries, you need to understand how business processes, financial transactions, and software architecture play together. You don’t need to become an expert, but you will have to understand the basics. If you are not a techie don’t be scared, it’s easier than you think (and if you are one don't blame me for over simplifying here ;))

Let’s start with traditional software architecture.

Software architecture has gone through many different generations. The most modern and most common architecture is the so-called three tier architecture. Pretty much every web based application (or app) and web page from Gmail to the New York Times (including the site where you are reading this article) is built with this architecture.

These apps not only allow humans to interact with them, but also allow other computers to talk them using APIs (application programming interfaces). The best way to image this is to think of another software system becoming a user that does not need a graphical user interface where it can press buttons.

Three Tier business software in action

Now let’s look an example of a fairly simple business process, powered by three tier web applications: the marketing agency Acme is developing a website for the customer Innotech.

Let’s assume Acme establishes a contract with Innotech:

  • Acme will charge $20,000 for the website
  • Innotech will pay 50% upfront and 50% when project is finished

As a result, this is what the entire invoicing and payment process could like

  1. Acme sends a contract for signature to the customer
  2. Innotech signs the contract
  3. Acme issues the invoice for the upfront payment
  4. Acme sends the invoice to Innotech
  5. Innotech receives the invoice
  6. Innotech puts the invoice it into it its accounting system
  7. Innotech makes the payment with a credit card
  8. Acme delivers services (the website) to Innotech
  9. Acme issues an invoice for the remaining payment
  10. Acme sends the invoice it to Innotech
  11. Innotech receives the invoice
  12. Innotech puts the invoice it into it their accounting system
  13. Innotech makes the payment with a credit card

How many companies are involved in this process?

  1. Innotech: the customer
  2. Wells Fargo: the customer’s bank
  3. Mastercard: the customer’s credit card
  4. Stripe: Acme’s credit card processor
  5. SVB: Acme’s bank
  6. Acme: the provider

Let’s now look at what is happening under the hood, on the systems level. And to keep things simple we will consider only the process for the upfront payment (steps 1 to 7). For the remaining payment the steps simply repeat.

This simple process involves nine manual operations by two to four different people across ten different software systems. Two process steps are integrated by email and there is at least one in-house integration, as well as three integrations across company borders. In total there will be more than 50 transaction across the different application layers. In the best, simplest, hypothetical case.

The process above usually takes several days. Sometimes several weeks. The financial providers charge a 1-3% in commission on each step. On top of that, Acme and Innotech build, buy, and manage their own systems and employ administrative staff to handle them. The entire process is prone to human and system error. And last not least, money is caught up in between financial institutions for several days where it can not be leveraged by Innotech nor Acme.

Meet the Blockchain, Smart contracts and DApps

Now that you have a better understanding of how web apps work and how they power businesses, let’s look Distributed Apps or DApps. DApps are very similar to a web apps. The Presentation Tier uses the same technology to render a page: html, js, css. The one critical difference is that instead of using an APIs that connects to a database, there is a smart contract connecting to a blockchain.

On the bottom of this three tier architecture is the storage, in this case the Blockchain Just like a database the Blockchain stores data and records transactions. For example, every time someone buys a bitcoin the transaction is recorded and stored in the blockchain. While a database usually resides on someone’s server, the blockchain is distributed along all participants on the Internet without any central control. This means all participants know the current status of the blockchain with all of its transactions. It is impossible for a anybody to change the records on millions of computers simultaneously. This makes blockchain incorruptible and un-hackable.

In the middle, the logic layer, is the smart contract. Think of a smart contract as a normal business contract where two or more parties engage into an agreement. It defines how value is exchanged between parties and under what conditions.

For example we could reflect our previous web app example also like a smart contract:

  • Acme will charge 10,000 coins or tokens for building a website
  • Innotech pays 50% upfront and 50% when project is finished

All of this might sound technically interesting, however, the impact only becomes obvious when you look what happens when you apply this new technology to business processes like our example case. The result is astonishing.

Because all actors and interfaces operate over the same logic layer (the smart contract) and the storage (the blockchain) this system eliminates multiple applications, integration points. The amount of transactions is reduced from 50 to five or one order of magnitude.

And most notably the financial intermediaries - Wells Fargo, SVB, Mastercard and Stripe - have disappeared together with their transaction cost. And the money flows in real time.

Here is a table that allows to appreciate the difference side by side

To get an idea on how this new technology can impact an entire industry, simply assume Inotech and Acme (from our example) have multiple subcontractors and do multiple payments per month. The the complexity and amount of transactions starts increasing exponentially when using traditional web apps.

The reduction in complexity (or amount of transactions) of this technology can be one, maybe two orders of magnitude.

Another thing to understand about smart contracts to realize the potential for disruption: smart contracts have their own address, just like any user. This in turn means contracts can participate in the transactions and own tokens, just like any human user. This technical feat opens the opportunity to transform contracts into intermediaries or escrow holders. And since all contracts and the values stored in blockchain are public this intermediary can be trusted by both parties.

In our example scenarios the traditional contract could now easily be changed into a Smart Contract with a trusted intermediary or escrow:

Acme will charge 10,000 coins or tokens for building a website

  • Innotech pays 50% upfront to the contract
  • The contract transfers the tokens to Acme when both, Acme and Inotech confirm

Finally, writing smart contracts (like our example above) is simple through languages like Solidity for Ethereum. Solidity, in many regards, reflects business arrangements or legal contracts like no other programming language. Even if you are not a programmer you should be able to read the example below.

This combination of easy to build and easy to run make this technology potentially so disruptive.

Tim Berner Lee’s genius idea was to combine Hypercards with the Internet protocol resulting in hyperlinks and the - extremely easy to use - hypertext markup language (HTML) that linked information across computers, organizations and borders. This in turn sparked a revolution and gave birth to a new generation of businesses including Google, Amazon and Facebook.

Blockchain and Smart Contracts combine the Internet protocol, existing web technology and the idea of distributed storage to link transactions across computers, organizations and borders. This in turn is producing another revolution: The tokenization of business

Here is what I am working on next:

  • Part 4: Disrupt everything. See how blockchain and smart contracts will potentially disrupt every business and industry, and what roles do the different blockchain platforms play. Get the economics and new business models that emerge.
  • Part 5: Chasm, bubbles and Cons. Understand the main barriers to mass adoption. Learn why there are some many hyped projects. Predict why it will implode. Or not. Beware of the scammers and thieves.
  • Part 6: The race is on. What makes a good currency and/or a good platform. What have we learned from the last hype cycles including the web 1.0 and web 2.0. How to pick winners.
  • Part 7: Back in the Meadow. Final thoughts, recommendations and open questions.

Again, if you want to go back to the two previous parts... you can find them here: Part 1: Catch the (Bitcoin) Rabbit and Part2: Beneath the curtain .

And ff you want to dig deeper I suggest you read through all articles in the related Reading List


look close with an open mind with what these people are doing with open source smart contracts and passive income.

For future viewers: price of bitcoin at the moment of posting is 8064.00USD

Congratulations @edbong! You received a personal award!

Happy Birthday! - You are on the Steem blockchain for 1 year!

Click here to view your Board

Support SteemitBoard's project! Vote for its witness and get one more award!

Congratulations @edbong! You received a personal award!

Happy Birthday! - You are on the Steem blockchain for 2 years!

You can view your badges on your Steem Board and compare to others on the Steem Ranking

Vote for @Steemitboard as a witness to get one more award and increased upvotes!

Coin Marketplace

STEEM 0.28
TRX 0.12
JST 0.032
BTC 68797.43
ETH 3730.18
USDT 1.00
SBD 3.76