The good thing about lower courts is that when they make a really stupid decision, they can be overruled. I blogged a while back about a court that decided that an e-mail provider can read his client's e-mails for any reason. Now the Justice Department and some civil liberties groups are trying to get the case reheard.
I was just struck by something when I reread the capsule description of the case in this article:
Councilman was charged in 2001 by the U.S. Attorney's office with violating the Wiretap Act, which outlaws most interceptions of phone calls and e-mails. The case never made it to trial, as the court dismissed the charge.
A three-judge panel from the 1st Circuit Court of Appeals upheld the dismissal, arguing that the wiretap law did not apply since the e-mails were stored, even if only for seconds, on Councilman's computer.
It seems to me that a surprising number of legal problems are created by the way computers deal with moving files around. When I started to study computer programming in college, I learned to adjust to the fact that you can't directly move things—a file, a stored variable, or anything else—to a different memory location. That's just not the way computer memory works. Instead, you simulate the process of moving by making a copy to the location you want the thing in, and then deleting the original. Copying is a fundamental activity of a computer, and moving is only derivative. It's not at all like the world of physical objects, where moving things around is trivial (unless they are very heavy) and making a copy is cumbersome.
So, when you try to apply laws created for the physical world to the digital world, you come up with all kinds of problems. The Wiretap Act may not apply because e-mail files are almost always "stored" somewhere instead of "in motion". Taking a legally-downloaded mp3 from your computer and putting it on your portable device can be blocked by a DRM scheme designed to prevent illegal copying. And so forth. It's really quite troublesome. Much more so than I thought during Programming 101.