Sunday, August 10, 2014

Why Knowing how to Code won't Save Virtual Citizens

I bet you have read this story somewhere: a man (usually from Texas, but all Confederate states host many candidates) proclaims that the government tries to take away his guns, and that he would stand and fight for his rights and freedom, with those guns that the government is trying to take away. Reading this type of stories entertains me on so many levels. And here is the funniest aspect: those guys actually believe that their puny guns can protect them from the most powerful army in the world's history. In fact, proclaiming their stupidity and ignorance actually thwarts the otherwise noble endeavor for personal rights and freedom, since it alienates them from their fellow citizens and political process. This alienation only serves as excuse to actually take them out with bombs and tanks. Now who has the bigger weapons, mister gun nut? (Given the amount of taxes I have paid, I sincerely hope the government would field bigger guns).

By now, if you still stick around, you might wonder aloud: what do gun nuts have to do with coding? A lot! Have you heard the latest round of "we live in digital world, so everyone should learn how to code"? Yeah. Knowing how to code to protect one's privacy is equivalent to pointing some puny guns at American army. It's useless. In fact, it serves little more than making you feel so superior that you fail to do other things, things that actually protect your privacy.

First, let's make something clear: I do not oppose learning to code. Coding is really fun, exercises the mind, and opens doors to many career paths. However, if you want to, says, prevent Facebook or Google or Microsoft or American government or Chinese government from spying on your data, ability to code is completely and utterly useless. Well, even if you want to feel in charge of your digital life (rather than being helpless at what the computer/smart phone does to you), coding would probably not help. The word "probably" is in there to account for a special case: experts. Real experts who can create OS and other systems from scratch (or, at least, debug into existing ones) do control their digital environment through coding. But it takes years (10 years or 10,000 hours, some people say) to reach that point, and a class or two online about programming is nowhere near enough.

Second, why does coding not help? Similar to why your puny guns (assault guns, shotguns, rifles, etc. included) do not help: when your opponents boasts bombs and intercontinental rockets, it's best not to fight them head on. Similarly, do you know the amount of code that makes up this so-called digital world? It consists trillions lines of code! Remember, hundreds (if not thousands or more) of man-years are required to build it, from the lowly firmware of your myriad of chips up to the javascript that drives your websites. Going through all of these to search for the spy is hopeless. Plus, can you discern if the hole is there intentionally or accidentally (as in buggy software)? By the way, so far, I assume that you can even see the human readable version of the code. Much of the digital world, however, is not available in such form. Proprietary software and obfuscated websites mean that even reading a line is extremely hard, if not impossible.

Third, let's dream for a minute and say that you find out something bad with your system. What can you do about it? As I asserted earlier, only a handful of experts can re-create complex systems at wills. The rest of us are stuck. Furthermore, in the majority of the cases, the system at fault is not even accessible to us! Let's imagine an example. Let's say that the music industry signs special deals with ISP to track your online traffic (in case you are sharing something they don't want you to share). In such case, what can you do? This is especially bad if your home has 2 choices of ISP, both of which signed onto the deal. Facebook, Google, Apple, Microsoft et al present similar paradox. Yes, Facebook may be spying on you, but since all of your friends are there, what can you do? Apple may do something you dislike, but with all of your music is in their hands, dare you buck?

What actually protects your privacy and foster your control over the digital world, then? Again, I am talking about solution for the masses, the 99.9999% of people. Let's look our gun nuts again. What can he do to protect his rights and freedom? Certainly wielding guns alone is not enough. However, a well regulated militia (to quote the Constitution) is a different matter all together. Another solution involves working the political systems to ensure all members of the government (Americans do live in rather democratic society) to support personal rights and freedom. How do those solutions translate to our digital world?

First, we should promote understanding of the system. When our representative in Congress declared that the Internet was a series of tubes, there is a lot of work to do. A user should understand what his world includes, and which parts she can affect. Furthermore, people should know the ins and outs of their systems. Let's be frank here: how many of us truly know how to use Windows/Mac/Linux/BSD? When the system panics, how many of us know the steps to investigate, understand, and fix the problem? We have weird habits regarding technologies: so few people read manuals, yet fewer invest time and effort to understand the optimal usages for their products. Before learning how to code, how to create new system, everyone should learn how to use their systems.

Second, political actions should be considered to ensure our digital rights. We already wage political war for net neutrality. I strongly believe that further political actions are required. For example, the building of municipality infrastructure, the regulation of wireless network providers, the right of users over their digital identities, etc. all require public discussions as well as determined political efforts. We should demand all of our candidates for public office to explain their stances and proposed policies on digital rights and privacy. This is just my opinion, but we spend too much of our political bandwidth on abstract and far away issues, and not enough time on matters that affect us day in and day out.

Lastly, we should educate ourselves on our psychology blind spots and weaknesses, and train ourselves to use digital products in a smarter and freer ways. For example, advertisements have know how to subconsciously message us for decades, entertainment industries have pushed for restrictions on our enjoyment and ownership of the products that we pay for. Furthermore, we should use social networks not just to court followers and compete for popularity, but also to form alliances, to teach each other, and to unite in the fight for our digital rights and freedom.

A few months back, a rancher in Nevada seemed to finally understand the game. When demanded to pay back money he stole from local government (in form of unpaid usage of publicly cared for land), he instead called in his militia buddies, and the government had no choice but to back off. As I said, it's one thing for a gun nut to scream about his beloved weapons, it's another for them to band together. Here is the question: when will we, digital citizens of the coming digitized world, come to our senses, band up, and fight for our rights? I mean, let's not steal anything, but the challenges are the same: to do anything significant, we need to understand how the game is played, and play it together. Merely learning a tiny details of a complex game can't win. Coding alone has not, will not, and cannot save us. Education, understanding, and unity are the ways forward.