In the Wake of #DeleteFacebook, It’s Time to Rethink The Free Internet Economy

In the wake of what the media has misrepresented as the “Facebook data breach” by the British Firm Cambridge Analytica, Facebook has lost users, lost high-profile company pages, and most importantly to them, lost value.

The #DeleteFacebook hash tag’s popularity has hockey-sticked as have Google queries for the search term delete facebook. The torches and pitchforks are out. The townsfolk are angry. And they should be.

We Have a Right to be Angry

But our anger shouldn’t be entirely aimed at the dorky billionaire possibly cloistered away at his private Hawaiian beach. If you need to blame someone for violating your privacy, you should start by blaming yourself.

I have no love for Facebook.  Or social media in general. I encourage you to delete your Facebook simply to regain control of your schedule and mental well-being.  But it won’t solve this problem because Facebook is a symptom, not a cause.

I’m aware my opinion isn’t popular. So let me explain.

What Did the Trump Campaign Do?

During the 2016 presidential election, the Trump campaign hired a British firm called Cambridge Analytica to manage their online campaigning. The campaign tasked the firm with building a useful voter database and using it to change hearts and minds. This strategy is not the stuff of scandal. For better or worse, this is the life-blood of modern American political campaigns.

Do you remember the movie Inception? It’s like that. But instead of implanting thoughts in our heads with futuristic dream travel technology, they do it with ads so targeted to our headspace that we think their idea and the resulting change in our behavior were ours all along.

Summary: The Trump campaign collected detailed profile data on voters that most believed was private. They leveraged this data to develop microtargeted campaign messaging that was often untruthful, with the goal of playing to the voters’ owns hopes and fears to swing their vote. This is common. But this is not OK.

What Did Cambridge Analytica Do?

Cambridge Analytica developed a Facebook personality test app that tens of thousands of users installed and shared.  When the app was installed it requested permissions to read information about the user’s connections (“friends”) and their demographic data. Facebook essentially allowed users to permit apps to read their friend’s profiles.

On its surface, the app did what it claimed to do.  But behind the scenes, the app was used to data mine demographic information on millions of Americans.

Cambridge Analytica claims that by using data mining and microtargeting, they can zero in on the needs of specific voting blocs and deliver ads that can change voting behavior. A former employee leaked their blueprint for winning the presidency.  Spoiler Alert: he won. They helped.

Summary: Cambridge Analytica developed a Facebook platform application that did one innocuous thing on its surface, but behind the scenes gave Cambridge Analytica access to detailed profile information for both the users and the user’s Facebook friends.  The app took advantage of the fact that very few people paid attention to app permissions and did what so many free online services do: offer something useful in exchange for data. It’s common. But it’s not OK. (More on this later.)

What Did Facebook Do?

Not much.

I don’t mean that Facebook didn’t play a pivotal role in this fiasco.  Inaction was their choice, and inaction turned this from a design flaw into a scandal.

Facebook required users to authorize permissions when they installed the app manually.  But once a user gave Facebook apps permissions, they didn’t concern themselves with how they used it. Former employees have claimed that it was Facebook’s internal policy to not look at how the data was used because then they’d be responsible for what they found.

Summary: Facebook developed a social platform and allowed third-party programmers to build apps on it. Facebook’s platform required apps to ask for permissions.  But the permissions were far too broad and could be used to read profile data on users other than the one using the app. In Facebook’s business model user data is the product they sell. Looking too closely into how that data gets used would jeopardize their business. Their business model does not incentivize privacy.  This is how the Internet’s “Free Economy” works. There is nothing OK about it.

What Did Do?

“What did I do to cause this?” is the question nobody is asking.  But it’s the most important.

The Trump campaign hired Cambridge Analytica to mine private data and use it to change behavior. Cambridge Analytica built an app to harvest data by taking advantage of Facebook’s overly permissive app platform, and the psychological fact that users are terrible at reading and understanding terms and permissions. Facebook built a platform that’s free to use but sells our data and sells moments of our lives (“engagement”) to advertisers.

But there’s one thing that’s required for all their plans to come together: they need you to play along.

You signed up for Facebook.

You installed the app.

You neglected to read the fine print.

You gave the app permission to harvest your data.

You gave the app permission to harvest your friends’ data.

You neglected to read Facebook’s terms and signed up anyway.

You agreed to let Facebook sell moments of your life by way of engagement with targeted ads the moment you signed up.

You agreed with the message of the ads because they confirmed your existing beliefs rather than challenge them.

You didn’t fact-check the message because that takes time and could challenge your existing beliefs.

You helped the message spread because it confirmed your existing beliefs.

You decided, explicitly or not, that all this was better than paying for whatever value you think you’re getting from Facebook.

It’s Time to Rethink the Internet Economy

The behavior of the Trump Campaign, Cambridge Analytica, and Facebook is the rule. It is not the exception.

If it weren’t Donald Trump, it would be his opponent. Cambridge Analytica’s programmer is hardly the first coder to build disingenuous software. Except for the open source movement, that’s the free software model. Facebook isn’t doing anything with its data that other social networks wouldn’t do as well, or have done in the past.

And it’s all because we expect the Internet to be free.

Ideas mature. They get reconciled with reality.  They get old. They sell out. My punk-rock high school friends work at banks now. Rock & roll lost its edge and became a commodity. And the Internet isn’t pirated games, and it isn’t Napster anymore.

But it’s built by folks who cut their teeth on it. And now they have kids to feed.

You, me, and billions of others decided we like free so much that we’re willing to sell out our friends, our privacy, our democracy, and even our thought processes in exchange for free service.  We barely consider what those services are, and if they make our lives better.

We need to have a conversation about the real price of free service, and whether it’s worth the social cost.


Install the PHP SQLSRV Driver on Linux

Rejoice! Microsoft actually does provide a PHP Linux driver for Microsoft SQL Server. The bad news is, it can be a real pain to get it working.  I went through this experience tonight while setting up a utility I wrote for a client. I ran into two separate issues. This article provides some assistance with the issues I ran into when I tried to Install the PHP SQLSRV driver on Linux.

How to Install PHP SQLSRV Driver on Linux

The instructions in the repository’s are actually pretty good. Check out the official Github repository for the driver for the latest version and installation information. I recommend you follow their instructions first. When you hit a roadblock, come back to this article for help.

PECL Building with Wrong PHP Version

The final step in the installation is installing the base driver and the PDO variant withpecl install. PECL runs a build process on your machine and it uses a tool called phpize to execute the build. The version of this tool needs to match your PHP version. Otherwise, the build will succeed, but the extension file it generates won’t be compatible with the version of PHP you’re running. You’ll know pretty quickly if this is the case if you get “can’t load extension” errors after you build and execute PHP.

To solve the problem, install the version of phpize that matches your PHP version. For example, if you are running PHP 7.1, you would run:

sudo apt-get install phpize7.1

Microsoft ODBC Client is Missing

After I fixed the problem above, I ran my PHP script and the database connection failed. The PDO SQL Server driver reported an error message that it could not execute because it required the Microsoft ODBC Client. Installing the client is actually part of the steps in the instructions provided on Github. But for me, the installation failed and I didn’t notice. I went back and repeated this step and found that there was a missing dependency that would not install. Once I manually installed it and re-ran the client installation steps, then the PDO driver started working.

The Github repository below contains the official drivers from Microsoft. Check out the repository for the latest version information and installation instructions.