NET(net), Inc.


GPL, WordPress and Themes by jigordon
November 16, 2009, 9:32 am
Filed under: copyright, distribution, enforceability, license grant, open source, source code

I saw an intriguing post the other day by Jennifer Schiffer on WordPress, themes and the GPL.  She linked to a video of Matt Mullenweg (one of WordPress’ lead developers) who was talking about why WordPress was a GPL product (short answer: they didn’t really have a choice because WP is based on b2, which was GPL) and, more specifically, was talking about why themes and plugins are also then GPL.

The truth of the matter is that the GPLv3 is a very restrictive license, in as much as it’s also a harbinger of freedom.  The GPL was written in a way to specifically retain the freedoms it grants through successive iterations of a particular product, or its add-ons.  This means that if you like a GPL product, develop a derivative work, a modification, a plug-in or any other type of add-on, the resulting work is also going to be covered by the GPL (you do not have a choice in this).

“You may not impose any further restrictions on the exercise of the rights granted or affirmed under this License.” – Section 10 of the GPL

This means that unless the WordPress GPL (yes, they’re specific by product… you can ADD restrictions if you want… so no 2 GPL’d products are necessarily identically licensed – we’ll talk about this in a minute) allowed for a theme developer to restrict the distribution of a theme, a theme developer isn’t allowed to add that restriction on their own.  Your development on a GPL product inherits the license of the original product.

Inheritance is a powerful concept because it creates license congruity, ad infinitum, for all downstream works of the original code.  It would be extremely difficult to manage license compliance if WordPress had one license, but a plug-in had a different one.

But there’s apparently a wonderful new theme available for WordPress called Thesis.  Its developer sells two several different versions of the theme (selling under the GPL is fine).  The problem comes to light when you look at the options:

  1. Personal:  one site only; footer link must remain intact; can’t re-sell theme or modifications
  2. Developer:  can create multiple sites and must pay Thesis developer for each site deployed; can remove footer link; can’t re-sell theme or modifications

And these options are problematic because they violate the GPL v2 under which WordPress is licensed.  Specifically, Section 2, which states, in part:

“You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License.”

and Section 6:

“Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients’ exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License.”

(Note that v2 and v3 of the GPL are vastly different animals… and v2 was actually more in the realm of “free as in free beer” than v3, which touts freedom as “free as in free speech, not free beer”.)

So, in fact, the Thesis theme, as a WordPress derivative work, is bound to the GPLv2 license that WordPress is licensed under.  As such, even the sale of the theme is a problem, as are the one-site-only restrictions and the “can’t re-sell” restrictions.  Note: the footer link restriction is probably fine, as it could qualify as the attribution allowed under the GPL.  Additionally, it could be argued that the fee charged is for the “physical act of transferring a copy” as allowed by Section 1 of GPLv2, but even then, the remainder of the unauthorized restrictions are still problematic.

But who is going to do anything about this violation?  Who has the right to enforce the license?  WordPress?  The folks at b2 (WordPress’ predecessor)?  Any particular end user?  Technically, it’s the folks at WordPress who have the right to enforce their license upon theme and plug-in developers.  They have the ability to potentially even sue to prevent a rogue developer from violating their license with WordPress [though I’m guessing that a theme developer is going to try to argue that a theme isn’t a derivative work or a modification].  But this is inherently difficult.  So instead, WordPress is taking a slightly different tack.  They’re going to create a Theme Page on the main WordPress website which only lists themes that follow the GPL (by the way, all derivatives have to be GPLv2 licensed, as the WordPress license doesn’t allow for newer versions of the GPL to apply).  I’m guessing that Thesis won’t be listed.

Advertisements


The non’s have it! by jigordon
November 24, 2008, 9:32 pm
Filed under: confidentiality, enforceability

Within the span of the last decade or so, I’ve seen a lot of confusion and misunderstanding about a bunch of non’s.  Non-Disclosures, Non-Solicitation, and Non-Compete’s, just to non (sorry) a few.  In this day and age of contracts for everything, people are often asked to sign one of the Non’s as part of a preliminary discussion about a particular topic.  So, let’s take a few moments to discuss each of the Non’s to see what the fuss is all about.

[Side note:  The Non’s discussed below can be considered “individual” contracts.  They can be signed independently of ANY other term or condition (such as a software license or services agreement).  But signing an individual agreement for one of the Non’s does not necessarily mean that you have the contractual terms and coverage for actually closing the full deal.  Make sure that you don’t unwittingly provide work/software/services before a full SLA, SOW or WO is completed in addition to the agreement(s) below!]

Non-Disclosure (aka: Confidentiality Agreement or Confidential Disclosure Agreement)

The most common Non takes aim at the restriction of one’s ability to talk about a particular subject.  Used to protect what at least one side to the conversation thinks is secret, a NDA or CDA is used to reinforce the verbal promise to keep something quiet.  Generally speaking, if they’re not combined with other Non’s, they are 100% legal and enforceable in almost every jurisdiction. [This isn’t legal advice, though, so if you have a specific question about a specific NDA/CDA, find a lawyer in your area and ask them to read it and provide you with solid legal advice.]  The reason behind the general legality is that the conditions of the formation of a contract have been met and there isn’t some sort of reason to not generally enforce the terms.  If I promise to keep something secret and you tell me the secret thing, I should be held to the restriction to not tell someone else.

These documents typically cover the “what if” in the event that I don’t live up to my obligation to keep the secret.  Usually including some form of indemnification (if what I’m being told could affect a third party), the common remedy for breach of a NDA/CDA is the payment of damages required to put the cat back in the bag.  But be careful if there IS indemnification and if you’re going to be provided something REALLY secret (like Protected Health Information (PHI), social security numbers, etc).  Make sure that you understand what you’re getting (and speak up if you don’t want that kind of information) and what the potential ramifcations are for disclosure.

Be careful also about NDA’s that have no term limit.  Not only should the window for disclosing the secret have a term, but the length of time of which you must keep the secret should also have a term.  In other words, the NDA might only be valid for 2 years, in which you get a dozen bits of information.  After the 2 years, any new information provided would no longer be covered by the dead NDA.  But the previously-disclosed dozen bits of information have to be kept confidential for a DIFFERENT length of time, usually between 5 and 7 years (because from a business perspective, that’s about how long a real secret is valuable).  The only exception to this would be real Trade Secrets, as they’re defined in your state’s laws, which would be kept confidential so long as they are considered Trade Secrets.

Non-Solicitation (aka Non-Hire)

Sometimes confused with a Non-Hire clause/agreement, the Non-Solicitation is probably the easiest and least disruptive of the Nons.  Solicitation is the act of enticing someone to come work for you.  As a small business owner, you would be concerned about your large clients soliciting your services employees, for example, who were onsite at the client locations and providing excellent service (the large clients sometimes realize that they can get a cheaper service if they hire the workers directly).  So a Non-Solicitation clause in a contract is a promise to not entice the other party’s people away.

This doesn’t mean you won’t hire their people, which is where the confusion of the Non-Hire provision comes in.  There’s a big difference between soliciting and hiring.  Generally speaking, I never promise the more restrictive no-hire, as I simply don’t have that kind of control over my HR folks.  But I can promise that we won’t be talking with onsite service people about how great it is to work here.  However, if the service people think they’d like to work for us, I can’t stop them from applying to generally-posted positions from our website, for example.

Do watch out for an overly-broad damages clause, though.  In the event that you DO solicit, there’s a chance that you’re going to owe the other side a significant amount of money (some clauses like to say that the solicitor will pay the other the cost of the hiree’s first-year salary!).

Non-Compete

The most stringent of the Non’s (and the most controversial), is the Non-Compete.  A non-compete agreement or clause in a broader agreement usually says that the employee agrees not to work in the particular field of employment, or in a particular geographic region, for a specific period of time, in the event that they leave the employ of the current employer.  In other words, it’s a promise to not work against the current employer if the employee thinks the grass might be greener somewhere else.

The problem with non-compete’s is pretty obvious.  You’re agreeing, to get a job with a new employer, to not go work somewhere else if you leave this new employer.  You’re really at your most vulnerable (in terms of negotiation positioning) because you want the new job, and, above all, you’re giving up your ability to work in your chosen field if the new job just doesn’t work out.  Wow.

For this reason and others, courts are starting to take a REALLY hard look at non-competes.  In the last decade, non-competes went from very loose to very restrictive.  In those states that allow them, they have to be extremely limited in scope (what you do and where you do it) as well as duration (how long you can’t compete).  In California (as of the moment of this article), they’ve been all but rejected as against public policy and are now unenforceable, even if signed.

My general rule of thumb is to NEVER sign a non-compete unless you’re SIGNIFICANTLY financially compensated up front (ie: they give you a starting bonus about the size of the salary required to cover you for the time you can’t work).




Lost in Translation by jigordon
August 29, 2008, 9:32 am
Filed under: enforceability, EULA, governing law


I downloaded an application this morning. All seemed well at first. The download was simple, installation was as easy as dragging the application to my Applications folder.

I fully expected some sort of click-through agreement. What I didn’t expect was that an application that was completely (up to this point) obviously written by a fluent English speaker would have a click-through license agreement in German. Heck, even the “I accept” button language was English.

Being the contracts geek that I am, I highlighted the license, went to Google Translation, and pasted it in (BabelFish, which used to be my preferred translator, has a 150 word limit). The translation took a few seconds. Here are a few of the resulting sections before and after:

3.2. Eine Trial-Version berechtigt allein zur Benutzung der Software zu Testzwecken. Ein Produktiveinsatz ist nicht gestattet.
3.2. A trial version only entitled to use the software for testing purposes. A productive use is not permitted.

5.2. Der Hersteller steht nicht dafür ein, dass die Software vollständig fehlerfrei ist. Sollte sich ein Fehler zeigen, der die Software für den üblichen Gebrauch untauglich macht, so liegt ein Mangel vor. Bei einem Mangel hat der Hersteller das Recht nach seiner Wahl den Mangel zu beseitigen oder eine Ersatzversion zu liefern (Nacherfüllung). Scheitert die Nacherfüllung zweimal, kann der Kunde nach seiner Wahl vom Vertrag zurücktreten oder die Herabsetzung des Preises verlangen.
5.2. The manufacturer does not ensure that the software completely error-free. If a mistake to show the software for the usual unfit makes, there is a shortage. With a shortage, the manufacturer the right after his election to eliminate the deficiency or a replacement version to be delivered (performance). The failure of the subsequent performance twice, the customer has his choice of the contract or the reduction in the price.

6.1. Der Hersteller übernimmt keine Haftung für Schäden, die auf einfacher Fahrlässigkeit beruhen, soweit sie sich nicht auf die Hauptleistungspflicht beziehen oder Verletzungen von Leben, Gesundheit oder Körper darstellen.
6.1. The manufacturer assumes no liability for damage resulting from simple negligence, to the extent it does not affect the main service obligation, or injury to life, health or body.

7.1. Es wird die Anwendung deutschen Rechtes vereinbart. Erfüllungsort ist die Schweiz und Trogen, AR.
7.2. Gegenüber Kaufleuten, juristischen Personen oder öffentlich-rechtlichen Sondervermögen wird die Schweiz und Trogen, AR als Gerichtsstand vereinbart.
7.3. Gegenüber Personen, die in der Schweiz keinen allgemeinen Gerichtsstand haben, wird die Schweiz und Trogen, AR als Gerichtsstand vereinbart.

7.1. It is the application of German law, agreed. The place is Switzerland and Trogen, AR.
7.2. Compared with merchants, legal persons or public service special asset, Switzerland and Trogen, AR as a jurisdiction.
7.3. Compared with those in Switzerland does not have a general jurisdiction, and Switzerland will Trogen, AR as a jurisdiction.

Now, except for jurisdiction and governing law, I’m not very displeased with the license.  In fact, it’s better for me than many English-language click-throughs that I’ve read.  And I like the way that some of the translations read. Overall, the Google Translation service was pretty darn good, even for something as twisty and potentially complex as a license agreement.

I’m really interested in anyone’s thoughts about the enforceability of such a document without a language clause stating that German would be the language used to interpret the document.  In other words, for a non-German speaker, do I have the defense (even if I click the “I accept” button) to say that I didn’t understand what I was agreeing to because I wasn’t presented a version in my tongue (as the rest of the application was)? Am I obligated to translate the document before clicking “I accept”?

Your comments would be appreciated.