paper ideas


26
Jul 07

thoughts from afar on OSCON

I’m obviously interested in what is going on at OSCON this year, since the overlap between web 2.0 and free/open software seems to be a major theme. Unfortunately, I couldn’t go, so I’m left lurking from afar.

John Eckman has some of the best notes I’ve found, at least on Eben’s talks- read his notes on Eben’s major speech and his notes on Eben’s chat/flamewar with Tim O’Reilly. It appears that in his introduction O’Reilly covered some of the same ground that I covered on Sunday, but it isn’t clear (at least from any notes I’ve been able to find) that Tim has answers to the questions he has posed.

Eben apparently said something to the effect of:

“talking about real freedoms … requires a discussion about public policy and long-term consequences of all this technology we’ve all put into the world”

I couldn’t agree more. We are standing at the brink of a huge change in how people store the data that makes up the emotional content of their lives. We must start coming to grips with the policy implications of that, just as government once struggled to come to grips with the impact of people storing the economic content of their lives in banks, and I’m excited to think that free and open services could be part of that. (We also need to think about other policy issues- patents, etc.- that can’t really be dealt with in isolation, but those aren’t my focus right now, even if they are Eben’s :)

That said, from John’s notes on Eben’s talk today:

The fundamental right with which Stallman has always begun is anyone’s right to run any program anywhere at any time for any reason – this has to include the right for people to run a program at any time *for anyone* – that is, provision of software as a service for other people. …

If the discussion about service provision is a rights conflict issue, it is critically important to frame that discussion in clear terms based on the rights perceived to be in conflict.

No rights based argument sufficient has been articulated which should compel the release of code which some people choose to run for third parties benefit. That doesn’t mean such an argument doesn’t exist…

I had already begun to try to formulate my argument in terms of rights, so I’m part way along this road already, but once you have such a broad interpretation of the rights of the user who execs the software, it becomes very difficult to convincingly articulate the rights of the user who puts data into the software, the value of the commons, and the rights of developers. I’m sure Eben is right that it will be worth the effort to try, but I’m not confident that I can succeed within that initial set of assumptions. Keep your eyes on this space, I suppose :)


22
Jul 07

evaluating a Free/Open Service Definition (rough draft)

Thinking about the Open Service problem

As Havoc mentioned, I’m putting in some time on thinking about what an Open Service Definition (to parallel the Open Source and Free Software Definitions). I present here a rough draft of a framework for evaluating such a definition. It is not the definition itself, nor a license/technology/business model/etc. which follows the definition, merely a framework which will generate questions to ask and issues to cover when creating such things. It is not the only possible framework, either, but I think it is probably a good starting point to think about what questions must be addressed.

Some of these evaluation criteria will be familiar from the older definitions; some will have been implied by them but not widely discussed. All will still need elaboration, but I think it will be useful to write down how I’m thinking about the problem. Comments are welcome; email preferred, because of the complex nature of the problem, which I don’t think lends itself well to linear wordpress comments yet. If I’ve reached out to you recently about this problem, expect personalized email or phone calls in the next few days :)

All of these criteria involve sliding scales- obviously if a licensor moves any of them all the way to the closed/unavailable side you have proprietary or semi-proprietary software, but depending on where the lines are drawn, you have more or less onerous requirements with different outcomes- much like the current differences between more protective licenses like GPL and less restrictive but still meeting the definition licenses like BSD.

Goals
The point of having open/free systems:

  • user freedom. results in security/autonomy/self-actualization/moral development/customer satisfaction/what-have-you. (Interestingly, neither the OSI nor the FSF definitions really go into why freedom or openness is actually good, which I think contributes to the lack of clarity around each.)
  • direct contribution to the codebase or otherwise to the community. Includes the free rider problem and possibly other collective action problems as well.
  • ecosystem participation. e.g., application development or API consumption. May include network effects and stickiness (both as a benefit and detriment.)

Evaluating these criteria differently will result in different values for the next two categories (preconditions and rights). For example, when in doubt the FSF favors user freedom, which means much stricter restrictions on redistribution than might otherwise be ideal for direct contribution; when in doubt Linus favors contribution and ecosystem participation and hence prefers GPL v2 to v3. And of course the Open Source/Free Software split was precipitated in part by an increased emphasis on ecosystem participation and decreased emphasis on user freedom.

I’m not entirely sure yet that direct contribution and ecosystem participation are really all that different in practice, but it seems they might be (particularly in an online context) so I’m keeping them separate for now.

Preconditions

If these preconditions are not met, then you can’t meaningfully achieve the rights listed below or the goals listed above:

  • data access: taken for granted until recently because our data has always lived on local drives, or on servers we controlled. As a result, this is implied by the Free Software Definition and yet not protected by the GPL (even v3). DRM falls into this area- the software or hardware takes away your data access, and hence deprives you of the user rights. Sliding scale includes not having any data access (many web services), having access to the data, but only as a binary blob (most end-user proprietary software), or having access to the data stored in standardized or otherwise open formats.
  • source access: as noted in the Free Software definition, this is a precondition for all other user rights. Sliding scale can include (among other options) mandatory provision (GPL v2), mandatory provision and reuse (v3′s tivo clauses), or no such (BSD.)
  • hardware access: never much discussed because, unlike everything else here, hardware actually is scarce, and so can’t be provisioned merely by good intent or good licensing. May make some sense to discuss in the context of servers, though- for example, if all your source is available, but it can only be run on multi-billion dollar server farms, is it actually meaningfully open? Does dealing with this angle require p2p solutions, or will single-point of failure solutions (with other safeguards) be sufficient?

It may make sense to speak of skills to manipulate source as being a precondition, alongside but distinct from source access. For the time being, though, I’m content to do what the FSF has done and say that as long as you have access to the source, you can buy skills from elsewhere and hence approximate the freedom of someone with the skills.

User data privacy is clearly important to the analysis of online services, but I’m not yet sure how this fits into the analytical model. It is often spoken of as a constraint on data access, so perhaps it fits as part of that criteria or sliding scale. Note also that there is a similar problem with the data which is created as a shared value- e.g., obviously my password is private when I contribute to Advogato, and so should not be shared, and my Advogato diary entries should probably (though not certainly) be removable, but what about the trust metric ratings I have contributed? Should they remain irrevocably available? Not yet clear where this fits in the criteria/discussion.

Rights

Rights available to participants in the commons.

  • use: this includes a temporal dimension, which open source has typically taken for granted, but which is now relevant for discussion in the case where servers/services go away (either maliciously or for other reasons.) This temporal aspect may make more sense elsewhere, since it has implications for things like server ownership and server governance. Note also that the v3 now includes some potential restrictions on use (where, for example, the network is damaged by modified clients.)
  • modify: as in FSF/OSI, pretty much, including sliding scale of options. May have some implications for APIs/service guarantees in an online context which are not readily comparable with the traditional model.
  • redistribute: as in FSF/OSI, pretty much, including sliding scale of options.

These are pretty much straight out of the Free Software Definition. I tend to think FSF freedoms 1, 2, and 3 have a fair amount of redundancy, so they get collapsed to modify/redistribute, with the assumption that redistribution means either modified or unmodified.

FSF calls these freedoms; I call them rights here because I personally tend to think of them as inalienable things which should be provisioned rather than optional things which can be taken or not. But neither term is completely satisfactory for this analysis, since saying that these are rights or freedoms implies taking a position on where on the sliding scale restrictions should be made.

Not clear where the question of who gets access to these things fits into the analytical model; OSI’s definition leaves that up to the license, and even FSF allows some fairly strong restrictions on who gets source access and hence gets to exercise these rights, so perhaps it is merely implied that that is part of the spectrum of options for each criteria.

Where to from here

I’ll be working with a number of people (both inside and outside Red Hat) to try to flesh this out in the next few weeks. I don’t expect we’ll really have pragmatic outcomes (i.e., licenses, business models) in that time, but I hope that we’ll at least be able to frame the discussion so that those writing code and running servers (including, but obviously not limited to the online-desktop) can think about the issues more easily and more transparently. As such, if there are other axes/criteria that need evaluation, I’m happy to discuss them with anyone- email or by any other way you can get a hold of me.

I’ll obviously be participating where appropriate in similar efforts- I’m not a fan of duplication of effort or NIH problems, so I welcome pointers to any advanced and pragmatic efforts I should be working with. But so far it is my observation that most open service definition proposals either have specific goals (i.e., they think there is a particular technical solution that must be used, or a particular policy agenda which must be advanced) or they have no code in the game, or both. I want to avoid the first problem, at least right now, by advancing a framework for discussion, and then allowing people with specific technologies/agendas/etc. to reason within that framework, rather than picking an outcome and then discussing a framework. I also want to take advantage of the opportunity to work with online-desktop in order to have someone implement the outcome- I think that it is only by implementing such technologies that we’ll actually get a good understanding of what licenses, business models, governance systems, etc., are really appropriate. So far it seems that other such proposals have not had this key element of real-world application in place. (Plan to throw one away; you will, anyhow.)

I’ll probably be wikifying this all soon as well (as soon as I can figure out where, and figure out how to keep the signal/noise ratio high); the wiki will include source links to the various places that have provided background or information for this, as well as some more details and questions that are still very much unanswered. In the meantime, thanks to various people, including Kragen, Mako, Mike Linksvayer, Gabriel Burt, Havoc, and many more who have influenced my thinking on this. (Including Stallman- who, whatever else you may think of him, is the reason we’re all here.)


18
Jul 07

four quick notes on Havoc’s keynote

Four quick notes on Havoc’s GUADEC keynote:

  • I did the right thing by not going to GUADEC, but man, I wish I were at GUADEC.
  • Havoc (and others saying the same thing) are completely right that we must move towards deep web integration. I have no strong opinion on whether online-desktop is the right technological approach for that, but we have to start somewhere. Moving the battle to a development platform based on an open, widely-implemented standard (HTML/JS/etc.) maximizes our strengths and minimizes the strengths of our competitors.
  • Many web services are proprietary, but we can’t just twiddle our thumbs while the Apache/rails/django/etc. people work on this problem.  Like free software in the 80s, we must realize that our options are (1) work with proprietary (web services|kernels) or (2) become completely irrelevant while we wait for free (web services|kernels) to be built. I know which one I’d rather do. As a bonus, I don’t believe we’ll have to wait for good free services nearly as long as we had to wait for a good free kernel.
  • Hopefully I’ll get to do some interesting stuff with a Free Services Definition in the remaining weeks I have at Red Hat, now that GPL v3 work has mostly wrapped up. Am very excited about that.

3
Jul 07

quick pondering on artificial scarcity

This deserves to be developed more fully, but perhaps the thread that ties together my irritation with the MS-Novell deal, my irritation with the Mozilla TM licensing, and what worries me about the push against copylefted DB data, is the creation of (or in the DB case, allows the creation of) artificial scarcity. I’m OK with charging for things that really are scarce- cars, service, etc., but creating artificial scarcity, either through the use of patents, copyrights, or trademarks, or by allowing others to use trade secret and SaaS tactics to take data from the commons and then proprietarize it, seems problematic.

(This is hardly an original thought; I just wanted to get it out and searchable later, since I’m wrestling with the trademark demon again.)


28
Jun 07

GPL v3, the Q&A: part 4- odds and ends

These are the last odds and ends of my GPL Q&A series. I may or may not find the energy to elaborate on the patent and DRM provisions tomorrow, since those seem to have generated the most questions, but I may not- I’m completely destroyed right now, and I plan on going to a baseball game tomorrow night and having a beer instead of writing. Generally, I do not recommend writing about something at work all week, and then coming home at night and writing more, in a different voice, for a different audience, and all while trying to maintain your impartiality and mental walls on both sides. Draining.

Q: Tell us how you really feel about the ‘pragmatism v. idealism’ framing of the Linus v. FSF camps.

A: Argh. While it certainly isn’t untrue, I think it is a lot more useful to frame the camps in terms of being split by focus on rights of developers v. rights of users. Both camps get pretty irritated when they feel their real rights are being violated- plenty of members of both camps have tromped around enforcing their copyrights when they feel they need to, and both camps feel very strongly about their visions of how the world will or should be (Linus may not say ‘should’ a lot, like Richard does, but the world domination talk is most definitely a driven vision of a specific world that he likes.) And both sides are willing to compromise on methods as long as their goals are reached. (Do you really think RMS consulted with IBM and Sun on v3 just because he is a nice guy? No; he’s just a ruthless pragmatist when he wants to be.) This isn’t to say there isn’t a lot of truth there; the meme wouldn’t be so pervasive otherwise. But both parties have a lot more in common than recent coverage and discussion would have you believe.

The pragmatist/idealist framing not only isn’t terribly accurate, it isn’t very useful. It makes for an easy story for journalists, but past that what is mostly does is to encourage both sides to think of the other side as either crazy or immoral, when in fact they share a ton of common ground. (If their mechanisms and goals didn’t overlap, the fundamentally user-focused v2 wouldn’t have been so wildly successful with developers.) If the FSF spoke specifically of user rights instead of generic rights (which are easier to mischaracteriz/ridicule), and addressed developer rights as a complementary set of rights instead of something secondary, it would help bring everyone together as peers using the same language instead of frequently ridiculing each other. Similarly, if the ‘pragmatist’ camp had admitted that they too were concerned with rights- just a different, perhaps more limited set- it would have helped them get more of what they wanted (simpler language, for example) out of the FSF. Of course, it is too late now for this round, but I think both sides should work on expanding those common grounds in the future. In the meantime, the rest of us will have to sit back and watch while they snipe at each other and Microsoft has the last laugh.

Q: While you’re venting a bit, have a blast: how do you feel about the claims that the v3 is ‘political’?

A: The use of ‘political’ as a slur against v3 demonstrates an abysmal understanding of both the specific history of free software and the general history of how rights evolve.

Yes, v3 is certainly political, in the sense that it claims the existence of “rights” that are controversial, and hence whose existence (or non-existence) has to be resolved via political/social means instead of judicial/analytical means. But all of these things were also true of v2. We’ve now reached the point where even Microsoft has mostly accepted that developers have the right to share if they want, and that community development is a valid and respectable way to develop software. Given that, it is easy to forget that in 1991, the notion of sharing and openness in code was controversial, and that as recently as a few years ago Microsoft was denouncing it as unamerican. If we’d listened to those who dismissed v2 as ‘political’ (or worse) in 1991, we wouldn’t be where we are today. So dismissing anything now because it is ‘political’ (instead of actually discussing the merits, which I fully admit are arguable) would be silly.

More generally, the v2′s transition from ‘political’ to accepted right is a fairly common trend in Western political history, as rights go from non-existent to hotly politically contested to taken for granted. Again, to dismiss something as ‘political’ demonstrates a great deal of ignorance of these broad historical and political trends. A good comparison is women’s voting. We take it for granted, and don’t think of it as ‘political’ anymore- it is now a core right, very broadly accepted. But when women first proposed that they should be able to vote, the question was very much ‘political’- protest marches were held, proponents were scorned, and the process took decades to go from proposal to accepted fact. Now, of course, you could be raised and come to adulthood without ever being aware that it women ever were denied this fundamental role in our society. As it has with the attempted creation of new rights in v3, new issues have evolved from the suffrage movement, like the rights of women in the workplace and affirmative action. The historical question is not whether it is wrong to bring these issues up for being ‘political’, but rather whether in 15 years we’ll see DRM as being more like the rights of women to work (was “political” after voting rights passed, now no longer controversial) or like affirmative action (was “political”, still is in many places.) Either way, the right way to tackle the issues is on the merits- not to use political as a slur.

Q: Back up a bit to day 1 and get off your high political horse. You said GPL v2 is incompatible with GPL v3? That doesn’t make sense.

A: Stallman explains it pretty well here:

When we say that GPLv2 and GPLv3 are incompatible, it means there is no legal way to combine code under GPLv2 with code under GPLv3 in a single program. This is because both GPLv2 and GPLv3 are copyleft licenses: each of them says, “If you include code under this license in a larger program, the larger program must be under this license too.” There is no way to make them compatible. We could add a GPLv2-compatibility clause to GPLv3, but it wouldn’t do the job, because GPLv2 would need a similar clause.

Because of this clause, “compatibility” with GPL is always a one-way street- I may be able to convert BSD or APL code into GPL code, but I can’t do the reverse. GPL with itself is no different.

Q: So, uh, isn’t incompatibility bad?

A: The incompatibility does restrict your ability to cut and paste code directly from one codebase to another. But past that, it probably won’t matter much.1 Again, quoting Stallman:

Fortunately, license incompatibility only matters when you want to link, merge or combine code from two different programs into a single program. There is no problem in having GPLv3-covered and GPLv2-covered programs side by side in an operating system. For instance, the TeX license and the Apache license are incompatible with GPLv2, but that doesn’t stop us from running TeX and Apache in the same system with Linux, Bash and GCC. This is because they are all separate programs. Likewise, if Bash and GCC move to GPLv3, while Linux remains under GPLv2, there is no conflict.

Q: Talk to me more about this APL compat. Are we going to have GNU/httpd now?

A: The one-way compatibility of GPL (mentioned above) isn’t something that is ‘hidden’ when FSF talks about compatibility- it is very deliberate, very public, and very explicit. So this new compatibility means that one-way GNU forks of Apache projects are now a legal and theoretical possibility. But pragmatically, it seems unlikely- the Apache folks have well organized communities that would likely outcode any fork, and when Mozilla went dual-license, Stallman specifically recommended against such a fork. It seems unlikely he’d act differently now- the goal of this compatibility has been to increase the ability of free software communities to work together, not to split them apart.2

Q: What about the Internet and Software as a Service?

A: The FSF’s relationship to software delivered over the internet is ambiguous. v3 explicitly maintains the loophole for software whose UI is delivered over the internet, so someone3 can still do things like take GNU code, replace the terminal interface with an html interface, distribute it to the world via http, and not provide your modifications upstream. At the same time, FSF does endorse the Affero Public License, which closes that loophole. If you’re worried about that problem, you can definitely use the Affero instead of the GPL.

Exactly why the FSF hasn’t closed the loophole in the GPL and is instead offering the Affero is unclear; if I were a betting man I’d say that the FSF would prefer to use moral pressure on Google and friends, rather than legal pressure until Microsoft is no longer a threat. The phrase is ‘pick your battles.’ You can see Moglen talk a little bit on this subject here. (Be forewarned: I normally think that Eben is one of the world’s best at taking difficult concepts and expressing them orally, but this isn’t, IMHO, Eben’s most lucid talk, perhaps because so much of it may be intended to be read between the lines.)

Q: Any thing you missed or badly screwed up in the first few days?

A: The biggest was that I neglected to mention a significant downside to dual-licensing. When you dual-license, you limit the code you can copy and paste into your own code base to the set of code which shares the same license you do. So, for example, Mozilla (which is triple licensed) can only copy from code bases which share the same three licenses- that is to say, virtually none. Not only does this make it more difficult to reuse code from elsewhere, it also makes it easier for forks to occur. For example, Flock is a GPL-only fork of Mozilla. This means that when Mozilla makes fixes, Flock can take them, but not vice-versa.

I also overlooked another option, besides outright copyright assignment, for handling the ‘or later’ problem- the license allows assignment of a proxy who can decide whether or not to upgrade to future versions of the license. This allows you (for example) to assign the right to upgrade to GPL v4 to the GNOME Foundation, without having to trust them completely enough to do a copyright assignment, while still allowing the Foundation to set some coherent strategy when the next license comes out. It seems like this is something that organizations who intend on being around for the next 16 years might want to consider as a lighter weight alternative to copyright assignment or just blindly trusting in ‘or later.’

Oh, and I’m not doing the all-caps thing; that is my theme. Sorry about that; I intend to fix it at some point.
Q: parting shots for now?

A: This license is an evolution, not a revolution; a good one that lots of projects will adopt, but which won’t (quite literally) change the IT world like v2 did. The revolutions are still to come- when we figure out the licenses for things outside of copyright (like web APIs, standards, personal data, and trademark) that give us great developer benefits and improved user rights, like GPL v2 did, we’ll see explosive growth in those spaces.

[see all parts: part 1, part 2, part 3, part 4.]

  1. If you’ve seen an O’Reilly article arguing otherwise, ignore it- or at least go back and read the comments, particularly those from Richard Fontana. The article seriously misunderstood a lot of things. []
  2. Note that I’ve been told that GNU has done this in some cases, like gnash, so YMMV. []
  3. *cough*google*cough* []

28
Jun 07

GPL v3, the Q&A: part 3- companies

Shiny Happy Copyleft Holding Hands(Before going further, you should (at the minimum) read the disclaimer on Monday’s post and (ideally) make sure you’ve read all of the past two posts. (first, second.))

Q: Companies hate this! The sky is falling if the GPL is adopted!

A: Find your calm place. There is no doubt that the new license will create new uncertainty, which companies hate, and that the license seeks to place rights more firmly in the hands of users, which many companies (though not all) hate. So companies have reason to be nervous.

But the license was created with input from an extensive range of companies who both produce and use free software-based products, so I think you’ll find that it really isn’t that bad for companies who are playing by the rules- that is, for 95% of companies, 95% of the time. Remember, this license is (for most purposes) much more evolutionary than revolutionary, so it gives the same rights, sometimes clothed in different languages, in most circumstances. Most companies will not be affected by the tivo-ization and DRM clauses, and will actually appreciate the additional protections of the new license. Especially once companies have had time to digest the license, and to realize that none of the early adopters have turned into a newt, most companies should be fine with the license most of the time.

Q: OK. A little calmer now. My company makes products based on open source components. What are my new risks?

A: Have you burned the boats? If you’ve truly burned the boats, you’re fine- the patent provisions and installation provisions of the license only help you get closer to your customers and differentiate you from competitors and free-riders.

On the other hand, if you or your customers are still relying on some form of proprietary lockin, the picture is much less clear. You have new responsibilities that you may not have previously had. In particular, if you contribute to GPL v3 projects, you have to open up your patent portfolio to those projects and their users, and if you distribute GPL v3 code, you have to give your users the ability to reinstall code that they modify with very few restrictions. These may not be dealbreakers, but if your business model depends on users who are somehow kept under lock and key, you will have to deeply examine the new license, and may have to reconsider basing your business on GPL’d code.

Q: Do I get any benefits to go with those risks?

A: Like everyone else, you should get greater certainty about patents, and greater legal certainty in general as a result of the improved language. The same clauses that protect your customers from you will also protect you from competitors who seek to use some sort of patent or device lockin to compete unfairly against you, so even they aren’t all bad.

You’ll also get more control over trademark as part of the compatibility with the APL- you can explicitly ban use of the trademark by derivatives, among other things. Most community projects are not overly concerned by trademark, but this is clearly important to companies who are trying to build a brand, and more explicitly spelled out now as an optional addition to the license.

You also get the ability to transmit code to contractors without being considered to have ‘conveyed’ the code, allowing you to use consultants and outsourcers to modify your private code forks without accidentally freeing your work. If you sell non-consumer products (IBM S390 servers, for example, or medical devices which might be under government regulation) you are now even allowed to prevent modification/reinstallation by those who you sold servers to.

If you’re using patents or hardware to lock in your customers, none of these things are going to be much solace. But for everyone else, they should be useful compensations which make up for the short-term uncertainty.

Q: Why is Sun seemingly so excited about this? Should I share their enthusiasm?

A: Maybe. Sun is in a fairly unique situation. They badly want to win developer mindshare away from Linux, so becoming More FSF-Free than Linux is a big PR win for them- more so than it might be for most companies who aren’t competing with one of the poster children of open source and with the ghosts of their own proprietary past. In addition, some of the license features which are problematic for many people may be a benefit to Sun. For example, most people will look at v3′s incompatibility with v2 and think ‘what a pain’. Sun, in contrast, might think of that as a benefit, since that would continue to prevent Sun code from being used in the Linux kernel- who have to be seen as a significant competitor for them. Similarly, the new clauses which make embedding and DRM difficult may be seen as a detriment by many developers, but they play very well into Sun’s business model for Java, which is based on licensing into the embedded market. Anything that encumbers Free Java helps drive embedded market revenue for them, so GPL v3 may be preferable to v2 from that perspective.

All that said, we should probably give Sun some of the benefit of the doubt at this point- they’ve freed a lot of code, and by all accounts are trying hard to become a more open company. If they really wanted incompatibility and embedded revenue, they could just stick to the CDDL or a proprietary license. GPL would be a huge step for them, and is a step that the Free Software community should welcome with open arms, even if their motives are not 100% pure.

Q: Should Novell be quaking in their boots?

A: Hard to say. With their recent joint announcement with the EFF1 they appear to have started the process of really burning the boats. A company fully committed to competing on the basis of quality and service, and willing to say no to customers who ask for bad things, should have very little to fear from GPL v3, and it seems like (belatedly) Novell may finally be headed in that direction.

Q: But Novell are on the hook for the MS deal, right?

A: Yes and no. While a deal like the Microsoft-Novell deal, which induces a third party to grant a non-assert agreement, older deals got grandfathered in- the FSF appears to believe that it is better to have Novell tentatively on our side than actively using their large warchest to fork everything that goes v3.2 But it seems unlikely that MS can continue to uphold their part of the deal without licensing their entire patent portfolio to some key technologies like gcc and libc. So MS has a strong incentive to get the deal voided, and even if not, it will expire in the not too far future. (Remember, they negotiated a license which only covers five years of twenty year patents.) If they do renegotiate, the new deal will almost certainly look like the Xandros and Linspire deal, where MS offers indemnification to individual users instead of to all users. This will be acceptable under the new GPL language.

Q: So can we break out the champagne? Is the MS patent threat over?

A: Definitely not. MS can, of course, cease giving out coupons, and try to induce Novell to adjust the deal. Moreover, because of the complexity of the patent language, there is almost certainly another loophole for them to exploit, though it is hard to see what it migh be at this time. They could, for example, offer indemnification directly to customers- which appears to be the route announced in the Xandros and Linspire deals.3 Even if they do continue the relationship with Novell, lots of very big chunks of code that aren’t GPL v3, like the kernel and Open Office, will not be protected. So we’re still dead in their sights, no matter what.

Q: What does MS think, anyway?

A: They are gearing up their FUD machine, of course. Expect the old reliables: GPL is anti-American, GPL will steal your rights, GPL will eat your babies. Expect some new favorites too- lots of talk about how MS ‘builds bridges’, and about how the GPL hates interoperability. Of course, no mention will be made of the tolls that MS wants to charge on those bridges, or of the tons of GPL licensed code which builds bridges both to open standards and (despite the difficulties) to MS ‘standards.’

Q: What about the little guys in the embedded/consulting space? Opened Hand, Fluendo, etc.?

A: Each will have their own sets of problems and evaluations of the license. The new LGPL should allow Fluendo to continue down the mixed proprietary/open path they have chosen. Perhaps a more difficult question is what this will mean for those who are thriving in the embedded phone/handheld device space, like Opened Hand, OpenMoko, etc. The new license would appear to require that they allow modification, even for things like phones- which may be very problematic for networks (despite the out for network service providers included in the license, which allows you to withdraw services from modified devices if the modifications cause problems.) It will be interesting to see what openmoko’s lawyers say- they appear committed to resolving the problems between a locked down network and an open device, but this may be too much even for them to overcome. 4

Q: What about Google and other SaaS companies?

A: Nothing here that impacts them; they can continue business as usual. There is a new Affero GPL, which closes the SaaS loophole, but the FSF has made it clear that for now they will use moral persuasion rather than licensing to encourage code to migrate out from behind the closed Google doors. You might call this ‘picking your battles.’

Q: what is the bottom line for companies and the GPL?

A: For most? Simple. If you just use GPL-licensed code (for example, as a server or desktop), you have no worries. If you contribute code to GPL projects, you’re OK, as long as you feel comfortable granting your patents to the version of the project you’re contributing to. If you distribute GPL code as part of a device, you’re also OK, as long as you allow users to modify their devices. These categories cover the vast majority of corporate participants in the existing GPL community.

Despite that, this won’t be a license for everyone; some companies may prefer to stick with v2 or perhaps even use other alternatives instead. Like the choice for developers, the choice will require a case-by-case analysis of the costs and benefits. I do look forward to the day when we have a new license, representing a new and appealing business model which makes these kinds of choices easy, but for right now we’re stuck doing the hard and sometimes unpleasant work of protecting more user rights, and that means compromise and muddiness, not clear wins. Sorry about that…

[see all parts: part 1, part 2, part 3, part 4.]

  1. which I’m embarrassed I haven’t covered in more detail- it was a bold move by Novell, given their conservative history, and the announcement deserved more attention than it has gotten []
  2. This clause also prevents Sun and IBM from having to review every patent licensing deal they’ve ever conducted- which is probably a good thing, since given a choice between ‘pay lawyers to audit and renegotiate potential tens of thousands of contracts’ and ‘skip the GPL v3 party’, they would almost certainly chose to skip the party. []
  3. FSF appears to be OK with this, since that route does not break away a chunk of supporters. []
  4. Perhaps we’ll have to wait for voip over wimax to get truly open wireless devices. :/ []

26
Jun 07

GPL v3, the Q&A: part 2- developers

Copyleft - but shiny!(This is part two of a series. Before going further, you should (at the minimum) read the disclaimer on yesterday’s post and (ideally) make sure you’ve read all of yesterday’s post.)

Q: Has there ever been a sequel that wasn’t terrible?

A: Godfather II and Star Wars II. (I refuse to call it V.) I’m no Coppola, but I hope I’m better than Lucas. We’ll see.

Q: I’m a developer, and my current code uses GPL v2- should I update to the v3?

A: Probably. While the license does not include any huge wins for all developers that would make an upgrade obvious or mandatory, there are small wins here for virtually anyone who seeks to have a functional FLOSS project. In particular, every developer should appreciate the improved (if still imperfect) patent protection, the ability to copy and paste APL-licensed code into your code, and the internationalized legal language, offering them stronger protection outside the US’s copyright system.

In addition, those developers who object to TiVo-ization of their code, or to the use of their code in a DRM system, will like those sections of the new license. As I mentioned yesterday, these sections of the code may not be perfect, but they should go a long way towards ensuring that users of your code always have the right to access it and modify it- something that wasn’t necessarily clear under the old license.

Q: There must be some downsides.

A: Absolutely. I f you adopt now, you’ll be on the bleeding edge- with all that entails. You’ll have to explain the license over and over again to people, explain why you’ve chosen it, and so on. That won’t be fun, and you may lose some contributors over it. There is also the possibility (though small) that you’ll have chosen incorrectly, and that there will be some flaw in the license. While this seems unlikely1 it isn’t impossible, and you will be taking that risk by switching before the license has been out for a while.

You’ll also lose compatibility with GPL v2- you’ll be unable to copy and paste code from (or to) any part of that huge base which is not under v2 ‘or any later version’. Depending on how you develop, this may be a big downside, or it may not. But it is one to be aware of. (More on this in a later post.) Similarly, if there are applications that link against you or otherwise share your code, and they are not ready to relicense, that may weigh against a relicensing as well, since GPL v2 apps can’t link against GPL v3 apps.2

Finally, there is the DRM and embedding/TiVo-ization language. If your project is heavily used by embedded or multimedia devices, your partners are likely to get very nervous if you start talking about v3. If you yourself take the libertarian or pragmatic developer-centric viewpoint, you may personally be opposed to those new restrictions as well. So those may well be reasons to avoid the license for many projects.

Q: I really want to hose Novell. Should I switch to v3?

A: If you’re looking for some sort of vengeance on Novell, you won’t get it in this license. More on that tomorrow, but nutshell: you’re not getting it. Even if you did, that is a pretty lousy reason to choose a license anyway. With any luck, the GPL (and your GPL’d code) will outlast the current Novell leadership and maybe even Novell. Make decisions based on what is right to protect you, your code, and your users, not on whether or not Novell deliberately circumvented the intent of the old license. (On that ground, hint: this will protect you from at least some Novell-like situations in the future, so if you think what Novell did was a bad idea, you might want to upgrade.)

Q: The kernel folks screamed a great deal about the earlier drafts. How far has the license gone to address their criticisms? Will that impact the uptake of the license?

A: The original drafts of the DRM and embedding license were not exactly models of clarity. As a result of criticisms from Linus and friends, the final draft is a lot more straightforward. The DRM clause now states merely that one can’t claim to be an effective DRM device, for example; previously it actually tried to prevent the construction of such devices. Similarly, the embedding clauses now make clear that what is required is sufficient information to reinstall the software (whatever form that information may take); previous versions had been murky enough that they had been read (incorrectly) to imply that things like developer’s GPG keys had to be revealed.

It isn’t clear that this new clarity will actually help uptake, though. It should reduce the opportunity for FUD, of which there was a fair amount around the first draft. So if people’s decision turns on these clauses, it’ll at least turn on the right issues and not false ones created by poor wording. But the clauses still burden and restrict developers without giving them any clear pragmatic benefits in return. If the pragmatic developer’s bottom line is ‘give us benefits and we’ll use your license’, the clarifications to those clauses will only clarify the situation- they will not substantially change it.

Q: So there are upsides and downsides- how do I pick?
Unfortunately, there is no simple right or wrong answer for this. Every project will have to make their own judgment about the pragmatic costs and benefits, and the political-philosophical implications. Projects who particularly want to get solid patent licenses from their contributors or who are particularly philosophically concerned about user control will probably lean one way, and projects who are worried about the mobile space or whose copyright situations are particularly confused will probably lean another.

Q: That wasn’t helpful at all- I still can’t make up my mind. Should I consider dual licensing with GPL v2 or another free software license?

A: Dual licensing is a mixed bag. On the one hand, it gives more flexibility and choice to your users, and it will reduce uncertainty for your contributors and your users. On the other hand, it gives more flexibility and choice to your users- including the bad guys. In particular, your code is only as protected as the protections of the weakest license you license under. So if you release your code under both GPL v2 and GPL v3, you haven’t gained much- the next person who sells you out on patents or DRM will just say ‘well, I’m using it under v2.’ You can only gain the full protections of v3 if you license only under the v3, or under the v3 plus an even more restrictive (presumably proprietary) license.

The only major advantage to dual-licensing, then, is that other people can reuse your code under the license of their choice. This is not a small benefit- it will be particularly useful for GPL-licensed platform projects which expect to have programs developed on the platform in both GPL 2 and 3. But it isn’t necessarily huge either.

Q: What about ‘or later?’ should I use that? Doesn’t the controversy about this license mean I can’t trust the FSF to make good decisions about GPL v4?

A: The FSF recommends licensing your code under ‘v3 or any later version of the GPL’, just as they have with GPL v2. This cuts two ways. On the positive side, it means that if a problem is found in the license, and people are unable to contact you, they can still use your code under the new, less problematic license. This is arguably exactly what will happen with Novell and the patent clauses of v2 and v3- a problem was found, and those who left their code under ‘v2 or later’ and then dropped off the face of the planet can still have their code be useful for others.

On the negative side, it also means you have to trust the FSF. I do; if you actually take the time to read the four freedoms, it is clear that they’ve done nothing with this license that isn’t exactly in line with the goals they’ve been stating for 20 years. But if aggressively protecting those user freedoms aren’t your cup of tea- and they obviously aren’t everyone’s- you might not want to trust them with GPL 4, and so ‘or later’ might not be appropriate for your code.3

Again, this is a fairly personal decision about risk, reward, and trust. I personally think the FSF is pretty predictable, so I’d license my work under an ‘or later’ clause, but I realize that this isn’t for everyone.

Q: If I do decide to relicense, what are the mechanics of that?

A: The FSF and SFLC will be issuing recommendations on relicensing best practices. My recommendation as of this writing is to wait for them- they are the experts, and have given these pragmatic details a great deal more thought than I have at this time.

Q: You mentioned projects whose copyright situations are particularly confused- what do you mean by that?

A: Take, for example, the kernel. We know much of it is licensed as v2-only, and we know many of their contributors have gone AWOL, or have even passed away. Only one project of that scale (that I know of) has ever tried to relicense (Mozilla) and the process took ages, even though most of the code had a single copyright owner (Mozilla/Netscape). The kernel could well be worse- no single copyright owner, and several times as much code. So talk of relicensing the kernel, especially in the near term, is probably largely academic; pragmatically dual-licensing of some chunks may be the best that can be expected.

The kernel is not alone- many large projects (like GNOME) don’t do copyright assignment, and so any attempt to relicense would involve a long time spent relicensing, and potentially even an effort to rewrite old code whose authors could not be contacted. This may well limit the impact of the license- v2 may remain the defacto license of older projects, with newer projects moving to v3. We’ll see.

Q: Bottom line for developers?

A: The advantages to the license are not huge, but they are real, and my guess is that within a few years it’ll be the default license for most new free software projects, as v2 is now. If you choose not to get on that train now, you’ll be in good company, but make sure you understand the license and are doing it for the right reasons- you’ll regret it if you make a kneejerk decision (either way.)

[Thanks to Nicu for the shiny new copyleft logo.]

[see all parts: part 1, part 2, part 3, part 4.]

  1. the license has been vetted by a lot of very skilled lawyers and a fair number of common-sensical hackers, and even in the worst case, you should get the same rights and protections you do under v2 []
  2. The current FAQ suggests that v2 apps can’t even link against LGPL v3, but SFLC told my committee last week that this would be resolved. []
  3. It may be worth noting that even if you dislike the FSF, they are only going to make the license more restrictive- you’re never going to get a more libertarian GPL 4 that says ‘go wild, have a party, do whatever you want to the code.’ That means that if GPL 4 states ‘everyone must pay obeisance to RMS before using the code’ and you’ve used ‘or later’, the worst case scenario is that those people take your code and play with it in their own, small corner. As long as you really believe that fewer restrictions will win out in the marketplace of ideas, you’ve got nothing to lose from ‘or later’- large numbers of hackers will only move to the new license if there are really compelling reasons, no matter what FSF does. []

26
Jun 07

GPL v3, the Q&A: part 1- the license

Copyleft Icon

Q: So why are we here?
A: At the end of this week, after 16 years, the Free Software Foundation should bless version three of the GNU General Public License, the sequel to what is arguably the most widely used and most impactful copyright license ever.1 Quite literally everyone who makes software – open, proprietary, or web – needs to understand the v3 and figure out if it is evolutionary, revolutionary, or DOA, and how it impacts them as a potential contributor, consumer, cooperator or competitor. This is my small contribution towards that understanding.

Q: Can you summarize this Q&A in a haiku?
A:

new license rolls in
stormcloud- large, complex, strong, dense
scares, but should bring rain

(I really, really wanted to use “Snuffleupagus” in that, but sadly that doesn’t leave many syllables for imagery.)

Q: Why did you feel the need to summarize in haiku?

A: Because this was the longest blog post I’ve ever written. It is now going to be in (at least) four parts over three or four days, so you’ve been warned: you might want to leave off at the haiku :)

Q: Any disclaimers before you get rolling?

A: Tons. I am not a lawyer; whether I’m even a particularly good law student is still up in the air :) Don’t rely on this for legal advice.

I’ve based this commentary on the final discussion draft of the license; changes between now and the final, final version may invalidate some of my claims.

I’ve been on GPL Commitee A, so I’m predisposed to believe the FSF and SFLC’s interpretation of the license. On the flip side, I may not have learned much from that experience; mistakes are my own and may be plentiful.

Finally, I’m currently a Red Hat employee, but this is emphatically not a statement of Red Hat’s policy or interpretation of the license. No one at Red Hat has read this or commented on it beforehand, so again, mistakes are my own and may be plentiful.

Q: Why are we doing all this again? Isn’t GPL v2 reasonably good?

A: As I already mentioned, GPL v2 is almost certainly the most important and successful copyright license ever. By ensuring cooperation instead of competition, it has played a critical role in creating the large and thriving free/open source ecosystem. By providing a robust legal framework, it has provided predictability and protection for everyone who uses it. And by protecting the rights of users, it has done a fairly good job advancing the explicit goals of the authors of the license. So one has to consider it incredibly successful- especially considering that it is a legal document which most lawyers considered insane for a long time, and which still makes many uncomfortable.

That said, the license was written in 1991, and the computer industry has changed a lot since then. Patents have become a much more critical issue for the industry- in 1991, Microsoft had only just begun to understand how important patents would be to locking out new competitors. In 1991, the idea that computers would be the dominant form of media delivery would have been fairly ludicrous, much less the idea that software would be legally protected against “tampering.” And since 1991, the free and open source software community has gone from being a decent number of volunteers and one company, operating primarily on an informal basis, to being millions of volunteers and a multi-billion dollar industry, with all the legal structure, firepower, and infighting that implies. So an update was probably not a bad idea.2

Q: So what should a rewrite have done?
A: That is the million dollar question. While few people think of it that way, the FSF is a user-focused organization. GPL v2, to them, was about protecting the rights of users to control their own computing devices. The pragmatist camp sees GPL v2 as being about the rights of developers to progressively expand the commons and prevent bald-faced exploitation of their labor, a la Apple/BSD. These camps aren’t mutually exclusive- many of the license features which the FSF originally intended primarily to benefit users have been beneficial for developers, and obviously the thriving developer community is beneficial to users. But members of both communities often seem happy to trade away the rights of the other parties if there is a conflict.

Given that broad background, FSF’s specific goals for v3 were to protect user freedoms from ‘new’ threats like patents, DRM, and tivo-ization, while benefiting (or at least not alienating) developers. To the pragmatist camp, if there were to be changes, they needed to make life easier for developers- including not just individuals, but corporations. Since no one could think of any significant way to improve on the old license in that respect, they wanted to focus primarily on simplifying and strengthening what was already there.

Q: Given the success and the controversy of change, has the license really changed that much from v2 to v3?

A: The core goals, methods, and structures of v2 were successful and have been carried over with very few changes. If you use GPL code and do not redistribute it, you still get to do whatever you want with it. If you modify and redistribute GPL code, or build new applications on top of GPL-licensed libraries, you still have to release modifications and derivatives as GPL-licensed source. And you can can still build ‘immoral’ (aka, proprietary and/or DRM) code on top of the new LGPL. Some of the language has been changed enough that these goals may be hard to find in a casual read- but they are very much still there.

Q: What has changed, then?
A: A few major changes (note that some of these have been grossly oversimplified to be audience and scope appropriate; please don’t jump on me when I’ve not noted exceptions, loopholes, etc.) Note that I’ll have more on several of these over the next couple of days.

  • internationalization: the new license moves away from language like ‘derivative’ – which comes from US copyright law – in favor of language which does not exist in any system of copyright law. This is excellent in theory- it should make the license more politically palatable and legally enforceable outside the US. In practice no one can really know what courts will think of this until it is tested. 3
  • increased complexity: this tries to be a more lawyer-friendly document. It is not clear that it succeeded. Regardless of whether the lawyers like it, it is definitely less clear for hackers and executives on first glance, and that may slow uptake.4
  • patents, the straightforward part: the license attempts to create an explicit and irrevocable patent grant extending from all contributors to all users. If you contribute a substantive patch upstream5, you’re granting a patent license to the whole project. Merely distributing without copyrightable contribution, like IBM does with many GNU tools6 still does not grant a license. This should help create more certainty about the patents owned by our major contributors- the folks like Sun, Novell, etc. – but it doesn’t help against those who don’t contribute code, like Microsoft and patent trolls. So the impact is positive but limited.
  • patents, the complicated part: a lot of verbiage has been added in an attempt to prevent future blanket indemnifications like the Microsoft-Novell deal, and to ‘trick’ Microsoft into granting us their patents. I won’t go into these in much depth because I’m pretty sure they don’t buy us much – it looks like the Xandros and Linspire deals are already structured to avoid triggering these clauses, and there is no reason to believe that Novell and Microsoft can’t do the same. So net result here is probably that only the worst abuses of the old language, like the current Novell deal, are prevented. Not bad, but not the end of the Microsoft problem by any stretch.
  • user control: the new license tries to make it clear that users have the right to control their hardware and software. This takes two forms: first, it forbids a claim by distributors of GPL’d code that the code is part of an ‘effective technical protection measure’ and second, it explicitly guarantees that installation instructions (including all the necessary tools and keys) must be available so that users can modify their software and reinstall it on devices that they own. This language, while not always straightforward, should mean that consumer-level users of GPL v3 code should be able to reliably modify the GPL-licensed code on devices that they own.
  • license compatibility: the new license is compatible with the Apache Public License, so if you’re working on GPL v3 code, you should now be able to copy and paste from APL-licensed code. This does not mean that someone working on APL-licensed code can copy and paste from GPL v3 licensed code, though- compatibility with the GPL is always one way. (And the same applies to GPL v2 code- you can’t copy out of GPL v2 code, even into GPL v3 code.)

Q: So did the FSF reach their goals?

A: Since the FSF was in control of the process, the changes have focused on users rather than developers. Developers don’t necessarily fare poorly, but where there is choice between user freedoms and developer flexibility, the balance always tilts towards users. If, despite this, developers choose to use the license, it should give users and developers more certainty about patents, and it should ensure that users have the legal rights to control the devices that they own.7 Overall, then, a win for the FSF.

Q: Bottom line- in a year, what are we going to be saying about GPL?

A: Over the next few days I’ll explore the details of how developers and companies might feel about the new license, but I think the bottom line is that within a few years many will switch over. Communities who feel particularly threatened by patents, who badly want to draw from Apache, or who are particularly inclined to protect users and disregard possible costs to developers will adopt it particularly quickly. After that, adoption will slow for a while, but as users, developers, and corporates get comfortable, the various small improvements will gradually make it the default license for a plurality of new open source code, despite the understandable reservations (some well-grounded, some not) that many people currently feel.

[see all parts: part 1, part 2, part 3, part 4.]

  1. Microsoft’s licenses are possibly more widely used, but only by a handful of pieces of software; the various Creative Commons licenses are probably also more widely used but (for better or for worse) have not yet set billion dollar industries on their ear. Really, we owe to GPL the notion that a copyright license can actually be important at all. []
  2. Novell’s decision to expose a real loophole in the patent language of the old license was only icing on the cake; the process was well underway before that happened. []
  3. The Creative Commons lawyers think this approach is borderline insane, but their approach- one license per legal regime- drastically increases license fragmentation, which we know is a very real problem. []
  4. Note that v2 isn’t nearly as clear as people would like to think- much of the supposed ‘clarity’ is really just the result of living with it and interpreting it for 16 years. []
  5. not just any patch; it must be meaningful enough to be copyrightable []
  6. edit later: IBM contributes to a number of GNU tools like gcc and classpath, I don’t mean to downplay that. Just that they also distribute the entire GNU user-space stack on AIX, which is the biggest example of ‘simple’ distribution that I know of. []
  7. Of course, those new rights only help you if you’re also a hacker, or can afford to pay one to hack for you. But this was a problem with the v2 as well. []

25
Jun 07

when I graduate + quick note on the Next Big Questions

Matt, all of the following are probably true. I graduate:

(a) two years from last month.

(b) way too late, because so many interesting companies are doing so many interesting things right now.

(c) way too soon, because answering the Big Questions is probably going to need the kind of deep thinking that tends to be enabled by academia and/or monasteries, not the Real World.

The Big Questions I have in mind are hard to even express clearly right now, much less answer. I think of the family of Big Questions as all following the pattern “how do you find a GPL2-like sweet spot which in one swoop provides more rights for users, solves coordination problems for developers, and leaves room for economic incentive for companies.” If you can find that sweet spot (or something related; this is a gross oversimplification in some ways) you’ve done some really interesting thinking and solved a lot of problems for people.

GPL itself is a fairly good example of a legal document which creates this sweet spot around traditional client software. We need to create the same sweet spot around user data, to encourage users to give up their data to the googles of the world while giving them a high degree of confidence that their rights will be respected. And we need to create the same sweet spot around web services and APIs- Bungee may be doing very interesting things, but if their legal relationship to the folks they serve was standardized and gave incentives to every party in the transaction I’m certain even more interesting possibilities would open up. And of course I still quixotically insist that such a position must be possible in trademark :)

Because copyright is not involved, solutions for these problem spaces probably look more like contract than license, but they may include other aspects of the law as well. For example, the solution to the personal data problem may borrow from common-law property rules like bailment, or (in the worst case) from regulatory law like that which created the SEC. More generally, the complex legal redirection that is copyleft is probably fairly straightforward compared to some of what would be necessary to solve some of these. That is why I think tackling some of these are probably multi-year projects- more than I can cram into just the next two years, probably. Knowing myself, I will probably be making a stab at them anyway ;)


26
Apr 07

quick notes

On the advice of someone from counseling services here, I’ve been studying for 20 minutes on, 10 minutes off. This has greatly reduced my study anxiety, since if I get distracted, I just write it down and say ‘will do it at the next break.’ And then I get back to being focused. This has been tremendous; the last week or so has been one of the most productive I can remember- low stress, high focus.

Anyway, that means I’ve been doing some web surfing in the breaks- some quick thoughts from those periods:

  • Right after reviewing Fontainebleu in property (a case where a Miami Beach hotel sued another Miami Beach hotel for obstructing their sunlight with a big wall), I took a break and came across this post at BldgBlog on Britain’s solution to the sunlight problem- “Ancient Lights”. As is typical of BldgBlog, it is just awesome. Go read it, even if you don’t care anything at all about property :)
  • Over the summer, I will be writing a lot (I hope) about property rights in uploaded data. Nutshell I’ll be pushing: users should probably have legal rights to their uploaded data, and vendors should be actively excited to give them such rights and scrap the insulting TOSs people sign right now. Trust and verifiability build economies- and right now the online data world does not allow for that trust, at all. I’ve seen very little about this, but John Battelle took a stab at it yesterday which is worth reading. (Online Desktop folks and Mugshot folks in particular need to read ASAP. Googlers too :)
  • Mark has posted about the trademark thing. I’ve not had time to do more than skim the policy or think about it in depth, but in the post he seems to understand the issues better than most, and regardless of whether or not he is right, everything he says and does is influential and important. Now, Mark, what about that patent policy? :)
  • I continue to subscribe to EDGE, even though I’ve never once had time to read through an entire issue. This week’s promises to also go unread, but it looks awesome- ponderings on expertise and knowledge. I aspire to become so hyperefficient that I actually have time to read EDGE regularly some day ;)

This work by Luis Villa is licensed under a Creative Commons Attribution-ShareAlike 3.0 United States.