This is indeed an interesting thread.Kudos fellas,very informative.I hope all the technical answers at least are kept updated in the first post (might as well as one of the mods to reserve couple of posts for the thread).
Am I allowed to ask questions ? If anyone want's to,give the below question a try.If the answers is convincing,I'll leave some merits.

My question :
How to calculate transaction fees before sending bitcoins ? Wow that is one tricky question.. i will give it a try:
Since we know fee are calculated per byte. So lesser bytes mean lower fee. That's how miners calculate!
I presume your question is from the consumer (sender) prospective. If we are using segwit fee be can reduced to half. Also most wallets don't tell the size of the transaction at all, so i will leave the exact calculation a side.
On average single transaction usually have 1 input and 2 outputs which will be =>226 bytes,
Now we must know what is average/median fee per byte in recent block to get this we have to get from somewhere like "
https://bitcoinfees.earn.com/" => i got it 30 satoshis/byte (fastest and cheapest)
If I multiply it with bytes 226 x 30 = 6780 satoshis = 0.0000678 => 0.79 US Dollar (fast & min)
So can that's lowest, now from the same website, i can the max 181 satoshis/byte
If I multiply it with bytes 226 x 181 = 40906 satoshis = 0.00040906 BTC => 4.74 US Dollar (max)
May be i went into too technical details
