Il n'est pas toujours facile de voir la différence entre gratuit et libre (au sens de Logiciel Libre, les quatre libertés) et les avantages que le Libre peut avoir sur le gratuit, surtout pour les œuvres. Voici quelques exemples qui, j'espère, illustrent les différences.

Gratuit mais pas réutilisable

Imaginons que je veuille faire un ouvrage sur les systèmes téléphoniques de quatrième génération, systèmes 4G. Comme je suis un gars sérieux, je vais directement à la source, sur le site du 3GPP où je peux accéder gratuitement à toutes les spécifications. C'est parfait ! Je peux enfin expliquer comment marche ces systèmes, en me basant sur les schémas de référence. Par exemple, je peux reprendre le schéma de la figure 4.2.1-1 du chapitre 4.2.1 du document TS 23.401 (qui décrit l'architecture générale du système[1]) et le mettre dans mon ouvrage. Sauf que je n'ai pas le droit ! En effet en page 2 du document on lit :

No part may be reproduced except as authorized by written permission.

Ce qui en bon français pourrait se traduire en :

Aucune partie ne peut être reproduite sauf si une telle reproduction est autorisée par écrit.

Donc, bien que les documents soient gratuits et téléchargeables par tous, je n'ai pas le droit de les recopier, même partiellement, même à but d'illustration pour un ouvrage pédagogique. Et comment expliquer le fonctionnement d'un système si on ne peut pas recopier ses schémas de référence ?

Copiable mais pas Libre

Bon, qu'à cela ne tienne. D'autres organismes de standardisation sont beaucoup plus progressistes. Par exemple l'IETF ! Donc je décide de changer de sujet et je m'attaque maintenant à SIP qui me permet de faire de la téléphonie sur Internet. Je vais télécharger la norme de ce protocole, la RFC 3261, et je peux librement en recopier les schémas, par exemple le magnifique diagramme de la page 132 :

                               |Request from TU
                               |send request
           Timer E             V
           send request  +-----------+
               +---------|           |-------------------+
               |         |  Trying   |  Timer F          |
               +-------->|           |  or Transport Err.|
                         +-----------+  inform TU        |
            200-699         |  |                         |
            resp. to TU     |  |1xx                      |
            +---------------+  |resp. to TU              |
            |                  |                         |
            |   Timer E        V       Timer F           |
            |   send req +-----------+ or Transport Err. |
            |  +---------|           | inform TU         |
            |  |         |Proceeding |------------------>|
            |  +-------->|           |-----+             |
            |            +-----------+     |1xx          |
            |              |      ^        |resp to TU   |
            | 200-699      |      +--------+             |
            | resp. to TU  |                             |
            |              |                             |
            |              V                             |
            |            +-----------+                   |
            |            |           |                   |
            |            | Completed |                   |
            |            |           |                   |
            |            +-----------+                   |
            |              ^   |                         |
            |              |   | Timer K                 |
            +--------------+   | -                       |
                               |                         |
                               V                         |
         NOTE:           +-----------+                   |
                         |           |                   |
     transitions         | Terminated|<------------------+
     labeled with        |           |
     the event           +-----------+
     over the action
     to take

             Figure 6: non-INVITE client transaction

Donc là, pas de soucis, je peux les utiliser comme je veux (ou du moins à but pédagogique), notamment les copier/coller dans mon ouvrage.

Mais imaginons que ce protocole ne me satisfait pas, que je veuille modifier sa structure pour l'améliorer. Par exemple remplacer l'encodage texte par un encodage en binaire normalisé comme ASN.1. Et comme je suis un bon gars, je documente mon travaille et je met à jour la norme avec mon extension, pour que d'autres puissent reprendre ce travail à leur tour. Et bien ce n'est pas possible ! Je n'ai pas le droit de modifier une norme IETF, sauf pour en faire une autre norme IETF. En effet, les petites lignes de la licence en fin de document (Full Copyright Statement page 268) indiquent :

However, this document itself may not be modified in any way, [...] except as needed for the purpose of developing Internet standards in which case the procedures for copyrights defined in the Internet Standards process must be followed, [...]

En français :

Ce document ne peut en aucune manière être modifié, [...] sauf si le but est de développer un standard Internet, auquel cas les procédures de gestion du copyright définies dans les Standards Internet doivent être suivies, [...]

C'est pour cette raison que les RFC de l'IETF ne sont pas incluses dans la section main de Debian et qu'on les retire même des paquets qui les contiennent.

Enfin Libre !

Adjustements OpenBTS Mais si maintenant, pour réaliser mon ouvrage technique, j'utilise quelques pages de Wikipédia ou la documentation d'OpenBTS, une implémentation libre d'une station de base de la norme GSM de téléphonie mobile (téléphonie 2G), là je suis libre de faire ce que je veux. Car la licence GNU GPL du code me permet de réutiliser, modifier, rediffuser des schémas et explications sans avoir à demander l'autorisation à qui que ce soit. La voilà la véritable liberté, le libre partage du savoir et la diffusion de la connaissance !

Donc la prochaine fois que vous utiliserez une documentation ou une norme, jetez un coup d'œil sur sa licence ! ;-)

Notes

[1] Et oui c'est du .doc ! On va juste dire que ce sont des documents de travail qui doivent être éditables. ;-) Pour un standard, utiliser un format standardisé comme l'ODF aurait été judicieux.