1

Framagenda : ne partagez plus votre planning (ni vos contacts) avec la NSA !

Un service d’agenda touche à l’intime. On a beau partager le rendez-vous « déjeuner d’affaires » et mettre en privé celui qui est noté « Dépist.HIV »… notre emploi du temps est malgré tout partagé avec celui à qui on le confie : l’hébergeur.

Google Agenda.

Apple Agenda.

Microsoft Agenda…

Si vous êtes le produit, ce n’est pas gratuit

(ceci est une référence à l’excellente tribune de Laurent Chemla, à lire !)

Comment Siri (Apple™) sait-elle que vous préférez tel restaurant pour vos déjeuners d’affaires ? Comment Cortana (Microsoft™) peut-elle vous proposer d’ajouter ce PowerPoint™ à la réunion que vous êtes en train de planifier ? Comment Google Now™ sait-elle vous prévenir à temps de rejoindre votre voiture afin d’éviter les bouchons pour aller à votre rendez-vous ? (eh oui : les GAFAM accordent les assistants numériques au féminin -_-)

anim_framagenda

C’est simple : vous leur donnez ces informations et ils ne se privent pas pour les scanner, analyser, indexer. Pour alimenter votre profil personnel, votre graphe social. Les gestionnaires d’emploi du temps sont l’illustration parfaite de ce que recouvre l’expression « données personnelles ». Tout simplement, la traduction de nos vies : nos vies numériques, liées à nos vies physiques. Où nous sommes, à quel moment, pour quoi faire, avec qui…

Nothing to hide
Nothing to hide (« Rien à cacher »), un documentaire qu’il nous tarde de voir ^^

« Oui, mais c’est tellement pratique…»

En effet. Mais ce confort a un prix : des morceaux de votre vie… et de celle des personnes qui la partagent, par ricochet. Bien sûr, vous pouvez tenter de tricher, de noter une cryptique « chasse au crabe avec Jérôme » pour indiquer l’accompagnement de votre frère à sa séance de chimiothérapie. Mais si lui (ou vous) n’a pas désactivé la géolocalisation de vos téléphones, une fois arrivé-e-s au centre anti-cancer, un GAFAM aura vite fait de recouper les données et de déjouer votre subterfuge. Surtout si vous avez utilisé votre téléphone en mode GPS pour trouver cette fichue clinique…

Sans aller si loin dans l’intime, nous ne souhaitons pas toujours dévoiler les informations de nos plannings collaboratifs : les réunions d’un syndicat, le rétro-planning du projet phare de votre entreprise, le local d’accueil pour victimes de violences conjugales, les horaires d’arrivée et de départ des loupiots à la crèche, etc.

Un planning, ou un agenda, note ce que vous faites de votre vie et avec qui. Il était plus qu’urgent de trouver une alternative éthique offrant une réelle indépendance.

L’histoire du stagiaire qui fit la nique à Google Agenda

Nous connaissions déjà Thomas, vu qu’il est l’un des développeurs principaux de wallabag, le logiciel libre qui fait fonctionner Framabag, notre service de lecture différée d’articles Web. Lorsqu’il nous a proposé de faire son stage de fin d’études chez nous, nous avons tout de suite pensé à ce projet d’agenda libre !

Le besoin était aussi grand que précis : il nous fallait une solution permettant de gérer des agendas privés, confidentiels et publics. Qui offre la possibilité d’inviter (par courriel) une personne sur un des événements qu’on y saisit. Qui soit vraiment facile à installer sur un serveur (sur le petit hébergement mutualisé d’une association, par exemple). Et, enfin, qui se base sur des logiciels libres déjà existants, parce que même si aucun ne remplissait déjà tous nos critères, on n’allait pas non plus réinventer la roue alors qu’on pouvait simplement contribuer à un projet (et une communauté) déjà reconnu(e).

Thomas a donc travaillé d’arrache-pied sur l’application Agenda de ownCloud/NextCloud, en collaboration avec les communautés de ces logiciels, afin qu’on puisse rendre certains plannings publics (si on le veut) et que l’on puisse s’abonner à des agendas existants (par le standard CalDAV). Le moins que l’on puisse dire, c’est que c’est un succès, vu l’accueil que Thomas a reçu lors de sa présentation à la ownCloud Contributors Conference en septembre dernier à Berlin.


Conférence « Devlopping ownCloud for our own needs » sur Youtube

Le résultat ? Vous pouvez le tester dès aujourd’hui, il s’appelle Framagenda. La morale de cette histoire ? Au sortir de son stage, Thomas a été engagé en tant que développeur chez Framasoft pour un CDD de six mois, que nous envisageons de pérenniser si tel est son souhait, et si les moyens que vous nous offrez par vos dons nous le permettent.

Framagenda expliqué aux pros du mulot

Ici, nous allons être un peu techniques mais brefs. Si vous préférez un petit tutoriel illustré, n’hésitez pas à passer directement au titre suivant ;).

Framagenda vous permet :

  • La création d’un compte (sur une instance Nextcloud, mais avec 5 Mo d’espace disque, ce n’est pas un Framadrive)
  • La création et l’édition de multiples agendas (perso, pro, associatif, fêtes familiales, etc.)
  • La création d’événements (rendez-vous) dans un agenda :
    • Privé, confidentiel, public…
    • Possibilité de détailler : horaires, lieux, description…
    • Possibilité de faire des rappels
    • Récurrence : possibilité de paramétrer des événements qui se répètent régulièrement
    • Possibilité d’ajouter des participant-e-s par email (avec envoi d’email & d’un fichier .ics en pièce jointe)
  • L’intégration avec un carnet de contacts (le calendrier de leurs anniversaires est automatiquement créé \o/)
  • L’intégration avec les listes de tâches (une par agenda, mais plus si affinités)
  • La synchronisation avec vos appareils (exemple pour Android : via DAVDroid)
    • de vos agendas (avec un choix agenda par agenda)
    • des listes de tâches afférentes (exemple pour Android : avec Open Tasks)
    • de vos contacts (toujours via DAVDroid pour Android)
  • Le partage d’un ou plusieurs agendas avec d’autres utilisateurs de Framagenda (par leur pseudo)
  • L’abonnement à d’autres agendas/calendriers externes (intégration via ics/WebCal, dont les calendriers des GAFAM : Gmail, Apple, Outlook, etc.)
  • La création de liens publics vers chacun de vos agendas :
    • Lien « vue publique », toute simple
    • Lien CalDAV pour les clients (Thunderbird, DAVDroid, etc.)
    • Lien WebDAV pour ajouter dans Google Agenda & Cie
  • La possibilité de publier un agenda sur votre site web (code d’intégration iframe)
  • L’import ics (dans un nouvel agenda ou dans un agenda existant)
  • L’export ics (agenda ou événement)

Framagenda est basé sur l’application Nextcloud 11 et l’application Agenda (1.5), sous licence GNU AGPL v3. Si vous voulez l’installer sur vos serveurs (et gagner en indépendance) notre tutoriel d’installation se trouve ici.

« Expliquez-moi Framagenda en un exemple simple à comprendre »

C’est une demande que nous avons régulièrement, le fameux exemple « simple à comprendre ». C’est aussi un bon exercice d’expliquer comment fonctionne un service et ce qu’il peut faire (à une personne qui n’est pas forcément passionnée par l’informatique). Nous nous y plions donc avec plaisir mais surtout avec cet exemple :

Farida se dégooglise de l’Agenda
(et du carnet de contacts)

Farida n’est pas une libriste de la première heure : juste une personne indépendante à qui ça pose problème de dévoiler sa vie à Google. Agnès, qui coache l’équipe de football de sa fille, lui a parlé de Framagenda : elle décide de se lancer.

Pour cela elle doit se créer un compte. Mouais, OK, mais que va-t-on faire de ses données ? Elle prend cinq minutes pour lire les conditions générales d’utilisation des services Framasoft (il n’en faut pas plus) et cela lui convient. Du coup, elle :

  1. se rend donc sur Framagenda.org ;
  2. clique sur « S’enregistrer » ;
  3. saisit son adresse email pour recevoir un lien de vérification ;
  4. crée son compte dans la fenêtre ouverte par le lien de vérification.

framagenda-01

Bien. Une fois son compte créé, elle n’a plus qu’à saisir son mot de passe, quelque chose de somme toute classique. C’est bien, dès l’accueil, elle a droit à quelques liens pour savoir comment utiliser son Framagenda : de la documentation, des outils pour le synchroniser sur son mobile…

framagenda-03

Elle décide de voir si elle arrive à récupérer son agenda personnel Google. Ce n’est pas hyper intuitif (tiens, Google est moins son ami, sur ce coup !), mais en suivant leur tutoriel, elle arrive à aller dans les paramètres dudit agenda pour obtenir l’export de son calendrier.

framagenda-04

Bon il lui faut le dézipper (merci Google, grrrrr), mais ça y est, elle a un fichier .ics ! Ce doit être ça qu’il lui faut…

Dans son Framagenda, il lui suffit de cliquer sur « paramètres » puis sur « importer un agenda » pour qu’elle puisse intégrer son Google Agenda à son agenda personnel (ouf, sauvée, c’est bien le fichier .ics qu’il lui fallait !).

framagenda-05

La voilà devant une interface d’agenda comme elle en connaît bien, avec au choix une visualisation de la journée, de la semaine, du mois ; ainsi qu’un agenda personnel (celui dans lequel elle a importé ses rendez-vous qui étaient sur Google) et un « Anniversaire de ses contacts » déjà intégrés.

framagenda-06

Bon, c’est pas tout ça, mais samedi à 15 h elle a une réunion avec Agnès, justement, l’entraîneuse de l’équipe de foot de sa fille. Elle crée donc l’événement en cliquant sur l’horaire. Comme elle veut inviter Agnès au rendez-vous, elle clique sur « plus » pour détailler cet événement. Elle rentre l’email d’Agnès, pour que cette dernière soit prévenue du rendez-vous directement dans sa boite mail.

framagenda-07

Sandrine trouve que finalement, c’est pas si compliqué que ça, de se dégoogliser. Elle se dit qu’elle devrait aller rencontrer des libristes près de chez elle. Du coup, elle va sur l’Agenda du Libre, LE site qui regroupe les événements publics des libristes en France. Farida voit que dans les flux, en bas, elle peut s’abonner au calendrier des rencontres libristes de sa région.

framagenda-08

Bon, c’est bien gentil, mais entre le RSS, le WebCal, l’iCal et autres, elle ne sait que choisir (si ce n’est sa région : l’Occitanie). Heureusement, lorsqu’elle clique sur « nouvel abonnement » dans son Framagenda, elle voit qu’on lui demande une adresse Webcal : d’un clic-droit de la souris, elle copie l’adresse du lien WebCal de l’agenda du libre, et ajoute cet abonnement à son Framagenda.

framagenda-09

La voilà désormais avec un agenda bien chargé. C’est bien. Mais ce serait tout de même mieux si elle pouvait l’avoir sur son téléphone. Mince : dans l’image qui l’a accueillie lors de son inscription, il y avait le lien d’un tuto pour synchroniser son agenda avec son téléphone Android, mais elle a oublié de noter ce lien… Pas de soucis, elle le retrouve dans l’aide de Framagenda.

Farida télécharge donc DAVDroid (3€99… si ce n’est pas gratuit c’est bien que c’est elle qui soutient le produit !) et se laisse porter par le tutoriel… Et voilà le travail !

Oh ! Incroyable ! En suivant le tuto d’installation de son agenda sur son téléphone, elle se rend compte qu’elle peut aussi y prendre les contacts qu’elle avait confiés à Google (ses ami-e-s, leurs téléphones, leurs emails et adresses physiques) et les importer dans son Framagenda…

Elle peut même ajouter les listes de tâches liées à chacun de ses agendas en utilisant l’application OpenTasks.

Cela ne lui prend que quelques tapotis de plus, alors elle s’exécute avec plaisir !

Du coup, Farida se demande si elle ne peut pas aller plus loin. Le club de foot de sa fille a besoin d’un agenda partagé pour afficher les entraînements, matchs et événements des différentes équipes.

Elle tente donc de créer un agenda « FootClub des Arceaux » avec un événement récurrent (entraînement tous les samedis matin pour l’équipe de sa fille). Du coup elle va cacher ses autres agendas (en cliquant sur leurs pastilles colorées) pour en voir le résultat :

Créer l'événement récurent
Créer l’événement récurrent

Elle partage ensuite la tenue de cet agenda avec Agnès, la coach. Il lui suffit de cliquer sur l’icône partager à côté de l’agenda « FootClub des Arceaux » et de rentrer le pseudonyme d’Agnès. Comme Agnès est aussi sur Framagenda, cela se complète automatiquement et fonctionne directement.

Résultat en cachant les autres agendas
Résultat en cachant les autres agendas

Avec cette astuce, Agnès a elle aussi la main sur cet agenda partagé. Cela lui permet de rentrer les entraînements des autres équipes et les prochains matchs. En cherchant à partager le lien public de l’agenda du club de foot, Farida et elle se rendent compte qu’en regardant les paramètres de cet affichage public, elles ont justement un code HTML à intégrer dans le site web du club de foot ! Et voilà leur agenda en ligne !

framagenda-12Si on intègre ce code ici cela donne :

Ni Farida, ni Agnès ne se définissent comme expertes en informatique ou même Geeks. Pourtant, désormais, leurs rendez-vous, contacts et listes de tâches n’appartiennent plus ni à Google (pour Farida) ni à Apple (pour Agnès qui s’est désintoxiquée de l’Iphone). Prochaine étape : voir avec les libristes du coin si elles peuvent installer le même logiciel sur les serveurs du Foot-Club des Arceaux et y importer leurs données Framagenda (on leur a assuré qu’avec Nextcloud, c’est hyper facile).

Cette fois-ci, elles deviendront totalement indépendantes !

Si vous voulez les suivre sur cette route, c’est simple, la voie est libre : testez Framagenda !

Pour aller plus loin :




Contribuer à l’open source : un voyage autour du monde

José Antonio Rey, membre depuis plusieurs années de la communauté Ubuntu, témoigne de la richesse des échanges dans les communautés open source. Des communautés réunissant des gens que tout pourrait séparer : langue, culture, distance mais qui au contraire se rejoignent autour d’un but commun.

hello-1502369__340

Faire tomber les barrières de la langue et de la distance dans les projets open source

Article original : Open source took me around the world

Par José Antonio Rey

Traduction : Framasky, goofy, audionuma, Brice, AFS

mugshotLes communautés open source ont été parmi les premières à utiliser Internet pour s’affranchir de la distance physique entre les personnes. Internet est un outil incroyable, puisqu’il nous permet de collaborer où que l’on soit. Peu importe que vous déjeuniez au pied de la tour Eiffel ou que vous vous réveilliez sous le soleil de San Francisco, Internet a permis de connecter les personnes de manière plus étroite.

J’habite au Pérou, et j’y ai toujours vécu. J’étudie au Pérou, et Internet m’a permis de découvrir des informations précieuses pour mes projets et ma vie en général. Néanmoins, lorsque j’ai rejoint la communauté Linux, ma vie a radicalement changé.

Une nuit, j’avais des problèmes avec mon écran qui ne fonctionnait pas correctement. Je me suis donc connecté à un canal IRC, et quelqu’un en Espagne m’a aidé à résoudre le problème. Ensuite, j’ai pris une décision que je n’ai jamais regrettée : je me suis connecté pour répondre à des questions posées par d’autres utilisateurs de Linux. Je l’ai fait un temps, me concentrant sur les communautés Ubuntu, et on m’a finalement demandé de rédiger un tutoriel pour la communauté. Je n’y connais pas grand chose, ai-je alors pensé, mais j’ai décidé de le faire quand même. J’ai présenté des trucs et astuces concernant l’utilisation du navigateur Firefox. Ma présentation s’est bien déroulée, même si j’étais plutôt nerveux. Cela m’a amené à rencontrer des gens de la communauté, et deux mois plus tard, je m’envolais vers San Francisco pour mon premier sommet des développeurs Ubuntu. Ce fut le premier de mes nombreux voyages.

plane_travel_world_international

Rejoindre une communauté Linux m’a permis d’améliorer bon nombre de mes compétences, en anglais par exemple. Ma langue maternelle est l’espagnol, le début de l’apprentissage a donc été difficile. La moitié de mes journées était en espagnol, l’autre en anglais. Tous mes logiciels fonctionnaient en anglais, et j’ai commencé à trouver bizarre de lire des traductions en espagnol. Améliorer mon anglais m’a aussi permis de me sentir un peu plus à l’aise lors de conversations avec d’autres personnes. Je commençais à m’impliquer de plus en plus, et j’ai donc fait la connaissance d’un grand nombre de personnes, des États-Unis, d’Australie, d’Inde, du Royaume-Uni, de Colombie, d’Argentine, d’Uruguay et d’autres pays. Le nombre de personnes que j’ai rencontrées est incroyable, et ne cesse d’augmenter. Bien sûr, le décalage horaire est une vraie plaie quand on travaille avec des gens tout autour du monde, mais c’est largement compensé par les avantages liés au fait de connaître ces gens et de travailler avec eux.

Ce passe-temps me permet de travailler sur de beaux projets qui m’intéressent. Et si j’ai un problème avec un logiciel, je peux le réparer moi-même ! Je n’ai pas besoin d’attendre que quelqu’un m’entende et fasse attention à moi. Encore mieux, j’apprends à utiliser de nouveaux outils en faisant cela. Si je suis bloqué ou si je ne sais pas comment régler un problème, la communauté est là pour me donner un coup de main.

En travaillant avec le Conseil des Communautés Locales d’Ubuntu (Ubuntu Local Communities Council), j’ai rendu service à des communautés partout dans le monde et les ai rendues plus autonomes, dans leurs actions de promotion par exemple. Les différences culturelles sont l’une des choses les plus difficiles à gérer dans un projet. Contrairement à ce que pensent certaines personnes, gérer un projet ce n’est pas seulement superviser les choses, parfois nous avons dû mettre fin à des disputes entre participants ou entre équipes. J’ai alors été frappé par cette caractéristique importante de la participation à une communauté en ligne : nous sommes tous des personnes avec des points de vue différents, et notre compréhension des choses et des problèmes peut varier en fonction de notre culture. Cela n’est pas quelque chose qui doit nous effrayer, mais bien une chose que nous devons comprendre. Cela montre à quel point notre monde est grand, comment Internet et les communautés du Libre peuvent nous rapprocher et quelle diversité règne dans notre communauté.

Grâce à Internet, les communautés open source ont le pouvoir de vous mettre en contact avec d’autres personnes à travers le monde, parfois vous les rencontrerez même dans le monde réel. Il existe plusieurs communautés qui organisent des rencontres de développeurs et des conférences. Et, si vous êtes assez actif, vous serez invité à y participer. En ce qui me concerne, les personnes qui développaient les logiciels voulaient connaître mes contributions, j’ai alors pu voyager tout autour du monde afin de les rencontrer pour en discuter.

En rejoignant une communauté open source, vous ne contribuez pas seulement à un logiciel, vous rejoignez un réseau de personnes disséminées à travers le monde qui rendent ce logiciel réalisable. Vous devrez franchir différentes barrières, et tout particulièrement celle de la langue. Mais je peux vous dire que c’est une des plus valorisantes expériences que vous pourrez vivre. Vous deviendrez meilleur dans des domaines variés, acquerrez de nouvelles compétences, en découvrirez d’autres, et cerise sur le gâteau, vous travaillerez avec une formidable équipe de personnes provenant de tous les coins du monde, toutes unies vers un objectif commun. Une fois que vous aurez rejoint une communauté open source, vous comprendrez comment un groupe de personnes travaillant avec le même but peut faire tomber toutes les barrières, même celle de la distance.




Chouchoutez vos contributeurs et contributrices !

Le groupe Framalang a traduit l’article de Julien, qui a listé tous les moyens de se tirer une balle dans le pied quand on coordonne un projet libre.

Apprenez à les éviter !

Halte à la stratégie de l'échec !
Halte à la stratégie de l’échec !

Conduite de projets Open Source : 10 erreurs à éviter

Article original : https://julien.danjou.info/blog/2016/foss-projects-management-bad-practice
Auteur : Julien Danjou(CC-BY-SA)
Traduction : lyn., KoS, AlienSpoon, David 5.1, Simon, goofy, Slimane Aguercif, Fred, galadas, terhemis, gégé

Il y a quelques semaines, lors de l’OpenStack Summit (réunion annuelle des contributeurs à OpenStack, NDT), j’ai eu l’occasion de discuter de mon expérience de la conduite de projets Open Source. Je me suis rendu compte qu’après avoir fait partie de plusieurs communautés et beaucoup contribué pendant des années, je pourrais faire profiter les nouveaux venus de conseils et d’avis expérimentés.

Il existe une foule de ressources disponibles expliquant comment conduire un projet Open Source. Mais aujourd’hui, je voudrais aborder ce sujet sous un angle différent, en insistant sur ce qu’il convient de ne pas faire avec les personnes qui y participent. Je tire cette expérience des nombreux projets Open Source auxquels j’ai participé ces dernières années. Je vais décrire, sans ordre particulier, quelques mauvaises pratiques que j’ai constatées, en les illustrant par des exemples concrets.

 

1. Considérer les contributeurs comme une nuisance

fail roadQuand les informaticiens sont au travail, qu’ils soient chargés du développement ou de la maintenance d’un logiciel, il est une chose dont ils n’ont pas besoin : du travail supplémentaire. Pour la plupart d’entre eux, la première réaction à toute contribution externe est : « Zut, du travail en plus ». Et c’est effectivement le cas.

Par conséquent, certains développeurs essayent d’éviter ce travail supplémentaire : ils déclarent ne pas vouloir de contributions, ou font en sorte que les contributeurs se sentent indésirables. Cela peut prendre de nombreuses formes, comme les ignorer ou être désagréable avec eux. Ainsi, les développeurs évitent d’avoir à traiter le surplus de travail qu’on leur met sur le dos.

C’est une des plus grandes erreurs que l’on peut commettre, et une vision fausse de l’Open Source. Si des gens vous apportent du travail supplémentaire, faites tout ce que vous pouvez pour bien les accueillir afin qu’ils continuent à travailler avec vous. Il s’agit peut-être de ceux qui prendront votre relève d’ici peu. Préparez votre future retraite.

Prenons le cas de mon ami Gordon, que j’ai vu démarrer en tant que contributeur sur Ceilometer en 2013. Il examinait très bien le code, si bien qu’il me donnait en fait davantage de travail : non seulement en détectant les anomalies dans mes contributions, mais aussi en me faisant vérifier les siennes. Au lieu de m’en prendre à lui pour qu’il arrête de me faire retravailler mon code et vérifier ses correctifs, j’ai proposé qu’on lui fasse davantage confiance en l’ajoutant officiellement à l’équipe des correcteurs sur un des projets.

Et s’ils ne font pas cette première contribution, ils ne feront pas non plus la seconde. En fait, ils n’en feront aucune ; et ces projets perdraient alors leurs futurs correcteurs.

2. Ne confier aux autres que le sale boulot

Lorsque de nouveaux contributeurs se présentent pour travailler sur un certain projet, leurs motivations peuvent être très diverses. Certains sont des utilisateurs, d’autres veulent simplement voir ce que c’est de contribuer. Ressentir le frisson de la participation, comme un simple exercice ou avec la volonté d’apprendre afin de contribuer en retour à l’écosystème qu’ils utilisent.

En général, les développeurs confient le sale boulot à ces personnes, c’est à dire des tâches sans intérêt, à faible valeur ajoutée, et qui n’auront sans doute aucun impact direct sur le projet.

Pour certains, ce n’est pas grave, pour d’autres, ça l’est. Certains seront vexés de se voir confier du travail sans grand intérêt, alors que d’autres seront heureux de le faire pourvu qu’on leur témoigne de la reconnaissance. Soyez sensible à cela, et félicitez ces personnes. C’est la seule manière de les garder dans le projet.

3. Mépriser les petites contributions

Quand le premier patch d’un nouveau contributeur est une correction d’orthographe, qu’en pensent les développeurs ? Qu’ils s’en fichent, que vous gâchez de leur temps précieux avec votre petite contribution. Et personne ne s’intéresse à la perfection grammaticale d’une documentation, n’est-ce pas ?

C’est faux. Voyez mes premières contributions à home-assistant et Postmodern : j’ai corrigé des fautes d’orthographe dans la documentation.

J’ai contribué au projet Org-mode pendant quelques années. Mon premier patch corrigeait simplement une chaîne de caractères du code. Ensuite, j’ai envoyé 56 patchs, corrigeant des bogues et ajoutant de nouvelles fonctionnalités élégantes, et j’ai aussi codé quelques extensions. À ce jour, je suis toujours seizième dans la liste des plus gros contributeurs d’Org-mode, qui en contient 390. Certainement pas ce qu’on appellerait un petit contributeur, donc. Je suis sûr que la communauté est bien contente de n’avoir pas méprisé ma première correction dans la documentation.

4. Mettre la barre trop haut pour les nouveaux arrivants.

Quand de nouveaux contributeurs arrivent, leurs connaissances du projet, de son contexte, et des technologies sont très variables. L’une des erreurs que les gens font le plus souvent consiste à demander aux nouveaux contributeurs des choses trop compliquées, dont ils ne pourront pas venir à bout. Cela leur fait peur (surtout les timides ou les introvertis) et ils risquent de disparaître, se croyant trop stupides pour aider.

piscine

Avant de faire le moindre commentaire, vous ne devriez avoir strictement aucun a priori sur leur niveau. Cela permet d’éviter ce genre de situations. Il faut également mettre beaucoup de délicatesse quand vous estimez les compétences des nouveaux, car certains pourraient se vexer si vous les sous-estimez trop.

Quand son niveau est bien estimé (un petit nombre d’échanges devrait suffire), vous devez former votre contributeur en ne le guidant ni trop ni trop peu, afin qu’il puisse s’épanouir. Il faut du temps et de l’expérience pour y parvenir, et vous allez probablement perdre certains contributeurs avant de bien maîtriser ce processus, mais c’est un chemin que tous ceux qui gèrent des projets doivent suivre.

Façonner ainsi les nouveaux arrivants est au cœur de la gestion de vos contributeurs, et ce quel que soit votre projet. Et je suis quasiment sûr que cela s’applique à tout projet, même en dehors du logiciel libre.

5. Exiger des gens qu’ils fassent des sacrifices sur le plan personnel

C’est un point qui dépend beaucoup du projet et du contexte, mais il est très important. Dans le logiciel libre, où la plupart des gens vont contribuer par bonne volonté et parfois sur leur temps libre, vous ne devez surtout pas exiger d’eux qu’ils fassent des sacrifices personnels importants. Ça ne passera pas.

L’une des pires manières de faire cette erreur est de fixer un rendez-vous à l’autre bout du monde pour discuter du projet. Cela place les contributeurs qui vivent loin dans une situation injuste, car ils ne peuvent pas forcément quitter leur famille pour la semaine, prendre l’avion ou un autre moyen de transport, louer une chambre d’hôtel… Ce n’est pas bon : tout devrait être mis en œuvre pour que les contributeurs se sentent partie prenante du projet et intégrés à la communauté, sans que l’on exige cela de leur part. Entendons-nous bien, cela ne veut pas dire qu’il faut s’interdire toute rencontre ou activité sociale, au contraire. Pensez simplement à n’exclure personne lorsque vous discutez d’un projet.

Il en va de même pour les moyens de communication susceptibles de compliquer la vie des participants : se retrouver sur IRC (il est difficile pour certaines personnes de réserver une heure, surtout lorsqu’il faut tenir compte des différents fuseaux horaires), faire une visioconférence (en particulier quand on n’utilise pas de logiciel libre et gratuit), etc.

En gros, tout ce qui impose de se synchroniser en temps réel avec l’avancement du projet est contraignant pour certains contributeurs.

C’est pourquoi le meilleur moyen de communiquer reste le courriel, mais tous les outils de communication asynchrones (pisteurs de bogues, etc.) feront l’affaire dans la mesure où ils permettent à chacun de travailler à son rythme et à l’heure qui lui convient.

6. Ne pas avoir de code de conduite

À une époque où de plus en plus de communautés s’ouvrent à un public plus large que celui auquel elles étaient habituées (ce qui est fantastique), les codes de conduite semblent être un sujet à la mode, mais aussi délicat.

En réalité, toutes les communautés ont un code de conduite, qu’il soit inscrit noir sur blanc ou suivi inconsciemment par chacun. Sa forme dépend de la taille et de la culture de la communauté.

Cependant, en fonction de la taille de votre communauté et de la façon dont ce code s’applique, vous auriez peut-être intérêt à l’écrire dans un document, comme l’a par exemple fait Debian.

Ce n’est pas parce que vous aurez rédigé un code de conduite que tous les membres de votre communauté vont soudain se transformer en adorables Bisounours le suivant à la lettre, mais il fournit des règles que vous pouvez citer en cas de besoin. Il peut être utile de le transmettre à certains pour leur faire comprendre que leur comportement ne convient pas, et cela peut aider si une exclusion devient nécessaire, même s’il ne sert que rarement à cela, puisqu’en général personne ne veut aller aussi loin.

Je pense qu’on peut très bien se passer d’un tel document sur de petits projets. Mais vous devez garder à l’esprit qu’un code de conduite implicite découlera de votre comportement. La manière dont vos membres les plus influents communiqueront avec les autres installera l’ambiance à travers tout le réseau. Ne sous-estimez pas cela.

Quand nous avons commencé le projet Ceilometer, nous avons suivi le code de conduite du projet OpenStack avant même qu’il ait été écrit, et probablement avons-nous même placé la barre un peu plus haut. En étant agréables, accueillants et ouverts d’esprit, nous avons réussi à obtenir une certaine mixité, avec plus de 25% de femmes dans notre équipe permanente — bien au dessus de la moyenne actuelle d’OpenStack et de la plupart des projets de logiciel libre !

7. Mettre les non-anglophones à l’écart

Il est important d’être conscient que la grande majorité des projets de logiciel libre utilisent l’anglais en tant que langue de communication principale. C’est logique. C’est une langue répandue, et qui semble remplir ce rôle correctement.

Mais une grande partie des codeurs n’ont pas l’anglais pour langue maternelle. Beaucoup ne le parlent pas couramment. Cela signifie que le rythme auquel ils peuvent converser peut-être très lent, ce qui peut en frustrer certains, notamment ceux qui sont nés en terre anglophone.

 

Le Brexit, c’est maintenant

On peut observer ce phénomène dans les rencontres de codeurs, lors de conférences par exemple. Quand les gens débattent, il peut être très difficile pour certains d’expliquer leurs pensées en anglais et de communiquer à un rythme correct, ce qui ralentit la conversation et la transmission des idées. La pire chose qu’un anglophone puisse faire dans ce cas est de leur couper la parole, ou de les ignorer, pour la seule raison qu’ils ne parlent pas assez vite. Je comprends que cela puisse être frustrant, mais le problème n’est pas la façon de parler des non-anglophones mais les outils de communication utilisés qui ne mettent pas tout le monde au même niveau en privilégiant des conversations orales.

La même chose s’applique, à un moindre degré, aux rencontres sur IRC, qui sont relativement synchrones. Les médias complètement asynchrones ne pâtissent pas de ce défaut, et c’est pourquoi ils faudrait, à mon avis, les privilégier.

8. Pas de vision, aucune délégation des tâches

C’est une autre grosse erreur de gestion si le responsable ne parvient pas à gérer la croissance du projet alors que des gens sont disponibles et prêts à aider.

Évidemment, lorsque le flux des contributeurs commence à grossir, ajoutant de nouvelles fonctionnalités, demandant des retours et des instructions à suivre, certains responsables se retrouvent la tête sous l’eau et ne savent pas comment répondre. Ce qui a pour conséquences de frustrer les contributeurs, qui vont simplement partir.

Il est important d’avoir une vision de votre projet et de la communiquer. Dites clairement à vos contributeurs ce que vous voulez, et ne voulez pas, dans votre projet. Exprimer ces informations de manière claire (et non-agressive !) permet de minimiser les frictions entre vos contributeurs. Ils vont vite savoir s’ils veulent rejoindre ou non votre navire et quoi en attendre. Donc, soyez un bon capitaine.

S’ils choisissent de travailler avec vous et de contribuer, vous devez rapidement commencer à croire en eux et à leur déléguer certaines de vos responsabilités. Cela peut être n’importe quelle tâche que vous faites d’habitude vous-même : vérifier les patchs de certains sous-systèmes, traquer les bogues, écrire la documentation… Laissez les gens s’approprier entièrement une partie du projet car ils se sentiront responsables et ils y mettront autant de soin que vous. Faire le contraire en voulant tout contrôler vous-même est la meilleure façon de vous retrouver seul avec votre logiciel open source.

Aucun projet ne va gagner en taille et en popularité de cette manière.

En 2009, quand Uli Schlachter a envoyé son premier patch à awesome, cela m’a donné plus de travail. J’ai du vérifier son patch, et j’étais déjà bien occupé pour sortir la nouvelle version d’awesome sur mon temps libre en dehors de mon travail ! Le travail d’Uli n’était pas parfait, et j’ai eu à gérer les bogues moi-même. Plus de travail. Alors qu’ai-je fait ? Quelques minutes plus tard, je lui ai répondu en lui envoyant un plan de ce qu’il devait faire et de ce que je pensais de son travail.

En retour, Uli envoya d’autres patchs et améliora le projet. Savez-vous ce que fait Uli aujourd’hui ? Il est responsable du gestionnaire des fenêtres awesome à ma place depuis 2010. J’ai réussi à transmettre ma vision, déléguer, puis à quitter le projet en le laissant dans de bonnes mains !

9. Ignorer certains types de contributions

Les gens contribuent de différentes manières, et pas toujours en codant. Il y a beaucoup de choses autour d’un projet de logiciel libre : la documentation, le tri de bogues, le support, la gestion de l’expérience utilisateur, la communication, les traductions…

Par exemple, il a fallu du temps pour que Debian songe à donner le statut de Développeur Debian à leurs traducteurs. OpenStack prend la même direction en essayant de reconnaître les contributions autres que techniques.

Dès lors que votre projet commence à récompenser certaines personnes et à créer différents statuts dans la communauté, vous devez faire très attention à n’oublier personne, car c’est le meilleur moyen de perdre des contributeurs en chemin.

10. Oublier d’être reconnaissant

Cette liste est le fruit de nombreuses années de bidouillages open source et de contributions à des logiciels libres. L’expérience et le ressenti de chacun sont différents, et les mauvaises pratiques peuvent prendre différentes formes : si vous connaissez ou si vous avez vous-même rencontré d’autres obstacles dans vos contributions à des projets open-source, n’hésitez pas à compléter la liste dans les commentaires. C’est une forme de contribution.

 

 




Non, je ne veux pas télécharger votre &@µ$# d’application !

« Ne voulez-vous pas plutôt utiliser notre application ? »…

De plus en plus, les écrans de nos ordiphones et autres tablettes se voient pollués de ce genre de message dès qu’on ose utiliser un bon vieux navigateur web.

Étrangement, c’est toujours « pour notre bien » qu’on nous propose de s’installer sur notre machine parmi les applications que l’on a vraiment choisies…

Ruben Verborgh nous livre ici une toute autre analyse, et nous dévoile les dessous d’une conquête de nos attentions et nos comportements au détriment de nos libertés. Un article blog traduit par Framalang, et sur lequel l’auteur nous a offert encouragements, éclairages et relecture ! Toute l’équipe de Framalang l’en remercie chaleureusement et espère que nous avons fait honneur à son travail 😉

Cross platform applications - CC-BY Tsahi Levent-Levi
Cross platform applications – CC-BY Tsahi Levent-Levi

Utilisez plutôt le Web

Auteur : Ruben Verborgh

Source : blog de l’auteur

Traduction : Julien, David_5.1, AlienSpoon, roptat, syst, serici, audionuma, sebastienc, framasky, Ruben Verborgh, Diane, Éric + les anonymes.

Sous des prétextes mensongers, les applications mobiles natives nous éloignent du Web. Nous ne devrions pas les laisser faire.

Peu de choses m’agacent plus qu’un site quelconque qui me demande « Ne voulez-vous pas utiliser plutôt notre application ? ». Évidemment que je ne veux pas, c’est pour ça que j’utilise votre site web. Certaines personnes aiment les applications et d’autres non, mais au-delà des préférences personnelles, il existe un enjeu plus important. La supplique croissante des applications pour envahir, littéralement, notre espace personnel affaiblit certaines des libertés pour lesquelles nous avons longtemps combattu. Le Web est la première plate-forme dans l’histoire de l’humanité qui nous permette de partager des informations et d’accéder à des services à travers un programme unique : un navigateur. Les applications, quant à elles, contournent joyeusement cette interface universelle, la remplaçant par leur propre environnement. Est-ce vraiment la prétendue meilleure expérience utilisateur qui nous pousse vers les applications natives, ou d’autres forces sont-elles à l’œuvre ?

Il y a 25 ans, le Web commença à tous nous transformer. Aujourd’hui, nous lisons, écoutons et regardons différemment. Nous communiquons à une échelle et à une vitesse inconnues auparavant. Nous apprenons des choses que nous n’aurions pas pu apprendre il y a quelques années, et discutons avec des personnes que nous n’aurions jamais rencontrées. Le Web façonne le monde de façon nouvelle et passionnante, et affecte la vie des gens au quotidien. C’est pour cela que certains se battent pour protéger le réseau Internet qui permet au Web d’exister à travers le globe. Des organisations comme Mozilla s’évertuent à faire reconnaître Internet comme une ressource fondamentale plutôt qu’un bien de luxe, et heureusement, elles y parviennent.

Toutefois, les libertés que nous apporte le Web sont menacées sur plusieurs fronts. L’un des dangers qui m’inquiète particulièrement est le développement agressif des applications natives qui tentent de se substituer au Web. Encore récemment, le directeur de la conception produit de Facebook comparait les sites web aux vinyles : s’éteignant peu à peu sans disparaître complètement. Facebook et d’autres souhaitent en effet que nous utilisions plutôt leurs applications ; mais pas simplement pour nous fournir une « meilleure expérience utilisateur ». Leur façon de nous pousser vers les applications met en danger un écosystème inestimable. Nous devons nous assurer que le Web ne disparaisse jamais, et ce n’est pas juste une question de nostalgie.

Internet, notre réseau global, est une ressource fondamentale. Le web, notre espace d'information mondial, est de loin l'application la plus importante d'Internet. Nous devons aussi le protéger.
Internet, notre réseau global, est une ressource fondamentale. Le web, notre espace d’information mondial, est de loin l’application la plus importante d’Internet. Nous devons aussi le protéger.

Le Web : une interface indépendante ouverte sur des milliards de sources

Pour comprendre pourquoi le Web est si important, il faut s’imaginer le monde d’avant le Web. De nombreux systèmes d’information existaient mais aucun ne pouvait réellement être interfacé avec les autres. Chaque source d’information nécessitait sa propre application. Dans cette situation, on comprend pourquoi la majeure partie de la population ne prenait pas la peine d’accéder à aucun de ces systèmes d’information.

Le Web a permis de libérer l’information grâce à une interface uniforme. Enfin, un seul logiciel – un navigateur web – suffisait pour interagir avec plusieurs sources. Mieux encore, le Web est ouvert : n’importe qui peut créer des navigateurs et des serveurs, et ils sont tous compatibles entre eux grâce à des standards ouverts. Peu après son arrivée, cet espace d’informations qu’était le Web est devenu un espace d’applications, où plus de 3 milliards de personnes pouvaient créer du contenu, passer des commandes et communiquer – le tout grâce au navigateur.

Au fil des années, les gens se mirent à naviguer sur le Web avec une large panoplie d’appareils qui étaient inimaginables à l’époque de la création du Web. Malgré cela, tous ces appareils peuvent accéder au Web grâce à cette interface uniforme. Il suffit de construire un site web une fois pour que celui-ci soit accessible depuis n’importe quel navigateur sur n’importe quel appareil (tant qu’on n’utilise rien de spécial ou qu’on suit au moins les méthodes d’amélioration progressive). De plus, un tel site continuera à fonctionner indéfiniment, comme le prouve le premier site web jamais créé. La compatibilité fonctionne dans les deux sens : mon site fonctionne même dans les navigateurs qui lui préexistaient.

La capacité qu’a le Web à fournir des informations et des services sur différents appareils et de façon pérenne est un don immense pour l’humanité. Pourquoi diable voudrions-nous revenir au temps où chaque source d’information nécessitait son propre logiciel ?

Les applications : des interfaces spécifiques à chaque appareil et une source unique

Après les avancées révolutionnaires du web, les applications natives essaient d’accomplir l’exacte inverse : forcer les gens à utiliser une interface spécifique pour chacune des sources avec lesquelles ils veulent interagir. Les applications natives fonctionnent sur des appareils spécifiques, et ne donnent accès qu’à une seule source (ironiquement, elles passent en général par le web, même s’il s’agit plus précisément d’une API web que vous n’utilisez pas directement). Ainsi elles détricotent des dizaines d’années de progrès dans les technologies de l’information. Au lieu de nous apporter un progrès, elles proposent simplement une expérience que le Web peut déjà fournir sans recourir à des techniques spécifiques à une plate-forme. Pire, les applications parviennent à susciter l’enthousiasme autour d’elles. Mais pendant que nous installons avec entrain de plus en plus d’applications, nous sommes insidieusement privés de notre fenêtre d’ouverture universelle sur l’information et les services du monde entier.

Ils trouvent nos navigateurs trop puissants

Pourquoi les éditeurs de contenus préfèrent-ils les applications ? Parce-qu’elles leur donnent bien plus de contrôle sur ce que nous pouvons et ne pouvons pas faire. Le « problème » avec les navigateurs, du point de vue de l’éditeur, est qu’ils appartiennent aux utilisateurs. Cela signifie que nous sommes libres d’utiliser le navigateur de notre choix. Cela signifie que nous pouvons utiliser des plugins qui vont étendre les capacités du navigateur, par exemple pour des raisons d’accessibilité, ou pour ajouter de nouvelles fonctionnalités. Cela signifie que nous pouvons installer des bloqueurs de publicité afin de restreindre à notre guise l’accès de tierces parties à notre activité en ligne. Et plus important encore, cela signifie que nous pouvons nous échapper vers d’autres sites web d’un simple clic.

Si, en revanche, vous utilisez l’application, ce sont eux qui décident à quoi vous avez accès. Votre comportement est pisté sans relâche, les publicités sont affichées sans pitié. Et la protection légale est bien moindre dans ce cadre. L’application offre les fonctionnalités que le fournisseur choisit, à prendre ou à laisser, et vous ne pourrez ni les modifier ni les contourner. Contrairement au Web qui vous donne accès au code source de la page, les applications sont distribuées sous forme de paquets binaires fermés.

« Ne voulez-vous pas plutôt l’application ? »

J’ai procédé à une petite expérience pour mesurer exactement quelle proportion des sites Web les plus visités incitent leurs utilisateurs à installer l’application. J’ai écrit un programme pour déterminer automatiquement si un site web affiche une bannière de promotion de son application. L’outil utilise PhantomJS pour simuler un navigateur d’appareil mobile et capture les popups qui pourraient être insérés dynamiquement. La détection heuristique est basée sur une combinaison de mots-clés et d’indices du langage naturel.
Ce graphique montre combien de sites du top Alexa (classés par catégorie) vous proposent d’utiliser leur application :

Plus d'un tiers des 500 sites les plus visités vous proposent d'utiliser leur application.
Plus d’un tiers des 500 sites les plus visités vous proposent d’utiliser leur application.

Les chiffres obtenus sont basés sur une heuristique et sous-estiment probablement la réalité. Dans certaines catégories, au moins un tiers des sites préfèrent que vous utilisiez leur application. Cela signifie qu’un tiers des plus gros sites essaient de nous enfermer dans leur plate-forme propriétaire. Sans surprise, les catégories informations locales, sports et actualités atteignent un pourcentage élevé, puisqu’ils souhaitent être en première ligne pour vous offrir les meilleures publicités. Il est intéressant de noter que les contenus pour adultes sont en bas du classement : soit peu de personnes acceptent d’être vues avec une application classée X, soit les sites pornographiques adorent infecter leurs utilisateurs avec des malwares via le navigateur.

Des prétextes mensongers

Même si les éditeurs de contenu demandent si nous « souhaitons » utiliser leur application, c’est un euphémisme. Ils veulent que nous l’utilisions. En nous privant de la maîtrise plus grande offerte par les navigateurs, ils peuvent mieux influencer les éléments que nous voyons et les choix que nous faisons. Le Web nous appartient à tous, alors que l’application n’est réellement qu’entre les mains de l’éditeur. Généralement, ils justifient l’existence de l’application en plus du site web en marmonnant des arguments autour d’une « expérience utilisateur améliorée », qui serait évidemment « bien plus rapide ». Il est curieux que les éditeurs préfèrent investir dans une technologie complètement différente, plutôt que de prendre la décision logique d’améliorer leur site internet en le rendant plus léger. Leur objectif principal, en réalité, est de nous garder dans l’application. Depuis iOS 9, cliquer sur un lien dans une application permet d’ouvrir un navigateur interne à l’application. Non seulement cette fonctionnalité prête à confusion (depuis quelle application suis-je parti(e), déjà ?), mais surtout elle augmente le contrôle de l’application sur votre activité en ligne. Et une simple pression du doigt vous « ramène » vers l’application que vous n’aviez en fait jamais quittée. Dans ce sens, les applications contribuent sciemment à la « bulle de filtre ».

Les Articles Instantanés de Facebook sont un exemple extrême : un lien normal vous dirige vers la version « optimisée » d’une page à l’intérieur-même de l’application Facebook. Facebook salue cette nouveauté comme un moyen de « créer des articles rapides et interactifs sur Facebook » et ils ne mentent même pas sur ce point : vous ne naviguez même plus sur le vrai Web. Les Articles Instantanés sont vendus comme une expérience « interactive et immersive » avec plus de « flexibilité et de contrôle » (pour les fournisseurs de contenu bien sûr) qui entraînent de nouvelles possibilités de monétisation, et nous rendent une fois de plus « mesurables et traçables ».

Soyons honnêtes sur ce point : le Web fournit déjà des expériences interactives et immersives. Pour preuve, les Articles Instantanés sont développés en HTML5 ! Le Web, en revanche, vous permet de quitter Facebook, de contrôler ce que vous voyez, et de savoir si vous êtes pisté. Le nom « Articles Instantanés » fait référence à la promesse d’une rapidité accrue, et bien qu’ils soient effectivement plus rapides, cette rapidité ne nous est pas vraiment destinée. Facebook explique que les utilisateurs lisent 20% d’articles en plus et ont 70% de chances en moins d’abandonner leur lecture. Ces résultats favorisent principalement les éditeurs… et Facebook, qui a la possibilité de prendre une part des revenus publicitaires.

Rendez-nous le Web

Ne vous y trompez pas : les applications prétendent exister pour notre confort, mais leur véritable rôle est de nous attirer dans un environnement clos pour que les éditeurs de contenu puissent gagner plus d’argent en récoltant nos données et en vendant des publicités auxquelles on ne peut pas échapper. Les développeurs aussi gagnent plus, puisqu’ils sont désormais amenés à élaborer des interfaces pour plusieurs plate-formes au lieu d’une seule, le Web (comme si l’interface de programmation du Web n’était pas déjà assez coûteuse). Et les plate-formes de téléchargement d’applications font également tinter la caisse enregistreuse. Je ne suis pas naïf : les sites web aussi font de l’argent, mais au moins le font-ils dans un environnement ouvert dont nous avons nous-mêmes le contrôle. Pour l’instant, on peut encore souvent choisir entre le site et l’application, mais si ce choix venait à disparaître, l’accès illimité à l’information que nous considérons à juste titre comme normal sur le Web pourrait bien se volatiliser avec.

Certaines voix chez Facebook prédisent déjà la fin des sites web, et ce serait en effet bon pour eux : ils deviendraient enfin l’unique portail d’accès à Internet. Certains ont déjà oublié qu’il existe un Internet au-delà de Facebook ! La réaction logique de certains éditeurs est d’enfermer leur contenu au sein de leur propre application, pour ne plus dépendre de Facebook (ou ne plus avoir à y faire transiter leurs profits). Tout ceci crée exactement ce que je crains : un monde d’applications fragmenté, où un unique navigateur ne suffit plus pour consommer tous les contenus du monde. Nous devenons les prisonniers de leurs applis :

Last thing I remember, I was running for the door.

I had to find the passage back to the place I was before.

“Relax,” said the night man, “we are programmed to receive.”

“You can check out any time you like, but you can never leave!”

Eagles – Hotel California

 

Mon dernier souvenir, c’est que je courais vers la porte,

Je devais trouver un passage pour retourner d’où je venais

« Relax », m’a dit le gardien, « on est programmés pour recevoir »

« Tu peux rendre ta chambre quand tu veux, mais tu ne pourras jamais partir ! »

Eagles, Hotel California

Cette chanson me rappelle soudain le directeur de Facebook comparant les sites web et le vinyle. L’analogie ne pourrait pas être plus juste. Le Web est un disquaire, les sites sont des disques et le navigateur un tourne-disque : il peut jouer n’importe quel disque, et différents tourne-disques peuvent jouer le même disque. En revanche, une application est une boîte à musique : elle est peut-être aussi rapide qu’un fichier MP3, mais elle ne joue qu’un seul morceau, et contient tout un mécanisme dont vous n’auriez même pas besoin si seulement ce morceau était disponible en disque. Et ai-je déjà mentionné le fait qu’une boîte à musique ne vous laisse pas choisir le morceau qu’elle joue ?

Les sites web sont comme les vinyles : un tourne-disque suffit pour les écouter tous. Image : turntable CC-BY-SA Traaf
Les sites web sont comme les vinyles : un tourne-disque suffit pour les écouter tous.
Image : turntable CC-BY-SA Traaf

C’est la raison pour laquelle je préfère les tourne-disques aux boîtes à musique – et les navigateurs aux applications. Alors à tous les éditeurs qui me demandent d’utiliser leur application, je voudrais répondre : pourquoi n’utilisez-vous pas plutôt le Web ?




Minetest, piochez en toute liberté

MIcrosoft a acheté Minecraft, le fameux jeu « bac à sable », à son créateur. Et pour une petite fortune ! Forcément, l’ogre de Redmond avait une idée derrière la tête…

Dans ce long article traduit par le groupe Framalang, Paul Brown propose une alternative pour pouvoir piocher en paix, et utiliser la puissante idée de Markus Persson en toute liberté.

 

Minetest, un serious game pour l’éducation

par Paul Brown

Article original Mining for education

Traduction Framalang : Pouhiou, MagicFab, touriste, audionuma, lamessen, LaPalice, line, Qwerty, Bromind, line, goofy, Frédéric V., Penguin, Isammoc, roptat, Meridel, galadas, Frederic V., Valdo, Roka, Vincent + 14 contributeurs anonymes

Sommaire

Ce billet est très long, et peut-être qu’une bonne partie ne vous concerne pas. Si vous voulez aller directement aux parties qui vous intéressent, voici le sommaire :

  1. Pourquoi utiliser Minecraft comme outil pédagogique est une mauvaise idée
  2. Pourquoi utiliser Minetest comme outil pédagogique est une bien meilleure idée (et comment débuter)
  3. Tout est dans les mods
  4. Jouer au jeu
  5. Mettre un serveur en place
  6. Minetest comme outil pédagogique
  7. Blocs de construction
  8. Mises en garde
  9. Conclusion

Quelle serait votre réaction si tous les menus de la cantine de votre enfant étaient livrés par un seul et unique fournisseur de plats préparés et de boissons sucrées ? Que diriez-vous si le régime alimentaire de votre enfant était limité à des chips, des tortillas goût fromage et des boissons sucrées gazeuses, sans possibilité d’alternative plus saine ?

Étant parent moi-même, je suppose que vous trouveriez épouvantable l’idée que l’école n’offre que de la malbouffe à votre enfant, à tel point que vous seriez prêt à envisager de le changer d’établissement. Mais que faire si c’était la même chose dans tout le pays ?

Ce n’est pas tout, imaginez qu’en plus le fournisseur de malbouffe ait apposé son logo partout : sur les tasses, les assiettes et sur les affiches qui décorent les murs des classes. D’ailleurs, en parlant de salles de classe, quand arrive le moment de l’apprentissage des bases de la nutrition, les chapitres du manuel scolaire s’avèrent rédigés par le service marketing de cette même entreprise qui fournit déjà les repas.

La plupart des parents, je l’espère, trouveraient cela scandaleux. Pourtant, on n’entend pas beaucoup de protestations véhémentes quand il se passe exactement la même chose dans un cours d’informatique et même pendant une session d’apprentissage assisté par ordinateur.

Les élèves n’apprennent pas à se servir d’un traitement de texte, ils apprennent Microsoft Word. Il n’apprennent pas à concevoir des présentations, ils apprennent Microsoft PowerPoint. On leur demande de présenter leurs travaux, que ce soit une rédaction, un diaporama, ou un graphique, dans l’un des formats propriétaires de Microsoft, de les enregistrer sur des clés USB formatées suivant le système de fichiers breveté par Microsoft. C’est ça et rien d’autre.

Voici comment Microsoft souhaite rentrer dans les écoles...
Voici comment Microsoft souhaite rentrer dans les écoles…

Pour une gigantesque entreprise comme Microsoft, c’est tout à fait logique. Non seulement le marché de l’éducation est immense et juteux en soi, mais transformer des élèves en futurs travailleurs, managers et entrepreneurs qui ont appris à la lettre et de façon formelle à dépendre exclusivement de ses produits, voilà une perspective qui doit être irrésistible.

Mais tandis que les produits Microsoft prédominent dans l’enseignement secondaire et universitaire, il manquait encore à l’entreprise la principale part du gâteau de l’éducation. En tant que manipulateur aguerri du marché, Microsoft reconnaît que le lavage de cerveau fonctionne d’autant mieux que vous commencez jeune. Mais jusqu’à ces dernières années, ils n’avaient tout simplement pas le produit pour capter cette tranche d’âge.

Maintenant, si. Maintenant, ils ont Minecraft.

Pour détruire tout espoir que ce logiciel immensément populaire soit un jour publié sous licence libre (comme Markus « Notch » Persson a prétendu jadis qu’il pourrait l’être), Microsoft a déboursé 2,5 milliards de dollars en 2014 pour le jeu de Persson et s’est immédiatement attelé à le rendre encore plus attrayant grâce à la conclusion d’un accord avec Lego qui a fait du jeu la star de sa technologie Hololens, grâce aussi à la réalisation d’un film, en limitant toutefois les fonctionnalités dans le même temps.

Ah bon, vous n’aviez pas entendu parler de ce dernier point ? Je dois vous révéler que dès que vous faites abstraction du nouvel emballage attrayant et du tapage médiatique, vous pouvez enfin voir ce que Microsoft entend faire de Minecraft. En simplifiant le jeu pour l’adapter à sa version mobile, et en ne le faisant plus tourner sous Java, Microsoft peut mieux contrôler sur quelles plateformes il pourra fonctionner (vous savez que Minecraft fonctionne bien sous GNU/Linux parce qu’il est écrit en Java ? C’est la première chose qui sera supprimée), et tuer d’un coup tout l’écosystème de mods non validés par Microsoft.

C’est ainsi que les choses se profilent. Avant que tout ne parte en vrille, la question est de savoir si la communauté du logiciel libre a un plan B. Existe-t-il un logiciel libre susceptible de rivaliser avec Minecraft ?

Une solution ouverte

Cet article serait bien court si la réponse était « non ».

Pour être certain de ne pas me fourvoyer, j’ai passé la majeure partie des quatre dernières semaines à la recherche d’alternatives. N’ayant pas eu beaucoup d’expérience avec les jeux d’origine (Infiniminer et Dwarf Fortress), j’ai appris les rudiments du minage et de l’artisanat (du crafting), puis davantage. J’ai discuté avec des développeurs et des utilisateurs sur leurs canaux IRC – principalement pour demander de l’aide quand j’étais bloqué. J’ai aussi appelé en renfort des joueurs expérimentés de Minecraft (en l’occurrence, mon fils et ses copains) pour tester différentes versions libres et à code source ouvert de ce genre de jeux, afin qu’ils me fassent part de leurs commentaires.

Le verdict est tombé. La réponse est Minetest.

Le soleil se lève sur un lagon de Minetest. toutes les images sont CC-BY-SA Paul Brown / OCSMag
Le soleil se lève sur un lagon de Minetest.
toutes les images sont CC-BY-SA Paul Brown / OCSMag

Je ne vais pas enfoncer des portes ouvertes et vous dire que Minetest est libre tant au sens de « liberté d’expression » qu’au sens d’« entrée libre », c’est-à-dire gratuit. Il ne vous coûtera pas un sou pour être en droit de le télécharger, de le partager et d’y jouer ; vous n’aurez pas à endurer la moindre magouille de la part d’un vendeur ; il est soutenu par une communauté qui veut simplement construire un jeu vraiment amusant et y jouer, par conséquent de nouvelles fonctionnalités ont tendance à s’ajouter au fil du temps, et aucune ne sera supprimée de façon arbitraire. Je ne veux pas répéter ici ce qui est commun à la plupart des projets de logiciels libres… Bon, trop tard, je viens de le faire. Mais outre tout ce qui précède, Minetest est assez impressionnant par lui-même.

Pour commencer, il est écrit en C/C++, ce qui le rend plus léger et plus rapide que Minecraft. Mais surtout, il fonctionne plus ou moins partout (voyez sa page de téléchargements), que ce soit sur les ordinateurs fonctionnant avec FreeBSD, Windows, GNU/Linux (cherchez-le dans vos dépôts logiciels) et MacOS X ; sur les téléphones Android ; et, chose importante pour l’éducation, il fonctionne aussi sur le Raspberry Pi.

Minetest sur le Raspberry Pi

Faire tourner Minestest sur Raspbian pour Raspberry Pi est relativement simple. Commencez par ouvrir un terminal et saisissez :

sudo apt-get update
sudo apt-get upgrade

pour être certain que le système est bien à jour. Puis installez Minetest avec :

sudo apt-get install minetest

Vous pouvez aussi installer un serveur, des créatures (« MOBs ») et des mods pour étendre les capacités du jeu original. Recherchez-les avec :

apt-cache search minetest

et choisissez ce dont vous pensez avoir besoin.

Une fois que votre gestionnaire de logiciels en a terminé avec l’installation, Minetest devrait être disponible dans le sous-menu Jeux. Mais vous ne pourrez pas y jouer tout de suite !

Minetest nécessite OpenGL, une collection de bibliothèques 3D libres. Pour activer OpenGL, lancez :

sudo raspi-config

Sélectionnez Options avancées, puis AA GL Driver, Activer et OK. Ceci démarrera le pilote expérimental OpenGL pour votre bureau.

Redémarrez votre Pi. Quand vous serez de retour sur votre bureau, vous pourrez démarrer Minetest normalement.

N.B. : Il se peut que vous ayez besoin de désactiver le pilote OpenGL pour pouvoir jouer à Minecraft.

Ce qui est bien, c’est que mises à part certaines fonctionnalités pour la gestion des écrans tactiles, ça reste le même jeu. Même la version pour Raspberry Pi est exactement identique à la version PC. Cela constitue déjà un bon atout par rapport à Minecraft qui, sur Raspberry Pi, est très limité et ne fournit pas du tout la même expérience que son équivalent sur PC. Je le sais, car à une époque, j’ai écrit à propos de Minecraft sur le Pi, et depuis, les choses n’ont pas changé d’un iota.

Vous pouvez télécharger Minetest pour votre système d’exploitation, ou si vous avez la chance d’utiliser une distribution GNU/Linux, laisser votre gestionnaire de logiciels faire le gros du travail à votre place. Vous pourrez aussi trouver quelques extras dans les dépôts de votre distribution : un serveur Minetest évidemment, et des paquets de mods fournissant des créatures, une météo, etc.

 

Tout est affaire de Mods

C’est l’une des principales différences entre Minecraft et Minetest : dans ce dernier, presque tout est un mod. En fait, si vous lanciez Minetest sans aucun mod, vous vous retrouveriez à vagabonder dans un monde constitué exclusivement de blocs de pierre. Le jeu Minetest standard est principalement un catalogue de mods, de blocs (« nodes » dans le jargon Minetest), de textures et de sons ajoutés au moteur de jeu. Jetez un coup d’œil dans le dossier games/minetest_game situé dans le dossier partagé minetest/ et vous comprendrez ce que je veux dire.

Vous pouvez installer de nouveaux mods en les téléchargeant depuis le wiki du site Minetest. Ensuite, vous les déposez dans le dossier mods/ (créez-le s’il n’existe pas) situé dans votre dossier minetest/. Veuillez noter que sous GNU/Linux, le dossier peut être caché, dans ce cas recherchez .minetest/ dans votre dossier home.

Admettons que vous vouliez une météo, de la pluie, de la neige et des choses du genre, dans votre monde ? Allez dans votre dossier minetest/mods/

cd minetest/mods/

ou bien

cd .minetest/mods/

et téléchargez le mod météo :

git clone https://github.com/Jeija/minetest-mod-weather.git

Le mod est maintenant installé. C’était facile, non ?

Tout ce qu’il vous reste à faire, c’est de l’activer.

Un dépôt de Mods pour Minetest

Si vous exécutez la version 0.4.10 de Minetest, vous avez peut-être remarqué un bouton Online mod repository sous l’onglet Mods du menu.
Lorsque vous cliquez dessus, il ne se passe pas grand-chose. Si vous consultez le fichier debug.txt dans votre répertoire minetest, vous constaterez que le programme essaie de se connecter à une page web des forums Minetest qui n’existe plus. Selon les développeurs, le dépôt de mods, ainsi que l’installation de ceux-ci à partir du jeu lui-même, sont actuellement une expérimentation infructueuse, mise en pause jusqu’à ce qu’ils trouvent quelqu’un pour implémenter un modèle fonctionnel et évolutif.
Dans la version de développement 0.4.13 de Minetest, ce bouton n’existe plus.
Bonne nouvelle pour les utilisateurs de Minetest sous Android néanmoins : il existe une application qui installe les mods de façon transparente sur votre mobile. Elle est disponible sur Google Play et marche très bien.

Démarrez Minetest, et si ce n’est déjà fait, créez un nouveau monde en cliquant sur le bouton Nouveau dans l’onglet Solo. Une nouvelle boîte de dialogue apparaît. Donnez un nom à votre monde et laissez le reste tel quel. Cliquez sur Créer.

Une fois votre monde sélectionné, cliquez sur le bouton Configurer. Cela vous affiche une liste des mods disponibles. Double-cliquez sur weather et il passera du blanc au vert. Cela signifie que ce mod sera activé quand vous lancerez votre monde.

Cliquez sur Jouer et le mod weather ouvrira les canalisations d’eau de temps en temps. Si vous êtes impatient, vous pouvez faire pleuvoir en ouvrant le HUD ([F10]) et en saisissant :

/setweather rain

ou bien

/setweather snow

à l’invite de commande.

Pour l’arrêter, saisissez :/setweather none

Si un message d’erreur apparaît et vous indique que vous n’avez pas les permissions pour démarrer et arrêter la pluie, essayez de vous les octroyer vous-même en saisissant :

/grant [votre nom de joueur] weather

dans le HUD.

Faites tomber la neige avec le mod weather
Faites tomber la neige avec le mod weather

Quasiment toutes les touches de F1 à F12 ont une fonction, chacune peut être consultée sur le site de Minetest, en même temps que les autres paramètres du clavier. Parmi les plus utiles, on trouve :

Touche Fonction 2nd appui
F5 Affiche les coordonnées du joueur Affiche les statistiques du serveur
F7 Modifie la vue caméra Cycle parmi les vues caméra
F9 Ouvre une mini-carte Agrandit le zoom
F10 Ouvre le HUD Ferme le HUD
F12 Prend une capture d’écran

 

En parlant du HUD… De toutes les touches ci-dessus, F10 est peut-être celle qui mérite que l’on s’y attarde. Le HUD, ou Head Up Display (affichage tête haute), vous permet de saisir des messages dans le chat ou des commandes qui vous permettent de faire davantage de choses qu’avec de simples appuis de touches.
En saisissant :

/teleport 500,5,500

par exemple, vous pouvez directement vous rendre aux coordonnées (500, 5, 500) – si vous avez le pouvoir de téléportation, je précise.

/time 9:00

réglera l’heure du jour sur 9 heures du matin.

Utilisez le HUD pour tchater ou taper des commandes
Utilisez le HUD pour tchater ou taper des commandes

/sethome

Cette commande définit un point, par exemple, là où vous avez construit votre refuge, où vous pouvez toujours vous téléporter avec la commande :

/home

…utile si vous êtes perdu ou en danger.

Pour envoyer un message à un autre joueur, vous pouvez utiliser :

/msg [nom du joueur] [message]

La commande :

/msg Paul Bonjour Paul !

envoie « Bonjour Paul ! » au joueur de ce nom. Vous pouvez également envoyer des messages à tous les joueurs ou des messages privés comme décrit ci-dessus en appuyant sur la touche `t` (pour talk, parler en anglais).

Si vous administrez votre propre monde, vous pouvez utiliser le HUD pour envoyer des instructions afin de contrôler les joueurs indisciplinés, ainsi que des commandes spécifiques à certains mods (telles que la commande /setweather que nous avons vue plus haut). Pour obtenir la liste complète des commandes, saisissez :

/help all

 

Jouer au jeu

Créez un fourneau pour transformer les minerais en lingots.
Créez un fourneau pour transformer les minerais en lingots.

Est-ce vraiment différent de jouer à Minetest, en comparaison d’avec Minecraft ? Très peu en fait. La plupart des raccourcis clavier sont exactement les mêmes et, bien sûr, il y a toute la partie fabrication. Vous n’avez pas besoin de session d’apprentissage dans Minetest. Appuyez simplement sur la touche [i] et vous accéderez à tous les emplacements contenant les matériaux et objets que vous transportez avec vous, ainsi qu’une grille de fabrication. Cela dit, vous aurez besoin de construire un fourneau pour fondre le minerai en lingots.

À côté des haches, des pelles et des épées, un autre outil très utile (et spécifique à Minetest) que vous devriez construire est le tournevis. C’est une bonne idée d’en fabriquer un assez tôt dans le jeu, dès que vous avez du bois et du fer. Le tournevis vous permet de changer l’orientation des autres objets. Si vous fabriquez des escaliers, par exemple, et que vous les disposez dans le mauvais sens, placez le tournevis dessus et vous pourrez les faire tourner sur eux-mêmes.

Différents mods ajoutent de nouveaux objets que vous pourrez fabriquer et de nouveaux matériaux bruts ou transformés. Le module Technic, par exemple, ajoute toutes sortes de trucs hi-tech, depuis le fil en cuivre pour les circuits électriques, jusqu’aux forets en diamant. Ce mod est continuellement mis à jour. L’un des plus récents ajouts est le réacteur nucléaire, qui est utile, mais aussi dangereux !

Bien que l’intérêt de Minetest ne réside pas tant dans le combat contre des monstres (et c’est pour ça que les créatures ne sont pas incluses par défaut) que dans la construction, la présence de créatures menaçant votre propriété peut certainement rendre les choses plus amusantes. Mais ce qui est encore plus amusant cependant, c’est de construire et protéger sa propriété avec des amis.

Serveur Minetest

Monter un serveur Minetest pour vos amis, vos collègues ou votre école est facile. Minetest est constitué de deux parties : le client, qui est le programme avec lequel vous interagissez directement, et un serveur, qui génère le monde, gère les joueurs, leur localisation et leur inventaire, et avec lequel vous interagissez indirectement.
Lorsque vous jouez en solo, vous faites tourner un serveur pour vous seul. En fait, si vous voulez inviter des amis dans le monde dans lequel vous jouez, vous pouvez quitter votre partie et revenir au menu, et dans l’onglet « Serveur », cocher l’option « Public ». Si vos amis sont sur le même réseau, il leur suffira de se connecter à votre adresse IP avec leurs propre clients et de commencer à jouer.

Un serveur dédié

Bien que vous puissiez vouloir éviter de faire tourner un serveur Minetest pour votre organisation en arrière-plan sur le poste de travail de quelqu’un, vous n’avez pas besoin d’une machine exclusivement dédiée à Minetest. Minetest est conçu pour être léger et, avec la puissance du matériel moderne et les capacités disque qui de nos jours atteignent le téraoctet, une tour standard suffira.

Héberger un serveur Minetest sur votre serveur de fichiers ou d’impression fera probablement l’affaire, tant que vous faites attention à sa sécurisation (voir ci-dessous).

Même un Raspberry Pi conviendra pour servir de façon réactive une demi-douzaine d’utilisateurs environ. Cependant, s’il y a beaucoup plus de joueurs, des créatures errant ici et là, de nombreuses fabrications et que de vastes explorations ont lieu, vous pourriez trouver que le Pi commence à ramer et vous devrez alors opter pour une configuration plus musclée.

Si vous prévoyez quelque chose de plus ambitieux, peut-être un serveur public ou un serveur pour votre école entière, vous devriez envisager une machine sur laquelle le serveur Minetest pourra tourner sans interface graphique.

Sur Debian GNU/Linux ou sur un système basé sur cette distribution (comme Ubuntu, Mint ou Raspbian), saisir :
su
apt-get install minetest-server

sur Debian, ou bien :
sudo apt-get install minetest-server
pour Ubuntu, Raspbian et Linux Mint pour installer le serveur autonome.

Vous pouvez démarrer le serveur à la main sans être administrateur en saisissant :
minetestserver --info
Le paramètre –info vous informera des problèmes éventuels et affichera aussi des événements, par exemple quand un utilisateur se connecte au serveur pour jouer.

C’est une bonne méthode pour vérifier que tout fonctionne, mais les développeurs de Minetest recommandent, pour des raisons de sécurité, d’utiliser un utilisateur standard n’ayant pas les droits de super-utilisateur (sudo) pour faire tourner le serveur. Stoppez le serveur en appuyant sur les touches [Ctrl]+[c] et créez un utilisateur avec la commande suivante :

su
adduser minetest

si vous utilisez Debian, ou :

sudo su
adduser minetest

si vous utilisez Ubuntu, Mint ou Raspbian.

Définissez le mot de passe pour le nouvel utilisateur. Vous pouvez laisser tous les autres champs vides.

Quittez la session super-utilisateur (exit), connectez-vous en tant qu’utilisateur minetest et déplacez-vous dans son répertoire personnel :

exit
su minetest
[saisissez le mot de passe de minetest]
cd

Lancez à nouveau minetestserver en tant que ce nouvel utilisateur.

Vous pouvez aussi jouer sur les serveurs publics d'autres joueurs.
Vous pouvez aussi jouer sur les serveurs publics d’autres joueurs.

Le serveur Minetest écoute par défaut sur le port 30000 (bien que vous puissiez le changer avec le paramètre –port), donc vous devrez autoriser cet accès au niveau de votre pare-feu et faire suivre vers ce port au niveau de votre routeur si vous lancez le serveur sur votre réseau local et que vous voulez que des joueurs de l’extérieur puissent accéder à votre partie.

Pour installer des mods, copiez-les vers le répertoire /usr/share/games/minetest/games/minetest_game/mods/ et ils seront automatiquement chargés et activés quand le serveur tournera. Pour vérifier que les mods que vous voulez ont bien été chargés, lancez le jeu, ouvrez le HUD ([F10]) et saisissez /mods.

Si vous voulez restreindre l’accès à votre serveur, car vous ne voulez jouer qu’avec vos amis et ne souhaitez pas que des inconnus viennent gâcher la fête, créez un fichier .conf et chargez-le au moment de lancer le serveur.

Un fichier .conf Minetest est un fichier texte avec une série de paires clef = valeur sur chaque ligne. Si vous voulez limiter les utilisateurs à vos seuls amis, vous pouvez par exemple demander à ce que les joueurs utilisent un mot de passe et définir un mot de passe initial que seuls vous et vos amis connaissez. Le fichier .conf devrait ressembler à ça :

name = Mon Minetest
disallow_empty_password = true
default_password = MotDePasseSecret
motd = Si ce n'est pas déjà fait, merci de changer votre mot de passe.

où MotDePasseSecret est le mot de passe que vous communiquez à vos amis.

Cela affichera aussi un message à tous les utilisateurs leur demandant de changer leur mot de passe par défaut. Les utilisateurs peuvent changer leur mot de passe en appuyant sur [Échap] (ou sur le bouton retour sous Android) depuis le jeu et en cliquant sur le bouton Changer le mot de passe.

Changer son mot de passe depuis le menu utilisateur
Changer son mot de passe depuis le menu utilisateur

Démarrez le serveur en saisissant :

mineetestserver --config /chemin/vers/votre/fichier/de/configuration.conf

pour le forcer à charger votre fichier .conf.

Vous trouverez un exemple de fichier de configuration avec beaucoup d’autres options sur le dépôt GitHub de Minetest.

Une fois que tout est opérationnel, vous pouvez octroyer des privilèges à chaque utilisateur comme bon vous semble en éditant le fichier auth.txt que vous trouverez dans le répertoire de votre monde. Chaque ligne ressemble à ça :

Paul:x69lFMHqU/qrUHlRoCpIF34/56M:interact,shout

Vous voyez trois champs séparés par deux points (:). Vous avez d’abord le nom d’utilisateur, puis une version chiffrée de son mot de passe et enfin une liste séparée par des virgules de ses privilèges. Vous pouvez ajouter des privilèges en complétant la liste :

Paul2:x69lFMHqU/qrUHlRoCpIF34/56M:interact,shout,home

Le privilège « home » permet à un joueur d’utiliser les commandes /sethome et /home que nous avons vues précédemment.

Une autre manière d’accorder des privilèges est d’accorder le privilège « privs » à votre propre joueur. Ensuite, vous pourrez accorder de nouveaux privilèges directement depuis le HUD. La commande :

/grant [player name] home

permet d’accorder le privilège « home » à un joueur. Vous pouvez aussi vous accorder plus de privilèges de cette manière.

Vous pouvez révoquer les privilèges d’un joueur en saisissant :

/revoke [player name] [privilege]

Pour voir les privilèges dont vous disposez :

/privs

dans le HUD, ou bien :

/privs [player name]

pour voir les privilèges qu’un autre joueur possède.

Une fois que vous êtes satisfait de la configuration de votre serveur, vous pourriez souhaiter configurer votre système de façon à démarrer Minetest à chaque fois que vous allumez votre ordinateur. Pour ce faire, vous pouvez créer une tâche cron qui s’exécute au démarrage.

Accédez à votre utilisateur minetest depuis une fenêtre de terminal, et ouvrez l’éditeur crontab avec la commande :

crontab -e

Ajoutez à la fin du fichier une ligne semblable à celle-ci :

@reboot /usr/games/minetestserver --config /chemin/vers/votre/fichier/de/configuration.conf

Vous devez également ajouter toute autre option dont vous auriez besoin, comme le nom du monde que vous voulez charger au démarrage, le port sur lequel vous voulez que votre serveur écoute, etc. Pour voir une liste complète des commandes possibles, saisissez :

minetestserver --help

dans un terminal.

La plupart des distributions GNU/Linux modernes, dont Debian, Ubuntu, Mint et Raspbian, utilisent désormais systemd pour gérer des choses comme les démons et les services. Les versions futures de Minetest tireront profit de ce sous-système, installeront automatiquement les fichiers de configuration et créeront un utilisateur pour les exécuter.

Un outil pédagogique

L’argument majeur en faveur de l’utilisation de Minetest par rapport à une alternative propriétaire est sa modularité. Les débutants apprécieront le fait de pouvoir modifier toutes les caractéristiques de leur personnage et des différents objets à l’intérieur du monde qu’ils ont créé.

Même les formes des personnages peuvent être modifiées en utilisant Blender
Même les formes des personnages peuvent être modifiées en utilisant Blender

Il existe même un mod wardrobe (armoire) que l’administrateur du serveur peut remplir de textures personnalisées afin que les joueurs puissent changer leur apparence en cours de jeu.

La modularité va au delà de la simple esthétique cependant, et les développeurs de Minetest ont créé un framework complet séparé du programme principal, qui permet aux utilisateurs de créer de nouveaux blocs et d’en ajuster le comportement, de concevoir de nouveaux objets à fabriquer, et de construire pratiquement tout ce que vous pouvez imaginer. Vous pouvez également créer des mods qui affecteront le comportement du monde et vous permettre, par exemple, de créer des parties depuis le jeu Minetest lui-même.

Prenez par exemple l’ensemble de mods éducatifs listés sur le wiki de Minetest. Cela va de paquets apportant de simples blocs illustrés de lettres et de nombres, jusqu’à des mods qui rendent Minetest compatible avec l’API Python de Minecraft pour Raspberry Pi.

Voyons un exemple.

Les blocks du mod teaching
Les blocks du mod teaching

Le mod Minetest-teaching (l’apprentissage par Minetest) fournit des outils pour créer des casse-têtes arithmétiques et orthographiques. Si les élèves parviennent à les résoudre, vous pouvez les récompenser avec des objets rares ou des blocs.

Pour commencer à l’utiliser, téléchargez-le vers votre répertoire minetest/mods/ :

https://github.com/pbrown66/minetest-teaching.git

Renommez le répertoire en teaching/, sinon ça ne fonctionnera pas. Démarrez Minetest et activez le mod. Pour créer une énigme, par exemple 2+2=, entrez dans le jeu en utilisant le mode créatif et donnez-vous les privilèges de professeur. Pour cela, ouvrez le HUD ([F10]) et saisissez :

/grant [votre nom] teacher

Appuyez à nouveau sur [F10] pour fermer le HUD.

Pour mettre en place l’énigme, creusez une tranchée de 5 blocs de long. Ouvrez l’inventaire ([i]), choisissez l’onglet Nodes (Blocs) et déplacez-vous jusqu’à ce que vous voyiez les blocs d’apprentissage.

Pour l’énigme ci-dessus, vous aurez besoin de quatre blocs lab, d’un bloc checking, de deux blocs allow-dig, de deux blocs 2, d’un bloc +, d’un bloc =, d’un bloc 5 (une mauvaise réponse) et d’un bloc 4 (la bonne réponse).

Posez les quatre blocs lab dans la tranchée en commençant complètement à gauche. Dans le trou qui reste, posez le bloc checking. Placez les blocs 2, +, 2 et = sur les blocs lab comme indiqué ci-dessous.

En posant les blocs qui constituent l’énigme sur des blocs lab, vous les rendez indestructibles et les élèves ne pourront pas détruire de façon accidentelle ou volontaire l’activité proposée.

des blocs vont sur lab pour l'énigme, un emplacement cheking pour répondre, et des emplacement allow dig pour les blocs de réponses.
des blocs vont sur lab pour l’énigme, un emplacement cheking pour répondre, et des emplacement allow dig pour les blocs de réponses.

Cliquez du bouton droit de la souris sur le bloc checking à droite de la tranchée, et une boîte de dialogue apparaîtra. Utilisez-la pour indiquer au bloc quelle est la bonne réponse et lui faire offrir un nugget de sagesse et un prix. Dans l’exemple suivant, la bonne réponse est évidemment 4. Lorsque l’élève trouve la bonne réponse, le message « Bravo ! Voici un diamant. » s’affichera dans son chat et un diamant apparaîtra au-dessus du bloc de solution.

Pour résoudre l’énigme, les élèves doivent saisir les blocs de solution et placer le bon sur le bloc de vérification. Vous pouvez déposer les blocs de solution n’importe où, mais vous devez les placer sur un bloc allow-dig, sinon il deviennent indestructibles et les élèves ne pourront plus le récupérer. Donc, creusez deux trous là où vous souhaitez laisser les blocs de solution, placez un bloc allow-dig à l’intérieur de chacun d’eux, et placez les blocs 4 et 5 sur chacun des blocs allow-dig.

À présent, vous pouvez lâcher vos élèves en liberté dans votre monde.

Quand un élève place une réponse incorrecte (dans notre exemple, le bloc 5) sur le bloc de vérification, rien ne se passe. Il peut le détruire et réessayer. Mais quand il place la bonne réponse (dans notre cas, le bloc 4), l’énigme offre le prix et se verrouille, empêchant l’élève de frapper et de casser le bloc, et de le remettre sans cesse en place pour obtenir une infinité de diamants.

Et la bonne réponse, récompensée par un diamant.
Et la bonne réponse, récompensée par un diamant.

Seul le joueur possédant les droits de professeur peut réinitialiser l’énigme. Il peut effectuer cela en frappant le bloc de solution, en frappant le bloc situé en dessous du bloc de solution et en replaçant et reprogrammant le bloc de vérification.

Blocs de construction

Toute la magie du modding est obtenue grâce à l’utilisation de Lua, un langage de programmation de haut niveau ressemblant par bien des aspects à Python (le langage utilisé dans l’édition Raspberry Pi de Minecraft). C’est un bon choix, car il est clair (vous n’avez pas à vous soucier de symboles étranges comme en PERL, ou de points virgules en fin de ligne comme en C/C++). Il combine les fonctionnalités des langages orientés objet avancés et des langages fonctionnels, et il est spécialement conçu pour la programmation de jeux vidéo.

Bien que ce ne soit pas l’endroit pour enseigner le Lua (il y a déjà d’excellentes ressources en ligne), et qu’expliquer tous les tenants et aboutissants du modding de Minetest allongerait bien trop ce qui est déjà un article excessivement long, regardons au moins l’anatomie d’un mod de type Hello World pour que vous puissiez avoir une idée de la façon de vous lancer.

Ouvrez un éditeur de texte et copiez-y ce qui suit :

minetest.register_on_joinplayer(function(player)
minetest.chat_send_all("Hello " .. player:get_player_name() .. "!")
end)

Voici votre premier mod.

Pour comprendre la première ligne, songez au fait que dans Minetest, la plupart des choses s’exécutent lorsque le joueur fait quelque chose ou que quelque chose se produit dans le monde. On appelle ces choses des événements. Quand un joueur se connecte à un monde Minetest, un événement joinplayer est envoyé. « register_on_joinplayer » est une méthode intégrée qui demande à l’objet minetest de se mettre à écoute d’un tel événement et d’exécuter une fonction quand cela se produit. La fonction est ce que vous pouvez voir entre parenthèses.

Dans notre cas, la fonction prend l’objet « player » (joueur) associé à l’événement et, à la deuxième ligne, extrait le nom du joueur en utilisant la méthode intégrée « get_player_name() ». Le nom renvoyé est stocké dans une chaîne de caractères (notez que « .. » est ce que Lua utilise pour concaténer des chaînes de caractères) qui est ensuite envoyée à tous les joueurs via la méthode intégrée « chat_send_all ».

Une fois que vous avez fini de copier le code, créez un répertoire nommé hello/ dans minetest/mods/ (ou .minetest/mods/) et sauvegardez votre fichier sous le nom init.lua dans votre nouveau répertoire. Vous pouvez aussi créer un fichier texte dans le répertoire hello/ avec une brève description du module – enregistrez-le sous le nom description.txt et il apparaîtra dans l’onglet Mods du panneau de contrôle de Minetest.

Activez le mod et tous les joueurs seront salués lorsqu’ils se joindront à la partie.

Votre mod apparaîtra dans le panneau de contrôle.
Votre mod apparaîtra dans le panneau de contrôle.

Pour en savoir plus sur la manière d’écrire des mods Minetest, consultez le wiki officiel du site des développeurs et jetez un œil aux méthodes Minetest. Cela vous donnera une idée de ce que vous pouvez faire avec le framework Lua. N’oubliez pas non plus d’étudier la façon dont vous devriez organiser les bricoles à l’intérieur de votre répertoire mod.

Mises en garde

Minetest est assez génial, mais bien entendu, il n’est pas parfait. La complexité des composants logiciels sous-jacents fait que le client comme le serveur peuvent planter de temps en temps… Ou du moins, c’est ce que les développeurs me disent. Il est intéressant de noter qu’au cours des recherches consacrées à cet article, je n’ai fait l’expérience d’aucun plantage, même quand j’utilisais la branche de développement instable.

Voici un problème bien plus réel : si Minetest aspire à être utilisé en tant que logiciel éducatif, ce qui devrait être le cas, il ne doit pas seulement rivaliser avec le poids lourd Minecraft sur ses mérites, mais aussi avec le fait que Minecraft arrive pré-installé dans Raspbian pour le Raspberry Pi et avec son interface Python.

Même si l’API Lua de Minetest est bien plus puissante que le Python de Minecraft, à tel point que ce dernier passe pour un joujou en comparaison, et que Dieu me garde de préconiser l’adoption d’une technologie seulement parce que c’est le standard de fait, il faut bien prendre en compte la résistance naturelle de l’humain au changement. Demander aux professeurs de changer à la fois de jeu et de langage de programmation va être difficile à vendre.

La modularité est un autre aspect à prendre en compte. Je l’ai dit tout à l’heure, c’est l’une des raisons qui font de Minetest un jeu génial, mais elle peut être intimidante pour les nouveaux utilisateurs. Une installation basique de Minetest est un peu spartiate : pas de créatures, pas de survie, pas de nourriture, pas de météo… On excuserait facilement un nouvel utilisateur qui, y jouant pour la première fois, se dirait que Minetest n’est qu’une très pâle copie de Minecraft. Je suggérerais la création d’une « version grand public » de Minetest, qui embarquerait le plus grand nombre possible de fonctionnalités de Minecraft que les joueurs attendent de trouver, et qui par conséquent éviterait de décevoir les nouveaux venus.

Pour terminer, il y a ma bête noire que j’évoque très souvent : la documentation. J’ai souvent dû m’en remettre au canal IRC de Minetest. Les wikis de Minetest, bien qu’ils affichent un nombre d’index impressionnant, contiennent beaucoup trop de sections vides. Les exemples de code, quand ils existent, sont inexpliqués et non commentés. Il n’y a pas de tutoriels « apprendre par la pratique ». Quand vous posez la question, les moddeurs les plus expérimentés (qui sont par ailleurs très patients et serviables) mentionnent tout le temps un fichier texte spécifique qui contient des descriptions courtes et souvent énigmatiques des modules et des attributs. Encore une fois, il n’y a pas d’exemples dans ce document qui aideraient les nouveaux utilisateurs à comprendre les outils offerts par l’API.

Conclusion

Minetest a parcouru un chemin incroyable depuis la dernière fois où nous en avions parlé. Le seul fait qu’il fonctionne sur toutes les plateformes, que ce soit GNU/Linux, Windows, OS X, Android ou Raspberry Pi, le place clairement en tête de la compétition. Il a développé une communauté saine et dynamique, et étant open source et doté d’une API ouverte relativement facile à utiliser, il a bénéficié littéralement de centaines d’extensions et de mods.

En tant qu’outil éducatif/collaboratif à destination des jeunes (et des adultes), il est idéal, même meilleur que Minecraft, en raison de sa nature ouverte et libre et de la puissance du polyvalent framework Lua. C’est logique : Minecraft a été décrit à une époque comme un « Lego social » et est vénéré parce qu’il encourage la collaboration, mais qu’y a-t-il de plus social et de plus collaboratif qu’un logiciel libre ouvert jusqu’à son code source ?

Pour aller plus loin :




Logiciel privateur de liberté… jusqu’à la prison ?

Dans le mode du logiciel libre, et contrairement à ce que le nom laisse suggérer, ce n’est pas le logiciel qui est libre, mais bien l’utilisateur du logiciel.

Le logiciel propriétaire, c’est-à-dire l’opposé du logiciel libre, est alors parfois appelé « logiciel privateur », car il prive l’utilisateur de certaines libertés fondamentales (étudier, exécuter, etc. le code source du programme).

Rebecca Wexler, étudiante dans l’école de droit de Yale (Yale Law School) nous montre ici qu’en plus ne nous priver de ces libertés qui peuvent parfois sembler bien futiles pour tout un chacun, ces logiciels peuvent compromettre le système judiciaire et nous priver ainsi de nos libertés fondamentales.

Condamnés par le code

par Rebecca Wexler

Source : Convicted by code (Slate)

Traduction :Vincent,  McGregor, roptat, oS,Diane, CLC, touriste, teromene, Piup, Obny et anonymes.

Obny CC BY-NC-SA Dérivé de Su morais et CyberHades.
Obny CC BY-NC-SA Dérivé de Su morais et CyberHades.

Le code « secret » est partout : dans les ascenseurs, les avions, les appareils médicaux.

En refusant de publier le code source de leurs logiciels, les entreprises rendent impossible son inspection par des tiers, et ce même si le code a un impact énorme sur la société et la politique. Verrouiller l’accès au code empêche de connaître les failles de sécurité qui peuvent nous rendre vulnérables au piratage et à la fuite de données. Cela peut menacer notre vie privée en accumulant de l’information sur nous à notre insu. Cela peut interférer avec le principe d’égalité devant la loi si le gouvernement s’en sert pour vérifier notre éligibilité à une allocation, ou nous inscrire sur une liste d’interdiction de vol. De plus, le code gardé secret permet le trucage des données et occulte les erreurs, comme dans l’affaire Volkswagen : l’entreprise a récemment avoué avoir utilisé un logiciel caché pour truquer les tests d’émission menés sur 11 millions de voitures, qui rejetaient l’équivalent de 40 fois la limite légale.

Mais aussi choquante que la fraude de Volkswagen puisse être, elle ne fait qu’en annoncer bien d’autres du même genre. Il est temps de s’occuper de l’un des problèmes de transparence technologique les plus urgents et les plus négligés : les programmes secrets dans le système judiciaire. Aujourd’hui, des logiciels fermés, propriétaires, peuvent vous envoyer en prison et même dans le couloir de la mort. Et dans la plupart des juridictions des États-Unis, vous n’avez pourtant pas le droit de les inspecter. Pour faire court, les procureurs ont le même problème que Volkswagen.

Prenons la Californie. Martell Chubbs est actuellement accusé de meurtre pour des faits remontant à 1977, dans lesquels la seule preuve contre lui est une analyse ADN effectuée par un logiciel propriétaire. Chubbs, qui dirigeait une petite entreprise de dépannage à domicile à l’époque de son arrestation, a demandé à inspecter le code source du logiciel afin de pouvoir contester la précision de ses résultats. Il cherchait à déterminer si le code implémente correctement les procédures scientifiques établies pour l’analyse ADN et s’il fonctionne comme son fabriquant le prétend. Mais ce dernier a affirmé que l’avocat de la défense pourrait voler ou dupliquer le code et causer des pertes financières à l’entreprise. Le tribunal a rejeté la requête de Chubbs, lui autorisant l’examen du rapport de l’expert de l’état, mais pas l’outil qu’il a utilisé. Des tribunaux de Pennsylvanie, Caroline du Nord, Floride et d’autres ont rendu des décisions similaires.

Nous devons faire confiance aux nouvelles technologies pour nous aider à trouver et condamner les criminels, mais aussi pour disculper les innocents. Les logiciels propriétaires interfèrent avec cette confiance dans de plus en plus d’outils d’investigation, des tests ADN aux logiciels de reconnaissance faciale et aux algorithmes qui indiquent à la police où chercher les futurs crimes. Inspecter les logiciels n’est cependant pas seulement bon pour les accusés : divulguer le code à des experts de la défense a permis à la Cour suprême du New Jersey de confirmer la fiabilité scientifique d’un éthylotest.

Non seulement il est injuste de court-circuiter la possibilité pour la défense de contre-expertiser les preuves médico-légales, mais cela ouvre la voie à de mauvaises pratiques scientifiques. Les experts décrivent la contre-expertise comme « le meilleur instrument légal jamais inventé pour la recherche de la vérité ». Mais des révélations récentes ont révélé une épidémie de mauvaises pratiques scientifiques qui sapent la justice criminelle. Des études ont contesté la validité scientifique des recherche de similitudes sur les marques de morsure, les cheveux et les fibres, des diagnostics du syndrome du bébé secoué, de techniques balistiques, des séances d’identifications olfactives par des chiens, des preuves issues de l’interprétation de taches de sang, et des correspondances d’empreintes digitales. Le Massachusetts se démène pour gérer les retombées des falsifications de résultats par un technicien d’un laboratoire criminel qui a contaminé les preuves de dizaines de milliers d’affaires criminelles. Et le Projet Innocence rapporte que de mauvaises analyses légales ont contribué à l’incrimination injustifiée de 47% des prévenus. L’Académie Nationale des Sciences (National Academy of Sciences) accuse entre autres le manque de processus d’évaluation par les pairs dans les disciplines liées à l’analyse légale d’être responsable de cette crise.

Les logiciels ne sont pas non plus infaillibles. On a découvert des erreurs de programmation qui changent les ratios de probabilité des tests ADN d’un facteur 10, amenant des procureurs australiens à remplacer 24 avis d’experts dans des affaires criminelles. Quand les experts de la défense ont identifié une erreur dans le logiciel de l’éthylotest, la Cour suprême du Minnesota a invalidé le test en tant que preuve pour tous les futurs jugements. Trois des plus hautes cours de l’état (américain, NdT) ont encouragé à accepter davantage de preuves de failles dans des programmes, de manière à ce que les accusés puissent mettre en cause la crédibilité de futurs tests.

La contre-expertise peut aider à protéger contre les erreurs – et même les fraudes – dans la science et la technique de l’analyse légale. Mais pour que cet appareil judiciaire puisse fonctionner, l’accusé doit connaître les fondements des accusations de l’état. En effet, lorsque le juge fédéral de Manhattan, Jed S. Rakoff, a démissionné en signe de protestation contre la commission sur les sciences légales du président Obama, il a prévenu que si l’accusé n’a pas accès à toutes les informations pour effectuer une contre-expertise, alors le témoignage d’un expert judiciaire n’est « rien d’autre qu’un procès par embuscade » (c.-à-d. sans accès préalable aux éléments  de preuve, NdT).

La mise en garde de Rakoff est particulièrement pertinente pour les logiciels des outils d’analyse légale. Puisque éliminer les erreurs d’un code est très difficile, les experts ont adopté l’ouverture à l’analyse publique comme le moyen le plus sûr de garder un logiciel sécurisé. De manière identique, demander au gouvernement d’utiliser exclusivement des outils d’analyse légale ouverts permettrait leur contre-expertise participative. Les fabricants d’outils d’analyse légale, qui vendent exclusivement aux laboratoires d’expertise criminelle du gouvernement, peuvent manquer de motivations pour conduire les tests de qualité minutieux requis.

Pour en être certains, les régulateurs du gouvernement conduisent actuellement des tests de validation pour au moins quelques outils d’analyse légale numériques. Mais même les régulateurs peuvent être incapables d’auditer le code des appareils qu’ils testent, se contentant à la place d’évaluer comment ces technologies se comportent dans un environnement contrôlé en laboratoire. De tels tests « en boite noire » n’ont pas été suffisants à l’Agence de Protection de l’Environnement (Environmental Protection Agency) pour repérer la fraude de Volkswagen et ce ne sera pas non plus assez pour garantir la qualité des technologies numériques d’analyse légale.

La Cour suprême a depuis longtemps reconnu que rendre les procès transparents aide à s’assurer de la confiance du public dans leur équité et leur légitimité. Le secret de ce qu’il y a sous le capot des appareils d’informatique légale jette un doute sur ce processus. Les accusés qui risquent l’incarcération ou la peine de mort devraient avoir le droit d’inspecter les codes secrets des appareils utilisés pour les condamner.




Quand l’open-source fait peur aux parents…

Les lecteurs réguliers de ce blog seront les premiers ravis si leurs enfants ou adolescents se lancent d’eux-même dans l’usage de logiciels libres. Mais nous savons tous que c’est parfois une découverte pour des parents moins à l’aise que leurs enfants avec les usages numériques.

Alors, parfois, il faut pouvoir les rassurer. C’est l’objet de cette lettre ouverte, écrite par Jim Salter et traduite pour vous par la dynamique équipe de Framalang. Attention, certains liens de cet article sont ceux proposés par l’auteur et sont donc en anglais.

Chers parents : Laissez vos enfants utiliser des logiciels open source

par Jim Salter

Source : Dear parents: Let your kids use open source software
Traduction Framalang : Blanchot, kaelle, line, Manegiste, pouhiou, rOu, teromene, touriste et quelques valeureux anonymes

Horst JENS - CC BY-SA
Horst JENS – CC BY-SA

Un jeune homme de 16 ans a récemment demandé conseil à la communauté Linux de reddit. Quand ses parents ont découvert qu’il avait installé Linux sur son ordinateur portable, ils étaient terrifiés. Après tout, ces logiciels « gratuits » doivent certainement être infestés par des virus et/ou des pirates. Ce qui n’a pas non plus aidé, c’est qu’il a gaspillé un cadeau coûteux et qu’il n’utilise plus aucun des logiciels hors de prix qui ont été achetés en même temps. Il a essayé d’en discuter, mais clairement : il était l’adolescent et ils étaient les adultes.

À l’aide des informations et des conseils fournis par la communauté Reddit, ce jeune homme a reparlé à ces parents et a apaisé la plupart de leurs craintes. La lettre ouverte que vous lisez est destinée aux autres parents qui ont découvert que leurs enfants utilisaient des logiciels libres et qui ne savent pas bien ce que c’est, ou si c’est une bonne idée de les utiliser.

Qui suis-je ?

Clairement, cet article ne parle pas de moi : il parle de vous, de vos enfants, de vos logiciels. Mais pour vous donner une idée de la personne qui vous donne ces informations, mon nom est Jim Salter. J’ai 43 ans et je suis administrateur système professionnel, auteur et conférencier. Je possède et j’administre avec succès quelques petites entreprises, et j’attribue la plupart de ces succès au FOSS, le logiciel libre et open source, qui fait fonctionner mes activités, celles de mes clients et la majeure partie de l’économie dont nous faisons partie.

Que veut dire FOSS ?

FOSS est un acronyme qui signifie logiciel libre et open source (Free and Open Source Software). Cet acronyme inclut des systèmes d’exploitation comme GNU/Linux et FreeBSD, ainsi que des applications comme LibreOffice (qui gère des documents, comme ceux créés par Microsoft Excel, PowerPoint et Word), Firefox (un navigateur web, comme Internet Explorer ou Safari), ou GIMP (un éditeur d’images, comme Adobe Photoshop).

Les FOSS ne sont pas des logiciels « volés ». Les licences libres telles que la licence GPL, BSD ou Apache permettent aux utilisateurs d’utiliser le programme librement, et aux développeurs de modifier tout aussi librement les logiciels sous ces licences. Une autre chose importante à comprendre à propos du logiciel libre est qu’il ne s’agit pas uniquement de logiciels gratuits. Créer une copie d’un logiciel ne coûte rien. Ceci a permis à la communauté de créer des produits de renommée mondiale, ce qui n’aurait pas été possible avec une approche purement matérialiste de notre économie.

Les FOSS sont un effort collectif, avec un accent particulier porté sur la communauté. Tous les utilisateurs qui se servent activement de logiciels libres contribuent réellement, à leur manière, à ce projet. En utilisant un projet, l’utilisateur en favorise la diffusion et attire ainsi d’autres utilisateurs. Certains d’entre eux vont remplir des rapports d’erreur, aidant ainsi les développeurs du projet à comprendre ce qui ne fonctionne pas correctement dans le code, ou ce qui pourrait être amélioré.

D’autres utilisateurs qui savent programmer répareront ces erreurs ou ajouteront de nouvelles caractéristiques, ce qui améliore directement le projet. D’autres, qui écrivent bien, amélioreront la documentation, permettant à de nouveaux utilisateurs d’apprendre comment mieux se servir du projet. C’est à cela que nous faisons référence quand nous parlons de communauté de l’open source. Même dans les cas de projets avec des développeurs payés à plein temps par une grande entreprise, la communauté est extrêmement importante. Cette communauté est vitale pour que le projet demeure vivant, actif et attractif.

Comment les logiciels libres peuvent-ils être sûrs ?

Il est facile de comprendre pourquoi on peut penser que ce qui est gratuit ne peut pas être aussi bon que quelque chose de payant. Dans une époque où un nouveau virus semble nous guetter à chaque coin de rue, on est facilement suspicieux. On ne peut pas faire confiance aux programmes gratuits accessibles d’un seul clic dans les bannières publicitaires sur les sites Internet. Alors, pourquoi faire confiance aux logiciels libres, eux aussi gratuits ?

Encore une fois, il est important de comprendre la différence entre « gratuit » et « libre » [NdT : En anglais, gratuit et libre se traduisent par « free »]. Et ici encore, c’est la communauté qui fait la différence. Quand un site Internet douteux vous propose de télécharger des réductions alléchantes, des pilotes pour votre ordinateur ou tout autre forme de camelote, cela veut simplement dire qu’il n’est pas nécessaire de sortir sa carte de crédit. Vous ne pouvez pas voir personnellement le code source de ce téléchargement « gratuit » – et c’est la même chose pour tout le monde. Il est donc facile pour la personne lançant le « clic gratuit » d’y dissimuler des choses dont vous ne voulez pas. En fait, vous téléchargez à l’aveuglette – c’est-à-dire que l’on vous offre une boîte bien fermée avec une simple promesse sur son contenu.

Avec les logiciels libres, vous n’avez pas uniquement la possibilité de télécharger gratuitement – vous obtenez la liberté de commenter librement (voire même de modifier) le code du logiciel lui-même. Là où un « programme téléchargeable gratuitement » peut suivre (et suit) secrètement toutes vos activités sur Internet ou imposer des publicités sur les pages que vous consultez pour faire gagner de l’argent à leurs auteurs, un programme libre et open source ne peut en pratique rien faire de tel. S’il essayait, les utilisateurs les plus chevronnés dénicheraient le code « secret » à l’origine des désagréments causés aux utilisateurs – et peu de temps après, des utilisateurs plus compétents encore désactiveraient le code qui aurait nui (aux utilisateurs).

Dans la vie, le risque zéro n’existe pas. Cependant, avec un code source ouvert, vous savez que le maximum de personnes, dont l’objectif est de rendre le programme bénéfique pour l’utilisateur (plutôt que d’en tirer de l’argent), s’impliquent activement pour que le code demeure bénéfique pour les utilisateurs. C’est un avantage que les logiciels propriétaires ne peuvent pas vraiment reproduire, parce que le premier objectif des logiciels propriétaires n’est pas de satisfaire les utilisateurs, mais de rapporter de l’argent à leur éditeur.

Intéressés par des articles sur les résultats du logiciel libre en matière de sécurité ? Katherines Noyes de PCWorld vous donne cinq bonnes raisons pour lesquelles Linux est plus sécurisé que Windows .

Pourquoi voudrais-je que mes enfants utilisent des logiciels libres ?

Est-ce qu’ils ne devraient pas utiliser la même chose que tout le monde ?

crédit : Lucélia Ribeiro, CC BYSA

Ah, c’est la partie la plus drôle ! Il serait facile de regarder autour de vous au bureau et de voir des machines sous Microsoft Windows, ou de jeter un coup d’œil dans un café et de voir des téléphones Apple, et d’en déduire que « les logiciels propriétaires font fonctionner le monde ». Mais ce serait une erreur. Le logiciel libre est plus souvent en coulisses que devant vos yeux, mais il s’agit de la force motrice de l’économie mondiale. C’est dur à croire ? Prenons quelques exemples. Je vais fournir des liens, de façon à ce que vous puissiez vérifier mes dires ou en apprendre plus.

Il est intéressant de noter que même Microsoft utilise désormais Linux pour son infrastructure technique – donc ce n’est pas comme si un enfant perdait sa capacité à travailler avec des éditeurs de logiciels propriétaires en optant très tôt pour Linux .

Regardons quelques exemples intéressants d’utilisation de logiciels libres comme Linux ou FreeBSD. BMW et Audi utilisent Linux. Les industries de l’Internet, la finance, la santé et l’assurance utilisent Linux massivement. Le géant Amazon fonctionne sous Linux depuis plus de 10 ans. Le géant de la recherche Google utilise Linux non seulement pour son infrastructure publique, mais aussi pour les PC que ses employés utilisent tous les jours. IBM exécute même Linux sur ses ordinateurs centraux Z pour les entreprises !

L’usage de Linux est de plus en plus prégnant dans les institutions éducatives, de la crèche à l’université, partout dans le monde. Pour donner un exemple littéralement extra-terrestre, la Station Spatiale Internationale utilise Linux. Et si vous n’en avez pas encore assez d’exemples, voici une liste de plus de 50 utilisateurs Linux dans l’éducation, les services gouvernementaux et les grosses sociétés.

BSD – un autre exemple de système d’exploitation libre qui permet d’utiliser pratiquement les mêmes applications que Linux – n’est pas aussi connu que Linux pour le moment, mais il est tout aussi important. Sans BSD, nous n’aurions probablement pas l’Internet tel que nous le connaissons ; le protocole réseau TCP/IP de nos ordinateurs a en partie été adopté parce qu’il était librement disponible sous licence BSD, et le protocole Routing Information Protocol qu’il utilisait pour gérer d’énormes réseaux vient de BSD lui-même.

Si vous cherchez suffisamment bien, vous trouverez BSD partout – des parties du système OS X d’Apple viennent de FreeBSD, la PlayStation 4 de Sony utilise une version modifiée de FreeBSD, Juniper utilise FreeBSD pour ses routeurs réseau d’entreprise, NetFlix utilise FreeBSD pour diffuser et stocker les séries et films, et WhatsApp utilise une infrastructure FreeBSD pour faire circuler des messages instantanément entre des millions d’utilisateurs dans le monde.

Mais cela ne se limite pas aux systèmes d’exploitation libres. Les applications libres font également fonctionner une bonne partie de notre environnement. Les serveurs Web Apache et NGINX sont utilisés pour plus de 70% des sites Internet mondiaux, grands ou petits. L’application d’animation et de rendu 3D Blender a été utilisée pour créer des films gratuits impressionnants, mais également des courts-métrages indépendants primés, des publicités pour des produits comme Pepsi, Coca-Cola, BMW, Hugo Boss, et bien d’autres. Si vous avez déjà utilisé Mozilla Firefox, alors vous avez utilisé un logiciel FOSS, et même le navigateur Chrome de Google est basé sur le navigateur open source Chromium.

Le fait est qu’il y a beaucoup, et je veux dire vraiment beaucoup de façons de gagner sa vie à l’âge adulte avec une bonne connaissance des technologies open source… et de gagner plus que si vous ne les connaissiez pas. Considérablement plus, en fait – Indeed.com vous montrera que les emplois avec les mot-clés « Microsoft Windows » sont rémunérés en moyenne 64 000 $ par an tandis que ceux avec « Linux » sont en moyenne payés 99 000 $ par an.

Pour conclure

Si vous n’êtes pas encore saturé par l’excès d’information, j’espère que vous serez d’accord avec moi : l’intérêt d’un enfant pour les logiciels libres et open source est une chose merveilleuse. Le summum étant que la communauté vous accueille, en tant que parents et individus, autant que vos enfants. Si vous voulez comprendre ce que vos enfants sont en train de faire, vous pouvez lire la documentation du système d’exploitation et des logiciels qu’ils utilisent, ou vous pouvez installer les mêmes logiciels sur votre propre ordinateur pour essayer. Il ne vous en coûtera rien. Et il se pourrait même que vous y gagniez beaucoup.




« 2° avant la fin du monde » : un documentaire écolo à traduire Librement

Il y a peu de temps, les journalistes auteurs de #DataGueule ont appelé à l’aide la communauté Framalang. Leur long métrage « 2° avant la fin du monde », un documentaire critiquant la COP 21 et expliquant les enjeux du réchauffement climatique, est déjà un succès francophone. Ils aimeraient proposer des sous-titres en anglais, espagnol, etc. pour que d’autres audiences puissent en profiter… mais voilà : ce long-métrage n’est pas Libre.

Quand les communs nous rassemblent…

Qu’on soit bien d’accord : profiter des communautés bénévoles pour augmenter la valeur de son travail propriétaire, c’est moche. Sauf que là, on n’est pas dans un modèle aussi manichéen. Déjà parce que les équipes de #DataGueule, bien qu’officiant sur YouTube (attention les liens suivants vous y mènent ^^), ce sont celles qui ont créé des vidéos vulgarisant avec brio des sujets complexes comme :

On a mis assez de liens vers YouTube comme ça, alors exceptionnellement, cette image ne mène à rien ;)
On a mis assez de liens vers YouTube comme ça, alors exceptionnellement, cette image ne mène à rien ;)

Bref : autant d’outils pour sensibiliser les Dupuis-Morizeau de notre entourage aux sujets qui nous sont chers. Sans compter toutes leurs autres vidéos, dont les thèmes et l’angle défendent souvent cette idée des communs… ou montrent les enclosures des systèmes dans lesquels nous vivons. C’est une nouvelle fois le cas avec ce pamphlet écologique qu’est « 2° C avant la fin du monde. »

Car ce n’est pas pour rien si la coalition entre militant-e-s écologistes, libristes, personnes engagé-e-s dans l’ESS ou la lutte des classes a fait tomber ACTA. Ce n’est pas pour rien si Framasoft (aux côtés de nos ami-e-s de l’APRIL et de biens d’autres) a défendu les valeurs du Libre dans de nombreuses villes accueillant un Alternatiba : cette notion qui nous rassemble, c’est celle de communs. Le Libre et l’Écologie ont tout intérêt à tisser des ponts entre eux, et nous y voyons là une magnifique occasion.

…le droit d’auteur nous divise.

Seulement voilà : ces vidéos comme leur documentaire ne sont pas sous licence Libre. Vous demander de participer à ajouter de la valeur à une création de l’esprit qui ne respecte pas vos libertés, c’est un peu comme vous proposer de participer au financement participatif d’une production qui restera l’entière propriété de ses auteurs : vous prenez tous les risques et il faut une certaine dose de confiance.

Le débat a eu lieu chez Framalang. DataGueule, ce sont visiblement des gens qui partagent nombre des valeurs-clés du Libre et des Communs. Ce sont des journalistes issus du malheureusement défunt OWNI, qui ont co-écrit l’excellent documentaire « Une contre-histoire de l’Internet ». Bref, des gens biens. C’est une production qui n’hésite pas à diffuser son long métrage sur YouTube avant même qu’il ne passe à la télévision (est-ce pour cette raison qu’il n’y a pas de budget pour la traduction ?), ce qui nous permet de vous le faire découvrir dans cet article :


Vidéo « 2° avant la fin du monde » sur Youtube

cliquez sur l’image pour visionner le documentaire (YouTube)

Dans nos équipes s’est fait le choix de la main tendue. Chers DataGueule (et chère prod d’IRL Nouvelles Écritures), celles et ceux d’entre nous qui le veulent vont tenter de traduire votre documentaire. Cette traduction sera libre, proposée sous la licence CC-BY-SA. Nous espérons qu’en vous faisant goûter aux joies du Libre, vous envisagerez de passer vos productions sous ces licences (même YouTube propose une CC-BY, c’est facile !) et de parler encore plus de ces sujets qui nous rassemblent.

Libre à vous de traduire (ou pas)

Alors voilà : libristes de tous poils, linguistes polyglottes, fan-subbeurs acharné-e-s et/ou écolos de tous bords : la balle est dans votre camp. Libre à vous de décider si les enjeux, le sujet et l’œuvre méritent votre participation. Libre à vous de venir participer à cette collaboration entre libristes, écolos… bref : entre commoners.

Vous y trouverez à chaque fois la liste des pads où vous pourrez traduire (c’est déjà bien entamé), relire, amender, participer, etc. Pensez à respecter les façons de faire, à bien entrer votre nom (et à choisir votre couleur) dans l’icône « bonhomme » en haut à droite, et à faire un coucou sur le chat (en bas à droite).

Et si cette expérience vous a plu, vous pouvez rejoindre nos groupes de traductions collaboratives, promis, on ne mord pas (sauf un, mais on dira pas qui).