Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Introduction to the payments and the two networks #62

Closed

Conversation

johnsBeharry
Copy link
Contributor

@johnsBeharry johnsBeharry commented Dec 4, 2020

type: page
chapter: Payments
title: Networks
permalink: /guide/payments/networks
file: TBD

Problem

Payments can be facilitated on both the bitcoin blockchain and lightning network.

How should these two networks be referred to?

  1. Bitcoin is usually described as a blockchain.
  2. Lighting Networks is described as a "payments network".
  3. Sometimes they are referred to as onchain / offchain
  4. Off-chain can also mean side-chain e.g. liquid

Assumptions about the reader

  1. Brand new to bitcoin
  2. Thinks bitcoin is "too slow" for payments
  3. Thinks bitcoin is anonymous
  4. Is not technical and may get easily overwhelmed

Solution

  1. When mentioning bitcoin's onchain speed refer to the security and finality of transactions as the reason.
  2. Made analogies using familiar concepts like banking and mobile money
  3. Lightning Network is the technology. Lightning Payments is the user benefit. Focus on the user benefit.

Result

Preview the introduction page of the payments section.

Seeking feedback and concept acknowledgments.

@pavlenex-design pavlenex-design mentioned this pull request Dec 5, 2020
@johnsBeharry johnsBeharry self-assigned this Dec 5, 2020
@pavlenex
Copy link
Contributor

pavlenex commented Dec 9, 2020

Some general feedback, I understand this is still WIP in a way, so perhaps some of the points are already considered and some points may come from my misunderstanding on what's covered in other section of the guides.

  1. After Payments some context should be given on what this page is about.
  2. Transaction goes straight into on-chain vs lightning which I think is very big leap. I suggest we first explain:
  • What is a transaction?
  • Input and outputs
  • Transaction fee (can be used as a pointer to distinguished on vs offchain later on)
  • Types of transaction
    • Onchain
      • Inputs vs output
      • Transaction verification
    • Off chain (Lightning)
  1. Not really a fan of lightning analogy, but you mentioned in private you're not keen on it either.
    This is very rough structure and needs quite a bit of discussion, depending what we're trying to achieve.

Random: The Lifecycle of a Transaction by Andreas is a concept we can also break down here if you think it's needed.

@yantiarifin
Copy link
Contributor

Regarding the two networks, a high level explanation of why there are 2 networks may be helpful, otherwise a new user may feel they are not technical enough for bitcoin. Additionally any opportunities to use words related to money transactions which any user would understand may be helpful. For example sending and receiving instead of input and output. Also clarifying that a verification is a receipt, etc. As always, visuals would help such as flow diagrams of how transactions are processed. Would there be a brief primer on what a wallet is? It think it would be helpful too.

@GBKS
Copy link
Contributor

GBKS commented Dec 10, 2020

To add on to @pavlenex comment, I'd start one level higher at the lifecycle of a transaction in the context of human interaction. Then it's easier to dive into each one of those interactions (invoice creation, transaction construction, first confirmation...).

Here's a quick mock-up:
transaction-lifecycle-201210

@GBKS GBKS added Copy Task is about improving text. Design Task is about designing something. labels Dec 10, 2020
@johnsBeharry johnsBeharry changed the title docs(payments): add intro page Introduction to the two networks and their use cases Dec 11, 2020
@johnsBeharry johnsBeharry changed the title Introduction to the two networks and their use cases Introduction to the payments and the two networks Dec 11, 2020
Copy link
Contributor

@pavlenex pavlenex left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great progress Johns 🚀
Since I wasn't aware on the state of the PR, I've made some minor suggestions.

guide/payments/introduction.md Outdated Show resolved Hide resolved
guide/payments/introduction.md Outdated Show resolved Hide resolved
guide/payments/introduction.md Outdated Show resolved Hide resolved
guide/payments/introduction.md Outdated Show resolved Hide resolved

#### What about privacy?

Even though all transactions are stored publicly, there is no personally identifiable information attached to them. Privacy is still super important though since every time you make a payment the person receiving can see where you funded that transaction from, as you would be able to trace which address they spend those funds.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A suggestion but you may want to break this lengthy sentence down into a few shorter ones to make it easier to follow who's doing what.

Suggested change
Even though all transactions are stored publicly, there is no personally identifiable information attached to them. Privacy is still super important though since every time you make a payment the person receiving can see where you funded that transaction from, as you would be able to trace which address they spend those funds.
Even though all transactions are stored publicly, there is no personally identifiable information attached to them. Privacy is still important though since every time you make a payment, the person receiving can see where you funded that transaction from, as you would be able to trace which address they spend those funds.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I am starting to think that we need a section that explains this more. The fact that I can see the history of your bitcoin, does not mean I can make sense of it. How do I know who is behind each address? It takes a huge effort to deanonymize addresses, so I think it might be helpful to clarify this so people are not overly paranoid.

I'd also be interested in some more data in how effective privacy-preserving techniques are. Does avoiding address re-use make me 99% safe from chain analysis? Or is mixing to an anonymity set of 50 the standard?

Copy link
Contributor Author

@johnsBeharry johnsBeharry Jan 16, 2021

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@GBKS Agreed we need to have a section on privacy and security. There are not many standards to work with on this front though, and it's a still nascent field, esp. on the UX side.

Unfortunately even with carefully selecting UTXOs to spend, you may still end up using those at an exchange which is KYCed. Or someone else may doxx one of your addresses you shared with them by publishing it online. So there's so silver bullet for privacy, it's also something thats not really quantifiable.

Also, it is worth making people more paranoid in my opinion. The mere fact that we struggle with it currently and we are in the know, interacting with more advanced tools than the wider population is aware of means that we're taking autonomy from the users.

I'm not going to shy away from it especially in the payments section either, ideally its something thats included in each section.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@GBKS I was also thinking some of this content can also live in the Getting Started. I'm fine with moving some more generally applicable parts over there and link over to it.


## Bitcoin is not too slow for payments

Transactions made on-chain can take minutes or days to confirm — depending on the fee you pay. This is because they get secured by the entire network of nodes and miners which exchange transactions they receive from wallets and other services with each other. Every 10 minutes miners validate the payments within the transactions and publish a block. For this service, they typically take the transactions with the highest fees.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This seems a bit techy. What's on-chain? Did reader had a resource before this to intro themselves with the concept, if so then it's fine.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Might be also good to put this in perspective with the traditional banking system. From the Wells Fargo FAQ:

Payments to your Wells Fargo credit account from a non-Wells Fargo account usually take 3-4 business days to complete.

So yes, paying with credit card at the grocery store is a bit impractical. But for many other uses, it's pretty hella fast for a global payment network.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@pavlenex do you think the intro of this page would be a ok place to introduce it?

@GBKS I kind of have something similar below:

This is may not be suitable if you want to make a small payment to a vendor at your local market — but if you're making or receiving a payment from someone across the world the benefits are made very clear as the current banking and financial system can be quite restrictive, and expensive for some.

I learned that the local bank transfer speed / cost vary quite a bit globally. For example within Indonesia and Nigeria payments between any bank is instant, but in other places it could be 2-5 days as you mentioned. The one that always takes long is with the SWIFT network though. See next line

This is may not be suitable if you want to make a small payment to a vendor at your local market — but if you're making or receiving a payment from someone accross the world the benefits are made very clear as the current banking and financial system can be quite restrictive, and expensive for some.

Copy link
Contributor

@pavlenex pavlenex Jan 15, 2021

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@pavlenex do you think the intro of this page would be a ok place to introduce it?

Good question. Personally, I'd keep it separate as user dives deep into the guide. I am scared that we may overwhelm people with the concept in the introduction. Or perhaps we want users to be aware of this right away?

I'd explain the LN once basics of the on-chain are layed out. I kinda like the structure Daniel suggested. But I notice that he also pushes into the intro. What is your view on this, @johnsBeharry? I'm sure you've spent way more time tinkering on this, so if you'd like to intro it, let's do that.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

During conversations developing/testing payment content in the mentorships calls I've had, participants would quite early unknowingly raise questions relating to lightning (speed and cost etc). This is the point where some people even look at other networks because "bitcoin is too slow" (hence why I put that heading). I tried to capture the flow of those sessions on this page. It doesn't mean I will immediately be writing up lightning content though that research is still on-going, but giving awareness of it at this point makes sense to me so the reader has a more fuller understanding of the ecosystem.

During the design process people first Googling screenshots of payment and bitcoin apps. I even spoke with a designer who designed a bitcoin wallet but never used one themselves.

Admittedly, this page has grown quite long, and the reading experience certainly needs to be improved (i hear you on more visuals for sure). Perhaps it could also be moved entirely to guide/payments/networks or guide/payments/getting-started I'm happy if we also move more generally applicable parts over to guide/getting-started then payments could focus more on the user flow. Thoughts? @GBKS @pavlenex

The Lightning Network is part of the bitcoin ecosystem that will power this economy. It allows for near-instant payments at much lower fees. This is possible because extends bitcoin in a way that does not record each payment on-chain.

#### A Network of Payment Channels and Settlement

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Probably some sort of visual of LN/Channels is needed here, as at this point it gets quite hard to follow up if you're newbie imo, especially since this is intro page.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Agreed. Maybe describe it as another peer-to-peer network on top of Bitcoin. It's more flexible and allows for direct payments that don't require the whole network to confirm and process them. And that's how it manages to be faster and cheaper. Or something like that.

Copy link
Contributor Author

@johnsBeharry johnsBeharry Jan 15, 2021

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@pavlenex yesss time for abacus beads? 😄

@GBKS check the following paragraphs. I attempted to explain why it is faster there, and talk about two people locking up funds on-chain, then sending back and forth with one another. Then talk about final settlements on-chain. Can be better worded?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Quite honestly abacus beads were so helpful when I tried to understand how channels works so go for it 😄

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Abacus time!

(added an illustration)

@johnsBeharry
Copy link
Contributor Author

Closing off this issue as it's become stale. The content will be adapted in some way in the new proposed payments section structure #98

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Copy Task is about improving text. Design Task is about designing something.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants