Tuesday, September 11, 2007

How to write a software license

I need to write a new software license, a task that highlights the complete inadequacy of copyright law. Copyright law historically assumes that the work is distributed as a tangible object, that the tangible object has some value, that copying the tangible object is hard, and that most people don't need to copy the tangible object in order to use or enjoy it. Those assumptions work moderately well for books, because most people want a physical book and don't need to copy the book in order to do what they want with it. None of those assumptions work for software. The value of software is in the digital file, not the tangible object. Copying software is easy, and most users do need to copy the software in order to use it. So software publishers try copy protection and DRM and license codes and dongles and other ways to get around the fundamental problem that the value of software is in the easily-copied digital file. And software publishers are forced to use license agreements to lay out what users can and cannot legally do, because the defaults from copyright law are all wrong. And users ignore the license agreements, which are ever-changing incomprehensible and illogical fine print that's not relevant to anything the user cares about.

I'd like to write a comprehensible and sensible license agreement. I'd like the agreement to be fair to the user and to me. The problem is that I've never seen such a license agreement in the wild. Creative Commons is a great solution for authors who don't need to be paid. Let's create something similar for authors who do.

3 comments:

Michael said...

The user should have the right to do whatever they want with the software for themselves. The user should be allowed to install the software on their computer(s), use it, back it up, uninstall it, and (since it's a font) embed it in a PDF file. But I need to get rid of the first sale doctrine -- no giving or selling the software to someone else. So far, so good. I can write that.

The simplest case is when a user buys the software for their own use on one computer. Let's charge that user $30. That's a nice low price for something that can save them many hours of work and that will not ever require an upgrade. Another simple case is when a prof wants to give all the students in a class a copy of the software. Let's charge those users $10 each, and have the license expire in six months. The user can make the license permanent for $20, and then they're in the same position as the user who bought a single copy.

What if the user has several computers? Each time the software is installed is potentially more tech support. But a user with a single computer might replace the computer, and we're not going to charge more for that, so let's say that the license is for a single user on any number of computers. What if the computer is shared by two people? Does that require one license or two? If the license is tied to a user, then the single copy on a single computer used by two people requires two licenses. What, then, of the shared computer in the department office or computer lab? That has to be a different sort of license. Should there be a user license which is not transferable to a new user, and a computer license which is transferable to a new computer?

Many companies write the license for one or two computers and assume that individuals who own multiple computers are going to ignore the license. I don't want to write a license agreement that I expect people to violate. Sadly, there isn't a culturally shared set of assumptions about how buying software should work.

The aspect of this that I find most baffling is that we don't have a separate set of copyright laws for software the way we do for music. License agreements shouldn't be necessary when software is so pervasive in our society. To the extent that license agreements are honored, it's bad public policy to force users to deal with tons of fine print just to buy some software and use it. To the extent that license agreements are ignored, it's even worse.

Anonymous said...

I'm not much help, here. I get the problem, but it won't fundamentally address the cultural and legal assumptions. I suspect that making software affordable won't keep people from pirating it; haven't there been studies that show that? The thing is that if I copy Jimmy's software, Jimmy still has a perfectly good piece of software, so how could I be stealing?

What you want is to convince Jimmy that you need to make some money on software to make it worth your while to keep making and improving software (or just to make it possible). But what does Jimmy care? If you don't do it, someone else will, and besides, most of the people who tell him that they will go out of business unless the rules are followed/changed are simply lying.

Not that you are—you aren't. But I only know that because I know you, and Jimmy doesn't know you. The bastard.

As you say, the problem is that there isn't a set of cultural norms in place that make it feasible. The law could attempt to create some, but the law is for crap.

But hey, maybe somebody else will think of something, right?

Michael said...

Neither sensible license terms nor affordable pricing will stop software piracy. But sensible license terms and affordable pricing can remove a rationalization for software piracy. And for the customers who do want to comply with the software license, it helps tremendously if the license is clear.

I'm not too concerned about the exact pricing at the moment. I just wanted to make the problem concrete by giving some numbers. But I really don't know what to tell a department that wants to install the software on shared computers, either in terms of license conditions or pricing.

I don't think I'm going to convince Jimmy of anything, though it would be nice. Bobby, on the other hand, wants to follow the rules. I should make the license comprehensible and fair for Bobby, and for Jimmy just in case he eventually comes around.