Critics of Apple's "Walled Garden" approach to iOS often complain about how much control Apple has over what developers can do with their mobile operating system. Not enough flexibility, too many rules, not open source and the complaints go on and on. However, the uniformity of the "Walled Garden" has some benefits for regular users and Jailbreak users.
Pictured above is a graph showing the incredible difference between iOS updates and Android updates. Apple has proven to support their iPhones across multiple iOS updates—major and minor—whereas Android handsets are often left out in the cold when subsequent Android OS updates are pushed out. If and when they do get updated, it isn't the responsibility of Google to provide the update, rather it is the carrier's to distribute out approved updates. Handset makers lack the complete control Apple does.
This incredible discrepancy hasn't improved. Google even promised in May that it would make an effort to put an end to the rampant fragmentation affecting Android devices. Looking at the table, Apple supported the original iPhone for three subsequent years after its release. The iPhone 3GS is in its third year after release and even runs the latest version of iOS. Android handsets on the other hand often ship with older versions of the Android OS, and are incredibly slow to upgrade. Some phones never even see the current version of Android. The HTC Aria has never—since it's release—ran the latest version of Android. Even when the Aria was updated the phone went from two versions of Android behind to just one.
This isn't a problem that plagues non-flagship handsets either. The HTC Evo 4G—released last summer and is still being sold—forced users to use an older version of Android for 6 months before being updated to the current version of Android (2.3 Gingerbread).
This fragmentation creates a headache for developers. Those wishing to product programs that reach the widest audience must produce multiple versions of their applications across multiple handsets with varying processor speeds, screen sizes, and memory. This forces developers to choose which version of Android to currently support, and whether or not to update their programs when a new OS comes out.
Granted Android is an open platform and infinitely customizable, this doesn't always equate to a romantic developer dreamland. The iOS platform, for all its attempts to be a Walled Garden ecosystem, will never be truly that. Apple provides developers and users who want to play by the rules with an ecosystem where they can make a lot of money, and do so with very little headaches. For the rest of us, those who like to think outside the box, all it takes is a little elbow grease to make Apple's iOS just as customizable as Android. This is why the Jailbreak Community exists.
Apple's Walled ecosystem is also why the Jailbreak community is so successful. Developers know the hardware, they know their programs are going to operate across hundreds of millions of devices without compatibility issues, and it lets them focus time and energy on producing great games, tweaks, and hacks instead of wasting time making sure everything is compatible across a million varied devices.
Obviously we would love for Apple to open up iOS and allow every tweak and hack access to the App Store. But, for all of its annoyances, and problems, the predictability, stability, and familiarity of each subsequent iOS release is more a blessing than a curse.