The fact is that these banks only make these outragous charges cos they can get away with it in the majority of cases and make more millions. Most people dont kick up a fuss and just ignore them. They make a fortune out of people that cannot afford it.
I agree with the principle of charging a fair amount if it is the customers fault, but the amount is not usually fair (£38 is just silly) , it is not always the customers fault and they dont always notify people in advance that they will be charging X amount on a certain day.
With regards to making a complaint, if anyone needs any advice on this, im a complaint handler for a large insurance company so im happy to assist where i can.