Windows Phone

The Windows Phone 7 App Hub experience

Justin James explains why working within the Windows Phone 7 ecosystem in terms of getting support and having your app published is not a fun ride.

I recently wrote a TechRepublic article about my experience of creating a Windows Phone 7 application. Now I'll focus on what it is like to work within the Windows Phone 7 ecosystem in terms of getting support and having your application published. Be careful -- it is not a fun ride.

App Hub annoyances and bugs

In order to distribute your Windows Phone 7 app, you need to deal with App Hub, Microsoft's developer site for Windows Phone 7 and Xbox 360. I got the impression that Microsoft could not care less about developers here. There is no customer service phone number on App Hub. There is a support form on the site, but it is only accessible to the folks who pay the $99 fee. In my experience, the form was useless, because no one ever responded to my queries. If you go to App Hub Support, you're instructed to use the forum, or call and create an incident and pay for it.

From what I can tell, no Microsoft customer service reps monitor the forums. I asked a number of customer service questions, none of which were answered by Microsoft. When there were critical issues with App Hub, no Microsoft personnel came into the forums to straighten them out, and there were no posts from personnel on the Windows Phone blog either. I spoke with Todd Brix, the Director of Product Management for App Hub, and his response was that they were adding more technical resources to the forums in a couple of days (from the time we talked). The additional resources will be appreciated by folks with technical issues, but it does not address the customer service problems. Since I spoke with Mr. Brix, the customer service issues remain the same.

Updates: Microsoft is now monitoring the forums a little bit better. I posted something up on another customer service issue, and a few days later someone responded... they told me to use the support form. Also, I did submit a support form (a day after my forum posting, because no one had responded yet). I got a response the next business day, but it was not inspiring (basically ignored my entire message other than the initial statement of the problem, and responded with something that was clearly not the right answer if they had read my message). I responded within a few minutes that I needed someone to actually investigate my issue, but I haven't heard back since (that was mid-day Friday).

Even the paid technical support is a joke. I called it, and in the process of walking through the phone menu, it was clear that the system was not aware of App Hub. When I told the phone menu "App Hub," it took me to Xbox support (which makes some sense since App Hub is joined with the Xbox development system), but in that phone tree there were no options for App Hub issues.

Forum threads related to customer service issues (when they are answered) are often locked by overzealous moderators who deem threads to be pointless (their words, not mine) if they respond with a non-answer, and you ask for more information. Many of the users (including myself) are extremely angry about the imperious nature of the moderation and the inability to get any customer support. There is virtually no communications from the App Hub team either about these issues. For example, when App Hub suddenly treated paying customers like free customers, there was zero information coming from Microsoft (the solution was to go to the Xbox Live website, of all places, pull up your profile, and agree to a new Terms of Service).

Speaking of Terms of Service, the application guidelines are almost as bad as Apple's. The number of things that are forbidden is quite large. While I agree with much of the sentiments, the agreement undermines the positioning of the phone as a consumer device. For example, including XNA development was a smart move to potentially make it the best phone gaming platform around and to leverage the skills of Xbox and other XNA developers. But the guidelines prohibit many of the things that are quite common in video games. For example, much of the gore that has been commonplace in games is prohibited, as is excessive use of explicit language and content of a sexual nature.

I have also seen posts in the forums complaining about the uneven application of the guidelines. For example, some users reported that their applications were accepted initially, but rejected upon resubmission for things that had not changed. My experience of submitting my Airport Status Checker app was not great, but it could have been worse.

My Windows Phone 7 app failed the initial submission, but the feedback was useful and pointed me directly at what I needed to correct (error handling). Unfortunately, the resubmission process was a bit confusing, and I lost a day while my application sat in a state where it wasn't going to be re-evaluated. The resubmission failed as well. It was clear to me that the testing stops the moment a problem is found. This leads to a ton of wasted time, since you have to resubmit three times to find three failures. If the testers did the full battery of tests up front, it would be much more helpful.

The App Hub site is incredibly buggy. Here's what I encountered and have been told:

  • The forums often do not load in a timely manner.
  • You cannot view the profiles of people if they have a space in their name.
  • There is no private messaging system.
  • Signing up for an account is painful. For me, there was an AJAX validation that was not being triggered correctly, so I lost two weeks of potential development time until I tried the form in a different browser, and it worked fine.
  • The developers who were using the previous Xbox and Windows Mobile development systems are fairly upset; apparently, those systems had been quite buggy and finally were sorted out when the merger with App Hub occurred.

Another major issue is billing. App Hub does not currently allow for any kind of subscription billing; this means that any application that creates on-going expenses on your end (like anything where you need to provide a server-side component) has you walking a fine line between making the app cheap enough to sell, and risking having the users cost you more money in the long run than they paid you. Your alternative is to build a payment system into the application itself, which is a major usability issue and requires a significant amount of development work.

There will be no payouts from App Hub until February 2011, and there is no built-in reporting on downloads as of now. These are all things that are supposedly coming, but for the time being they are desperately needed.

Summary

The development experience on the technical side rates a C at best. The lack of APIs took the wind right out of my sails. Outside of that, it wasn't bad. The emulator is not great; it cannot emulate the sensor stuff, so you are forced to spend money on a phone to test those kinds of functions. This puts developers who want to work on innovative applications even further behind the ball.

If Microsoft gets serious about supporting customers -- because that's what you are when you pony up $99 to be a premium member -- I could forgive a lot of App Hub's technical problems because those issues are just annoyances. But Microsoft's lack of customer service is simply unacceptable. Microsoft is essentially allowing people to pay to participate in what is still a beta experience, and the results are a disaster. If people did not have to pay to submit applications, it could be swept under the rug, but once you are formally a paying customer, you have every right to expect better.

Unless you consider Windows Phone 7 to be a "must do" platform for development (which is quite unlikely), I suggest that you think of Windows Phone 7 development as a hobby or a learning experience rather than a source of revenue until the App Hub issues are sorted out. When the App Store experience improves, you will still want to carefully evaluate the API's capabilities and Windows Phone 7's position in the marketplace to make sure that the apps you want to write are possible, and that you have enough market opportunity to justify your ROI.

Note: Read more updates about this topic in my discussion post.

More about Windows Phone 7 development on TechRepublic

J.Ja

Disclosure of Justin's industry affiliations: Justin James has a contract with Spiceworks to write product buying guides; he has a contract with OpenAmplify, which is owned by Hapax, to write a series of blogs, tutorials, and articles; and he has a contract with OutSystems to write articles, sample code, etc.

About

Justin James is the Lead Architect for Conigent.

5 comments
marketing
marketing

Had the same issues with App Hub. Wasted hours of time and nerve cells.

Justin James
Justin James

I initially wrote this a few weeks ago, and there have been a few changes since I wrote it (nothing major). * Microsoft is now monitoring the forums a little bit better. I posted something up on another customer service issue, and a few days later someone responded... they told me to use the support form. * On that same issue, I *did* submit a support form (a day after my forum posting, because no one had responded yet). I got a response the next business day, but it was not inspiring (basically ignored my entire message other than the initial statement of the problem, and responded with something that was clearly not the right answer if they had read my message). I responded within a few minutes that I needed someone to actually investigate my issue, but I haven't heard back since (that was mid-day Friday). * There are rumors and hints that the app capability detection is not working in-house, so your app may say that it uses functionality that it doesn't. Oddly enough, the phone capability usage detection tool they realized publicly works *just fine*, but for whatever reason, apps submitted to them seem to be listed with incorrect information (this is what my support issue was about). So, while there is at least *someone* from Microsoft scanning the forums and offering basic levels of support (it looks like 1 person at the point), the total support process is still completely unacceptable, at least for anything without an easy, slam dunk answer ("is your caps lock key on while typing in your password?" kind of stuff). What's truly aggravating and baffling to me is that I have talked to a lot of people (MVPs, Microsoft employees, even an App Hub moderator!) who have been involved in WP7 and XBox Live development (App Hub merges the two) and this has been a known issue for a very long time! They know the forum software is buggy, they know the support sucks, they know it's a disaster. They've reported it a million times. So Microsoft is well aware of these issues. I can't explain how/why these known issues have not been resolved, but it speaks volumes. J.Ja

Sterling chip Camden
Sterling chip Camden

Readers are likely to think that if you, the leading contributor to the leading source of programming and development information on the web (according to Google), had this kind of experience, then they had better stay 200 leagues away from it. You mentioned an issue with JavaScript on the site. Were you using IE? I've noticed that the MSDN site often breaks with other browsers.

jerry
jerry

I'm not an app developer for Windows phone but an end user and although I've tried to stick with MS the Moto Q9 with Windows Mobile had me so mad I swore I would never buy another MS phone but of course I couldn't help myself and since my contract was up got a Focus. The "missing" functions are bad enough but the lack of a written manual either online or hard copy is a BIG negative for newer smart phone users. The image quality is great, the speed is great but the limits or lack of basic things like copy/paste, viewing email attachments, some type of file manager (to find things), and the "so-called" app store with limited info on a product is starting to get me P.O.ed.

Justin James
Justin James

I use Chrome, I had to load the page in IE to sign up. It was an odd bug. Basically, they were counting on JS validation, but the error message only showed if you left the field (not when you tried to submit). And it was the last field on the page, so I would never leave it... J.Ja