-->

Labs News

Updates to CC Network OpenID Provider

Nathan Yergler, April 13th, 2009

We received a couple bug reports over the weekend about the CC Network OpenID provider. Users were seeing a situation where they were asked to log into the CC Network with a username that was similarto their’s, but not quite right — specifically, the final character was omitted. When they put in their correct username and password they were just redirected to the login screen again and again.

After some digging we arrived at Issue 308. The problem occurs when a non-compliant OpenID-enabled site asks for the OpenID URL and the user supplies something that should work, but isn’t canonical. For example, my CC Network profile is at https://creativecommons.net/nathan/. I should be able to use any of the following as my OpenID and have the site get to the canonical version:

  • creativecommons.net/nathan
  • http://creativecommons.net/nathan
  • http://creativecommons.net/nathan/
  • https://creativecommons.net/nathan

The process of getting from one of these to the canonical version is called normalization.

So if an OpenID enabled site (such as, say, sourceforge.net or intensedebate.com) doesn’t do normalization, the user ends up asking to be validated for some URL other than their own canonical identity. And our server kicks that back as an invalid OpenID URL. Intense Debate seems to be aware of the issue; someone already reported it on their Get Satisfaction forum.

We briefly considered working around this bug (and it is a bug) but ultimately decided against it. It didn’t “smell” right and after some thought we realized that it could cause users more problems down the road. For example, if we implemented the proposed fix (making the trailing slash optional, which would have fixed it in most cases, it appears), a user could end up logging in at a broken site with the URL https://creativecommons.net/foo. If that site later fixed their code to correctly perform normalization, the user would suddenly be asking to validate a different URL — https://creativecommons.net/foo/. I suppose a site that has this bug and needs to fix it could normalize all the OpenID URLs stored in their database before pushing out the patch.

Instead we went ahead and added an error screen so that instead of the completely frustrating never-ending login loop, you at least get a hint that something’s wrong (and how to fix it).

The moral of the story? If you run into a problem logging into an OpenID-enabled site, first make sure you’re using your “real” URL (and if you still have a problem, at least with your CC Network ID, please report it).

No Comments »

Enumeration descriptions in CC Web Services

Nathan Yergler, April 2nd, 2009

We had a request come in from a developer using the CC web services for better contextual information about the choices users make when selecting a license. In particular, they wanted to present users with information about what “ShareAlike” means. As I dug into it I realized that the existing <description> we provided for the questions themselves are… well, bad. I can only imagine how hard it’d be to craft a user interface using those as help text.

I just pushed an update to the development version of the API that adds <description> elements to the individual <enum> elements. These map to the help pop-ups we use on the main license chooser. If all seems well we’ll push this down to 1.5 as well.

I should also note that this update includes two new, very nice (for me) improvements:

  • I finally landed Frank’s test suite work from last summer. We had intended to replace the whole API with a leaner version, but that’s still in the works. So in the interim, we have a test suite and I’m not afraid of change anymore (on this project at least).
  • I’ve updated the documentation to use Sphinx. ReStructured Text is the secret weapon of many a Python project; Sphinx makes it even more powerful, providing a set of directives and tools to generate something that looks, well, at least decent.
No Comments »

CC Technology Summit 3: Turin, Italy

Nathan Yergler, March 29th, 2009

As you may have see on the blog or one of the mailing lists, we’ve announced the third CC Technology Summit. The CFP is currently open (presentations due April 24) and full details are in the wiki.

No Comments »

LicenseChooser 0.96 released: Fixes Share-Alike help text

asheesh, March 16th, 2009

We just noticed that LicenseChooser.js 0.95 and earlier had the wrong help
text for “Share Alike”. Due to a copy and pasting error, if you hold your
mouse over “Require Share Alike” icon in the old demos (e.g.
http://labs.creativecommons.org/demos/jswidget/tags/0.95/example_web_app/), you will see a copy of the help text that corresponds to “Prohibit Commercial Use”.

Eek.

LicenseChooser.js 0.96, as you can see at http://labs.creativecommons.org/demos/jswidget/tags/0.96/example_web_app/, fixes this problem.

No Comments »

CC Technology Summit Video

Nathan Yergler, January 16th, 2009

In December we held our second CC Technology Summit at MIT in Cambridge, MA. I think the day provided a great perspective on what we’re doing at CC and how others are building a real community around it. If you weren’t able to attend, we now have audio and video available. And if you missed the first one, the video for that is available as well.

We’re currently thinking about plans for the next event; if you have feedback or suggestions, email them to techsummit@creativecommons.org.

1 Comment »

Banshee - Now with Creative Commons support! (devel)

Greg Grossmeier, January 14th, 2009

Great news from Gabriel Burt, lead developer for the Open Source media player Banshee:


(click for larger version)

Search based on the license of a song/album with direct support of displaying CC license logos!

More details available on Gabriel’s blog post.

This feature is slated to be in Banshee 1.6 but you can play with Gabriel’s development branch which has this feature thanks to the beauty of git.

git clone http://banshee-project.org/~gburt/banshee.git

Technical notes of the feature: Gabriel wrote his own parser for extracting the license information from the files. That was needed because there is currently not a Mono port of liblicense, a library which reads and writes license metadata to a wide variety of files. But now if anyone wants to help out and do the port to Mono you have an example of how to access this information via Mono.

Lets keep this ball rolling and get license read/write support in more applications!

No Comments »

New validator released!

asheesh, January 6th, 2009

This past summer, Hugo Dworak worked with us (thanks to Google Summer of Code) on a new validator. This work was greatly overdue, and we are very pleased that Google could fund Hugo to work on it. Our previous validator had not been updated to reflect our new metadata standards, so we disabled it some time ago to avoid creating further confusion. The textbook on CC metadata is the “Creative Commons Rights Expression Language”, or ccREL, which specifies the use of RDFa on the web. (If this sounds like keyword soup, rest assured that the License Engine generates HTML that you can copy and paste; that HTML is fully compliant with ccREL.) We hoped Hugo’s work on a new validator would let us offer a validator to the Creative Commons community so that publishers can test their web pages to make sure they encode the information they intended.

Hugo’s work was a success; he announced in August 2008 a test version of the validator. He built on top of the work of others: the new validator uses the Pylons web framework, html5lib for HTML parsing and tokenizing, and RDFlib for working with RDF. He shared his source code under the recent free software license built for network services, AGPLv3.

So I am happy to announce that the test period is complete, and we are now running the new code at http://validator.creativecommons.org/. Our thanks go out to Hugo, and we look forward to the new validator gaining some use as well as hearing your feedback. If you want to contribute to the validator’s development or check it out for any reason, take a look at the documentation on the CC wiki.

1 Comment »

liblicense 0.8.1: The bugfixiest release ever

asheesh, December 25th, 2008

I’m greatly pleased to announce liblicense 0.8.1. Steren and Greg found a number of major issues (Greg found a consistent crasher on amd64, and Steren found a consistent crasher in the Python bindings). These issues, among
some others, are fixed by the wondrous liblicense 0.8.1. I mentioned to Nathan Y. that liblicense is officially “no longer ghetto.”

The best way enjoy liblicense is from our Ubuntu and Debian package repository, at http://mirrors.creativecommons.org/packages/. More information on what liblicense does is available on our wiki page about liblicense. You can also get them in fresh Fedora 11 packages. And the source tarball is available for download from sourceforge.net.

P.S. MERRY CHRISTMAS!

The full ChangeLog snippet goes like this:

liblicense 0.8.1 (2008-12-24):
* Cleanups in the test suite: test_predicate_rw’s path joiner finally works
* Tarball now includes data_empty.png
* Dynamic tests and static tests treat $HOME the same way
* Fix a major issue with requesting localized informational strings, namely that the first match would be returned rather than all matches (e.g., only the first license of a number of matching licenses). This fixes the Python bindings, which use localized strings.
* Add a cooked PDF example that actually works with exempi; explain why that is not a general solution (not all PDFs have XMP packets, and the XMP packet cannot be resized by libexempi)
* Add a test for writing license information to the XMP in a PNG
* Fix a typo in exempi.c
* Add basic support for storing LL_CREATOR in exempi.c
* In the case that the system locale is unset (therefore, is of value “C”), assume English
* Fix a bug with the TagLib module: some lists were not NULL-terminated
* Use calloc() instead of malloc()+memset() in read_license.c; this improves efficiency and closes a crasher on amd64
* Improve chooser_test.c so that it is not strict as to the *order* the results come back so long as they are the right licenses.
* To help diagnose possible xdg_mime errors, if we detect the hopeless application/octet-stream MIME type, fprintf a warning to stderr.
* Test that searching for unknown file types returns a NULL result rather than a segfault.

No Comments »

Closing: What’s next in 2009

Frank Tobia, December 12th, 2008

Nathan Yergler proceeded to wrap up the tech conference with some humble predictions about where CC tech will be headed.

The following are a brief list of these future initiatives:

  • Using RDFa to publish metadata in a distributed fashion
  • The Next Generation of MozCC
  • Making attribution easier
  • Universal Education Search
  • CC0 & Public Domain Assertion
  • OSCRI / CC Network and creating an interoperable registry with Safe Creative and Registered Commons
No Comments »

Preview of FairShare and Findings on NC License Distribution

Frank Tobia, December 12th, 2008

Rich Pearson began with an introduction to FairShare, which is a soon-to-be-launched free tool that allows creators to claim their works and discover how their works are shared and remixed. FairShare is open and supports multiple licensing standards. He then stepped through a demo of FairShare.

The second part of his talk was a brief overview of some CC licensing statistics from the web. They found at least 56 million licenses uses (excluding a deep search of images and Flickr).  Another interesting point was the long tail of jurisdiction-specific licenses: nearly 75% of licenses were generic (unported), with all other jurisdictions having a no more than a few percent each.

No Comments »
Page 1 of 1212345»...Last »