It's a familiar story: anything-goes-wild-west vs bureaucracy-ridden-walled garden. But you probably already knew that. What surprised me is how incredibly stark the contrast is.
Getting an app in Android and on Windows 8 couldn't be more different: from fees, to technical support, to the app-submission process.
Setup for the Letdown
You'd think an app store coming from behind might try to get their app count up by accepting new submissions first and asking questions later. Couldn't be further from the truth.
My first Windows Store app took a total of 33 days from the first time I tried to submit through when it was finally accepted. My Google Play app? 4 days.
Let's be honest, 33 days is completely unacceptable. Why so long? Partly it's because they have standards. No really. Believe it or not they have live human beings manually test your app and provide a write-up of why it wasn't good enough for their marketplace. It's sort of like getting a free tester.
This approach actually makes sense for them. Classic Windows is similar to what Android is today. You can pretty much install anything from any random website. Google just centralizes their chaos. The result for classic Windows? Malware, Trojan viruses, countless unwanted browser plug-ins, and a slowly degrading computer experience over time as more crap gets installed. In short: a lack of trust in apps. If Microsoft allowed everything in they would be right back to the problem they had in the first place.
But 33 days? Really!?
My previously submitted Google Play app had these problems too, but they certainly didn't have human beings considering how users will interact with my app. Go manual testing! Go Microsoft!
But my initial excitement was just a set up for a big letdown. I resubmitted within a day and then waited.
Customer Support: Microsoft++
How a company responds to problems can be more insightful than the fact that they have them. After all everyone screws up at some point, right?
The following was one of several interactions I had with Microsoft support.
It has now been 22 days since I resubmitted my app. It has been almost a month since my initial submission. It has been three days since you estimated it would be a day or two.
Is this going anywhere? Am I being quietly ignored for some reason? If there are reasons my app is being ignored could you please list them so that I could resolve the issues? Or if Microsoft simply does not want me developing apps for Windows 8 is there a facility for me to get my money back?
I am extremely frustrated by this process. If I were ever to get my app in the store and needed to get an update out quickly, might it take as long as the initial submission has been? Because a month turn-around to fix bugs is completely unacceptable: not just to me, but to every single user of the Windows Store.
I genuinely want Microsoft to succeed and will do what I can to help, but if this is how it's treating its developers, customers, and supporters then I'm sorry to say my expectations are low.
A bit too strong? I was getting angry. To date I had been at least impressed with their professional and quick responses.
However I was floored by their response to my angry e-mail.
Thank you for using the Microsoft Windows Store.
Thank you for getting back to me. I have been checking your account on a daily basis to see if your app has been passed. I can tell you I am looking into this issue for you. I haven't ignored you at all. On the contrary I am eager to help you get this issue resolved.
I understand that it is really frustrating for you and I am doing everything I can to have this issue resolved for you. I hope to have an answer for you soon. Again I am sorry that it is taking so long to get through the process.
If you have any more questions please reply and I will be happy to help you.
Your Partner at Microsoft
Use what you know. Do what you've always imagine
I don't know about you, but I think sincere compassion is something I'm secretly hoping for in every customer service interaction. If I could just get a quick resolution to the problem I'd still give Microsoft a big win in my book. Sadly that wasn't to be.
By way of comparison Google had issues with my initial Google Play submission too. It gave me a nice opportunity to compare how the companies responded to adversity.
When Google accepted my money but wouldn't let me submit my app I got a response like this:
Thank you for your note. We apologize for the delay in your account registration. We have activated your account and you may begin uploading applications. Thank you for your interest in Google Play.
If we can assist you further, please let us know.
The Google Play Team
Not bad. But not compassionate. No name of a person who wrote the note, no "it must be frustrating".
But whatever. It was a relatively quick resolution from Google. Two days to respond to me for a total of 4 days from time of initial submission until final app acceptance. I'll take an emotionless quick resolution over a drawn-out unresolved empathetic one any day.
Fees: Google FTW
As a quick aside do you know how much it costs to get an app on Android? It's $25 "once and only once. Just enough to keep the riffraff out. And Windows 8? $50" every .. single .. year.
Why should I have to pay another $50 fee next year just for the privilege of making a quick update to my free, no-advertisements, non-revenue generating app?
The chances are good I won't be renewing that fee. The chances are good a lot of developers won't. And that will lead to stale apps and a bad customer experience. Poorly done Microsoft. #win8 #fail.
Fail, Fail, and More Fail
So how does the Windows Store story end? 25 days from my initial submission I got this response:
Notes from Testers:
.D:: This app appears to be incomplete in its functionality to our reviewers. The app appears to have dependencies on non-Windows Store style APIs. In the app description as well as in the app, the users are asked to download additional software to be functional.
Rejected. Again. This time for a different reason. In their defense I should have read their submission guidelines. But couldn't they have told me this during the first rejection? Did it really require 25 days for this response?
I was crushed. They were asking for a massive rearchitecting that didn't make sense and maybe wasn't even possible. Google Play was beginning to look golden.
The problem was in how my app works. It shows the realtime status of a continuous integration server, but requires a desktop app to collect the data and upload it to "the cloud". The mobile app just gives a view into the cloud data and receives push notifications and live tile updates from a server. Seems reasonable right? Apparently the entire architecture violates Microsoft's submission guidelines.
My plan involved adding a single CI server that didn't require a desktop app to sneak by their policies while leaving the existing process all other CI servers. I'd use Travis, since it's guaranteed to never be behind a firewall. I had a low confidence the plan would work.
After a week of evenings followed by an all-nighter I resubmitted at 5 am EST (I'm a sick puppy, I know) and crossed my fingers that it wouldn't be another 22 days.
3.5 hours later, at 8:30 am, I got an e-mail from Microsoft. With that kind of turn-around it couldn't be good news.
It was. It passed. I was shocked.
They couldn't have run the automated tests in that amount of time let alone manually tested it. And what humans do business at like 7 am EST? Did they just take pity on me? Did Andy, my compassionate customer support representative come through for me? I still don't know.
One final comparison. Updates on the Windows Store seem to take around 8 hours. On Google Play they're seemingly instantaneous. In both stores customers have an update to install by the next day. No complaints there.
So who has the better process? Google. Hands down. They allow for a lean, minimum viable product style of development. Publish early and often, get feedback quickly, push the features your customers really want.
But I like elements of the Windows Store process. Friendly customer support people rock. Manual testing made my app better. But were their "improvements" the kinds of things real customers would prioritize highly? Maybe, maybe not.
I guess my ideal app store would cost $25 once; incorporate a manual tester that provides helpful suggestions not requirements; reject apps rarely if ever; give empathetic responses and quick resolutions when problems do happen; oh and turn submissions around in 3.5 hours or less every time.
That's not too much to ask for, is it?
Lee Richardson has been developing applications for public and private sector clients in the Washington DC area for over fourteen years. You can follow him on twitter @lprichar.