Lightning network avoiding bad channels Lets say I open a lightning network channel and the other party goes offline. Lets say I haven't actually used the channel yet. What if I want my bitcoin back from that channel so I can use it.

I payed an on chain transaction fee to open the channel, I can close the channel again but will have to pay another on chain transaction fee to close the channel. Effectively I will have payed for two on chain transactions without actually transferring any bitcoin.

If I go to pay and the other end of my channel is down. It would take me two on chain transactions to be able to make the payment (one to close the channel and one to open a new one) my instant and almost free payment has now become extremely expensive and slow.

What steps do the lightning network implementations take to limit the impact of this kind of thing? When your lightning wallet choses a node to open a channel with, does it take into account how reliable that node is, IE how long it has been online for / how much down time it has had?
Your concern is genuine but the decision to open a channel is not a part of the core specifications. The decision to open a channel with a node is up to the user.