Private/unannounced channels should be the default setting in every node implementation when opening new channels. Users should have to explicitly choose to make a new channel public, and their node implementation should warn them what that means and what routing is.
Yes, is right that is not easy.
But many forgot to specify WICH TYPE of LN node they should run:
- PUBLIC - for public routing, that indeed require a lot of knowledge, resources and capital
- PRIVATE - only for private use, with few private channels, connected to good LSP and done.
I wrote several guides about these aspects, but who really want to learn more about Bitcoin MUST read.
Bitcoin is not for the weak, is only for the breave !
1. About nodes
https://darth-coin.github.io/nodes/nodes.html
2. About wallets
https://darth-coin.github.io/wallets/wallets.html
3. About merchants
https://darth-coin.github.io/merchants/merchants.html
4. About beginners
Discussion
Why?
Because private channels don't route other people's payments. Most people who need a node only need it for sending and receiving their own payments, and private channels do exactly that. Public channels are announced to the network and can route payments but unless you are going to dedicate significant funds to open larger channels and run a reliable routing node then it's unnecessary to have public channels on your node.