Hello fellows,
I am a Computer Science and Maths student who is thinking about his Bachelor Thesis.
I would love to contribute with my time & knowledge to improve the UX of the Bitcoin Lightning Network. While running my own node I ran occasionally into issues.
With this post I would like to get some ideas / inspiration etc. what I could research about that can make a difference in the real world.
I have solid experience Fullstack development (work experience) and data science (university).
My idea: I am thinking that analysing how your node is performing on the Lightning Network and giving the user individual suggestions (maybe with individual reasoning for more education) what to improve could, increase the UX.
I could code a software that uses the lncli API:
  • describegraph
  • getnetworkinfo
  • feereport
  • walletbalance or manual input how much sats one is willing to put into it
  • listpayments
  • maybe some more metrics
The software constructs the graph around your node, analyses your payments and runs some test payments, not actual payments (more like probing). Maybe I will come up with some smart strategies to find cheaper routes or peers it might be worth connecting to, to reduce failed payment and lower the fees. When finished the user receives a list of suggestions (with reasoning).
I am curious what you think about it, maybe you have already tried something similar or you know some books/papers etc to dive in.
Thanks for your responses and have a great easter holiday!
Check also Chaincode curriculum. A lot of good information there. https://github.com/chaincodelabs/lightning-curriculum/
reply
Thanks for the fast response, looks interesting. I will look into that. Also a big thank you for your guides!
reply
I am glad that your read my guides. Is not much compared with the ocean of documentation out there, but at least is my humble contribution to the Bitcoin world, helping new users to find the right path.
reply
500 sats \ 2 replies \ @fiksn 29 Mar
I'd say it's definitely a very nice idea for an academic project. My book recommendation is just Mastering the Lightning Network (https://github.com/lnbook/lnbook).
It's unfortunately not as simple as you imagine. Trick is your lightning node implementation already does a lot of trickery to chose the optimal path gauging between reliability and price. I mean there is always some room for improvement but the low hanging fruit is gone I am afraid.
What you could do is say ok my payments always go through that route. If I connected to that node directly I could leave out all those nodes and save that much on routing fees. But opening a new channel is an investment. You don't know how the network will evolve in the future. Perhaps the nodes you planned to skip will drastically lower their fees and you actually wasted money on transaction costs. So you also can't make such a solution commercially viable (since you cannot tell a user I saved you 100k sats and now I will take my cut of 10k sats).
Perhaps you could charge per advice. Sort of like investment advice. But OTOH we all know that bitcoin is the best investment and similary the best advice is simply to open a channel if you have a real life connection with the entity. For example if the other node is a bar where I drink it makes sense to open a channel because I am going to pay mulltiple times. But if somebody just says hey this node is the best based on this criteria this is more like stock picking. Ok somebody did some analysis so it's probably better than random choice but it's still something that might never pay off.
reply
Hi, thank you very much for that valuable information ! I start to understand the question I had in my mind the whole time: What I want seems too straight forward, there must be a reason why this does not exist (yet).
I also have some doubts to pay services (mostly subscriptions) who claim to have statistics etc. on how I should manage my node. My goal is to have something, everyone could clone/fork and run locally for themselves. I get that in the end the best thing you could have is knowing which nodes (services) you are going to use (buy from) regularly.. If you might have any other "pain points" that might seem solvable in a Bachelor Thesis, hit me up
reply
120 sats \ 0 replies \ @fiksn 31 Mar
Back when I was working for a lightning company we had a list of interesting research questions. On top of my head one of the things were routing fees.
So what would be interesting to know is how much did fees rise in the last year, what is the distribution (for instance how much more do top routing nodes charge in comparison to other nodes) and whether there is any correlation between bitcoin network transaction costs and fee schedules on lightning.
Another pain point (at least for me as a hobbyist) are minimum channel sizes. We tried to measure them by trying to connect to every node and deduce from error replies what the minimum channe size is and show that through an explorer. An open-source tool for that or even using that as a consideration with autopilot mode would be great.
reply