It's interesting to ask yourself which is worse: write a blank check for people to shut down just about any website OR stop some fraction of people from listening to music, watching movies and tv shows, or copying images that, 9 times out of 10, they simply would never buy. In those terms I think the choice is simple, SOPA should not be passed.

But I find it even more interesting to take it a step further. Wikipedia is a mountain of information put together with *no monetary incentive*. Some of the most important software of all time, such as Linux and C++ compilers are free to copy and use. Shakepeare's plays were written before they could be protected by copyright, and the same goes for Leonardo's paintings. Music had existed for millennia before it could be copied in any way other than someone learning it and repeating it, and that certainly wasn't illegal.

When I develop a website, 99% of the work has already been done for me -- for free. The operating system for the server is free (Linux). The server software is free (Apache). The software that runs my perl, php, or ruby code is free. The browsers that run my javascript and allow people to view my website are free. The text editor I use to write my code is free (jEdit). There are hundreds or even thousands authors who have written the php and ruby libraries that allow me to piece together a lot of bits of things that save me time and I download and use these libraries *for free*.

Artists, authors, musicians, journalists, programmers and anyone else who creates something that can be copied can do more of what they do and possibly do it better when they are compensated for their effort, but this is not the same thing as saying that they need $2 for each copy of their work. It's not even the same as saying that they need to control every copy of their work. Is it really worth it to prevent me from watching the downloaded Doctor Who episode that I couldn't watch because I don't have a TV on the basis of the theory that if I hadn't been allowed to do so I would have obtained a TV and cable and then been exposed to advertisements that would have lead me to purchase something and therefore support the channel who paid the people who made the show? Think about who's making the money from this, and think about the "work" that is at stake here. The work being an episode of Doctor Who. I like to watch TV shows and movies, but how many of them are worth putting people in jail, fining an individual tens of thousands of dollars, or perversely, preventing many people from ever watching them.

Think about that for a second. One of the biggest effects of strongly enforcing copyright law is that less people will ever see, hear, or use what is being copied. The law doesn't force anyone to pay someone for the great work they've created, it forces them *not to have a copy*. You don't have to buy a copy if you don't want to, you can choose not to read the book or listen to the music. If the printing press, the record player, the computer, had never been invented, we wouldn't have this pesky problem of preventing people from making use of something that has already been created. Rather, a tiny fraction of the people would have been able to read any particular writing, and, relatively speaking, almost nothing written would exist in the first place. The closest thing to a movie would be a play, and music would be limited to live performances. Software would be an absurd fantasy.

But now everything has changed. Now the ability to copy, and each iteration of technology that makes it easier, has lead to an *explosion* of activity to create more things that can be copied, despite the fact that each iteration of technology also increases piracy. What does this mean? In my opinion, this means that increasing copyright enforcement beyond its current level mainly benefits large entities who do a little bit of math and find that lawsuits and lobbying cost less than what they would make by getting a small fraction of people participating in piracy to fork over money for a legal copy of something instead. In other words, if you're going to make a little bit more money, why not? I don't think this is what supports the people who bring these works into being, nor do I think that this would serve as motivation that sparks people to make new art or music. Who are we fooling?

Kill SOPA, and seriously consider whether it's worth the risk try to rewrite it without creating an internet death trap. Seriously consider whether copyright laws need to be strengthened at all, and if you create copyable material, seriously consider whether you want to stop people from copying it. There are other ways to make a living from what you created, and allowing people to copy something freely might actually be a much better strategy than making them pay for each copy.

Lucky for me people don't need to copy this post in order for others to read it, all they need to do is come to my website, which, if SOPA is enacted, they may never find because search engines might be too crippled to find it. Nevertheless, feel free to e-mail this, print this, shine it onto a cloud, etch it into a stone, or write it with a plane in the sky so long as you say that Todd Cesere wrote it, and you don't make me look stupider than I already do by changing the words.

                                                                                                                                                                                                                                                                                                                    

   

Lately I write very long comments on things I find around the internet and then for some reason don't have the kidneys to post them. I don't want them to go completely to waste, so here's one regarding http://24ways.org/2011/your-jquery-now-with-less-suck

Is the ops/sec the number of times it can find an element of the type in question? Or is it somehow the number of elements it hits while searching? My guess would be the first, because measuring the second would be hard (or impossible?) and less relevant.

The reason I ask is that the test just gave me 569 ops/sec for the worst element, the :hidden pseudo class. I know, I know, it is possible for people to write a page so hairy that it actually selects hundreds of :hidden elements, but how common is this? The attribute selector reads at 15,000 ops/sec. I can see that some of the browsers gave something like 4,000 for that. Still, if hundreds of :hidden selectors is a lot per page, then hundreds more attribute selectors is really a lot.

I can think of a page -- made by one of about a thousand users using a tool that is under my care -- that has hundreds of entries in their blog-like list. We ran into problems with this because it was draggable, but the largest part of the solution was to switch to using jQuery from prototype. Some more responsiveness came from using selectors differently, as you say.

That said, it is easy to spend a lot of time programming and debugging just because you're afraid something is going to be slow. I picked up something from a company called Art & Logic (artlogic.com) a while back about best practices, and I have been convinced since then that it is smart thinking; you should (paraphrasing from them) maintain good practices, but don't prematurely optimize. Prematurely optimizing can lead to confusing code, lost time, duller features, and -- yes -- *slower* code. You shouldn't very often side with optimizing when there are benefits to not optimizing -- until you find your code running too slow. In the real world there are definitely trade-offs. If you just think about the difference between quicker sorting algorithms and slower sorting algorithms, you'll see a lot of these. Luckily, you don't have to rewrite sorting algorithms, which removes some of the tradeoffs.

It is quite useful to know which selectors are faster, especially if you're already in a situation where you need to optimize. But what I can't answer is this: Are we benefiting from the very many articles about optimization more than we would if they were prefaced by saying that optimization can often do more harm than good? A lot of examples of optimizing javascript could lead to reduced optimization of server-side scripting (eg trying to make elements easier to select), can lead to more convoluted code on both sides of the client-server relationship, can discourage or slow down people who are just learning, discourage the implementation of new kinds of interface interaction, increase time to implement and correspondingly reduce features/functionality, and can generally just lead to more stress than is absolutely necessary. And yes, it can lead to less-optimized code, especially if someone tries to learn several ways to optimize and try to flawlessly apply them from that point on. This might not be the intention, but it might be a good idea to point that out.

Bipolar II Disorder
Raynaud's disease
horseshoe kidney
hand tremors
cats, dogs, mites, dust, mold, english trees and grass allergies
attention deficit disorder
auditory processing disorder
hemorrhoids
baldness
27 teeth, 1 a baby tooth, 1 dragged down by braces from just below the nose
eczema
hypochondria

Dear developers,

"chocolate == tasty" should not be the same as saying "chocolate is tasty". When a program says "a == b" it would be backwards to suppose that the expression was true and then leap to the conclusion that "a" really was quite "b". It would be closer to say "a = b", because then we would all be able to look at "a" and see that it did indeed contain "b". In this case you would say "chocolate = tasty", which sounds funny because it sounds like you're forcing chocolate to be tasty. Unfortunately, (or fortunately) programs do not have an effect on reality, so don't be afraid to assign "tasty" (which I assume is some kind of taste literal) to "chocolate". It won't force chocolate to taste good or force anyone to believe that it does.

If you want to be really picky about it you could come up with something more awkward, like

know_that(chocolate, tasty)



Or here's an object oriented approach

you.communicate_description(chocolate, tasty)



Or how about command-line?

echo "tasty" > chocolate



But that would be crazy.

Sincerely,
Todd

I left you a facebook comment,
I mean, a text message,
or was it a voicemail?
an instant message?
or did I send you an e-mail?
or leave a sticky note?
leave a message on your answering machine?
publish a memo?
or did I send you a telegraph?
mail you a letter?
send a pigeon with a scroll?
a courier?
or did I leave a carving on a stone tablet?
or send a rumor through the grapevine?
or did I leave a message with your sister?
or did I talk to you?

or was it a videomail?
or an info digest?
a thought?
or a memory merge invitation?
or a memory?
or was it something we observed as one mind?
or had you programmed it to happen to me?
or had you programmed me to know it?
or did you make it so that it never happened in the first place?

what was I talking about?