Friday, October 5, 2007

Embrace, Extend, Extinguish, Novell Style

A lot of people rag on Novell for apparently violating the open source/free software philosophy with their patent agreement with Microsoft. And they might be right. But not for the reasons most think. Before we pursue this line of thinking further, let's make two things clear. First, Novell was feared for their embrace, extend, and extinguish tactics long before anyone cared about Microsoft. Second, Novell's legal team is thorough, persistent, and downright scary. For evidence of the former, SCO is the 12th competitor Novell has killed through contracts. For evidence of the latter, SCO is the 12th competitor Novell has killed through contracts. And I'm not counting all the suppliers Novell's screwed over in the past. I don't think I need to say much more.

The thinking is that by signing a patent protection agreement, Novell is shutting out the rest of the open source community since the protection is only extended to Novell and its products. However, this is ignoring fact number two, Novell's legal team. They're not idiots and obviously were monitoring the entire GPL v3 drafting process. They were fully aware of what might make it in and they knew the FSF had an axe to grind with patents. They were also smart enough to frame the agreement so that it didn't violate the GPL v2. Novell actually offered Microsoft a clause that would have limited this agreement to the current license version, but Microsoft was afraid Novell might turn that clause against them in the future, so they declined it. One would assume Microsoft was also watching the GPL v3 drafting process and had a decent idea of what would go in. Novell's timing in this matter was dead on. With the release of GPL v3, with its patent clause, Microsoft suddenly found itself in a hard place thanks to another agreement. But the license only applies if Microsoft is a distributor of v3 licensed code. That's where the voucher agreement comes in.

The voucher agreement for SLES licenses can be considered a separate agreement and it basically said Microsoft would give out these coupons to companies that wanted to run Linux. Some people believe this makes Microsoft a Linux distributor, an argument Microsoft obviously disputes. But here's the thing. On the fine print on the coupons themselves, it says that whoever hands them out is a Linux distributor. Microsoft, by the terms of the contract, is the one supplying the coupons, and according to the fine print, is a "distributor" of the SLES operating system. Combine that with not limiting the agreement to v2 and the likely inclusion of v3 licensed code in future SLES releases, and Microsoft has just walked right into the spider's nest. What's even more pathetic is that Novell reserved the right to change what is on those coupons. But that's not even the end of it.

The last agreement involved sharing information between the two companies. But there's a clause. Specifically, section 10. Freedom to do Business. Read that clause very carefully. Novell has no limitations on how it can use the information Microsoft supplies in its usual business activities. That includes its open source activities. Now, can anyone here seriously think Microsoft has shafted Novell and the open source community?

But here's the thing. The objective of open source development is cooperation. What Novell basically did was backstab another company that they supposedly agreed to cooperate with. Yes, that company is Microsoft, but that raises the point of, if you resort to your enemy's underhanded tactics, are you any better? Can you really stand on the moral high ground? After all, free software proponents constantly use that as a way to promote their ideology. I personally believe that the ends do not justify the means. If you behave unethically, you better not be expecting a get out of jail free card. So, does Novell truly understand the open source philosophy?

Friday, August 24, 2007

Legal IT Part 2: Australia vs Corporations

Last time I mentioned how the restrictions Microsoft placed on the Xbox runs afoul of certain laws. I also stated these might not be American laws. The laws in question are of Australia, and Microsoft isn't the only company that finds its artificial lock-ins declared illegal. The biggest issue the Xbox runs into is its inability to play backup games. The thing's also region locked, which doesn't help. In Australia, only the government is permitted to impose artificial trade barriers, and locking the system to prevent playing backups counts as an artificial barrier. Australian law permits I believe two backups for personal usage.

Microsoft tried to get around this with the same "we're not selling the system, we're just selling a perpetual lease so we still own the hardware" excuse. However, this imposes an extra condition. If the company only leased the hardware, they are responsible for maintaining it. That means a lifetime warranty against any hardware failure. Microsoft refused, so the government basically said, well then, it's not a lease.

Australian law has perhaps some of the most stringent consumer rights protection I've ever heard of. If you buy something, you are free to do whatever you want so long as it's personal use. Since according to Australian law you own the 360, it's legal for you to mod it to play backups. You can go down to the local computer shop and they'll do it for you. This is just one example of how Australian law completely negates copy protection in many cases.

Most people should also be familiar with the DRM Apple uses with iTunes, locking the songs to only the iPod. Well, according to Australian law, that's illegal, so consumers are free break the DRM and recode the songs into something they can play on anything. Again, this is for personal use. Sony's PS3 actually is completely legal in Australia. It's capable of playing backups out of the box and isn't region locked. While making backups is bloody difficult, nothing stops you from playing them once you've made them. That's the key difference that sets the PS3 apart from the 360 in Australia.

The key thing in Australia is ownership. If you own something, you can do basically anything you want to it, short of commercializing it in some way or sharing it. For example, if you own a game, it's perfectly legal for you to apply a no CD crack or mod the game in some way. It's not legal for you to up the thing onto torrents or some other file sharing system.

One might think these freedoms would make Australia some kind of hacker/file sharer paradise. No. Absolutely not. While Australia has some of the best consumer rights laws I've ever seen, it also has very tough laws against piracy and hacking. First, piracy will land you a fine of about $10,000 per copy of whatever you sold. File sharing is also considered wire fraud and you'll likely get your phone lines cut if caught. As for hacking, well, that's in the same class as murder or rape, which can get you fifteen years in a federal prison, with murderers and rapists. This was instituted after someone brought down a hospital's system and the laws back then weren't sufficient to charge him with something appropriate for what the guy did. It's one reason why repair shops won't touch computers with pirated software on it.

Despite the harshness of the punishment, Australia has a very good balance between protecting users and protecting intellectual property. It forces companies to behave and limits abuses, but it also makes sure its own citizens don't take liberties with what is other people's intellectual properties. All in all, I'd say the US government has a lot to learn about protecting the end user. Too bad they always follow the bad examples.

Wednesday, August 22, 2007

Those crazy Aussies

Though I live in the States, I have a few Australian friends and they've passed on some interesting stories to me. Based off these stories, several conclusions can be made. First, never, ever piss off an Australian. They'll not only get you back, they'll be bloody creative about how they get you back. Here's an example.

Now this guy is a good friend of mine and is very smart. He's a freelance IT Security Auditor and he knows his stuff, though he takes all kinds of IT related jobs. One day, someone he's worked for before hires him to write a training manual. The project manager in question had hired him because the programmers were supposed to write one but kept putting it off, claiming they didn't have time. The project manager got sick of this so he finally did hire outside help, specifically my friend. Here's the thing. My friend's dyslexic. On bad days, he can't even read his own writing. Anyone else figure out what's wrong with asking him to write a training manual? The project manager also knew this. Anyone else figure out why he asked my friend specifically? Needless to say, after the programming team saw the training manual, they shut up and finally wrote it themselves.

The second thing to note is that if you're some kind of performing artist, be it a stage actor or a musician, you're in for a hell of a time. If the performance was bad, the audience will not hesitate to heckle you. They will actually follow the performers out of the theater and continue on for quite some time. In other words, get out of town as fast as possible. Now, if the audience liked the performance, it's even worse. They'll demand an encore. And again, and again. I think the record is something like eight encores for one performance and the Australians are still trying to break that record. When the Russian military band played in Australia, the audience managed to get three out of them. Then the audience was asked if they intended to make them do this all night. The answer was yes. Keep in mind, this was a midday performance. The response of the Russian band was more or less, "screw you guys."

Australians can also be very creative when bored. If you give an Aussie something to do, make sure he or she does not get bored of it. They will find ways to relieve themselves of their boredom, usually at your expense. In general, this means that Australians like to stay amused. This can be a good or bad thing, depending on how they choose to amuse themselves. So stay on their good side, and as long as you aren't a performing artist, they likely won't use you for amusement.

Sunday, August 19, 2007

Legal IT Part 1: You do not own the XBox you paid for

While talking with some programmers I know, a point was raised that Microsoft does not sell you the XBox itself. What you paid for was basically a perpetual license to use the XBox. As such, the hardware itself is still legally the property of Microsoft. That's one of the ways MS nails modders. This particular tactic isn't new. IBM used to do it on their mainframes and in fact they still only lease them out. The question now is why?

There are several reasons why Microsoft would do this. One requires a bit of knowledge about software reverse engineering and copyright law. In general, it is illegal for you to directly copy a block of code and call it your own. It is also illegal to make copies of a piece of software and then sell it if it violates the terms of the license or EULA. That's all well and good, as the law states the individual or company that wrote the code owns it, and by law it is theirs.

Reverse engineering basically involves the use of debuggers and other tools to look at a binary package and examine it from an assembly code level. There's a bit more to it, but that's the gist of it. If you did this, it becomes possible to reconstruct the program in a higher level language if you're good with assembly. But the question now is, is that code still the property of the company who created the original program, or is that code now your property? An argument could be made that the assembly code you used was a copy of the program made by the company, which means you just broke the law.

Now here comes the tricky part. Such a straightforward enforcement of the law would mean you couldn't even copy program binaries into memory, which means you couldn't even run the programs. An exception was written in to permit that but in the process opened a whole other can of worms. Everything in a computer's memory in theory belongs to whoever owns the computer. Back in the day, when basically all computers were from IBM, this wasn't an issue. IBM only leased those systems and as such people were not permitted to peak into memory to study the binaries. But with the advent of personal computers, that changed. Now, you and I own our computers and in effect also own everything in memory. This means we own a copy of the program's binary, which we can then use various tools to debug and view it as assembly code.

Companies are very aware of this and often times will include a clause explicitly forbidding reverse engineering in their EULA, so in theory it's still illegal. But you could technically fight the matter in court and you may even prevail depending on the circumstances. A lot of companies would like to eliminate this possibility altogether and one way is what Microsoft did with the XBox.

The other why should be fairly obvious. Microsoft doesn't make money off of "leasing" the Xbox itself, it makes money off of game licenses. If people were suddenly able to run anything they wanted, MS would quickly lose their revenue stream. Game studios also aren't eager to let people take a crack at breaking whatever protection scheme they use, both to prevent copying and also to prevent cheating. But ultimately, it all comes down to money.

Next time we'll explore some of the laws the XBox runs afoul of because of the restrictions Microsoft places upon it. Mind you, these may not be US laws.