Private APIs aren’t open to interpretation.

There are a lot of political injustices imposed on people around the world every day. Suffering is nearly limitless, and horrible problems erode basic human needs and rights almost everywhere. Developers misusing a service’s APIs and then being shocked when their behaviors are called out is not among these injustices.

Ars has a story about a kid who built an app to upload photos to Instagram being “threatened” to take it down. At first glance, a lot of us that don’t work in the corporate world or for a large company see this and would probably think, “Man, that sucks. Boo, Instagram.” The problem is that Instagram’s API has never allowed for uploading to the service. That’s why you could only ever use the main app to send pictures in. Caleb Benn decided that when he saw all the other Mac apps that didn’t have this functionality, he had a market opportunity on which to capitalize.

As a developer, he had enough savvy to hook into the service and build and release a functional Mac app. But whether out of naiveté, ignorance, or disregard, he decided to use a private API to do something the service didn’t permit. The story on Ars positions him as a pawn entangled in a corporate maneuver to oppress independent developers. It talks about how he’s headed off to UC Berkeley to study CS, and he was just solving a problem.

If you read the API terms of use, it doesn’t explicitly say you can’t upload, which may be the problem. But any developer who sees over a dozen apps for a photo service that all don’t do what seems to be the obvious thing they need to do has to then ask “why is that?” and be prepared to do a little digging, and potentially not like the answer. That the company came after him is unsurprising, and well within its rights. That he’s disappointed with this outcome is within his rights. It’s a lesson. That it’s being picked up as a David and Goliath story is bad journalism.

The EFF is now weighing in on this, which really saddens me.

The Electronic Frontier Foundation’s “Coders’ Rights Project” suggests that Benn might be within his legal rights to make the app.

“According Instagram’s [sic] website, reverse engineering the API is indeed a violation of the terms of use,” Corynne McSherry, the legal director at the Electronic Frontier Foundation, told Ars in an e-mail. “That said, the general terms of use refer in turn to an API ‘license.’ Whether or not an API is copyrightable expression as opposed to a method of operation, is by no means a settled question.”

“It’s shameful that Instagram is trying to use its its [sic] terms of service to impede users’ fair use rights and stifle add-on innovation,” she added.

The EFF has many, many, MANY better battles to fight around the world. That it’s deciding to spend its resources re-interpreting the language of an API optionally provided by a service that does not need to do it at all is troubling.

Believe me, in 99% of these matters, I’m almost always in favor of the little guy getting a shot to do something. But this is either a) careless development and unfortunate overall, or b) a calculated stunt by a smart kid who wanted some attention. It’s not political oppression, and it’s not worth the EFF’s time. It’s business, and it’s totally reasonable, although maybe not what you’d want.

Life isn’t always what we want it to be.

Author: Seth Clifford

I'm here for the open bar.