Censorship and the App Store

It would seem as though I am the newest member of the elite club of those who have had their iOS app censored by Apple over political reasons. Furthermore, I stand as one of the few who will continue to stand for what I believe is right and accept the fact that it just won’t be in the App Store, rather than alter one of my core values in order to reach acceptance. Especially since, with the release of Xcode 7, you can just grab the source and build it yourself. Sure it’s a little harder, but it’s something anybody with a little patience should be able to do.

Oh, right. A little back story. GroG Platform is a social networking service built by me. Its goals are the ability to define exactly who sees what, and free API access for all (as a response to Twitter’s draconian stance on third-party clients). Another unique feature of it is that it has an anything-goes content policy. As long as content posted to it is legal, it’s allowed. Of course, when served with a legal demand to remove content, I will. I heard jail is a nasty place and I’d like to not find out. But, beyond that, I have no intention to ever remove content that a user believes to be objectionable. Opinions on what is and isn’t objectionable are extremely subjective, and that’s a slippery slope. Furthermore, I believe in the ideal that free speech exists to protect unpopular speech, not popular speech. Therefore, I believe it is wrong to silence an opinion just because it is unpopular, even if I vehemently disagree with such opinions. Anyway, Apple rejected my app because of this. Since GroGApp is the only thing I ever planned to publish to the App Store (aside from a tic tac toe game I published about four years ago), I can risk losing my dev program membership, which I fully realize is a possible consequence of publishing an app rejection letter. With that being said, following is the notice in full:

June 15, 2015 at 12:04 PM
From Apple
14.3 – Apps that display user generated content must include a method for filtering objectionable material, a mechanism for users to flag offensive content, and the ability to block abusive users from the service
14.3 Details

Your app enables the display of user-generated content but does not have the required precautions in place.

Specifically, the app needs an EULA for the user generated content.

Next Steps

It is necessary that you put all of the following precautions in place:

– Require that users agree to terms (EULA) and these terms must make it clear that there is no tolerance for objectionable content
– Use moderators to flag and remove inappropriate content and offensive users
– Users need a mechanism to flag objectionable content and report users generating this content
– Developer must act on objectionable content reports within 24 hours by removing the content and ejecting the user who provided the offending content
– Developer needs a method for ejecting users who violate the terms of the EULA

First of all, I’d like to point out that I’m not opposed to one of these conditions. Users should be able to block other users. The basic idea of GroG is that users should be in full control of what they do and don’t see. As a matter of fact, it’s something I’ll probably implement once I have the free time. However, that’s where I draw the line. It isn’t my place to censor content. Ever. Assuming the content in question is legal, I’ll give it a place to exist. Even reddit has fallen from this stance, as a large company with investors to appease. As an independent developer who funds this entire operation out of my own (sadly, very shallow) pockets, I fortunately have no one to answer to. And, “I may not agree with what you say, but I will defend to the death your right to say it,” is and always will be my stance toward content censorship. Do note that I personally find the content that was recently banned from reddit pretty disgusting (to the point where I don’t even want to name some of the subreddits that didn’t get banned). However, I refuse to let that obstruct my ideals, and I will never play the role of morality police. There’s some stuff that’s still on there that I would never ever want to see. But am I okay with the fact that it exists? Absolutely. I’m just never going to look at that stuff.

By far the most egregious of these conditions is that they expect me to actively police and ban users. This flagrantly flies in the face of everything I believe in, and I’d never be able to agree to that in good conscience. I’m not Big Brother, and there is no place for the Thought Police on GroG, nor will there ever be.

Back to me and what I’m doing, there was a short list of features I wanted to add to the iOS app after the first version got approved. However, since it wasn’t approved, I’ll add these features and commit the changes to the Github repo after I finish the Android app and put it up in the Play Store (I’ll also be putting the source for that up on Github once there’s actually anything of note). As far as I know, anything can go there that isn’t a straight-up porn app. I’ll be working on the Android app in the coming months (I’d say I’m maybe 1-5% done with it right now – I’m mainly balking at all the UI stuff I would need to do =/).

In the mean time, I’d like to reiterate that the source code for the app is available on Github, and anyone with Xcode 7 can build the app for their device right now. The GroG Platform and I will continue to stand for your rights, promising a platform where anyone can express themselves freely.

Sorry, Dr Dre. We misjudged you.


We were wrong. Dr. Dre deserves to be a billionaire. After using headphones that had accurate sound reproduction, we had no idea what we were missing! These headphones are so all about that bass, they should have been called Beats by Meghan Trainor. They’re so hard-hitting, they should be called Beats by Chris Brown. The snobby audiophiles may say that these headphones are overpriced and are not of good quality, but what would they know? I mean, look at these fashionable cans! Bass is all anyone wants, right? No treble? Who wouldn’t want headphones that sound like someone is yelling into your ear through a megaphone? Totally worth the $200+ price tag.

Happy April Fool’s Day! 


Well, after having not blogged all year, and having posted an angry series of six tweets (and counting) on the subject just today (with many more on this subject in the past), and having enough caffeine and free time for once to actually write, I figured I would write about the thing that’s currently pissing me off. So begins yet another of my typical blog posts.

What managed to infuriate me today was a post on The Verge about a new face in mobile payments, Stratos. Stratos aims to replace all your credit cards, for a fee of $95 a year. While I think Stratos is a pretty ridiculous idea, I’m not angry with them. I am angry that due to a malicious third party, Stratos even thinks it needs to exist. If you look at my tweets today, it probably isn’t hard to see who is responsible for this anger.

The villain of this story is one I’ve always indicated my distaste for. The nefarious actor in this plot? CurrentC, the evil alter-ego of MCX (Merchant Customer Exchange). Its minions? Walmart, Best Buy, and CVS (among others). Its evil plot? Make mobile payments so much of a pain in the ass that nobody wants to use them.

Apple Pay would be a wonderful solution. If people actually supported it. And from what I hear, NFC-enabled readers will proliferate with the new readers required by this chip and PIN thing I keep hearing about (from my understanding, it’s like a credit card dipped in snake oil, or sprinkled with magical pixie dust, or something). Unfortunately, if you’ve ever tried using Apple Pay, Google Pay, or (ugh) Samesung Samsung Pay at some random place, it probably didn’t work. This is because MCX (the organization that runs CurrentC) requires its members to disable support for competing mobile payments services. Because they know that nobody would use their app otherwise. Let’s take a look at a few common payment workflows to figure out why.

Apple Pay: Put phone (probably already in your hand) up to reader. Place finger on TouchID sensor. Done.

Card: Take out wallet. Find card. Swipe card. Put card away. Sign a piece of paper (or one of those terrible touch screens that feel like they came out of a bargain bin). Done.

CurrentC: Unlock phone. Open CurrentC app. Take a picture of a QR code displayed on a screen. Find apparatus for taking a picture in the store (some camera thing attached to the payment terminal?). Take picture of your phone’s screen. Done. Unless you wanted to pay by credit card, because MCX apparently can’t figure out how to support those. Cry.

Basically, it’s better to just not get your stuff at all than hassle with CurrentC, so aside from paying people a load of money to support it (and only it), it would never have a chance at adoption. But it won’t anyway, because any sane person would rather go to a bank and just carry cash than actually use it.

I can’t wait for the CurrentC launch, just so I can watch it fail. Yet it’s three years past its announcement, and it still seems to have no intention of launching. I have a feeling MCX knows retailers will drop out of it like flies once they figure out nobody wants to use it. Therefore, they never intend to launch at all, making the sole purpose of MCX to hold back the adoption of far better payment solutions. Maybe since Apple, Google, wireless carriers, and (ugh) Samsung are all pushing NFC-based solutions now, these stubborn retailers will finally see the light and grow tired of MCX’s vaporware that sells itself on the promise of delivering yesterday’s technological prowess, tomorrow.

Oh, and finally:

Anyone want to invest in pltry? It’s my new mobile payments startup. We provide wagons to haul your chickens around in, as well as a convenient app (for iOS and Android, Windows Phone support coming soon) for managing your chickens and ordering more chickens. You can also direct-deposit your paycheck with us and we’ll automatically send you more chickens! For a 1% fee, we’ll also include feed for those chickens. Retailers loved how ass-backwards MCX is, and pltry guarantees to one-up them in the inefficient cumbersomeness and user-unfriendliness CurrentC prides itself in!

The Day America Bowed to Kim Jong Un

Sounds ridiculous, doesn’t it? Except it isn’t. It happened. Facing pressure from theaters fearing terrorist retaliation from North Korea, Sony Pussies Pictures has canceled The Interview’s scheduled Christmas launch, with no plans to release the film in any form at any time. Which is possibly the dumbest idea in history, for several reasons. This is bad for everyone. Sony, the theaters, consumers, and artists. The only winner? North Korea. They got what they wanted. What’s more? Kim Jong Un will now be a hero, emboldening support of that nutjob. His people will now legitimately believe he can sway the rest of the world, including the US, to his will.

How are we scared of this guy anyway?

Last I checked, North Korea was a laughing stock. All they’ve ever managed to pull off are a bunch of failed nuclear tests. The Kim Jong’s have always made threats, against just about everyone, and never made good on them. We’ve never given into terrorists before, and just about any country on earth is a more formidable enemy than North Korea. So why are we actually taking them seriously? Let’s say some wacko managed to shoot up ONE theater. That’s happened before. And they still showed that film after that. Why is this any different? Aside from the fact that listening to threats made by North Korea is like taking some bratty two-year-old’s tantrum seriously, let’s go through why everyone loses here.

Sony loses.

Well… this is a given. Sony spent upwards of $40 million producing this film. Don’t show it? You lose $40 million. Right there. On top of probably close to a billion this whole hack cost you. And more or less everyone wanted to see this movie now, after all the drama seeing it. You’ve been given the best marketing campaign possible, for free, by the very subjects of your movie, and you’re going to throw that away? Wanna stick it to the people who totally screwed you over? Giving into their demands, when you already have nothing more to lose, is not how to do that.

The theaters lose.

Why did theaters pull the movie? They were worried the terrorists would make good on their threats. Meaning there would be costly lawsuits. Meaning the theater chains would ultimately take a huge financial hit from showing this movie. Right?

Actually… no.

There’s legal precedent for this, once again coming from the Aurora shootings (and even before that). Lawsuits were filed against the theater then too. They were thrown out, because according to all laws on the books, the theater can’t be held liable for the shootings. If these script kiddies (aka internet tough guys) actually did have the balls, and the ability, to make good on their threats, it wouldn’t have cost the theaters a dime. Showing this movie would’ve practically been a risk-free license to print money.

Consumers lose.

Well… this one’s obvious. A lot of people want to see this movie. A lot of people are bummed out that they now can’t. C’mon… we just want you to shut up and take our money! But you won’t let us. Ah well, theaters and Sony. We’ll just wait until this leaks to the internet and watch it for free then. Have fun with your $40+ million loss. We wanted to give you our money, but you wouldn’t let us. Hell, we’ll probably see the movie even sooner now. I’m willing to bet Anonymous or a disgruntled employee will leak the movie before the planned date anyway. As a matter of fact, if it weren’t for the terrible precedent this whole thing sets, consumers might actually win in the long haul.

Artists lose.

Speaking of which, worst of all is the terrible precedent this brings about. If someone wants to produce art about a controversial subject, apparently it just takes a little anonymous fearmongering to get it pulled. Are we, as a nation that prides ourselves on freedom of expression, going to take this? Are we, a world superpower, going to pull down our pants and bend over as Kim Jong Un, laughing stock of the world stage, stands behind us? Apparently we’ve determined that’s what to do. Well… the terrorists win. We, Americans, have surrendered to North Korea. Better grab that lube Sony… ’cause Kim Jong Un’s screwing you really hard. Instead of paying $8 for a ticket to see him get killed, we’re now paying nothing at all to watch him bend you over and have his way with you. And it ain’t a pretty sight.

A Call to Action

What needs to happen here? Sony needs to change course again. As do the theaters. If the financial repercussions of not showing the film outweigh those of showing the film (which shouldn’t be hard – I’ve already explained that Sony Pictures and the theaters can’t be held liable if something does happen, so those repercussions amount to zero), they’ll be forced to show it. Hell, the shareholders can sue if they don’t. By just scrapping a $40+ million film, Sony Pussies are seriously not acting in their shareholders’ best interests. And I mean, if you really want to, just make everyone sign a liability waiver as a prerequisite to buying a ticket. I happily would. Even if they did make good on their threats and I got killed, the terrorists lose, even if they kill you. They only win if you live in fear of them – which I shall never.

Barring that, Anonymous (hey, seriously, they’d be an easy target…) or a disgruntled Sony employee (read: all of you; Sony’s security has always been bad, and even after this has happened to them before, they still haven’t learned their lessons) should leak the film. And I’ll proudly admit it – I’m gonna pirate it when that happens. Sue me, Sony, I dare you. Since you never launched it, you can’t claim a lost sale. I wanted to give you my money, but you wouldn’t let me.

Consumers, celebrites, etc… Keep fighting the good fight. Many voices, including several celebrities, have put the heat on Sony Pussies. That’s good. If the fallout from not showing the movie is worse than the fallout from showing it, they’ll be forced to change course. Sony are starting to look pathetic for bowing to these threats, and that’s being put in the spotlight. Journalists, keep bringing light to this cowardice. Consumers, don’t buy a Sony product ever again (or go to any of the movie theaters that planned to cancel the showings – these include Regal, Cinemark, and Carmike, I believe). Sony, consequences have been threatened if you show the movie, by people who may or may not make good on those threats. There will be far worse consequences if you don’t. And that’s a chance I don’t recommend you take.

The Death of the Nexus

People have long claimed that Google would kill off the Nexus line. Well… they were right. They have. I’ll only say this once.

The Nexus is dead.

Yep. Dead. Did I stutter?

Did you miss the whole thing where Google announced the Nexus 6 and 9 today?

I did not. Make no mistake. These devices are Nexus devices in name only. The ideology behind the Nexus program, meanwhile, is dead. That is, to provide a pure Google experience on flagship-level hardware, all at an affordable price. What I can’t deny is that the Nexus 6 is, like its predecessors, still the best Android phone of its generation. However, it is priced at a point I am not willing to pay. Google, you’ve shot yourself in the foot. Nobody’s going to pay $650 for a Nexus 6. People have no desire to pay flagship prices for a flagship phone at this point. Society as a whole has moved past it, largely thanks to you. It’s too late to go back on that. As a matter of fact, you’re pulling a Microsoft. What you’re doing is going back on your aggressive pricing to placate OEM’s. Understandably, OEM’s were pissed about Google launching devices they couldn’t compete with on price. However, Google shouldn’t care. You shouldn’t care. The goal of any company should be to deliver products that the customer wants. If their competition can’t deliver a product in its league, at its price point, why slow down? I don’t care if OEM’s are happy, and Google shouldn’t either.

Google (and Microsoft): OEM’s are not your “partners.” They are not your friends. They are your competition. Don’t worry about cannibalizing their business. Worry about pleasing your customers. OEM’s need you more than you need them. The Nexus program stood for something: Delivering a quality device at a price the average consumer could afford without becoming slave to a carrier contract. I’ve said no to contracts starting a couple of years ago, and I haven’t looked back. The only problem is, I don’t know where to go from here. I have no idea what my next device will be. I left iOS a couple of years ago, and I stand by my reasoning. It’s too locked down. And Windows Phone is not and probably never will be a viable alternative to iOS or Android, as it still lacks a sizable app ecosystem.

Back to my previous point, Google has no reason to placate OEM’s. It’s a dog-eat-dog world, and the company that best satisfies the needs of consumers should win. And what consumers need is an open device that one should not need to whore themselves out to a carrier to afford. Nothing aside from the Nexus program offered this. OEM’s didn’t like competition they couldn’t beat, but that isn’t Google’s problem. As put so elegantly by Taylor Swift, “And the haters gonna hate, hate, hate, hate, hate.”

Did I just use a Taylor Swift song to make a point about tech? Yes. Yes I did.

But Google needs its partners!

WRONG! Neither Google nor Microsoft need their “partners.” By the way, these “partners” are nothing more than people who tarnish their reputation by bolting bloatware onto Android and Windows. Look at Apple. Apple makes a lot of money. In fact, Apple is the most valuable company in the world. They don’t need “partners.” The only people Apple needs on their side to be successful? Developers. And developers also happen to love Nexus devices. Cheap, but the most powerful hardware on the market. Google and Microsoft, I implore you: I have quite a few problems with Apple (mostly with iOS; I do happen to be a proud rMBP owner who, in fact, typed this on my rMBP), but learn a lesson from them. Don’t be afraid to piss off the OEM’s. Deliver the most competitive first-party hardware you can, at prices the competition can’t afford to beat. Either they learn to catch up, or they die. I mean, what would they do? Switch to Windows Phone? Firefox OS? Let’s get real here. Google has OEM’s by the balls and has no need to please them. The only real alternative to Android is iOS, and that isn’t available for licensing. If the OEM’s die, they won’t be missed.

Ultimately, I blame Motorola for this. Motorola is notorious for making overpriced hardware at noncompetitive prices. See last year’s Moto X: Priced far beyond the Nexus 5, a vastly more capable phone. Partnering with Motorola to produce the Nexus 6 is outright stupid. Motorola’s ideals (turn a huge profit at any cost) are simply antagonistic to those of the Nexus program.

TL;DR: Google, wipe Samsung off the map. You can do it, but pricing your phone the same as theirs isn’t how to do it.

Meanwhile, I’ll be here putting up with my antiquated Nexus 5. Oh, by the way, Google, it’s absolutely insulting that you’re still selling it at the same price like it’s a modern phone. Even Apple is less greedy than that. They drop the price of their obsolete models when they announce a new one.

Ah well. This generation isn’t important, I guess. Next year is where it’s at. 64-bit Android phones are the next big advance. I’d may as well wait for it (I think I’m just in the “denial” stage of grief). That said, someone new will need to make a phone in the Nexus spirit, or I don’t know what my next phone will be.