Introducing the Lightning Network
The Lightning Network is a payments layer built on bitcoin. It enables very fast, very secure, and very inexpensive payments, and it might change the world in the near future.
This is an opinionated guide
This guide is strictly based on my own experience as a developer, node runner, and student of economics.
This guide is opinionated, and intended to be practical instead of theoretical.
The first part, where I discuss the basics of Bitcoin and the Lightning Network, should be understandable by everyone.
As I get into the finer details of running a node, it gets a bit more technical.
There is a Github repository for this guide
The LND-With-Docker repository contains all the code used in this tutorial. We do recommend you follow the tutorial in the order presented instead of trying to hack your way through it with just the Github repository.
Why I wrote this guide
The Lightning Network has only been running for about five years, and most of the documentation is highly technical and not-so-fun to read.
The existing documentation tends to intermix stuff you definitely need to know (like basic concepts around payment channels) with stuff you almost certainly do not need to know, like details about the "wire protocol".
My background is as a web developer, using frameworks like Ruby On Rails and React, which typically have really good and complete documentation, which can be understood even by fairly dense developers such as myself.
I noticed that the available tutorials for the Lightning Network were nowhere near as a "friendly" as I was used to. So I figured I would write some docs myself.
OK, lets get going.
Let's start at the very beginning, with a refresher on Bitcoin...