Older blog entries for louie (starting at number 665)

Joining the Open Source Initiative board of directors

In the past, I’ve been known to say that skeptical things about the Open Source Initiative’s role in the open source world – usually arguing that OSI was doing the basics (license approval, open source definition) respectably, but also had a lot of potential that wasn’t being taken advantage of. I’m excited to announce that I’m now putting my money where my mouth is, and joining the OSI board of directors.

“Hello, My Name is Open Source” by opensourceway, used under CC-BY-SA license

I’ll write more about my goals for OSI (and for my participation in it) in the coming months, once I’ve gotten a chance to actually meet with the rest of the board and better understand the projects that are already underway. But right now I think it’s very important to note how I became a member of the board, because I think it says something important about where OSI is going, and about why I agreed to invest my time and energy.

Specifically, at FOSDEM, OSI announced that it was beginning to shift in part to an affiliate model, where open source organizations like Mozilla, KDE, and others would have input into OSI’s processes and decisionmaking.1 One of the first tangible outcomes of that process was to ask affiliate orgs to nominate board members. The result: Mozilla nominated me, and Eclipse nominated fellow new board member Mike Milinkovich. Because of this, our election is less about us,2 and more about taking very concrete steps towards an OSI with deeper ties to the broader open source community. And that, I think, reflects what OSI has not always been, but could be – a place where the best of open source can talk and work together to move common interests forward.

  1. Ask me how your organization can join!
  2. Though obviously I expect we’ll be great :)

Syndicated 2012-03-19 23:09:55 from Luis Villa » Blog Posts

On the Importance of Per-File License Information

After the release of MPL 2, the first request for MPL 2.1 came from someone who didn’t want to put copyright headers in individual files. The issue has recently reared its head in Apache as well, and I recently was asked related questions by a GPL user as well.

The main reasons given for not using per-file headers are two-fold:

  1. They’re awkward in short files. Many programming frameworks these days (most notably rails) are encouraging creation of many short files, so this is becoming a bigger problem than it was when per-file headers were first created.
  2. They’re not considered very relevant in languages or frameworks that are library-centric, especially those with package managers that are heavily used (like ruby’s gems). Again, many modern language frameworks include tooling that encourages this approach, so some developers are thinking “why can’t I just express the license once per library?”

The case for per-file copyright headers is put well, and succinctly, by Larry Rosen:

“[O]ur goal is to pass on any important IP information that might be useful … in the place(s) [downstream licensees] are most likely to find it.”

Larry’s comment makes two assumptions that I want to flesh out and support.

First, Larry assumes that the place where people are “most likely to find” licensing information is in per-file headers. It is true that in the best case scenario in many modern languages/frameworks, library-level is a great place to put licenses – in normal use, they’ll get seen and understood. But lots of coding in the wild is not “normal use.” I review a lot of different codebases these days, and files get separated from their parent projects and directories all the time. And then you have to use fairly complex (and often expensive) tools to do what should be a simple task- figure out what the license is. So, yes, modern frameworks should in theory reduce the need for per-file licensing information – but in practice, that is often not the case.

Second, Larry assumes that you actually want people to use your code. Lots of publishers of open source code seem surprisingly unconcerned by this, unfortunately. The functional, practical benefits of open source all start with someone else reusing your code, so if you’re publishing open source code at all, you should be concerned about making it easy for people to use the code you publish. Again, putting licensing information in each file can help make this easier, by making it easier for people to figure out their rights and responsibilities. (This is particularly true if you want commercial uptake, since so many commercial users of open source are getting more conservative about using source code that is not properly labeled and licensed.)((Larry also perhaps assumes you want people to respect your license when using your code; that is a surprisingly complex topic that I will try to address some other day.))

So, yes: if you want people to find your licensing information, and  to use your code, per-file headers are the way to go. They may not be ideal but they really are worth the effort.

Syndicated 2012-03-17 18:43:00 from Luis Villa » Blog Posts

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 :)

Syndicated 2012-02-03 02:14:21 from Luis Villa » Blog Posts

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 :)

Syndicated 2012-01-24 20:42:15 from Luis Villa » Blog Posts

Personal MPL acknowledgments

This morning I hit publish on the announcement of MPL 2.0, finishing a two year process. The official announcement had a number of acknowledgements for the many people who helped out along the way, but I wanted to take to my personal blog to add a few personal notes.

“thank you note for every language,” by woodleywonderworks, used under CC-BY 2.0.
First, Gerv Markham. Gerv has in many ways been central to Mozilla’s open source mission for a while, and it would have been easy for him to feel threatened when I parachuted in and began working on the license. Instead, he’s been helpful, patient, and constructive- everything you’d want from a co-worker and team member.

Second, Brett Smith, of the FSF: Brett has brought a very professional, constructive approach to working with me on the license. Without his dedication and patience the new GPL compatibility approach would not have succeeded. Aaron Williamson and James Vasile at SFLC and Richard Fontana at Red Hat were also instrumental in this, and again gave freely of their time when they didn’t have to. They also kept a straight face when I suggested the new approach, which probably helped a great deal in getting it done. :)

Third, Karen Copenhaver and Heather Meeker were incredible pros in helping push out the critical betas- they helped me go through the important issues and get the language right, in a way only people with decades of experience can do. That they were willing to give their time to Mozilla and to me was incredibly generous- most partners at major law firms aren’t willing to take those steps. And I’m not just saying that because Heather is now my boss. ;)

Finally, and most importantly, Mitchell Baker and Harvey Anderson: Mitchell and Harvey took a gamble when they brought me on board this project- one they didn’t need to do. This has been their baby for the past ten years, and they could have done this work themselves, or just let the license continue to age gracefully (as it was doing). Not only did they give me this terrific opportunity, they then opened up their calendars and their minds to me. As a result, I’ve had a terrific educational experience, learning the nooks and crannies of the license as well as lots about how to draft a document that stands the test of time. (Rumor has it that Mitchell wrote the original in a month, which I still find mind-boggling, and I can confirm that the text is still burned into her brain in high resolution.) It has really been an honor and a privilege for me to be involved with them and in this process, so I’m deeply thankful for their encouragement and invitation to participate.

I’ll probably write more here soon about the license and the process,  but thanking people was really at the top of my priority list.

Syndicated 2012-01-03 18:14:01 from Luis Villa » Blog Posts

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 :)

Syndicated 2011-12-29 18:31:55 from Luis Villa » Blog Posts

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.

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.

Syndicated 2011-09-19 02:21:11 from Luis Villa » Blog Posts

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.

Syndicated 2011-08-22 14:02:01 from Luis Villa » Blog Posts

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.

Syndicated 2011-06-23 02:33:45 from Luis Villa » Blog Posts

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.

Syndicated 2011-05-13 19:28:29 from Luis Villa » Blog Posts

656 older entries...

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!