pmo


2
Feb 12

The license term smorgasbord: copyleft, share-alike, reciprocal, viral, or hereditary?

I microblogged (diaspora, identica, twitter) the following statement a few weeks ago:

First new year’s resolution, 10 days late: I will use ‘hereditary license’ any time I am tempted to say ‘viral license.’

Surprisingly, this generated quite a few responses (on identica and elsewhere)- some people liked it, but many people had their own alternative to propose. So here are some longer-form thoughts.

There are four primary options that I am aware of when trying to find a one-word term for open source licenses that in some way compel distributors to also distribute code- i.e., the licenses called “copyleft” by those of us who have spent too much time with this stuff. The terms:

  • Copyleft: This is the common name when speaking to other people experienced in open source, so it’s obviously the first choice when you know your audience has at least some experience in open source. But to an audience not already involved in open source (the only time I’m ever even vaguely “tempted to say viral”), the phrase is completely non-obvious. It has zero evident meaning. In fact, it can actively confuse: it could mean the reverse of copyright, which to most people probably means “no license” or anti-copyright altogether. So it’s really not a good word to use for audiences who aren’t familiar with open source- which is to say, most audiences.
  • Viral: This is another old standby. Traditionally, the objection to this term has been that it is perjorative: no one likes viruses, so ‘viral’ is often seen as (and sometimes is) a deliberate attempt to frame copyleft licenses as inherently bad. That objection is certainly accurate, but I think there is another problem with this word: it implies that, like a virus, copyleft can spread to someone without their active involvement; you can “catch” it from the digital equivalent of being in the same room with someone, or not washing your hands. This isn’t the case – there must be a strong relationship between the copylefted code and the other code that might be required to be shared. This, to me, is where “viral” really fails to communicate. It makes people think that a copyleft is something that might “happen to them” instead of it being something that they have to be actively involved with.
  • Share-alike (or the related word “reciprocal”): Oddly, neither of these is used much outside of the Creative Commons world. Neither of these are bad terms: they are reasonably value-neutral, and they both imply that there must be an actively chosen relationship between the parties, which I think is important. But to me they don’t capture the why of the relationship; it makes it sound like there might be a choice in the matter, or something you do because you’re a nice guy.
  • Hereditary: Richard Fontana traced this back to at least 2004, so it isn’t new, but without doubt this is the least used of the various terms I’m discussing here. At least for the moment, though, and for general audiences, I’m leaning towards thinking it is the best option. First, it implies that there has to be a real, derivative relationship between the two codebases; it can’t just happen at random (like viral implies). Second, it also implies that once the relationship exists, further licensing isn’t a choice- you must pass it on to the next folks who “inherit” from you. (Share-alike/reciprocal might imply that you do this because you’re a nice guy, which isn’t the case, or that you do it back to the original sharer- which also isn’t necessarily the case.) The analogy obviously isn’t perfect, most notably because a mere redistributor who hasn’t created a derivative work that “inherits” from the parent work is still bound by the license. But I think on balance that it has the fewest tradeoffs.

So there you go, for the dozen people who asked, and the hundreds, nay billions more who don’t care :)


24
Jan 12

Nominated for OpenSource.com People’s Choice Award

Based on my series of MPL posts for opensource.com, I’ve been nominated for a “people’s choice award” as a top contributor to opensource.com. It’s a nice little honor. That said, there are lots of folks on the list of nominees who have written and thought far more than I have this year- so you should go check out the list and vote for one of them instead :)


29
Dec 11

A note on 2011

The best thing I did for myself in 2011 was to get back on a bicycle after not being on one for 15+ years, and after never actually being comfortable on one. I’m not going to be racing any time soon, but I now really look forward to a bike ride as part of the average weekend and even the average vacation.

image

Yesterday was a nice punctuation mark to that, featuring a long ride down to the ocean, a great view, and a very satisfying fish and chips.

I am definitely enjoying some time out of the office and looking forward to a great 2012- hope my friends are too. Now I just need to figure out what life improvement can trump “get back on a bike.” Suggestions welcome :)


18
Sep 11

San Francisco Recommended Reading

When I moved into San Francisco, I asked some folks about books I should read to get a sense of the history of the city. Here’s a sampling of the books that I’ve read since then, gathered in one place for the next time someone asks me the question. I’m still open to more suggestions, and suggestions need not be about the city as a whole- for example, my favorite book about New York was in large part about traffic and my favorite book about Boston was about the river.

Actually publishing this post, moons after writing it, is mostly in honor of today’s spectacular weather and my first ever bike ride across the Golden Gate. (And yes, the photo is cliched and I don’t care ;)

Imperial San Francisco: Urban Power, Earthly Ruin: Gray Brechin: This book opens with a slightly bizarre conspiracy theory about the role of mining in history, and keeps going with a lot of implied “the rich are trying to keep us down” without much evidence. Not that the folks he’s chronicling are particularly nice folks, but that’s easy enough to prove without going off the deep end about it. Despite this unfortunate tendency, this book has lots of great stories and background about how the San Francisco power brokers of the late 19th century interrelated with the city, the state, and the rest of the country, including some great background on the history of water and mining in the region. Recommended reading for someone trying to get a grasp on the early history of SF, albeit to be taken with a side order of salt.

Infinite City, A San Francisco Atlas, Rebeca Solnit: This is an atlas in the same way One Hundred Years of Solitude is a story about a village. Which is to say it covers so much history, in so many crazy ways, and is so unlike any other story or map you’ve ever seen, that it becomes very hard to summarize. Maybe not for everyone, either, but something I love and think is worth flipping through for anyone trying to find the stories that can bring a city to life.

Golden Gate: The Life and Times of America’s Greatest Bridge, Kevin Starr: Starr is a great historian (his more serious California history books are terrific), and this book has a lot of great stories. Unfortunately, it also has a lot of filler to make it “book length.” (In the future, books like this will be about 1/2 the length and sold purely as ebooks.) I recommend it, if you’re interested in the bridge and have time to wade through some fairly purple and extraneous prose. If you’re just looking for any one particular book about the city, this one isn’t it.

Making San Francisco American: Cultural Frontiers in the Urban West, 1846-1906, Barbara Berglund: This started as a PhD thesis, and reads like one. But if you’re the kind of person who can plunge through that (and I am), it’s a brilliant book, explaining how the racially mixed and roughly egalitarian culture of mining-era SF was gradually molded into something acceptable to “cultured” Americans – both to the nouveau riche of the West who wanted to build a city acceptable to the East, and to those from the East who were flooding into SF. Really fascinating read, and I think has some lessons applicable to the “uncultured” programmers who have to constantly resist cultural change imposed by more “refined” outsiders- still an ongoing theme in SF.

The Barbary Plague: The Black Death in Victorian San Francisco by Marilyn Chase: This book explores the history of the entry of the bubonic plague into the Americas via San Francisco. It’s a lighter and more thematically consistent book than Making San Francisco American, but covers overlapping time periods and explores some similar themes, like early anti-Chinese racism, and the relationship of early San Francisco with the Eastern US. If you’re looking for something less serious, and not at all about software, this is definitely the one book in this list to read.

Vanished Waters: A History of San Francisco’s Mission Bay, Nancy Olmsted: I live on land reclaimed from Mission Bay, so this has resonance for me that it probably won’t for others. But I think it’s a brilliant, brief book that anyone who lives near modern Caltrain should benefit from reading, since it will help you understand the geography and history of your own neighborhood.

What the Dormouse Said: How the Sixties Counterculture Shaped the Personal Computer, by John Markoff; and Regional Advantage: Culture and Competition in Silicon Valley and Route 128, AnnaLee Saxenian: I think of these as a pair, because while very different books they are also both about the culture of computing innovation and networking in the Valley. Dormouse is really very anecdotal (a little birdie once told me that even the author admits it was basically an excuse to string together a bunch of great stories he’d heard over the years), but they are great anecdotes and give a lot to chew over, especially in light of the success of the iPhone and iPad after the writing of the book, and the continued tension between personalized and centralized computing. Regional Advantage is an even older book, but critical to understanding the larger, structural causes of Silicon Valley’s success, showing that it was increased interpersonal and intercorporate sharing that made Silicon Valley continue to succeed after the shocks of the ’80s hammered both Silicon Valley and Boston’s Route 128.

Reclaiming San Francisco: Brook, Carlsson, and Peters: Not actually read yet, but am excited to find time for it. It’s a series of essays.


22
Aug 11

Making HTML Legal Documents (Like MPL) Look Good

A few months ago I bought “Typography for Lawyers” (TFL), an excellent book that I would recommend to all lawyers. And since the biggest document I was working on at the timeis, of course, published in HTML, I started spending a few minutes here and there on learning enough CSS to make the license look better. (Understandably, the book’s very pragmatic advice is focused on Word and Pages, not HTML.)

Fine Print Fine Print by CJ Sorg, used under CC-BY 2.0

I’ve published the experiment (Compare with the plain-jane HTML MPL 1.1). This is just an experiment and a personal hack, but I’m happy to hear more suggestions and improvements, and if the final result works, I’ll suggest we use it instead of the traditional plain HTML version. Some notes on the process, including links to the (abbreviated) blog posts at the TFL website (for much more thought and detail, buy the book):

  • Fonts: This was hard. The author of Typography for Lawyers is himself a former font designer, and (correctly, I think) a font snob. Given that I was not going to splurge for fancy webfonts just for this project, I spent a lot of time browsing and playing with Google Web Fonts. This is clearly not ideal (for example, it has only one monospace option for Exhibits A and B, and I’d like a slightly more subtle serif for the titles) but I think I found a decent combination of fonts – or at least an improvement on the system fonts. Presumably, if this became Official, some better font choices could be used.
  • Small Caps: I’d never given small caps much thought until reading TFL. The book is quite positive on them under certain circumstances, and that led me to experiment and eventually to use them as headers. Unfortunately, Google Web Fonts is limited here – none of the Google Web Fonts appear to have true small caps. TFL recommends strongly against fake smallcaps, but I think these look decent so I’ve used them; I’d be happy to replace with a better one if that was available.
  • Hyphenation and Justification: TFL does not necessarily recommend full justification, but demands hyphenation if you do fully justify. Since Mozilla just added support for hyphenation, I turned on hyphenation and justification, and I think it looks good (if you’re using a recent build.) In production, it would probably be better to either use something like hyphenator that works cross-browser, or use some sort of browser feature detection to turn off justification for browsers that don’t also support hyphenation.
  • Line length: TFL recommends something between 45 and 90 characters per line. (The Supreme Court’s well-designed documents are about 65 characters per line.) Unfortunately, as best as this CSS newbie can tell, there is no good way to do this simply in CSS. I ended up with a total hack, using the “alphabet trick” described in  TFL to estimate the right width.
  • ALL CAPS: TFL IS AGAINST ALL CAPS FOR ENTIRE PARAGRAPHS. My experimental HTML version uses some gross CSS to create a highlighting box around the two traditionally all-caps blocks in the text.
  • “smart” quotes: We know that people copy and paste from the HTML version of the license into plain text files, even though (with MPL 2) we’re going to provide a very nicely formatted plain text version of the license. And of course, copying and pasting curly quotes into plain text gets… messy. And so, I am conflicted about this. The HTML linked above uses smart quotes, while the plain text uses straight quotes. Inevitably that will lead to some problems; suggestions on how best to fix (use javascript to modify what is copy-and-pasted if someone does that?) are welcome.

Of course, I’m still very bad with CSS and HTML, so I’m sure this document can be improved, and I’m happy to take suggestions and fixes. Regardless, it has been an educational experience for me and I’m glad I toyed with it.


22
Jun 11

Donated to the Ada Initiative

I’m excited to say that (with Krissa’s support and approval) I donated today to the Ada Initiative’s Seed 100 Campaign.

The Ada Initiative Seed 100 campaign: donate in June to support women in open technology and cultureFree and open software and culture have been very good to me, and I’m glad that the Mary and Val (and hopefully soon a fleet of others) will be working to make it more accessible to women and girls. As big a force for change as this movement has been in the past two decades, things can only improve when we consciously work on being accessible to the 50% of the population that is currently all too often excluded.


13
May 11

Regular internet detox tips?

Over the past few years I’ve heard a few friends talk about plans to get off the internet for one day a weekend, one weekend a month, etc. Each of the past two years I’ve tried to take 3-4 days off the internet, and both times it has been rejuvenating- I come back feeling pretty invigorated, focused, etc. But that feeling didn’t last too long last year and I doubt it will this year.

Small waterfall on the side of a trail off Skyline Drive, Virginia, May 2011

 

 

So … do any friends who have tried similar things have tips or thoughts on how to do an internet detox on a more regular basis and actually make it both effective and sustainable? I imagine that the “make it sustainable” part inevitably involves advice on how to handle email, work, twitter, etc. while you’re gone. Twitter and greader I’m actually pretty good with just “mark it read and move on” but that’s much harder with email for me.


17
Apr 11

looking for a programming analogy- if there is one

As I’ve mentioned before, there are a lot of analogies between programming and legal work.

I’m working on an upcoming post to explain a specific application of a legal concept. Unfortunately, I think this is one of those few concepts where there is not a ready programming analogy. I’d love for someone to prove me wrong, since the programming side of my brain is slowly going to pot. Here goes:

In law, there is the concept of “rules” and “standards.” Basically, rules are precise- they allow a judge to simply look at the facts, apply the rule, and voila- you know whether the rule was violated. An example would be “The speed limit is 55.” If you’re driving 56, you’re in violation- even if, say, you’re speeding to the hospital with your pregnant wife. Alternately, if you’re driving 54 you’re fine- even if it is pouring rain. Rules are good because they are easy for the public to understand (no need to consult with a lawyer) and because their application (should be) very evenhanded, but good, fair rules are very hard (in many cases essentially impossible) to write.

A standard, on the other hand, is more vague- something like “The speed limit is whatever speed is safe to drive at under the circumstances.” This might not allow you to go 56 to the hospital, but would definitely not allow 54 in the rain. These are bad in some ways because they are trickier, case-by-case, hard to predict the outcome of beforehand, and involves judgment on the part of all parties, but (arguably) produces better outcomes a lot of the time- assuming you can trust the parties doing the judging, and you can put up with the cost of taking the time to make the decision.

So… for those of you who have lasted this long: are there analogies to this in software? The closest thing I can think of is strong typing vs. weak typing, but generally, since computers are incapable of dealing with standards, there aren’t many examples I can think of. Am I missing/forgetting something?


1
Apr 11

Brilliant.

Saw this for the first time on my drive to work yesterday:

Not every venture is about capital, by Fligtar, used under CC-BY-NC-SA

Congrats to all my friends on a very solid release and on reinvigorating their important message of public service.


31
Mar 11

MPL Beta 2- as FAQ

I’m still working, albeit sometimes slowly, on the new MPL. Two days ago we announced the release of Beta 2- you should go read it :)

FAQ, by photosteve101/planetofsuccess.com, used under CC-BY

Besides the usual (small tweaks to some language in a further attempt to get it Just Right; improvements to the GPL language; etc.) I also published a bit of an experiment: a draft of the license which replaces the traditional section headers with FAQ questions, like so:

Traditional:

2.2. Grants.

Each Contributor hereby grants You a world-wide, royalty-free, non-exclusive license: . . .

FAQ-style:

2. What rights are granted to me by this license? Who are these rights granted by?

Each Contributor hereby grants You a world-wide, royalty-free, non-exclusive license: . . .

The inspiration for this came from the apartment lease I signed in December, which was done in this style and (oddly) almost a pleasure to read.

This approach has two advantages. First, it helps you draft and organize things more clearly. Since every paragraph was the answer to a question, things were broken up into what normal human beings would consider more logical units, instead of the giant blocks of text legal documents sometimes sprawl into.  Preparing the FAQified version of Beta 2 made us aware of some MPL sections that had this problem, and it helped us reorder and reorganize text as a result- something which you can see in (for example) the new Section 8 of MPL 2 Beta 2, which is part of the old Section 9 broken out so that it makes more sense independently. Because of this, these changes will help every reader of the license, even if we never publish another “FAQified” version.

Second, the questions clue a reader in to the key concepts of a section. It is important that people still read everything. We’ve tried to ensure that the questions do not change the meaning of the “answers;” i.e., the body of the text, both by ensuring that the “answer” or body text is the same between both versions and by disclaiming any changes in the license itself. In other words, this will help non-lawyers understand- but if for some reason, you need to be absolutely sure, you (and possibly your lawyer) need to read the whole thing carefully and without reference to the questions.

We’re looking forward to feedback on this, both from non-lawyers (does this help you understand?) and from lawyers (this is an unusual technique, and so suggestions on how to do it better are welcome). So download it, read it, and let us know what you think.

[postscript: The first comment reminds me that this is only one of the steps we've taken to simplify and clarify the license. Most notably, Beta 2 is almost exactly 1/2 the length of  MPL 1.1, but we've also worked with Mozilla folks to simplify requirements where the old license was over-specific, and with lawyers with a reputation for good writing on how to simplify language and remove redundancy. But there is still time to make it even better, so please continue reading and giving feedback!]


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