What's the best programming language for building on the Lightning Network?

- What is the best programming language to start, if you want to start with Lightning Network? You know, George, That answer is actually pretty flexible because Lightning Network nodes have now been implemented in a number of different languages.

Different Lightning implementations

The two most prominent are lnd by the Lightning Labs company, which is implemented in Go.

GoLang for building on Lightning

Go is a language created by Google. I've recently played a bit with Go. I did some very minor pull requests for lnd. It's a fairly easy language to learn and it keeps you rather disciplines and is easy to collaborate with.

C for building on Lightning

So that's one language you could learn. Similarly, c-lightning is written in C and is which is a very robust language. But it's also fairly low level language. Low level meaning closer to the hardware on your computer. Which makes it very efficient but also a bit unforgiving when it comes to certain types of bugs. However, and this is where it gets really interesting.

c-lightning plugins and Python

C-lightning has a series of plug in capabilities that allow you to plug in directly to both the processing pipeline of the peer-to-peer network as well as the event driven engine that allows you to process messages, as they're going through the state machine and react to events on the lightning network. The plugins can be written in Python. And that makes it very easy to jump in with a language like Python, which is one of my favorite languages, and probably the one I'm most comfortable with. So, there are some suggestions there. You could start with writing some plugins for the c-lightning system in Python, or you could learn a bit of Go and read the source code of lnd. (upbeat music) If you enjoyed this video, please subscribe, like and share. All my work is shared for free. So if you wanna support it, join me on Patreon. (upbeat music)