Yes, Dear Reader, this actually happened.
Now, I as much as the next dev will not beat around the bush when it comes to acknowledging there’s a problem with “crap apps” on the Windows (Phone) Store. But is there a platform that doesn’t have this problem? I doubt it. Shall we have a look?
(notice the scrollbar on the right)
Now for the purposes of framing this discussion, let’s have a look at Windows Store Policy Requirement 10.1:
Distinct Function & Value; Accurate Representation
10.1
Your app and its associated metadata must accurately and clearly reflect the source, functionality, and features of your app.
The screenshots, app name, developer name, tile, category and app description, and any other related metadata you provide with your app, should make it easy for a user to understand the functions, features, and any important limitations of your app. Your app must be fully functional and offer customers unique, creative value or utility, and your app may not use a name or icon similar to that of other apps. You should not represent your app to be from a company, government body, or other entity if you do not have permission to make that representation. If your app contains content or features restricted to certain languages, markets or geographies or has other important limitations, they should be clearly described. If your app declares an association with a given file type or extensibility point, it must provide the functionality that a customer would expect, given that association. For example, if your app declares an association with the .jpg file type, the app should be able to open the image for viewing or editing.
On its face this seems pretty innocuous right? So how did Upload to YouTube get yanked due to this? If you’ve followed my development of the app, it was the first YouTube uploader to upload videos from a user’s camera roll. I then added background uploading and Cortana integration. I’d say it checks all the boxes.
In full disclosure, I was fully prepared for the day The Evil One came knocking and asked for a name change based on trademark; that I would have understood, no problem.
So as one might expect, I responded to this initial e-mail with an attempt at voicing my confusion and concern for what had just taken place:
Trying to give them an “out” by saying “oh, yeah. Yup that’s why we yanked it.” but nope:
the “blog” link takes us to the 5/27 post by the Windows team outlining how they’re taking a more strict approach toward policy 10.1. I want to cite what is, to me, a particularly troubling piece of verbiage in this blog post:
For example when there are many apps that do not provide differentiated value (e.g. many flashlight apps with the same look and feel and functionality), some may be removed from the Store.
Here’s the question we should all be asking as developers: “which ‘some’ get removed?”
Walk with me here. UtY has been published for almost a year now. Let’s say Dev X comes along and publishes an app with a similar name and copies my icon. What do you think would happen given what we’ve seen here? Would they kill mine? Would they kill the new one? Perhaps some other app that maybe says it uploads videos to YouTube as well, but provides a subset of features relative to mine? How fair is that to devs? To users?
The bottom line here is we just don’t know what is going to be happening to our *legitimate* apps. And we have no recourse when it happens to us.
On to the last sentence of the blog post:
make sure your account contact email is accurate in Dev Center, as this is the email the Store uses to begin a dialog with you if we locate any problems with your apps.
That seems fair. If they locate a problem w/ my app, they’ll start a dialog with me. One would presume this means before they take it down, right?
wrong. What you’ve seen in the screenshots I’ve posted is the entire extent of the “dialog” I had with the Windows Store team.
Now let’s talk real numbers here. UtY, at the time of this writing, has 32,500 downloads. It’s about a 3.9/5 rating in the store with over 200 reviews. In full disclosure, it nets me ~$130/mo in store and ad revenue. It’s not a lot, but it is something I’m proud of. It’s my most well-received app, and I spent quite a bit of time getting it to a good spot to where it could be something I’m proud of. It’s on my résumé. I talk about it at interviews.
I started developing for Windows Phone in November 2010 when the SDK was launched. I’ve been in this since the start. I have supported this platform. Evangelized this platform. Invested in this platform.
I am fortunate enough to have a kick-ass circle of friends that are also devs. One of whom is even an MVP for the platform. I also have a bunch of awesome twitter followers.
Now I didn’t make a stink about this publicly because I was honestly in shock. Microsoft picked the absolutely perfect time to pull this on me as I was in the middle of changing jobs and had way more things to think about than this, so I just did not have the time to deal with it.
So, I just told my buddies. They were equally in shock. We talked about it quite a bit on episode 25 of the 25.4 Podcast. It was there that my good friend Robert suggested I consider taking it to the media – especially after getting shut down the way I did in the last e-mail from the Store team.
To us, it was pretty clear this was somebody that didn’t understand what they were doing; just following instructions (or worse, an algorithm) blindly. And they didn’t have the time or knowledge to properly assess the situation.
Again I’m fortunate. I’ve had great interactions with Brad Sams over at Neowin so I sent him the e-mail and details on my situation along with the stats on UtY. He posted an article this morning, despite the fact he’s prepping for a long vacation! Great guy, that dude. It was also picked up by the folks at WMPowerUser – also another great bunch.
Roughly 6 hours later, to my amazement honestly, I received this:
As I said on twitter, I can’t thank the dev community and other supporters enough for the time they took of their own volition to back this lowly indie dev. It speaks volumes of the community we have built. And while I’m not going to argue whether or not camera roll upload is the defining function of my app, I’m also not going to look a gift horse in the mouth ;)
But it’s time for a hard conversation.
Let’s be honest, I got lucky. What if I was a complete newbie to this platform, trying to break through? I get a great idea, publish my app, and enjoy some success. Only to have this happen to me. I can’t get answers, I don’t really have a following, what’s my recourse? Nothing. What would you do if this were you? I know what I’d do. Go learn Swift, or Java, or buy a Xamarin license. Why would you stand for this?
Furthermore, imagine the havoc this type of process could wreak on somebody who maybe writes that killer app and quits their job (let’s not debate the merits of that decision)? Now what??
I’m fully convinced that were it not for my friends reaching out on my behalf – being willing to put my story out there – UtY wouldn’t be in the store today. But where does that leave the lesser-known devs? The ones we’re trying to get on our platform? What does this say to them?
Another thought: what’s the goal here, Microsoft? Are we trying to clean up the 50+ fart apps in our store? The 200 weather apps? Or the 5 YouTube uploaders? Which would you, Dear Reader, tell them to go after first?
I would even go so far as to argue if the search algorithm were better, we wouldn’t need such a drastic culling of the herd. To illustrate, let’s use UtY as an example. As I search “Upload to YouTube” in the store on my Windows Phone right now, UtY is listed #13 – the 3rd page of listings on my Lumia Icon. And the search exactly matches the app title. It’s listed beneath “GetThemAll”, “Video” (from Microsoft), and even “Google” (from Google).
To finalize my thoughts on this process I really have to put this out there: can you think of some apps that perhaps filled a gap at one point, but have since been succeeded by an app from the official owner of the service? Which app should be killed? Why? Should both be allowed? Why? Because this policy is, and Microsoft’s actions toward me are, pretty arbitrary. There’s simply no knowing who they’ll pick to stay, who they’ll pick to chop, and what you can do to affect the situation. Or if they’ll even take action in some instances.
In the meantime, good luck devs. Sound off to your local reps if you’re at all concerned. Many voices may just be the key to getting some real action here. It’s unfortunate it had to come to this, but the first one through the wall always gets the bloodiest.