On the "paying for a phone over the contract" point.
I'm sure I'm not the only one paying 0% for my phone over the contract.
My phone when I bought it would have been about £460.
I leave you to work out 460÷24.
I've just upgraded to an S9, on a 24 month contract at £33 p/m and no upfront cost.
The handset is currently being sold for ~£649-£699, which means that over the contract period i'm paying for the handset, plus approximately ~£3.87-£5.95 p/m for unlimited calls, texts and 15GB of data.
I could have, alternatively, paid for the handset outright and then signed up for a SIM only deal for ~£20 p/m for a similar package (as I was on previously and is the ball-park currently listed on Carphone Warehouse) and wound up paying ~£337-£388 *more* over the course of a 24 month period.
My mum has/had always drilled into me the same message as 21stCenturySchizoidMan; "Don't buy something until you can pay for it upfront". For the most part i've lived with that mentality, but it's not always the smart way to go.