| Comments

Ok, this is getting ridiculous.  First the removal of the ‘I Am Rich’ application (which whatever your thoughts on the app itself, it didn’t violate any rules, just that the powers that be at Apple didn’t like the pricing scheme), and now others are being prevented from joining the AppStore.  Here’s the latest two I’m aware of:


Podcaster is a native iPhone app developed by someone in the Apple developer program and not using anything that isn’t permitted in the terms and conditions of the SDK.  It provides the ability to search/add/download podcasts from your iPhone without having to have any software on a desktop sync for updated downloads.  The developer, Alex Sokirynsky, has let the world know of the reason his app was rejected by the AppStore:

“Since Podcaster assists in the distribution of podcasts, it duplicates the functionality of the Podcast section of iTunes.”

Actually it provides more functionality, Apple…is that your problem with it?  That users are able to add new podcast subscriptions from their iPhone and not wait to get to their iTunes sync machine because you don’t allow guest syncing from iTunes?  And so what if it duplicates the podcast section of iTunes?  This is an iPhone app, not an iTunes extension.


The latest to get hit is MailWrangler, a native iPhone app that enables access to GMail accounts.  The developer submitted the app on July 17th and received a reply more than 30 days later indicating:

“…Your application duplicates the functionality of the built-in iPhone application Mail without providing sufficient differentiation or added functionality, which will lead to user confusion…”

There was also other feedback given to the developer, Angelo DiNardi, that seemed appropriate (no way of editing the account) to which he agrees and seems like open to fixing.

So the problem seems to be duplicity of features according to these two rejections.  Really?!  So all those calculator applications (currently over 30 doing a search on ‘calculator’) don’t duplicate the built-in calculator functionality?  What about the 10+ weather applications that seemingly provide the same features as the built-in Weather application?  What about the StockWatch app ($2.99) that provides what looks like identical functionality of the built-in Stocks application?


C’mon Apple, this is getting ridiculous.  Your are letting the likes of “DaysTo Christmas” in the AppStore ($0.99 by the way in case you can’t look at a calendar), but not allowing me to choose if I want to use a different mail app or download podcasts wirelessly?  This is getting absurd.

Are they violating the terms?  I don’t think so.  A look at the iPhone SDK Terms shows no restrictions on the types of applications that can be built (except for real-time route guidance/automation) only noting that applications “…may only use Published APIs in the manner prescribed by Apple and must not use or call any unpublished or Private APIs.”  Neither of these applications do that!  It seems there is a conflict in the SDK Terms and the AppStore Terms…which I haven’t seen – anyone have a link to AppStore-specific terms that might indicate that no duplicate functionality can exist?  I’m guessing it isn’t there.

Apple – either enable alternate distribution channels for iPhone applications, or stop rejecting my choice as a consumer because it might be better functionality than you are providing.  Guess what, that’s what developers do – find ways to increase the value of the platform.  You shouldn’t have a developer program if you think people aren’t going to find ways to implement new functionality that may compete?  What gives Apple?  Why are you deciding what I can/can’t install when all other things being equal (i.e., not violating any terms of any SDK))?!  I can’t believe there is no developer outrage beyond these two developers. 

Apple is increasingly falling out of favor with the hi-tech crowds by doing things like this without explanation.  I only see this increasing.  Someone in Steve Jobs’ organization needs to get a wake-up call and start making some changes.  I think the easiest change for the AppStore would be to enable other distribution channels (and not just the beta-tester channel they finally opened up for app developers) so that anyone who has a native app built with the SDK can provide me, the user, the choice to decide what may “lead to user confusion” or what might be better functionality!

Wake up Apple…seriously.

| Comments

Well, it seems that in addition to problems with MobileMe, Apple is getting into some gray area with AppStore.  Applications are appearing, disappearing without explanation to the authors.  The one that got more attention was NetShare, an app that purports to enable tethering of your iPhone 3G.  However despite it being available (actually for me clicking on the link it wasn’t even available then) it seems to be performing one of Criss Angel’s greatest feats in appearing/disappearing at will (or at Steve Jobs’ request).

The latest app to fall to this scenario and be removed from the AppStore without explanation is BoxOffice.  The developer of BoxOffice posted a plea on MacForums:

Apple pulled the app yesterday without giving my any notification that they were doing it, or what their justification was for removing it.

I've tried to contact them about the issue, but it's been a complete dead end. If anyone has a useful contact number for apple, please let me know.

I'm in regular contact with all my data providers, and none of them have had an issue with my app. Indeed, the response was the exact opposite. They like my app and have even asked if i would do custom application work for them in the future. Furthermore, all the data i use is licensed by the owners as 'free for non commercial use'. i.e. precisely what BoxOffice is. Source: MacForums

Here’s my guesses (and only guesses):

1) NetShare pulled because of violation of AT&T terms.  I can’t cite them specifically but I’m pretty sure there is some fine print about tethering and normal use.  Heck AT&T sells a tethering option on some of their devices so I’m sure their crafty attorneys have legalese in their normal terms for 3G devices like iPhone about tethering. 

2) BoxOffice – pulled because it is Open Source licensed under the GPLv2.  BoxOffice has had it’s code up there on Google Code for a while.  Could this be a sign that Apple is now getting around to tightening their reigns on their terms and that OSS applications would not be allowed?  Or perhaps because he has a ‘Donate’ button in the app and Apple can’t get their chocolaty fingers on any donations (which probably violates the terms anyway-however other apps do the same thing).  I can’t wait to see what Cyrus hears back regarding BoxOffice and why it was removed.  And if he does receive that reason…will WordPress follow next?

What gives with updates?

The AppStore model was an exciting one.  I say was becuase I’m starting to see some faults.  This whole appearing/disappearing thing without communication to the authors is frustrating.  Even if they are in violation of whatever terms…a communication to the author is something that should occur.  “Hey you are violating terms XYZ, if you want to be listed in the AppStore you need to patch your software and re-submit.”  Is that so hard?

The other pain I’m seeing is updating.  While the AppStore seemed a great model, the update model sucks big time.  Authors have to go through the same process to submit an update it seems as they would a new app.  For real?  So 1.0 to 1.1 takes forever?  Is that a model that is acceptable to the security world?  What if someone found an exploit in Super Monkey Ball that it was actually taking your contacts and passing them around somewhere?  The v1.x patch has to go through a similar process of a new app?  Seems strange.

The other updating just seems hokey to me.  It really isn’t enabling a software+services model.  One case is the apps that provide reference.  For example, I downloaded the Spanish phrase app (handy by the way).  Let’s say the authors want to add more phrases.  They have to release a whole other app!  I have to download/install a whole other app.  Why can’t the author have their own update mechanism like other real software?!  Imagine if that every time your favorite app was updated you had to completely re-install it each time.  Ridiculous right?  Why should an iPhone app be any different.  Enabling this model of auto-updating should be added to their SDK to enable authors to quickly provide patches and incremental updates to their applications without the AppStore getting in the way.

Well, it is interesting to see how Apple is going through these pains in their new adventures.

| Comments

NDA.  Non-disclosure.  Hush documents.

Not many people like them.  In the technology world they are a necessary evil.  Personally I don’t think that way.  I think NDA’s are generally a good thing.  It’s enabling legalese to let two parties participate in information exchange when they don’t want the rest of the world to know about them.  NDA is a general term, of course, and the wording in any non-disclosure agreement is subject to the two parties involved.  Heck it could say “We’re going to show you everything and you agree only to not talk about feature X…everything else is fair game.”  Usually they don’t.

Enter the iPhone SDK.  The frustrating part for iPhone developers wanting to share their knowledge, innovate on the platform, etc.  It was assumed from a lot of developers that upon the release of iPhone 2.0 software that the NDA would be lifted.  Guess what – it isn’t (as of this writing).  What does that mean?  Well, among other things, people who have the SDK are under that NDA and shouldn’t be discussing it with anyone other than Apple.  Guess what…even if your best friend is under the same NDA, technically your agreement is only with Apple, not ‘anyone else under NDA.’

My local Cocoa/iPhone user group in my area recently shut off their email list and posted this message:


As frustrating as it is for passionate folks, bravo to this group to at least ensuring their channel they’ve created isn’t a faucet of information that shouldn’t be shared just yet.  There are other groups that I’ve seen hosting iPhone developer discussions and I can’t imagine how they are doing that without talking about thing that violate the agreement they have in place. 

NOTE: If you downloaded the SDK, you agreed to the NDA – sorry if you didn’t read it, but you did.

An NDA is in place to provide valuable information to those who want to agree to it.  By not honoring that you’re stealing information essentially.  Beyond the legal stuff which I don’t pretend to understand in a deep manner, it just isn’t really ethical for you as an individual, business, developer, community, whatever.  I don’t care if it is with a darling company like Apple…no matter what if you agree you should be responsible. 

Another part of the SDK is the terms.  Besides not being able to be discussed, shown, shared, the terms of the iPhone SDK might prohibit any open source project.  Which brings into question the project from Wordpress.  This is an AppStore approved app that now has source available. (which is using the GPL license).  As Nathan Willis of Linux.com points out that two terms of the SDK and AppStore deployment violate explicitly the GPL (nondisclosure and code signing).  Wordpress putting the source out there violates not only the terms of the iPhone SDK but as well isn’t in line with the GPL they have selected.  How is nobody claiming shame on them?  Just because they are open source doesn’t mean they have the right to violate agreements.

Yes, I know Microsoft isn’t open source all the way by ANY means.  I don’t believe I’ve ever made that comment and certainly not here…this isn’t about a ‘well then you should to’ but rather about honoring known agreements and terms/conditions of use.

If people get lost in a frenzy of excitement and decide just to start violating things they agree to, where does that leave organizations wanting to plan and share information?  There isn’t a lot of trust left is there?  I honestly think that Apple will rectify this soon and perhaps it is just an oversight while they are dealing with the MobileMe troubles as of late, but regardless the terms are still there, the confidentiality agreements are still in place and if you agreed to them, you should honor them.  I know that is a bit of a “duh” moment…but seeing stuff like what Wordpress is doing and user groups sprouting information makes me sad that we as professionals have disregard for these types of things.

I had an idea for an iPhone app that I wanted to do to manage the life-sucking-battery-settings and others even wrote they’d pay money for that app.  When I had the idea I immediately contacted an Apple evangelist and began starting a discussion about this.  Turns out that the settings I’d need to get to aren’t available according to this evangelist in email.  I noticed the iPhone dev team has the headers needed, but even completing the app wouldn’t give me any distribution beyond myself because the mere coding against the properties would violate the terms and wouldn’t be approved in AppStore.  I suspect an app like this will surface (perhaps in the Jailbreak world) and if it does on AppStore, I’ll be pissed that I was misinformed and missed out on an opportunity!  Where was I?  Oh yeah, anyway I went to the source (Apple), inquired, and was told it wasn’t possible per the terms.  It sucks, but I’m going to honor those terms…because I agreed to.

And if you did, so should you.  Wordpress…shame on you.

Related articles:

| Comments

Well now that the iPhone 3G (and actually more specifically the 2.0 software) are out, I promised myself I’d take another look, especially given that the claims of “for the Enterprise” were there (which really meant ‘we added ActiveSync’).  I had been holding on to some gift cards to subsidize this gadget investigation and so alas, I am testing the iPhone 3G for my use.

Now because the device itself isn’t really much different (physically the changes are subtle) I’m not really commenting on the “iPhone” itself but rather on the claims of what 2.0 software brought to the device.  The 3G and GPS are additive value, and I’ll comment on them a little bit.  The physical device is still great looking, feels good in your hand and has a bright display…but still has some shortcomings I think as well.

For me the claim of “ready for the Enterprise” should mean a lot more than ‘we've technically implemented the spec for ActiveSync.’  Given Apple’s track record with user experience design, I was surprised to see some really lacking implementations coming from an environment where I live in Exchange ActiveSync (EAS) and have experienced that integration since it was available on the Windows Mobile platform…which in this instance is the bar.  No, I’m not saying Windows Mobile is the bar…I’m saying the EAS integration is the bar.  How it operates, how the user interacts with it as a part of their usual desktop experience as well.  So here goes my feedback.  Remember, this is feedback regarding the ‘ready for the Enterprise’ claims.

I’ve already admitted in the past I hate the term ‘Enterprise’ but Apple seems to be defining it here as anyone who wants to use Exchange.  I think that is a wrong definition by a long shot.  Lots of people use Exchange – it’s why they added support for it!  That being said, my brain definition of ‘Enterprise’ is a large corporation.  I’m using my current usage of my digital lifestyle (personal and work) in that definition.

My feedback based on my experience (note: firmware version 2.0 5A347).

Multiple Calendar/EAS profiles

I’ve seen this complaint several times in the blogging circles.  People want to be able to sync multiple Exchange accounts or combine with EAS and MobileMe, etc.  I must admit that it doesn’t appeal to me.  I have one address book.  While I can see people wanting to do that, I can see how it wouldn’t be ideally supported.  The device seems to have single contact stores (calendar, contacts, etc.) – so adding two accounts would seemingly blend these together.  Admittedly I haven’t looked into this because it is a feature that I don’t care about…so if I’m wrong and it does support it, forgive me.

Large Contact Store

I have currently 1,172 contacts in my address book.  Notice I did not say friends.  These don’t represent every Twitter follower, Facebook friend, etc.  These are valid contacts that I want to retain in my personal and business life.  Networking is key in my industry and I make sure that I maintain relationships over time.  People may say there is no way you can manage that many contacts and would be true…I don’t ping these people daily, but keep contact information for people I’ve met of value over time – it has paid off tremendously to do this.  But enough about that…

iPhone sucks at handing large contact stores.  I suspect that a hard-core sales person ‘in the Enterprise’ has many more contacts than I do.  When I switch to the contacts application (or when using Contacts in To/From type fields) the software is painfully slow.  In the contact screen, it comes up and then when I click the search field there is a noticeable delay before that is enabled.  Then as I type it starts to filter….slowly.  This has to improve in my opinion.  For me the #2 functionality of my device (phone function being 1) is contacts.  This feels almost unusable to me.

The Exchange directory feature is also hidden.  In Windows Mobile when you search and nothing is found, you get an immediate option to check the ‘company directory’ which is the Exchange global address list.  iPhone buries that in 3 more gestures away…it is not an integrated experience within the default contacts and is behind the Group icon on the device…then you pick the Directories section.

This area needs improvement.  Windows Mobile has a superior experience here in both performance of large contact stores and GAL integration.

Meeting Invitations/Appointments

This one is an odd one as I’ve experienced two different things and it hasn’t been consistent in my testing (even though the meeting requests are coming from the same place).  With that said, this was one area that I felt took a lot to get used to as it does not exhibit the same behavior as Windows Mobile.  In WinMo, when you receive a meeting request it is the same as in the Outlook desktop experience.  You get it in your inbox, open it up, accept/maybe/decline with an option immediately for inline comments as well.  iPhone does it a little different.  First, you get a popup notice (this can be turned off) for your ‘Invitation’ (that is what iPhone calls them):

If you click view, it takes you to the Calendar application under the Invitations section:

And once you click on the new invite (as denoted with a blue dot), you see the meeting request with the option of accepting/etc.

The problem is where is the option to provide feedback/comments on why I might decline?  The screenshot above implies that it isn’t there and gives you no indication that you can scroll down…but when you do:

Not very intuitive and not the same experience of a typical Exchange user who is used to taking action and adding comments at the time. 

The other thing that was odd for me was that if you ignored or didn’t see the popup, you’d have a much different experience in getting your appointment.  Take a look at the screenshots below.


On the home screen when you receive an invite you get a new notice on the calendar icon.  Hmm…that doesn’t imply ‘new meeting request’ to me as an Exchange user…it implied I have one item today.  When you click on the calendar application you go to your calendar view and if you look at the second screenshot you’ll see the lower right corner what appears to be an inbox?  Clicking on that takes you to the Invitations screen (pictured previously).  So to me, it was an odd workflow, especially given that I didn’t have an email in my inbox with the meeting request!  I thought that was odd.  My future testing, however, showed the emails starting to show up (third screenshot above).  It is pretty much what you’d expect and when clicking on the appointment link takes you to the Invitations screen (again, pictured previously above).

UPDATE: New Meeting Requests

What?!  When I create a new calendar item I cannot invite people?  Shame.  Shame.

So for me, the process coming from a world of EAS and the Outlook desktop experience was different.  I can’t say this is bad yet, but if I miss a meeting request because it isn’t in my inbox, I’ll be pissed.  No vote on this one yet…the experience is ‘different’ for now.

No EAS Feedback

WinMo has an explicit icon to go to ActiveSync.  Here you can see your settings, but more importantly view any issues that may have occurred with the last sync.  This could include conflicts, EAS status messages, connectivity issues, etc.  I see none of that in iPhone.  It gives me no feedback of if everything is operating okay or not.  Am I just to assume it is?  Here’s the config screen I expected to see it in:

Location Services

Seems to be the most popular thing to build iPhone applications off of!  As a side note I think the UrbanSpoon application is the best.  It is a great innovation to the age old question “what are we doing for dinner?”  That said, every app seems to want to take advantage of GPS.  Here’s the problem – GPS is a battery suck.  So for me I turned it off immediately which you can do easily.  When I then go to Maps (which uses Google maps), I am presented with this when I choose the Locate Me feature (lower left corner icon button):

If I choose Don’t Allow the feature goes away.  What?!  What happened to even my fake GPS with Google maps?  It doesn’t seem like it is an option anymore…it’s either real or none.  Clicking ok on here turns on your GPS radio as well, so start the battery suck.  This is odd to me and I think a loss for Google maps.  Sure real GPS is great, but I would expect that it fallback on the tower triangulation that was an acceptable option for most…espeically those in dense areas where GPS line-of-sight might be troubled, but signal triangulation might be easier to attain.

On a side note, developers should do exactly what UrbanSpoon does – gives me the option to use my current location and if I choose Don’t Allow then it falls back to still let me manually select and still use the application…well done.

Battery Life

Wow, noticeable battery life drain on this device compared to the previous incarnation.  I mean, really bad.  I’ve got GPS/WiFi turned off and have tuned my mail settings accordingly.  My battery was dead after first day.  Yikes.  This is failure ‘for the Enterprise’ given how mobile employees are.  I’m making sure my car adapter works and never leaving home without the wall cable.  I really hope this improves for their sake.  My WinMo device is a BlackJack II (which also has GPS turned off) and I get at least 2 days on a full charge with 3G activity and push email.  I know people complain about the BJII as well, but in comparison I think WinMo devices have fine tuned for the most part the battery usage that EAS and always-on push email uses. 

I don’t think the configuration options for the email/push are incredibly intuitive.  In fact when i configured my IMAP account, it automatically set it for Fetch rather than manual (this seemed to be a change from the previous software in my experience).  I noticed there was an Advanced button that would allow me to change the per-email account settings:

This enabled me to say Manual for this account and Push for the other.  This option is under the “Fetch” section of the Settings applet.  I recommend fine tuning these to your needs, maybe even turning off push all together for optimal battery life if you get a lot of mail.

16GB and no document storage

Seriously.  16GB and still no option to save documents?  Now I am not a heavy document user on my WinMo device either but I do like the ability to save documents to the device (whatever ‘documents’ means to you) when I need to.  I know iPhone can be used for USB storage, but my WinMo device can respond to the inquiry of ‘Hey, can you email me that spec?’ To which i can Save As…to my SD card and transfer later if needed…or transfer via ActiveSync via Bluetooth…neither of which iPhone can do.  WinMo clearly wins here for this feature that I think people use a bit in the Enterprise.

Home Screen Customization

Where is the home screen customization?  One great thing about all ‘for the Enterprise’ devices (WinMo and Blackberry) is they provide Today style home screens.  Date/Time, # emails, # appointments, next appointment, etc.  The iPhone home screen gives me # of emails (but doesn’t tell me which accounts those numbers exist in…WinMo does) but tells me nothing about my day until I click a few times.  This should be a customizable feature that iPhone should enable.  Even in the locked screen state I’d love to see my message counts and next appointment.  This is a common use for me in my business life.  I’m not even sure their SDK would allow such overriding of the icon display home page UI?

Pin Unlock

Most larger corporations would implement the EAS feature of policies and require a device pin lock.  This is fine.  What sucks is that when pin lock is enabled, you essentially have to double-unlock.  Slide to unlock, then enter pin.  Sigh…that sucks.  I’m not sure that can be improved as the pin lock feature is tied to a timeout and I do like my device preventing me from using features when in my pocket.  Maybe if you have a pin, then the Auto lock settings are used.  Either way I think it should be one or the other…not both.

The Developer Story

Much has been said about AppStore and how wonderful it is.  I agree, the iTunes experience is pretty seemless.  Having one place to acquire apps is nice.  I think this is one area where WinMo really hasn’t nailed although there are exponentially larger amount of applications for WinMo available, it is not an integrated experience to get them.  Handango comes close, but I believe this is one area where the carrier customization of the devices bites WinMo in the end in my opinion…nobody chooses to include Handango in their distribution.

Aside from distribution, the developer story sucks a little for me.  Sure the tools are free…for emulation only.  Want to deploy to your iPhone?  $100.  Now, I don’t think that’s such a bad price actually.  My problem is that it limits you to a device.  It is hard to tell from the terms (I haven’t signed up fully) whether you can deploy an app to multiple devices (it notes Registered Device IDs).  If not, this is epic fail for me.  How do you get your app out there for people to beta test and give you feedback?  Will AppStore allow beta versions since that is the only mainstream distribution channel?  This seems like a developer shortcoming to me.  I love the WinMo experience of being able to write something, debug in emulation, change and deploy to my device, or write an installer that I can email to my friends who can receive it over the air, save to their device and install.  I’d really like to know the equivalent process here for iPhone development.


In the end, I’m not convinced all the kinks are worked out for really declaring the badge ‘ready for the Enterprise’ valid.  Simply adding one feature to your software hasn’t made it that ready.  I guess ‘the Enterprise’ will eventually tell Apple what needs to be done.  For me, as an enterprise user, as an EAS user…it isn’t complete.  It needs some fine tuning in certain areas for sure.

UPDATE: See Exchange features broken/missing/weird, help us build the wiki: iPhone Exchange Issues

How did you take those screenshots?

I have a friend that runs a blog called On a Mac that you should subscribe to if you are a mac user.  He clued me in to how to take screenshots on iPhone using a new feature in the 2.0 software.

Related Posts:

    • "If you're a business user, then we feel the answer is no, it's not worth it." Speaking on a business user purchasing an iPhone 3G Source: ars technica