Let's consider the following scenario.
I finally persuade my local grocery store to accept crypto payments. Because of the scalability constrains, we can't use regular on-chain transactions. I have no intentions to wait at the cashier's for 10+ minutes for the transaction to confirm. I am also not interested in paying $10-20 in fees for a fast next-block confirmation, and I need to go and put the damn beer in the fridge. The store on the other hand, won't take 0-confirmation transactions because they know about the dangers of double spending.
The solution - the lightning network.
We open up a payment channel, I do my weekly grocery shopping and make my way to the cashier. When I try to pay, I realize that I cannot do it because:
1. Nothing can be received immediately after creating a new payment channel, as ‘room’ for incoming funds has to be made by spending some funds first. A payment channel can be thought of as a full bottle of water: in order to pour something in one first has to pour something out.
1. How do I pay for my groceries if the store can't immediately accept LN payments?
2. Has this been changed and configured differently in the meantime?
3. Are the bottles full at both ends of the payment channel or whose bottle is empty as soon as the channel is created?