It's maybe just my bad luck but BA are the worst airline I've ever used and I've had to use them numerous times.
Last time was on a return leg from Rome just a few weeks ago. It was late, cabin was deeply dirty (just just a few bits of rubbish from the outbound flight) and there was hardly any food on board (ran out of M&S sandwiches by row 5).
Compared to the EasyJet we flew out on. The Easyjet was cleaner, had more legroom and the food was far better quality for the same price.
I get that they are based in the UK and the planes will be cleaned overnight and restocked in the UK. But it was as if BA was unaware that their planes would fly back from where ever they flew to. That seems to be my predominant experience of BA, everything is a surprise. When a plane had a fault it was as if no plane had ever had a fault before they had no idea what to do or how to tell passengers. When the passengers complained it was like they'd never had a complaint before. It's not comforting to see an airline rep wander about shouting "I don't know what to do".
I guess their staff are just thrown in with no training. I just avoid BA now if possible, they're shit.