SlideShare a Scribd company logo
1 of 14
Download to read offline
Stage d’application promotion 2009



                                       SECOND YEAR INTERNSHIP

                                                          Giannini Steren




                                 Host Organisation — Creative Commons
                              Internship supervisor — Nathan R. Yergler
                 Date of the internship — from June 9, to August 15, 2008
                                 Date of the report — September 1, 2008




                     Final Report




   CREATIVE COMMONS
171 2nd Street third floor
San Francisco, CA 94105
UNITED STATES

    ECOLE CENTRALE DE LYON
Service des Relations Ext´rieures
                         e
36, Avenue Guy de Collongue
69134 ECULLY CEDEX
FRANCE
Contents

Introduction                                                                                                                      3

1 Background                                                                                                                       4
  1.1 What is Creative Commons?       .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .    4
  1.2 Why? . . . . . . . . . . . .    .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .    4
  1.3 An example . . . . . . . . .    .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .    4
  1.4 Other Projects . . . . . . .    .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .    6
  1.5 The internal structure . . .    .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .    6
  1.6 My team . . . . . . . . . . .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .    6

2 My work                                                                                                                          7
  2.1 Semantic MediaWiki . . . . .        .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .    7
      2.1.1 Background . . . . . .        .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .    7
      2.1.2 Specifications . . . . .       .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .    7
      2.1.3 My Work . . . . . . .         .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .    8
      2.1.4 Personal benefits . . .        .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .    8
  2.2 XHTML and RDFa validation           .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .    8
      2.2.1 Background . . . . . .        .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .    8
      2.2.2 Specifications . . . . .       .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .    9
      2.2.3 My Work . . . . . . .         .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .    9
      2.2.4 Personal benefits . . .        .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .    9
  2.3 License Tagger . . . . . . . .      .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   10
      2.3.1 Background: liblicense        .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   10
      2.3.2 Specifications . . . . .       .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   10
      2.3.3 My work . . . . . . . .       .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   10
      2.3.4 Personal benefits . . .        .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   11

Conclusion                                                                                                                        12

List of figures                                                                                                                    13

Appendix                                                                    14
  0.1 Creative Commons Organization Chart . . . . . . . . . . . . . . . . . 14




                                              2
Introduction

                             ´
As a second year student at Ecole Centrale de Lyon, I had to do an internship during
the summer between my second and third year. Contrary to the one I did after my
first year, this one was more focused on applying things I have learned.
    My first goal was to find an internship in an English spoken country and in the
computer science field. Taking this into account, I early started to contact com-
panies abroad. As one may guess, finding this kind of internship is really difficult.
Fortunately, I got a positive answer from Creative Commons, a non-profit organiza-
tion based in San Francisco which I knew and followed for years. After struggling to
get my Visa, I landed in June at the San Francisco international airport for a stay
of about three months.
    The present report describes my summer work at Creative Commons. It first
details the background of the company describing the ideas at stake and its projects.
It moves then to the actual work I have done during the internship. Finally, I
conclude underlining the benefits of this internship and talking about my professional
future.
    Unfortunately, even if this report covers my internship, I do not think it will
reflect the actual human adventure this trip was for me.




                   Figure 1: The Creative Commons main logo




                                         3
Chapter 1

Background

1.1      What is Creative Commons?
Creative Commons (also known as CC) is a non-profit organization mainly based
in San Francisco. The organization is devoted to expanding the range of creative
works available for others to build upon legally and to share.
    Creative Commons has released six main copyright licenses known as Creative
Commons licenses. These licenses allow creators to easily communicate which rights
they reserve, and which rights they waive for the benefit of other creators.
    Creative Commons is widely developed on the web, many information and re-
sources can be found on their website http://creativecommons.org. As of 2008,
more than 100 million of online creative works1 are licensed under CC licenses. Many
companies trust CC and use the licenses in their production or provide the licenses
to their users2 .


1.2      Why?
Today in most countries, every time someone create something, the creative work
automatically falls under a copyright license which reserves all rights to the creator.
That can be considered as normal, hopefully, everything we make belongs to us. But
a problem arises when the creator wants to explicitly allow the sharing of his work.
Creative Commons simply gives tools to help this. What makes this powerful is
that these tools are legally efficient and totally reliable for personal and professional
uses.


1.3      An example
Here is an example to easily understand this:




Figure 1.1: The Attribution Non-commercial No Derivatives (by-nc-nd) license logo
  1
   see the page http://wiki.creativecommons.org/Metrics to read the study
  2
   see the Case Studies project (http://wiki.creativecommons.org/Casestudies) for more infor-
mation



                                             4
If a creator choose the Attribution Non-commercial No Derivatives (by-nc-nd)
license, he allows the sharing of his work provided that people attribute him, do not
make any commercial use of the work and do not make any derivative of it.




Figure 1.2: The Attribution Non-commercial No Derivatives (by-nc-nd) “human-
readable” page

    We can see on figure 1.2 that the conditions are easily understandable by ev-
eryone. Of course, under this human-readable page there is a legal code which is
ported in every jurisdiction. Moreover, under these human and lawyer readable
pages, there is also a machine readable code to allow people add license information
in their online works. These different layers can be seen on figure 1.3.




  Figure 1.3: The “human readable” page, the legal code and the machine code




                                         5
1.4     Other Projects
Apart from the main licenses, Creative Commons focuses on more specific projects:

Creative Commons International
Creative Commons International works to “port” the core licenses to different copy-
right legislations around the world. The porting process involves both linguistically
translating the licenses and legally adapting them to particular jurisdictions.

ccLearn
ccLearn is a division of Creative Commons which is dedicated to realizing the full
potential of the Internet to support open learning and open educational resources.
The mission is to minimize barriers to sharing and reuse of educational materials.

Science Commons
Science Commons has three interlocking initiatives designed to accelerate the re-
search cycle:
   • Making scientific research “re-useful”
   • Enabling “one-click” access to research materials (for researchers to easily
     replicate, verify and extend research)
   • Integrating fragmented information sources (to help researchers find, analyze
     and use data from disparate sources by marking and integrating the informa-
     tion with a common, computer-readable language)
Science Commons is located at the Massachusetts Institute of Technology.


1.5     The internal structure
Creative Commons relies on the work of geographically distributed staff and vol-
unteers. The main offices are in San Francisco, Boston and Berlin. On the whole,
around 40 people are Creative Commons employees, of course the worldwide com-
munity behind the project is here to increase the radiance of Creative Commons.
Basically, the organization is divided into its main projects, and on the top of that
the Board of Directors. (refer to the organization chart page 14 for more details)


1.6     My team
During this internship, I was in the technical team. We were two technology interns
– Frank Tobia, from New Jersey (United States) and myself. Our direct superior
was Nathan Yergler, Chief Technology Officer. In the office Nathan Kinkade and
Asheesh Laroia were also part of the technical team as web and software engineers.
The “Tech team” was directly following Michael Linksvayer, the Creative Commons
Vice President.
   I was very autonomous in my work, but I had to give results in time to my
superior. I had bi-weekly meetings with the other members of the team. These
“stand-up meetings” were the right time to keep track on the completion of the
different tasks, to briefly discuss problems and to update or redefine goals.

                                         6
Chapter 2

My work

Along this internship, I had to work on three different things:

   • My first work was to enhance the internal task and project tracking system
     used at Creative Commons.

   • Then as this project went well on time, I had the opportunity to work on the
     perfection of the Creative Commons online license deeds.

   • Finally, I developed a rather simple application to add license metadata into
     files.

These three tasks were equivalent in amount of work and time.


2.1     Semantic MediaWiki
2.1.1     Background
Semantic MediaWiki1 is an extension for MediaWiki2 , the software that powers
many famous wikis on the web, including Wikipedia3 . Semantic MediaWiki adds
semantic information on to the traditional wiki engine. Creative commons uses a
Semantic MediaWiki deployment as their task and project tracking system. Nathan
Yergler and Asheesh Laroia, both part of the tech team at Creative Commons,
previously worked on a set of pages and templates to provide an simple but efficient
task and project tracking system to the organization. Unfortunately this system
does not provide any email functionalities. My first job was thus to implement
email notifications and reminders for tasks.

2.1.2     Specifications
E-mail notification: The system should send an e-mail to the assignee(s) and the
follower(s) of a task when this task is created or updated. This e-mail should contain
a link to the task page, in case of a new task it should contain the text of the task
and in case of an update, it should contain a summary of the differences (called diff).
E-mail reminders: The system should send automatic e-mails when a task dead-line
approaches. This number of days should be defined in the task properties.
  1
    http://semantic-mediawiki.org
  2
    http://www.mediawiki.org
  3
    http://www.wikipedia.org


                                          7
2.1.3       My Work
A MediaWiki installation can be easily customized by adding many extensions.
Because this functionality was an addition to the core system, I logically decided to
create an extension.
   I decomposed my work into the following points:

  1. deployment of a Semantic MediaWiki installation on my local machine and
     copy of the Teamspace database

  2. writing of the notification functionality:

           • query the needed semantic information after the save of a page
           • send the information to the right user
           • properly send mails using the MediaWiki internal mail sender

  3. writing of the reminder functionality: make sure that it can be launched on a
     daily frequence

  4. installation in production

   I tested my work continually: Before starting one of these points, I had to make
sure that the previous point was successfully working.
   I also had to make sure that the extension would be compatible with the next
versions of the engines I used.

2.1.4       Personal benefits
What have I learned?
   • Cutting edge php: The MediaWiki software is developed in object-oriented
     php. Before this work, I manipulated a lot of php code but not on such a
     large scale. The class hierarchy is here well organized and the code uses a lot
     of abstraction.

What are my new skills?
   • installing and running a webserver

   • administrating a webserver remotely

   • Full MediaWiki deployment

   • Semantic MediaWiki usage


2.2        XHTML and RDFa validation
2.2.1       Background
The World Wide Web Consortium (W3C)4 is the main international standards or-
ganization for the World Wide Web. It is arranged as a consortium where member
organizations maintain full-time staff for the purpose of working together in the
  4
      http://www.w3.org


                                           8
development of standards for the World Wide Web. The W3C recommends the use
of strict XHTML to write web pages.
    There are 6 basic Creative Commons licenses, each license is ported in more than
45 jurisdictions and translated in much more languages. We quickly understand that
the pages of the deeds are automatically generated. Indeed, the Creative Commons
website uses Zope 5 to generate its pages. Zope is a server side python application
that generates html. When creating pages using Zope, the developer writes pages
that look like basic html but that contain tags and macros, those call python classes
to add dynamic data to the former html code. Unfortunately the online licenses
deeds were not XHTML valid.

2.2.2     Specifications
I had to make sure the deeds, the license chooser and results pass this validation.
    The license deeds are the most important to validate: millions of webpages
around the globe link to those deeds. There are crucial for the well understanding
of the different conditions of each license. In some way, they represents the static
core of Creative Commons. They should always be online and should be viewable
by the largest number of people. Validating them represents a guarantee that they
should display correctly on every web browsers.

2.2.3     My Work
Because of the simplicity of their structure, I started working on the license deeds
(see for example figure 1.3, page 4). The XHTML markup is very strict comparing
to traditional HTML. In order to correct the existing code I used the W3C XHTML
validation service6 which points out the errors in a non-valid XHTML code. In a
page, many errors were exactly of the same kind. I simply had to read the official
XHTML specifications7 to know how to modify the original code by a valid one.
    For example, because of the many translations, the pages can look very different
due to text orientation. I cleaned the way the right-to-left or left-to-right information
was written in the page. The XHTML specification is very strict on this.

2.2.4     Personal benefits
What have I learned?
   • strict XHTML specifications

   • RDFa specifications

What are my new skills?
   • Write clean XHTML

   • Add semantic information to webpages
  5
    http://www.zope.org
  6
    http://validator.w3.org
  7
    http://www.w3.org/TR/xhtml1




                                           9
2.3      License Tagger
2.3.1     Background: liblicense
Creative Commons has developed a tool to help people add license information into
files. This tool, called liblicense8 , is a library that can be used along with a program.
It handles the way license metadata are added into files so that developers don’t
have to worry about this. By loading this library, they only have to call functions
that properly handle it.
    This library has recently been released and included in famous linux distribu-
tions. It is now time for developers to start using it.

2.3.2     Specifications
My work was to create a very small application which would only have one single
functionality: add license metadata into files. This could be taken as a demo for a
liblicense use.
    The specifications were very simple: make a very simple cross platform applica-
tion to add license metadata into files. This application should be very user-friendly.
Loading a file should be done by either dropping a file on the application icon or
on the application itself. Then, the user should have in one single look the license
information of the file. He then must be able to change it easily by clicking a button.
This button opens a new windows displaying a license chooser. This license chooser
must allow the user to easily choose among the Creative Commons licenses but also
public domain, full copyright or a user defined license.




                        Figure 2.1: The license tagger principle

   liblicense is a C library but also provides Python bindings, which means it can
be called from a Python application.

2.3.3     My work
I could have built this application using C++ and the Gtk graphical toolkit9 that
I mastered. But I heard that the final graphical result could be better using other
graphical toolkit, we decided thus to use wxWidget 10 . Because liblicense is very easy
  8
    http://wiki.creativecommons.org/Liblicense
  9
    http://www.gtk.org
 10
    http://www.wxwidgets.org


                                             10
to use in Python and because python is very well adapted for such small applica-
tions, we decided to use the python programing language. Furthermore having the
opportunity to do it in a way I did not know was much more interesting to me.




                         Figure 2.2: The license tagger UI

   I slpit my work into the following steps:

  1. getting familiar with wxPython by creating the graphical skeleton of the ap-
     plication

  2. open and read a simple file using File Open.

  3. open a file when the filename is passed by command line

  4. read and write license information in a file

  5. create the license chooser UI and logic

    Of course because it was the main point of this little application, I had to con-
tinually test its usability.

2.3.4    Personal benefits
What have I learned?
   • Python (language)

   • wxPython: a simple way to build cross platform application with UI.

What are my new skills?
   • Write small python applications

   • liblicense integration




                                         11
Conclusion

My work at Creative Commons was an ideal way to enhance my technical knowledge
in many different fields. Moreover, I must reckon I had the opportunity to work
among very diverse, open-minded and interesting people, be they the other interns or
the CC staff. Creative Commons is a rather small structure, my everyday coworkers
were from many different fields: legal work, community and business development
and, of course, technological work. My superior proposed me to continue working
for Creative Commons, I accepted and will work remotely during my school year at
a rate of ten hours a week.
    On the top of that, I must underline that I had the chance to meet various
interesting people in the San Francisco area. When I was there I quickly understood
why most of main the web-based companies are from the area. There is a real culture
of the Internet, people are considering it as a very serious business. I attended
many web-related events: from start-ups organizing parties to major event such as
LinuxWorld or a conference at Google. What is worth pointing out is that all these
internet protagonists are close to each other, this creates a real emulation between
them. Ideas are shared and enhanced at a very fast pace, these people are simply
building our tomorrow.
    I realized that I really wanted to be part of this tomorrow. This confirmed the
professional project I had in mind: I like to be creative and innovative, I’m now
convinced that this field is the one that offers many opportunities for this. I’m sure
that the digital revolution is still at its beginning and that the sector will always be
widely opened for people with ideas.




                                          12
List of Figures

 1     The Creative Commons main logo . . . . . . . . . . . . . . . . . . . .         3

 1.1   The Attribution Non-commercial No Derivatives (by-nc-nd) license
       logo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .   4
 1.2   The Attribution Non-commercial No Derivatives (by-nc-nd) “human-
       readable” page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .     5
 1.3   The “human readable” page, the legal code and the machine code . .             5

 2.1   The license tagger principle . . . . . . . . . . . . . . . . . . . . . . . 10
 2.2   The license tagger UI . . . . . . . . . . . . . . . . . . . . . . . . . . . 11




                                         13
Appendix

0.1   Creative Commons Organization Chart




                       14

More Related Content

What's hot

Ashraf's Internship Report SBL Full
Ashraf's Internship Report SBL FullAshraf's Internship Report SBL Full
Ashraf's Internship Report SBL Full
Ashraf Mohammad
 
Internship Final Report
Internship Final ReportInternship Final Report
Internship Final Report
Anisa Yahdi
 
Internship Report by Md. Mizanur Rahman-Id No.08304083
Internship Report by Md. Mizanur Rahman-Id No.08304083Internship Report by Md. Mizanur Rahman-Id No.08304083
Internship Report by Md. Mizanur Rahman-Id No.08304083
numan_bu
 
Proposal internship final
Proposal internship finalProposal internship final
Proposal internship final
Imam Hasan
 
Industrial Training Report (Lenovo)
Industrial Training Report (Lenovo)Industrial Training Report (Lenovo)
Industrial Training Report (Lenovo)
Kwong Cheong Ng
 

What's hot (20)

internship report
 internship report internship report
internship report
 
Summer Internship Report Project - NIC ASIA BANK Nepal by Neeraj Bhandari (Su...
Summer Internship Report Project - NIC ASIA BANK Nepal by Neeraj Bhandari (Su...Summer Internship Report Project - NIC ASIA BANK Nepal by Neeraj Bhandari (Su...
Summer Internship Report Project - NIC ASIA BANK Nepal by Neeraj Bhandari (Su...
 
Internship Report
Internship Report Internship Report
Internship Report
 
Internship Report
Internship Report Internship Report
Internship Report
 
Internship Report
Internship ReportInternship Report
Internship Report
 
Internship report
Internship reportInternship report
Internship report
 
Internship Log Book.pdf
Internship Log Book.pdfInternship Log Book.pdf
Internship Log Book.pdf
 
My Internship Report
My Internship ReportMy Internship Report
My Internship Report
 
Interim report
Interim reportInterim report
Interim report
 
Internship Report
Internship Report Internship Report
Internship Report
 
Ashraf's Internship Report SBL Full
Ashraf's Internship Report SBL FullAshraf's Internship Report SBL Full
Ashraf's Internship Report SBL Full
 
Internship Final Report
Internship Final ReportInternship Final Report
Internship Final Report
 
Internship Report by Md. Mizanur Rahman-Id No.08304083
Internship Report by Md. Mizanur Rahman-Id No.08304083Internship Report by Md. Mizanur Rahman-Id No.08304083
Internship Report by Md. Mizanur Rahman-Id No.08304083
 
Internship report on Sunrise Bank Limited
Internship report on Sunrise Bank LimitedInternship report on Sunrise Bank Limited
Internship report on Sunrise Bank Limited
 
Proposal internship final
Proposal internship finalProposal internship final
Proposal internship final
 
Internship Report
Internship ReportInternship Report
Internship Report
 
Industrial Training Report (Lenovo)
Industrial Training Report (Lenovo)Industrial Training Report (Lenovo)
Industrial Training Report (Lenovo)
 
Final Internship Report
Final Internship ReportFinal Internship Report
Final Internship Report
 
INTERNSHIP REPORT
INTERNSHIP REPORTINTERNSHIP REPORT
INTERNSHIP REPORT
 
Internship report Nazmul hasan
Internship report Nazmul hasanInternship report Nazmul hasan
Internship report Nazmul hasan
 

Similar to Creative commons internship report

XAdES Specification based on the Apache XMLSec Project
XAdES Specification based on the Apache XMLSec Project XAdES Specification based on the Apache XMLSec Project
XAdES Specification based on the Apache XMLSec Project
Krassen Deltchev
 
Deployment guide series ibm tivoli access manager for e business v6.0 sg247207
Deployment guide series ibm tivoli access manager for e business v6.0 sg247207Deployment guide series ibm tivoli access manager for e business v6.0 sg247207
Deployment guide series ibm tivoli access manager for e business v6.0 sg247207
Banking at Ho Chi Minh city
 
Deployment guide series ibm tivoli access manager for e business v6.0 sg247207
Deployment guide series ibm tivoli access manager for e business v6.0 sg247207Deployment guide series ibm tivoli access manager for e business v6.0 sg247207
Deployment guide series ibm tivoli access manager for e business v6.0 sg247207
Banking at Ho Chi Minh city
 
Hello, android introducing google’s mobile development platform, 2nd editio...
Hello, android   introducing google’s mobile development platform, 2nd editio...Hello, android   introducing google’s mobile development platform, 2nd editio...
Hello, android introducing google’s mobile development platform, 2nd editio...
Kwanzoo Dev
 
Ibm system storage business continuity solutions overview sg246684
Ibm system storage business continuity solutions overview sg246684Ibm system storage business continuity solutions overview sg246684
Ibm system storage business continuity solutions overview sg246684
Banking at Ho Chi Minh city
 
Deployment guide series ibm tivoli compliance insight manager sg247531
Deployment guide series ibm tivoli compliance insight manager sg247531Deployment guide series ibm tivoli compliance insight manager sg247531
Deployment guide series ibm tivoli compliance insight manager sg247531
Banking at Ho Chi Minh city
 
Deployment guide series ibm tivoli compliance insight manager sg247531
Deployment guide series ibm tivoli compliance insight manager sg247531Deployment guide series ibm tivoli compliance insight manager sg247531
Deployment guide series ibm tivoli compliance insight manager sg247531
Banking at Ho Chi Minh city
 
Jfreereport and Charts an essential Report generation tool for Java Developers
Jfreereport and Charts an essential Report generation tool for Java DevelopersJfreereport and Charts an essential Report generation tool for Java Developers
Jfreereport and Charts an essential Report generation tool for Java Developers
Sanjeev Kulkarni
 
Thesis-aligned-sc13m055
Thesis-aligned-sc13m055Thesis-aligned-sc13m055
Thesis-aligned-sc13m055
Mohan Kashyap
 
Information extraction systems aspects and characteristics
Information extraction systems  aspects and characteristicsInformation extraction systems  aspects and characteristics
Information extraction systems aspects and characteristics
George Ang
 
Federated identity management and web services security with ibm tivoli secur...
Federated identity management and web services security with ibm tivoli secur...Federated identity management and web services security with ibm tivoli secur...
Federated identity management and web services security with ibm tivoli secur...
Banking at Ho Chi Minh city
 

Similar to Creative commons internship report (20)

test5
test5test5
test5
 
Sdd 2
Sdd 2Sdd 2
Sdd 2
 
test6
test6test6
test6
 
test4
test4test4
test4
 
test5
test5test5
test5
 
test6
test6test6
test6
 
Home automation
Home automationHome automation
Home automation
 
XAdES Specification based on the Apache XMLSec Project
XAdES Specification based on the Apache XMLSec Project XAdES Specification based on the Apache XMLSec Project
XAdES Specification based on the Apache XMLSec Project
 
Deployment guide series ibm tivoli access manager for e business v6.0 sg247207
Deployment guide series ibm tivoli access manager for e business v6.0 sg247207Deployment guide series ibm tivoli access manager for e business v6.0 sg247207
Deployment guide series ibm tivoli access manager for e business v6.0 sg247207
 
Deployment guide series ibm tivoli access manager for e business v6.0 sg247207
Deployment guide series ibm tivoli access manager for e business v6.0 sg247207Deployment guide series ibm tivoli access manager for e business v6.0 sg247207
Deployment guide series ibm tivoli access manager for e business v6.0 sg247207
 
Hello, android introducing google’s mobile development platform, 2nd editio...
Hello, android   introducing google’s mobile development platform, 2nd editio...Hello, android   introducing google’s mobile development platform, 2nd editio...
Hello, android introducing google’s mobile development platform, 2nd editio...
 
Ibm system storage business continuity solutions overview sg246684
Ibm system storage business continuity solutions overview sg246684Ibm system storage business continuity solutions overview sg246684
Ibm system storage business continuity solutions overview sg246684
 
Deployment guide series ibm tivoli compliance insight manager sg247531
Deployment guide series ibm tivoli compliance insight manager sg247531Deployment guide series ibm tivoli compliance insight manager sg247531
Deployment guide series ibm tivoli compliance insight manager sg247531
 
Deployment guide series ibm tivoli compliance insight manager sg247531
Deployment guide series ibm tivoli compliance insight manager sg247531Deployment guide series ibm tivoli compliance insight manager sg247531
Deployment guide series ibm tivoli compliance insight manager sg247531
 
Building a humane CMS for Plone: updated tutorial
Building a humane CMS for Plone: updated tutorialBuilding a humane CMS for Plone: updated tutorial
Building a humane CMS for Plone: updated tutorial
 
Jfreereport and Charts an essential Report generation tool for Java Developers
Jfreereport and Charts an essential Report generation tool for Java DevelopersJfreereport and Charts an essential Report generation tool for Java Developers
Jfreereport and Charts an essential Report generation tool for Java Developers
 
Thesis-aligned-sc13m055
Thesis-aligned-sc13m055Thesis-aligned-sc13m055
Thesis-aligned-sc13m055
 
mpi4py Manual!
mpi4py Manual!mpi4py Manual!
mpi4py Manual!
 
Information extraction systems aspects and characteristics
Information extraction systems  aspects and characteristicsInformation extraction systems  aspects and characteristics
Information extraction systems aspects and characteristics
 
Federated identity management and web services security with ibm tivoli secur...
Federated identity management and web services security with ibm tivoli secur...Federated identity management and web services security with ibm tivoli secur...
Federated identity management and web services security with ibm tivoli secur...
 

More from Steren Giannini (9)

Windows 8 app template feedback
Windows 8 app template feedbackWindows 8 app template feedback
Windows 8 app template feedback
 
Conquérir l'internet des objets avec les technologies web. (Kiwi Party 2012)
Conquérir l'internet des objets avec les technologies web. (Kiwi Party 2012)Conquérir l'internet des objets avec les technologies web. (Kiwi Party 2012)
Conquérir l'internet des objets avec les technologies web. (Kiwi Party 2012)
 
Joshfire factory: Using NodeJS in production
Joshfire factory: Using NodeJS in productionJoshfire factory: Using NodeJS in production
Joshfire factory: Using NodeJS in production
 
TIPE Les milieux granulaires
TIPE Les milieux granulairesTIPE Les milieux granulaires
TIPE Les milieux granulaires
 
Hack le camping
Hack le campingHack le camping
Hack le camping
 
Inkscape industrial project report
Inkscape industrial project reportInkscape industrial project report
Inkscape industrial project report
 
Creative Commons Internship - Last day
Creative Commons Internship - Last dayCreative Commons Internship - Last day
Creative Commons Internship - Last day
 
Les moteurs physiques en temps réel
Les moteurs physiques en temps réelLes moteurs physiques en temps réel
Les moteurs physiques en temps réel
 
Les moteurs physiques en temps réel
Les moteurs physiques en temps réelLes moteurs physiques en temps réel
Les moteurs physiques en temps réel
 

Recently uploaded

Call Girls Hosur Road Just Call 👗 7737669865 👗 Top Class Call Girl Service Ba...
Call Girls Hosur Road Just Call 👗 7737669865 👗 Top Class Call Girl Service Ba...Call Girls Hosur Road Just Call 👗 7737669865 👗 Top Class Call Girl Service Ba...
Call Girls Hosur Road Just Call 👗 7737669865 👗 Top Class Call Girl Service Ba...
amitlee9823
 
reStartEvents 5:9 DC metro & Beyond V-Career Fair Employer Directory.pdf
reStartEvents 5:9 DC metro & Beyond V-Career Fair Employer Directory.pdfreStartEvents 5:9 DC metro & Beyond V-Career Fair Employer Directory.pdf
reStartEvents 5:9 DC metro & Beyond V-Career Fair Employer Directory.pdf
Ken Fuller
 
Call Girls Btm Layout Just Call 👗 7737669865 👗 Top Class Call Girl Service Ba...
Call Girls Btm Layout Just Call 👗 7737669865 👗 Top Class Call Girl Service Ba...Call Girls Btm Layout Just Call 👗 7737669865 👗 Top Class Call Girl Service Ba...
Call Girls Btm Layout Just Call 👗 7737669865 👗 Top Class Call Girl Service Ba...
amitlee9823
 
➥🔝 7737669865 🔝▻ Pallavaram Call-girls in Women Seeking Men 🔝Pallavaram🔝 E...
➥🔝 7737669865 🔝▻ Pallavaram Call-girls in Women Seeking Men  🔝Pallavaram🔝   E...➥🔝 7737669865 🔝▻ Pallavaram Call-girls in Women Seeking Men  🔝Pallavaram🔝   E...
➥🔝 7737669865 🔝▻ Pallavaram Call-girls in Women Seeking Men 🔝Pallavaram🔝 E...
amitlee9823
 
➥🔝 7737669865 🔝▻ Mirzapur Call-girls in Women Seeking Men 🔝Mirzapur🔝 Escor...
➥🔝 7737669865 🔝▻ Mirzapur Call-girls in Women Seeking Men  🔝Mirzapur🔝   Escor...➥🔝 7737669865 🔝▻ Mirzapur Call-girls in Women Seeking Men  🔝Mirzapur🔝   Escor...
➥🔝 7737669865 🔝▻ Mirzapur Call-girls in Women Seeking Men 🔝Mirzapur🔝 Escor...
amitlee9823
 
Jual obat aborsi Jakarta ( 085657271886 )Cytote pil telat bulan penggugur kan...
Jual obat aborsi Jakarta ( 085657271886 )Cytote pil telat bulan penggugur kan...Jual obat aborsi Jakarta ( 085657271886 )Cytote pil telat bulan penggugur kan...
Jual obat aborsi Jakarta ( 085657271886 )Cytote pil telat bulan penggugur kan...
ZurliaSoop
 
Call Girls In Chandapura ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Chandapura ☎ 7737669865 🥵 Book Your One night StandCall Girls In Chandapura ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Chandapura ☎ 7737669865 🥵 Book Your One night Stand
amitlee9823
 
Call Girls Devanahalli Just Call 👗 7737669865 👗 Top Class Call Girl Service B...
Call Girls Devanahalli Just Call 👗 7737669865 👗 Top Class Call Girl Service B...Call Girls Devanahalli Just Call 👗 7737669865 👗 Top Class Call Girl Service B...
Call Girls Devanahalli Just Call 👗 7737669865 👗 Top Class Call Girl Service B...
amitlee9823
 
怎样办理哥伦比亚大学毕业证(Columbia毕业证书)成绩单学校原版复制
怎样办理哥伦比亚大学毕业证(Columbia毕业证书)成绩单学校原版复制怎样办理哥伦比亚大学毕业证(Columbia毕业证书)成绩单学校原版复制
怎样办理哥伦比亚大学毕业证(Columbia毕业证书)成绩单学校原版复制
yynod
 
Simple, 3-Step Strategy to Improve Your Executive Presence (Even if You Don't...
Simple, 3-Step Strategy to Improve Your Executive Presence (Even if You Don't...Simple, 3-Step Strategy to Improve Your Executive Presence (Even if You Don't...
Simple, 3-Step Strategy to Improve Your Executive Presence (Even if You Don't...
Angela Justice, PhD
 
Call Girls Hosur Just Call 👗 7737669865 👗 Top Class Call Girl Service Bangalore
Call Girls Hosur Just Call 👗 7737669865 👗 Top Class Call Girl Service BangaloreCall Girls Hosur Just Call 👗 7737669865 👗 Top Class Call Girl Service Bangalore
Call Girls Hosur Just Call 👗 7737669865 👗 Top Class Call Girl Service Bangalore
amitlee9823
 
Call Girls Hoodi Just Call 👗 7737669865 👗 Top Class Call Girl Service Bangalore
Call Girls Hoodi Just Call 👗 7737669865 👗 Top Class Call Girl Service BangaloreCall Girls Hoodi Just Call 👗 7737669865 👗 Top Class Call Girl Service Bangalore
Call Girls Hoodi Just Call 👗 7737669865 👗 Top Class Call Girl Service Bangalore
amitlee9823
 
➥🔝 7737669865 🔝▻ Nandyal Call-girls in Women Seeking Men 🔝Nandyal🔝 Escorts...
➥🔝 7737669865 🔝▻ Nandyal Call-girls in Women Seeking Men  🔝Nandyal🔝   Escorts...➥🔝 7737669865 🔝▻ Nandyal Call-girls in Women Seeking Men  🔝Nandyal🔝   Escorts...
➥🔝 7737669865 🔝▻ Nandyal Call-girls in Women Seeking Men 🔝Nandyal🔝 Escorts...
amitlee9823
 

Recently uploaded (20)

Personal Brand Exploration ppt.- Ronnie Jones
Personal Brand  Exploration ppt.- Ronnie JonesPersonal Brand  Exploration ppt.- Ronnie Jones
Personal Brand Exploration ppt.- Ronnie Jones
 
Dubai Call Girls Kiki O525547819 Call Girls Dubai Koko
Dubai Call Girls Kiki O525547819 Call Girls Dubai KokoDubai Call Girls Kiki O525547819 Call Girls Dubai Koko
Dubai Call Girls Kiki O525547819 Call Girls Dubai Koko
 
Call Girls Hosur Road Just Call 👗 7737669865 👗 Top Class Call Girl Service Ba...
Call Girls Hosur Road Just Call 👗 7737669865 👗 Top Class Call Girl Service Ba...Call Girls Hosur Road Just Call 👗 7737669865 👗 Top Class Call Girl Service Ba...
Call Girls Hosur Road Just Call 👗 7737669865 👗 Top Class Call Girl Service Ba...
 
reStartEvents 5:9 DC metro & Beyond V-Career Fair Employer Directory.pdf
reStartEvents 5:9 DC metro & Beyond V-Career Fair Employer Directory.pdfreStartEvents 5:9 DC metro & Beyond V-Career Fair Employer Directory.pdf
reStartEvents 5:9 DC metro & Beyond V-Career Fair Employer Directory.pdf
 
Call Girls Btm Layout Just Call 👗 7737669865 👗 Top Class Call Girl Service Ba...
Call Girls Btm Layout Just Call 👗 7737669865 👗 Top Class Call Girl Service Ba...Call Girls Btm Layout Just Call 👗 7737669865 👗 Top Class Call Girl Service Ba...
Call Girls Btm Layout Just Call 👗 7737669865 👗 Top Class Call Girl Service Ba...
 
➥🔝 7737669865 🔝▻ Pallavaram Call-girls in Women Seeking Men 🔝Pallavaram🔝 E...
➥🔝 7737669865 🔝▻ Pallavaram Call-girls in Women Seeking Men  🔝Pallavaram🔝   E...➥🔝 7737669865 🔝▻ Pallavaram Call-girls in Women Seeking Men  🔝Pallavaram🔝   E...
➥🔝 7737669865 🔝▻ Pallavaram Call-girls in Women Seeking Men 🔝Pallavaram🔝 E...
 
➥🔝 7737669865 🔝▻ Mirzapur Call-girls in Women Seeking Men 🔝Mirzapur🔝 Escor...
➥🔝 7737669865 🔝▻ Mirzapur Call-girls in Women Seeking Men  🔝Mirzapur🔝   Escor...➥🔝 7737669865 🔝▻ Mirzapur Call-girls in Women Seeking Men  🔝Mirzapur🔝   Escor...
➥🔝 7737669865 🔝▻ Mirzapur Call-girls in Women Seeking Men 🔝Mirzapur🔝 Escor...
 
Jual obat aborsi Jakarta ( 085657271886 )Cytote pil telat bulan penggugur kan...
Jual obat aborsi Jakarta ( 085657271886 )Cytote pil telat bulan penggugur kan...Jual obat aborsi Jakarta ( 085657271886 )Cytote pil telat bulan penggugur kan...
Jual obat aborsi Jakarta ( 085657271886 )Cytote pil telat bulan penggugur kan...
 
Hyderabad 💫✅💃 24×7 BEST GENUINE PERSON LOW PRICE CALL GIRL SERVICE FULL SATIS...
Hyderabad 💫✅💃 24×7 BEST GENUINE PERSON LOW PRICE CALL GIRL SERVICE FULL SATIS...Hyderabad 💫✅💃 24×7 BEST GENUINE PERSON LOW PRICE CALL GIRL SERVICE FULL SATIS...
Hyderabad 💫✅💃 24×7 BEST GENUINE PERSON LOW PRICE CALL GIRL SERVICE FULL SATIS...
 
Booking open Available Pune Call Girls Ambegaon Khurd 6297143586 Call Hot In...
Booking open Available Pune Call Girls Ambegaon Khurd  6297143586 Call Hot In...Booking open Available Pune Call Girls Ambegaon Khurd  6297143586 Call Hot In...
Booking open Available Pune Call Girls Ambegaon Khurd 6297143586 Call Hot In...
 
Call Girls In Chandapura ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Chandapura ☎ 7737669865 🥵 Book Your One night StandCall Girls In Chandapura ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Chandapura ☎ 7737669865 🥵 Book Your One night Stand
 
Personal Brand Exploration - Fernando Negron
Personal Brand Exploration - Fernando NegronPersonal Brand Exploration - Fernando Negron
Personal Brand Exploration - Fernando Negron
 
Call Girls Devanahalli Just Call 👗 7737669865 👗 Top Class Call Girl Service B...
Call Girls Devanahalli Just Call 👗 7737669865 👗 Top Class Call Girl Service B...Call Girls Devanahalli Just Call 👗 7737669865 👗 Top Class Call Girl Service B...
Call Girls Devanahalli Just Call 👗 7737669865 👗 Top Class Call Girl Service B...
 
怎样办理哥伦比亚大学毕业证(Columbia毕业证书)成绩单学校原版复制
怎样办理哥伦比亚大学毕业证(Columbia毕业证书)成绩单学校原版复制怎样办理哥伦比亚大学毕业证(Columbia毕业证书)成绩单学校原版复制
怎样办理哥伦比亚大学毕业证(Columbia毕业证书)成绩单学校原版复制
 
Pooja 9892124323, Call girls Services and Mumbai Escort Service Near Hotel Sa...
Pooja 9892124323, Call girls Services and Mumbai Escort Service Near Hotel Sa...Pooja 9892124323, Call girls Services and Mumbai Escort Service Near Hotel Sa...
Pooja 9892124323, Call girls Services and Mumbai Escort Service Near Hotel Sa...
 
Simple, 3-Step Strategy to Improve Your Executive Presence (Even if You Don't...
Simple, 3-Step Strategy to Improve Your Executive Presence (Even if You Don't...Simple, 3-Step Strategy to Improve Your Executive Presence (Even if You Don't...
Simple, 3-Step Strategy to Improve Your Executive Presence (Even if You Don't...
 
Call Girls Hosur Just Call 👗 7737669865 👗 Top Class Call Girl Service Bangalore
Call Girls Hosur Just Call 👗 7737669865 👗 Top Class Call Girl Service BangaloreCall Girls Hosur Just Call 👗 7737669865 👗 Top Class Call Girl Service Bangalore
Call Girls Hosur Just Call 👗 7737669865 👗 Top Class Call Girl Service Bangalore
 
Resumes, Cover Letters, and Applying Online
Resumes, Cover Letters, and Applying OnlineResumes, Cover Letters, and Applying Online
Resumes, Cover Letters, and Applying Online
 
Call Girls Hoodi Just Call 👗 7737669865 👗 Top Class Call Girl Service Bangalore
Call Girls Hoodi Just Call 👗 7737669865 👗 Top Class Call Girl Service BangaloreCall Girls Hoodi Just Call 👗 7737669865 👗 Top Class Call Girl Service Bangalore
Call Girls Hoodi Just Call 👗 7737669865 👗 Top Class Call Girl Service Bangalore
 
➥🔝 7737669865 🔝▻ Nandyal Call-girls in Women Seeking Men 🔝Nandyal🔝 Escorts...
➥🔝 7737669865 🔝▻ Nandyal Call-girls in Women Seeking Men  🔝Nandyal🔝   Escorts...➥🔝 7737669865 🔝▻ Nandyal Call-girls in Women Seeking Men  🔝Nandyal🔝   Escorts...
➥🔝 7737669865 🔝▻ Nandyal Call-girls in Women Seeking Men 🔝Nandyal🔝 Escorts...
 

Creative commons internship report

  • 1. Stage d’application promotion 2009 SECOND YEAR INTERNSHIP Giannini Steren Host Organisation — Creative Commons Internship supervisor — Nathan R. Yergler Date of the internship — from June 9, to August 15, 2008 Date of the report — September 1, 2008 Final Report CREATIVE COMMONS 171 2nd Street third floor San Francisco, CA 94105 UNITED STATES ECOLE CENTRALE DE LYON Service des Relations Ext´rieures e 36, Avenue Guy de Collongue 69134 ECULLY CEDEX FRANCE
  • 2. Contents Introduction 3 1 Background 4 1.1 What is Creative Commons? . . . . . . . . . . . . . . . . . . . . . . . 4 1.2 Why? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 1.3 An example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 1.4 Other Projects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 1.5 The internal structure . . . . . . . . . . . . . . . . . . . . . . . . . . 6 1.6 My team . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 2 My work 7 2.1 Semantic MediaWiki . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 2.1.1 Background . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 2.1.2 Specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 2.1.3 My Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 2.1.4 Personal benefits . . . . . . . . . . . . . . . . . . . . . . . . . 8 2.2 XHTML and RDFa validation . . . . . . . . . . . . . . . . . . . . . . 8 2.2.1 Background . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 2.2.2 Specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 2.2.3 My Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 2.2.4 Personal benefits . . . . . . . . . . . . . . . . . . . . . . . . . 9 2.3 License Tagger . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 2.3.1 Background: liblicense . . . . . . . . . . . . . . . . . . . . . . 10 2.3.2 Specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 2.3.3 My work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 2.3.4 Personal benefits . . . . . . . . . . . . . . . . . . . . . . . . . 11 Conclusion 12 List of figures 13 Appendix 14 0.1 Creative Commons Organization Chart . . . . . . . . . . . . . . . . . 14 2
  • 3. Introduction ´ As a second year student at Ecole Centrale de Lyon, I had to do an internship during the summer between my second and third year. Contrary to the one I did after my first year, this one was more focused on applying things I have learned. My first goal was to find an internship in an English spoken country and in the computer science field. Taking this into account, I early started to contact com- panies abroad. As one may guess, finding this kind of internship is really difficult. Fortunately, I got a positive answer from Creative Commons, a non-profit organiza- tion based in San Francisco which I knew and followed for years. After struggling to get my Visa, I landed in June at the San Francisco international airport for a stay of about three months. The present report describes my summer work at Creative Commons. It first details the background of the company describing the ideas at stake and its projects. It moves then to the actual work I have done during the internship. Finally, I conclude underlining the benefits of this internship and talking about my professional future. Unfortunately, even if this report covers my internship, I do not think it will reflect the actual human adventure this trip was for me. Figure 1: The Creative Commons main logo 3
  • 4. Chapter 1 Background 1.1 What is Creative Commons? Creative Commons (also known as CC) is a non-profit organization mainly based in San Francisco. The organization is devoted to expanding the range of creative works available for others to build upon legally and to share. Creative Commons has released six main copyright licenses known as Creative Commons licenses. These licenses allow creators to easily communicate which rights they reserve, and which rights they waive for the benefit of other creators. Creative Commons is widely developed on the web, many information and re- sources can be found on their website http://creativecommons.org. As of 2008, more than 100 million of online creative works1 are licensed under CC licenses. Many companies trust CC and use the licenses in their production or provide the licenses to their users2 . 1.2 Why? Today in most countries, every time someone create something, the creative work automatically falls under a copyright license which reserves all rights to the creator. That can be considered as normal, hopefully, everything we make belongs to us. But a problem arises when the creator wants to explicitly allow the sharing of his work. Creative Commons simply gives tools to help this. What makes this powerful is that these tools are legally efficient and totally reliable for personal and professional uses. 1.3 An example Here is an example to easily understand this: Figure 1.1: The Attribution Non-commercial No Derivatives (by-nc-nd) license logo 1 see the page http://wiki.creativecommons.org/Metrics to read the study 2 see the Case Studies project (http://wiki.creativecommons.org/Casestudies) for more infor- mation 4
  • 5. If a creator choose the Attribution Non-commercial No Derivatives (by-nc-nd) license, he allows the sharing of his work provided that people attribute him, do not make any commercial use of the work and do not make any derivative of it. Figure 1.2: The Attribution Non-commercial No Derivatives (by-nc-nd) “human- readable” page We can see on figure 1.2 that the conditions are easily understandable by ev- eryone. Of course, under this human-readable page there is a legal code which is ported in every jurisdiction. Moreover, under these human and lawyer readable pages, there is also a machine readable code to allow people add license information in their online works. These different layers can be seen on figure 1.3. Figure 1.3: The “human readable” page, the legal code and the machine code 5
  • 6. 1.4 Other Projects Apart from the main licenses, Creative Commons focuses on more specific projects: Creative Commons International Creative Commons International works to “port” the core licenses to different copy- right legislations around the world. The porting process involves both linguistically translating the licenses and legally adapting them to particular jurisdictions. ccLearn ccLearn is a division of Creative Commons which is dedicated to realizing the full potential of the Internet to support open learning and open educational resources. The mission is to minimize barriers to sharing and reuse of educational materials. Science Commons Science Commons has three interlocking initiatives designed to accelerate the re- search cycle: • Making scientific research “re-useful” • Enabling “one-click” access to research materials (for researchers to easily replicate, verify and extend research) • Integrating fragmented information sources (to help researchers find, analyze and use data from disparate sources by marking and integrating the informa- tion with a common, computer-readable language) Science Commons is located at the Massachusetts Institute of Technology. 1.5 The internal structure Creative Commons relies on the work of geographically distributed staff and vol- unteers. The main offices are in San Francisco, Boston and Berlin. On the whole, around 40 people are Creative Commons employees, of course the worldwide com- munity behind the project is here to increase the radiance of Creative Commons. Basically, the organization is divided into its main projects, and on the top of that the Board of Directors. (refer to the organization chart page 14 for more details) 1.6 My team During this internship, I was in the technical team. We were two technology interns – Frank Tobia, from New Jersey (United States) and myself. Our direct superior was Nathan Yergler, Chief Technology Officer. In the office Nathan Kinkade and Asheesh Laroia were also part of the technical team as web and software engineers. The “Tech team” was directly following Michael Linksvayer, the Creative Commons Vice President. I was very autonomous in my work, but I had to give results in time to my superior. I had bi-weekly meetings with the other members of the team. These “stand-up meetings” were the right time to keep track on the completion of the different tasks, to briefly discuss problems and to update or redefine goals. 6
  • 7. Chapter 2 My work Along this internship, I had to work on three different things: • My first work was to enhance the internal task and project tracking system used at Creative Commons. • Then as this project went well on time, I had the opportunity to work on the perfection of the Creative Commons online license deeds. • Finally, I developed a rather simple application to add license metadata into files. These three tasks were equivalent in amount of work and time. 2.1 Semantic MediaWiki 2.1.1 Background Semantic MediaWiki1 is an extension for MediaWiki2 , the software that powers many famous wikis on the web, including Wikipedia3 . Semantic MediaWiki adds semantic information on to the traditional wiki engine. Creative commons uses a Semantic MediaWiki deployment as their task and project tracking system. Nathan Yergler and Asheesh Laroia, both part of the tech team at Creative Commons, previously worked on a set of pages and templates to provide an simple but efficient task and project tracking system to the organization. Unfortunately this system does not provide any email functionalities. My first job was thus to implement email notifications and reminders for tasks. 2.1.2 Specifications E-mail notification: The system should send an e-mail to the assignee(s) and the follower(s) of a task when this task is created or updated. This e-mail should contain a link to the task page, in case of a new task it should contain the text of the task and in case of an update, it should contain a summary of the differences (called diff). E-mail reminders: The system should send automatic e-mails when a task dead-line approaches. This number of days should be defined in the task properties. 1 http://semantic-mediawiki.org 2 http://www.mediawiki.org 3 http://www.wikipedia.org 7
  • 8. 2.1.3 My Work A MediaWiki installation can be easily customized by adding many extensions. Because this functionality was an addition to the core system, I logically decided to create an extension. I decomposed my work into the following points: 1. deployment of a Semantic MediaWiki installation on my local machine and copy of the Teamspace database 2. writing of the notification functionality: • query the needed semantic information after the save of a page • send the information to the right user • properly send mails using the MediaWiki internal mail sender 3. writing of the reminder functionality: make sure that it can be launched on a daily frequence 4. installation in production I tested my work continually: Before starting one of these points, I had to make sure that the previous point was successfully working. I also had to make sure that the extension would be compatible with the next versions of the engines I used. 2.1.4 Personal benefits What have I learned? • Cutting edge php: The MediaWiki software is developed in object-oriented php. Before this work, I manipulated a lot of php code but not on such a large scale. The class hierarchy is here well organized and the code uses a lot of abstraction. What are my new skills? • installing and running a webserver • administrating a webserver remotely • Full MediaWiki deployment • Semantic MediaWiki usage 2.2 XHTML and RDFa validation 2.2.1 Background The World Wide Web Consortium (W3C)4 is the main international standards or- ganization for the World Wide Web. It is arranged as a consortium where member organizations maintain full-time staff for the purpose of working together in the 4 http://www.w3.org 8
  • 9. development of standards for the World Wide Web. The W3C recommends the use of strict XHTML to write web pages. There are 6 basic Creative Commons licenses, each license is ported in more than 45 jurisdictions and translated in much more languages. We quickly understand that the pages of the deeds are automatically generated. Indeed, the Creative Commons website uses Zope 5 to generate its pages. Zope is a server side python application that generates html. When creating pages using Zope, the developer writes pages that look like basic html but that contain tags and macros, those call python classes to add dynamic data to the former html code. Unfortunately the online licenses deeds were not XHTML valid. 2.2.2 Specifications I had to make sure the deeds, the license chooser and results pass this validation. The license deeds are the most important to validate: millions of webpages around the globe link to those deeds. There are crucial for the well understanding of the different conditions of each license. In some way, they represents the static core of Creative Commons. They should always be online and should be viewable by the largest number of people. Validating them represents a guarantee that they should display correctly on every web browsers. 2.2.3 My Work Because of the simplicity of their structure, I started working on the license deeds (see for example figure 1.3, page 4). The XHTML markup is very strict comparing to traditional HTML. In order to correct the existing code I used the W3C XHTML validation service6 which points out the errors in a non-valid XHTML code. In a page, many errors were exactly of the same kind. I simply had to read the official XHTML specifications7 to know how to modify the original code by a valid one. For example, because of the many translations, the pages can look very different due to text orientation. I cleaned the way the right-to-left or left-to-right information was written in the page. The XHTML specification is very strict on this. 2.2.4 Personal benefits What have I learned? • strict XHTML specifications • RDFa specifications What are my new skills? • Write clean XHTML • Add semantic information to webpages 5 http://www.zope.org 6 http://validator.w3.org 7 http://www.w3.org/TR/xhtml1 9
  • 10. 2.3 License Tagger 2.3.1 Background: liblicense Creative Commons has developed a tool to help people add license information into files. This tool, called liblicense8 , is a library that can be used along with a program. It handles the way license metadata are added into files so that developers don’t have to worry about this. By loading this library, they only have to call functions that properly handle it. This library has recently been released and included in famous linux distribu- tions. It is now time for developers to start using it. 2.3.2 Specifications My work was to create a very small application which would only have one single functionality: add license metadata into files. This could be taken as a demo for a liblicense use. The specifications were very simple: make a very simple cross platform applica- tion to add license metadata into files. This application should be very user-friendly. Loading a file should be done by either dropping a file on the application icon or on the application itself. Then, the user should have in one single look the license information of the file. He then must be able to change it easily by clicking a button. This button opens a new windows displaying a license chooser. This license chooser must allow the user to easily choose among the Creative Commons licenses but also public domain, full copyright or a user defined license. Figure 2.1: The license tagger principle liblicense is a C library but also provides Python bindings, which means it can be called from a Python application. 2.3.3 My work I could have built this application using C++ and the Gtk graphical toolkit9 that I mastered. But I heard that the final graphical result could be better using other graphical toolkit, we decided thus to use wxWidget 10 . Because liblicense is very easy 8 http://wiki.creativecommons.org/Liblicense 9 http://www.gtk.org 10 http://www.wxwidgets.org 10
  • 11. to use in Python and because python is very well adapted for such small applica- tions, we decided to use the python programing language. Furthermore having the opportunity to do it in a way I did not know was much more interesting to me. Figure 2.2: The license tagger UI I slpit my work into the following steps: 1. getting familiar with wxPython by creating the graphical skeleton of the ap- plication 2. open and read a simple file using File Open. 3. open a file when the filename is passed by command line 4. read and write license information in a file 5. create the license chooser UI and logic Of course because it was the main point of this little application, I had to con- tinually test its usability. 2.3.4 Personal benefits What have I learned? • Python (language) • wxPython: a simple way to build cross platform application with UI. What are my new skills? • Write small python applications • liblicense integration 11
  • 12. Conclusion My work at Creative Commons was an ideal way to enhance my technical knowledge in many different fields. Moreover, I must reckon I had the opportunity to work among very diverse, open-minded and interesting people, be they the other interns or the CC staff. Creative Commons is a rather small structure, my everyday coworkers were from many different fields: legal work, community and business development and, of course, technological work. My superior proposed me to continue working for Creative Commons, I accepted and will work remotely during my school year at a rate of ten hours a week. On the top of that, I must underline that I had the chance to meet various interesting people in the San Francisco area. When I was there I quickly understood why most of main the web-based companies are from the area. There is a real culture of the Internet, people are considering it as a very serious business. I attended many web-related events: from start-ups organizing parties to major event such as LinuxWorld or a conference at Google. What is worth pointing out is that all these internet protagonists are close to each other, this creates a real emulation between them. Ideas are shared and enhanced at a very fast pace, these people are simply building our tomorrow. I realized that I really wanted to be part of this tomorrow. This confirmed the professional project I had in mind: I like to be creative and innovative, I’m now convinced that this field is the one that offers many opportunities for this. I’m sure that the digital revolution is still at its beginning and that the sector will always be widely opened for people with ideas. 12
  • 13. List of Figures 1 The Creative Commons main logo . . . . . . . . . . . . . . . . . . . . 3 1.1 The Attribution Non-commercial No Derivatives (by-nc-nd) license logo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 1.2 The Attribution Non-commercial No Derivatives (by-nc-nd) “human- readable” page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 1.3 The “human readable” page, the legal code and the machine code . . 5 2.1 The license tagger principle . . . . . . . . . . . . . . . . . . . . . . . 10 2.2 The license tagger UI . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 13
  • 14. Appendix 0.1 Creative Commons Organization Chart 14