Impact of license selection on open source software quality

I’ve made several vague references to my master’s thesis on this blog, but I’ve never said much of substance. Your long wait is over though, as I’ve finally gotten around to uploading it and creating a research page on the website. If you don’t want to read the full thesis, there’s a condensed version that was presented at a conference in March (and won best paper in the session, I might add).

The even more condensed version is that my research shows (to my dismay) that copyleft projects tend to have higher technical debt than permissively-licensed projects. What’s more interesting than the results is the pile of questions that it brings up.

I’ll admit that my methods are not necessarily the most stringent, particularly when it comes to how quality is proxied (or even the quantification of technical debt). My methodology was partly driven by convenience and partly driven by the dearth of research available on the topic. Of course, the steep price of the C/C++ plugin hampered my ability to get a good sample.

I hope someone else picks up where I left off and does a more detailed analysis. For my own part, I hope to be able to conduct some research in my “spare time”. In addition to the mere study of differences in debt, I’d like to see how non-license project governance affects software quality. There was no analysis in my study of developer quantity, funding, etc. The ultimate goal is to develop concrete recommendations for FLOSS project leaders that would improve the quality of the finished product.

 

Building my website with blatter

I recently came across a project called “blatter”. It’s a Python script that uses jinja2’s template engine to build static websites. This is exactly the sort of thing I’d been looking for. I don’t do anything too fancy with FunnelFiasco.com, but every once in a while I want to make a change across all (or at least most) pages. For example, I recently updated the default content license from CC BY-NC-SA 3.0 United States to CC BY-NC-SA 4.0 International. It’s a relatively minor change, but changing it everywhere is a real pain.

Sure, I could switch to a real CMS (heck, I already have WordPress installed!) or re-do the site in PHP, but that sounded too much like effort. I like my static pages that are artisinally hand-crafted slapped together in vi, but I also like being able to make lazy changes. And I really like page-to-page consistency. With blatter, I can create a few small templates and suddenly changes can be made across the whole site in just a few seconds.

Blatter smoothly merges static and templated content. The only downside is that because it seems to touch all files every time it builds (blats), pushing the new content to my website becomes a larger task. That’s not a huge concern because of the relatively small size of the content, but it’s something that seems fixable. So pretty much all of the site has been blatterized now. For the most part, you shouldn’t really notice any changes.

New discussions in the Hall of Fame

Thanks to Tony Cristaldi, I’ve added a couple of new discussions to the Hall of Fame. They’re a bit hard to read because they’re scans of printed discussions from 17 years ago. I can’t say much for the meteorological quality of the discussions because I haven’t actually read them. The real beauty is in the artwork. I hope Forecaster Moore got as much enjoyment writing these and I’ve had looking at them.

New discussions added to the Hall of Fame

A reader named Jill passed a few discussions to me recently. They’re National Hurricane Center discussions about two storms that refused to die: 2002’s Hurricane Kyle and 2005’s Hurricane Epsilon (which was notable enough just for being a December Hurricane). I’ve added them to the Forecast Discussion Hall of Fame page at http://weather.funnelfiasco.com/fd-hof/.

New entry in the Hall of Fame

Robert Deal sent in an AFD from Lake Charles, LA discussing how NWS employees remove ice from their cars. I’ve added it to the Forecast Discussion Hall of Fame. Since I edited the page, I also updated the copyright wording to reference the CC-NC-BY-SA license I’m using. It’s on my to-do list to PHPize at least some of the site so that these sorts of things are easier.

That’s certainly not going to happen for at least another week, as I’m leaving in a few hours for the LISA Conference in Boston. Once again, I’ll be on the conference blog team, so you can follow along at http://blogs.usenix.org/.

Mobile radar page updated

After some effort, I’ve completed my to-do list for the mobile radar page and decided to call it version 1.0.  It is now available from the Mobile Weather page (http://weather.funnelfiasco.com/mobile/).  A mostly complete list of changes is below:

  • Bugfix: Fixed problem with selecting alternate products. An update in the previous version caused the site variable to not be set correctly when an alternate product was selected at the bottom of the page.  This has been fixed.
  • Added adjacent site dial. Toward the bottom of the display page, there is now a dial to select the same product from an adjacent site (if it exists).  This is really handy for times when the area of interest is right on the edge of a site’s coverage.
  • Images now have a file extension. Previously, images were saved without an extension.  This wasn’t really a problem unless you wanted to right-click on the image.  All images are now displayed with a .gif extension, even though some of the static images are actually PNG files.  This does not appear to have any adverse effects.
  • Site name now in the headline. The name of the site, as well as the ID is now given in the headline along with the product type.

NWS mobile radar page updated

I put a little bit of effort into the NWS mobile radar page this afternoon and am proud to announce that it has been bumped to version 0.2b.  It is now available from the Mobile Weather page (http://weather.funnelfiasco.com/mobile/).  A mostly complete list of changes is below:

  • Added site selection menu.  I didn’t think it was necessary initially, but several users have suggested it, and my own experience while on vacation proves that there probably aren’t too many people who know the ID for all 154 sites.  The added bonus is that I’ve begun support for a requested feature, which is to select adjacent radar sites.  The difficult part will be filling that information in for each site, so it will likely be a gradual roll-out.  Sites can still be selected manually, which is probably quicker if you already know the ID.
  • Added license information.  In line with the rest of the website, the code for this script is licensed under the CC-BY-NC-SA 3.0. That information is now contained in the comments as well in the code output.
  • Put site selection and product selection on separate lines.  This is a small tweak to (hopefully) improve usability.  While horizontal real estate is constrained, there’s more room to separate things vertically on most devices, so let’s go with that.  If nothing else, users are used to vertical scrolling.
  • Added spacing of other products under radar image. Another usability tweak, which should make the clicking process a little bit simpler, especially on touch-only devices.
  • Change radar image label from <p> to <h3>.  This makes the site and product a little more visible and adds some vertical spacing to keep things from looking too jammed together.