I find Android having locked bootloaders to be dangerous in the long term and just very annoying in the short term. The only solution is to only buy Google devices.
iOS is a lost cause, most likely, since it won't even let users run whatever they want.
On the contrary, it seems the big Android manufacturers start to understand the advantages of letting users unlock the bootloader. There are official tools from HTC[1] and Sony[2], Motorola seems to follow suit[3] and Samsung's dragging its feet in the same direction with the Galaxy S3[4].
iOS is a lost cause, most likely, since it won't even let users run whatever they want.