Friday, January 16, 2009

HIG Nazis

I've been hearing a lot of stories lately about applications getting rejected from the App Store process for relatively minor violations of the HIG. We're talking subtle things, like incorrectly highlighting a table row, or putting the wrong kind of image in a button on a navigation bar. This seems to be a relatively recent thing, as there are many apps on the App Store that violate the HIG quite blatantly.

I'm a big believer in developers reading and knowing the HIG. But, the "G" stands for "Guidelines" folks, not "Rule" which, as you probably know, begins with an "R". I really am not comfortable with Apple enforcing the HIG this strictly. It's confining. It's like what the French try to do with their language through the Académie française - they stifle the ability to evolve by insisting on only "proper" usage at all times.

You have to give some room for change. You have to afford people the ability to bend or break the rules when there is a good reason to do so, and you have to realize that you may not always recognize when someone has a good reason.

We had this on the Mac. Because we could distribute applications directly to the consumer without Apple's intervention, we had the freedom the be non-standard. Companies that did it with impunity — without good reason — either failed, or learned fast. If we hadn't had that ability, today we wouldn't have many of the controls we are accustomed to on the computer, from sliders to steppers to tabs to combo boxes, many controls originally weren't part of the Mac HIG (and its predecessors). Many of these were non-standard elements at one time. The ones that worked well, survived and became commonplace. The Mac community found the right balance between standardization and innovation, but right now, it doesn't look like the iPhone community is going to have the same opportunity to move the platform forward.

If this keeps up, the platform will suffer for it.

Edit: Not to mention stuff like this.



8 comments:

Eric Busch said...

I tend to agree with you. There are many apps the app store that I might not see the merit of or ever want... but why not allow them? It is the choice of the user, is it not?

LKM said...

Apple's "rules" for allowing or disallowing apps are literally insane. It's impossible to predict what they're going to do. They have zombie shooters and world war 2 games, but something like Gabo (a game where you interact with an ape on an island) or a book with some naughty words are rejected. They reject applications for having a non-HIG-compliant image on a button, but they allow apps with entirely custom user interfaces.

It's literally impossible for developers to figure out whether their app will ever make it into the store.

cjr said...

...stifle the ability to evolve...

You may be interested in this podcast on the stifling of evolution, taken from the perspective of language!

Michael said...

no swear words in dictionaries either. madness.

Mostly Torn said...

The Apple review process is totally inconsistent and arbitrary. Having successfully submitted over 20 apps, I've had my share of completely unexpected rejections for really nit-picky things.

Here's an example. The most recent rejection for me was a complaint that the app's 57x57 icon didn't match the larger 512x512 one that appears as the larger image in the iTunes store. What the heck? There's not even anything in the HIG that says they have to match. And it's not like they were completely different, they used the same color scheme, both had the same company name as part of the image, etc.

The most frustrating part of the review process is there isn't any appeal process. As part of the SDK agreement, Apple reserves the right to reject an app for *any* reason, so you basically have to do whatever they say and then resubmit.

ScottYelich said...

I know there are sites that list all the (crazy) reasons for rejections -- so I won't go over them here. I, myself, have had an app rejected 7 times... with some things being quite arbitrary. There are rejections for when the app doesn't (seem to) match the written description. Of course, there are rejections for descriptions that are too short. I guess there's a 700 char limit, but that's not really enforced. Finally, the reason for this comment, is that I tend to recommend to clients that they use custom controls -- with the rationale that Apple doesn't have a HIG for those and there is less grounds for rubber-stamp-rejection. However, I do agree that the HIG is a set of "guidelines" and it's also being enforced quite arbitrarily.

h4ns said...

What youre saying is completely true. I know that everybody must say the same thing, but I just think that you put it in a way that everyone can understand. I also love the images you put in here. They fit so well with what youre trying to say. Im sure youll reach so many people with what youve got to say.

Arsenal vs Huddersfield Town live streaming
Arsenal vs Huddersfield Town live streaming
Wolverhampton Wanderers vs Stoke City Live Streaming
Wolverhampton Wanderers vs Stoke City Live Streaming
Notts County vs Manchester City Live Streaming
Notts County vs Manchester City Live Streaming
Bologna vs AS Roma Live Streaming
Bologna vs AS Roma Live Streaming
Juventus vs Udinese Live Streaming
Juventus vs Udinese Live Streaming
Napoli vs Sampdoria Live Streaming
Napoli vs Sampdoria Live Streaming
Fulham vs Tottenham Hotspur Live Streaming
Fulham vs Tottenham Hotspur Live Streaming
AS Monaco vs Marseille Live Streaming
AS Monaco vs Marseille Live Streaming
Alajuelense vs Perez Zeledon Live Streaming
Alajuelense vs Perez Zeledon Live Streaming
Technology News | News Today | Live Streaming TV Channels

h4ns said...

What youre saying is completely true. I know that everybody must say the same thing, but I just think that you put it in a way that everyone can understand. I also love the images you put in here. They fit so well with what youre trying to say. Im sure youll reach so many people with what youve got to say.

Arsenal vs Huddersfield Town live streaming
Arsenal vs Huddersfield Town live streaming
Wolverhampton Wanderers vs Stoke City Live Streaming
Wolverhampton Wanderers vs Stoke City Live Streaming
Notts County vs Manchester City Live Streaming
Notts County vs Manchester City Live Streaming
Bologna vs AS Roma Live Streaming
Bologna vs AS Roma Live Streaming
Juventus vs Udinese Live Streaming
Juventus vs Udinese Live Streaming
Napoli vs Sampdoria Live Streaming
Napoli vs Sampdoria Live Streaming
Fulham vs Tottenham Hotspur Live Streaming
Fulham vs Tottenham Hotspur Live Streaming
AS Monaco vs Marseille Live Streaming
AS Monaco vs Marseille Live Streaming
Alajuelense vs Perez Zeledon Live Streaming
Alajuelense vs Perez Zeledon Live Streaming
Technology News | News Today | Live Streaming TV Channels