Why I care so much about stopping SOPA/PIPA (and why you should care too)

As someone who works with, and is constantly immersed in, the Internet, I’ve been hearing a lot about SOPA (the Stop Online Piracy Act, in the House) and PIPA (the Protect IP Act, in the Senate) over the last couple of months. But I suspect most Americans have heard much less about these bills currently under “debate” in the US House of Representatives and Senate. That’s the way the sponsors of these bills (and their corporate donors) likely want it.

You can read the text of the bills, or the innocuous-sounding summaries the government has published. On the surface, without careful reflection, they seem like good ideas, designed to protect hard-working American creators from having their intellectual property stolen. But the implications of these bills, for freedom of speech, for innovation, even for the very feasibility of their technical implementation, are anything but innocuous, and may irreparably harm, rather than protect, the American economy.

What’s it really all about?

Let us be frank: the true objective of these bills is not to prevent illicit foreign websites from destroying American jobs by stealing our movies and music. It is to prop up a dying dinosaur media industry that would rather kill innovation than have to learn to change. Follow the money. A simple look at the lists of corporate supporters of SOPA/PIPA, along with the corresponding list of companies that oppose these bills, tells the story.

The Motion Picture Association of America (MPAA), the Recording Industry Association of America (RIAA), countless “old media” conglomerates. These are the companies that want these bills to pass, because they are in their death throes after over a decade of spending their dwindling profits on fighting, in any way they can, the changes the Internet has wrought, refusing to admit that the massive profits they achieved from the 1970s through the 1990s were built upon an unsustainable model. These industries refuse to adapt. Adaptation is hard. But the world changes. You have to be prepared to change with it, or die.

So what’s the threat?

The Internet has fundamentally transformed the way people communicate, and as a result it has changed the way they get their entertainment. Sure, piracy is a problem. It needs to be dealt with. But there are also huge opportunities to build profitable businesses legitimately selling entertainment products (intellectual property) online. iTunes, Amazon and Netflix prove that. The problem for old media, though, is that the Internet has obviated their role as a high-markup middleman. Look at Louis CK’s wildly successful experiment in DIY production and promotion. Change or die.

True, as the old entertainment industry contracts, American jobs are being lost. But the entertainment industry is a small piece of America’s GDP. By contrast, the Internet, and more broadly, information technology, is significantly larger. (According to Census Bureau data, in 2008 the film, recording and broadcasting industries employed 643,089 people; information services, software publishers and computer systems employed 3,443,162 people.)

The Internet is possibly the brightest spot in America’s economy right now, and it is profoundly threatened by what SOPA/PIPA could do. So, in effect, Congress is preparing to kill (or at least maim) one of the most thriving parts of our economy to save a sector that is going to die anyway. (I’m trying to think of an analogy to make here but they’re all too gruesome.)

How does it work?

Aside from understanding the true motivations of SOPA/PIPA, it’s just as important to understand the implications these bills have for American Internet companies, our cherished freedom of speech, and the daily use of the Internet, even by Americans who by and large are engaging in purely harmless, infringement-free activities.

I’m about as squeaky-clean as Internet users come when it comes to copyright. Sure, I may have a handful of music files on my hard drive that I got from friends, just like we’d dub cassettes of our favorite CDs back in the late ’80s and early ’90s to share. Ever heard of a mixtape? But the overwhelming majority of my 18,000+ songs were purchased legitimately, either on CD or through download services like iTunes or Amazon. And a lot of the music I own, I purchased because I learned about it through friends. Even if they had already given me copies of the music. Even in the peak of the music industry’s profits from CD sales in the ’90s, that’s how it worked.

(I’m also a content producer myself, as a blog writer and independent musician. I’m skeptical of current copyright law and as such have taken to releasing all of my work under Creative Commons licensing. But that’s a topic for another post.)

The point is, sharing music doesn’t necessarily reduce music sales. I’d argue that, in limited quantities, between friends with similar tastes, it actually encourages music sales. But even if we agree that illicit copying and redistribution of things like movies and music is bad (and, when it’s done at a large scale, I do) piracy is not what’s killing old media — mediocre content and exorbitant pricing are. And SOPA/PIPA can’t help that.

The real danger of these bills is in their implementation. While ostensibly they’re only targeted at foreign websites, their means of recourse against infringers could result in the blocking of entire sites due to the alleged infringing activities of one member. This sledgehammer approach has broad-reaching implications for all Internet users in the United States (to say nothing of what it means for free speech, and the company it places America in amongst governments that censor the Internet).

What’s worse, it won’t even work. Already there is much discussion online of means of circumvention (which I will not link to here), and, worse, it breaks the Internet. I don’t just mean that it is going to destroy the way we use the Internet. I mean it actually runs contrary, on a deep technical level, to how the Internet functions. Even SOPA supporter Comcast (my ISP… for now) admits, albeit inadvertently, that at least on a technical level the requirements of the law are incompatible with how the Internet works.

A threat to America’s small-business owners

I’m one of those fabled “small business owners” politicians so love to talk about. I’ve been freelancing full-time in web development since 2008. Business has been great, even through the worst economic times in America since the Great Depression. All of the work I do is 100% legitimate, for honest, productive American businesses. This is the new economy, and it is America’s best hope for a brighter future. I’m expecting to expand my business this year, becoming an even larger presence in the community and helping to further spur on positive economic activity.

But SOPA/PIPA threaten the way I do business. Republicans in Congress put on some great political theater in 2009-2010 in their fight against “Obamacare,” claiming its provisions represented an undue threat to small businesses. But here we have a real threat to small and growing Internet-related businesses. If passed, these laws will impose odious burdens of monitoring and self-policing upon website owners, and the threat of takedown without due process will have a chilling effect on whether or not new ventures even get started. In short, nothing could more effectively put the brakes on this “engine of growth” for the American economy.

Take action

So what can you do? Old media still has deep pockets, and is well-represented on K Street. It has the ears of Congress. But, last I checked, these elected officials do also still represent us, the individual Americans who will be affected by these bills. So call them. Politely tell them why you believe these bills are bad. Check out other online resources that can help you get involved.

I will admit, however, that personally I have not attempted to contact any of my representatives. I already know that my House representative, Keith Ellison, opposes SOPA. Over in the Senate, unfortunately, Amy Klobuchar is one of the sponsors of PIPA. And, despite his genuine progressive spirit and work on behalf of American individuals, Al Franken is simply too deeply connected to old media not to also back PIPA. I sincerely doubt either of Minnesota’s senators will be convinced to change their position, no matter how many constituents call them.

But your representatives may still be on the fence. Reach out to them. Let them know why you think these bills are not just bad, but downright dangerous for America. The implications for America if they pass are far bleaker than the prognosis for the industries they are intending to protect.

And, this is an election year. Vote. While it will most likely be too late to affect SOPA/PIPA, do your part to make sure none of its supporters get re-elected in November. I have been a strong supporter of Amy Klobuchar in the past, even having donated to her first campaign, but unless she withdraws her sponsorship of PIPA, I will not be voting for her re-election this year.

As someone who works in the Internet, the implications of SOPA/PIPA are huge for me and for my business. But this affects us all.

Tell me more!

As with a lot of hot-button issues, when I get my dander up it’s sometimes hard for me to calmly and clearly explain the rationale for my argument. I’ve linked throughout this post to some great resources for learning more about what SOPA/PIPA is and why it’s bad, but as I come across other sites that do a more effective job of explaining it than I have, I’ll add them here.

Other sites discussing problems with SOPA/PIPA

Updates on the fight against SOPA/PIPA

Still wish you were using Internet Explorer 6?

If you’ve never visited this site using Internet Explorer 6, you probably are unaware that up until now doing so would load a big ugly alert box explaining how foolish you were being to do so — being that I am an arrogant Mac and Firefox user, not to mention that IE6 is dangerously insecure (besides not supporting alpha channel transparency in PNG images, which are the building blocks of this site’s design).

Today I had the chance for the first time to see just how horrible the new design looks in IE6, and as much as I don’t want to support that browser, I also couldn’t handle thrusting visitors into the hideous mess of this site in IE6 without at least giving them a taste of what it’s supposed to look like first. To that end, I’ve created a more friendly “welcome” page for IE6 users, giving them one last chance to upgrade before proceeding, and in the process showing them a hint of the site’s actual design as it’s intended to appear.

But of course, since you’re not using IE6 (are you?), you have no idea what that page looks like. So, I thought I’d show it off a bit. Here it is. Enjoy. Or not. Actually, it’s not really intended to be enjoyed, so don’t. (I’m really only posting this link so I can test the HTTP_REFERER link functionality I embedded in it. [And yes, I know the correct spelling is “referrer.” Tell that to whoever created the names of the HTTP host headers. I mean whomever. So there.])

All hail PNG!

According to the official spec, it’s actually pronounced “ping,” which I dislike: “ping” already means something very specific (and very different) in the Internet world. But I’ll go along and stop calling it “pee-en-gee”. Apparently I have to start calling GIF images “jiffs” as well, since that’s what the creator of the format calls it. (Maybe as a form of rebellion I’ll start saying “LIE-nux” — or not.)

Anyway… savvy reader(s) will know I’ve actually been using PNG images featuring the all-important alpha channel transparency for nearly a year on my site; it’s what allowed me to swap in the various 34-themed photos in the old design as an underlay below the logo and navigation bar without having to create separate versions of the logo and navigation button graphics for each separate photo. Alpha channels allow you to build transparency information right into an image, so images can be overlaid directly on each other with complex layering effects, regardless of the color of the background. (This is all exceptionally arcane for anyone who doesn’t do web design, or more generally, graphic design; but to us in the field it’s potentially huge.)

Now, PNG has been around for several years, but almost no sites I’ve seen are really taking advantage of alpha channels yet, and with good — or at least, understandable, if lamentable — reason: Internet Explorer did not properly support PNG alpha channels until version 7, which just came out earlier this year. As a result, even though Firefox and Safari have both been able to display these images properly since their inception, no one could really use the format unless they were willing to have upwards of 90% of their visitors look at garbage.

I for one am willing to have my visitors look at garbage: if they’re using Internet Explorer 6, that’s what they’re dealing with anyway! Hence, for those of you who may still be using IE6, I present my annoying JavaScript alert whenever you enter the site. (The rest of you have no idea what I’m talking about, and be glad for it.)

But now, according to log stats on the sites I’ve developed at work (where I actually have stats to look at), the majority of Internet Explorer users have upgraded to version 7. Combine that with the fact that increased usage of Firefox and Safari (corollary: increased use of Macs) has pushed overall IE traffic down to around 80%, and I felt like the time was ripe to dive into a full-fledged transparency fest with this new web design.

Maybe I’ve just been slipped more of Steve Jobs’ special Kool-Aid, but since I’ve gotten to the point where I almost like Leopard’s translucent menu bar, it only seems fitting that I should honor (or, if you prefer, imitate) this new direction in computer interface design, legibility be damned! (OK, I know Microsoft’s on the transparency train too, and it’s hard to say who’s really pulling the mixed-metaphor cart here; Vista came first but Leopard is still ahead of it, and the whole concept behind Vista’s interface seemed to be another attempt at playing catch-up to Apple. But I digress, as usual.)

I actually no longer have access to any Windows computers that haven’t been upgraded to IE7, so I have no way of knowing what the new pages look like in IE6. I expect they’re pretty terrible. Guess what: blame Microsoft!

All hail PNG!!!

Note: I’ve just discovered that there’s a weird problem with an unexpected background image showing up across the top of the page in Safari 2.x, which is the browser most Mac users are running unless they’ve wisely switched to Firefox or zealously upgraded to Leopard. (In other words, it looks great on my MacBook, but I noticed the problem on SLP’s iBook!) I’m hoping to have it fixed soon… once I figure out where the hell it’s coming from!!!

Web 2.0 — opening up a whole new world of Internet Explorer quirks!

Just when I needed it least, Internet Explorer has thrown me another curveball.

I’m hard at work trying to seem like less of a 20th Century web dinosaur by acquiring new skills with these techniques that are loosely lumped together into what some call “Web 2.0.” Key among these is an approach called AJAX (Asynchronous JavaScript and XML). Fun stuff. I’ve been working for the past several days on an interactive registration form for a site at work, using AJAX. Of course, as usual, I’m plugging away in Safari and Firefox, but eventually I decided to check out how things are looking in Internet Explorer.

[When I figure out an emoticon that represents my head exploding, I’ll insert it here.]

IE is consistently barfing on what it claims is a syntax error that I eventually tracked down to the evalScripts function in prototype.js. Well, at least it’s not my own code that’s making it crap out this time. Or is it? With IE you never can tell. Maybe evalScripts is buggy (even though I can find no evidence to that effect) or maybe it’s just the code in my script that’s being thrown at it. Whatever the case, once again all forward progress has come to a grinding halt while I scour the Internet fruitlessly for a solution.

Although this turned out not to be a solution to my problem, I just have to refer you to this developer’s blog entry on a typical IE workaround. Yes, I tried this, even though I was almost positive his problem was completely unrelated to my own (which was the case). Nevertheless, when a problem does arise in IE, the most likely eventual result of one or more days’ worth of sleuthing is the resigned acceptance of such hokey code bloat, rather than anything even remotely satisfying (or even logical).

There you have it. As for my own problem using prototype.js with IE, I did find a solution. Yes, it was my code, and it was something I had seen previously that was pretty much staring me in the face, if I had just bothered to heed Thomas Fuchs’s sage advice.

It all comes down to standard practice for wrapping <script> tags in HTML. I still have the habit of doing it this way:

<!–
//–>

The funny thing about that is that I know it’s completely pointless these days. It’s done so that browsers that don’t support JavaScript don’t inadvertently display the JavaScript code in the web page. But every browser has supported JavaScript since about 1997, so it’s pretty ridiculous to keep doing that. Especially given that, the way the sites I’m working on are so utterly dependent upon JavaScript, you’d never even get to the page in question without it.

However, with XMLHttpRequest (which is at the heart of AJAX), and just the increasing complexity of JavaScript in general, it’s become necessary to wrap script code in a new tag to ensure that browsers handle the code properly. To wit:

// <![CDATA[
// ]]>

Just as Thomas Fuchs said. And just as has been lingering in the back of my mind for the past several weeks, since I first discovered his wonderful tool based on prototype.js, Scriptaculous. I’ve learned my lesson.

Quickly now…

Just a quick one, as I don’t have a lot of time to post… but of course, as usual, I had to make time for a detour into the madness of Internet Explorer when I discovered that my CSS line-height positioning was breaking when there was an inline image in the text. Why? Who knows? But the solution involved sticking vspace=”7″ into each offending image tag. Yet another case of hacking a one-off solution into the code to work around an Internet Explorer quirk. Almost as frustrating as IE’s violations of standards is the fact that there’s almost never a one-size-fits-all workaround!