I mean say what you want about their current products, but their entire deal has been putting software on devices that for the vast bulk of users doesn't suck.
His problem is that he is on T-Mobile.
On AT&T, Verizon or Sprint, he could've just signed a contract and gotten an iPhone 5C for free* (so-called) during various promotions. Thanks to T-Mobile's spin campaign of "We eliminated contracts because the public is too stupid to realize a finance agreement is still a contract", purchasing a phone from them means financing or coughing up the full cost of the phone. Hence, you have the current situation where T-Mobile's service is only cost competitive against the other big 3 carriers if you buy a cheap phone or happen to already own a phone that is compatible with their network.