OpenStreetMap pour la cartographie libre de votre site web

J’ai récemment conçu et mis en ligne un site web d’informations pour La foulée des parcs, un événement sportif de course à pied qui aura lieu à Outremont (Montréal) cet été.

On m’avait suggéré d’utiliser Google Maps et le matériel qu’on m’avait donné consistait en quelques captures d’écran de parcours générés via MapMyRun.com. J’ai décidé de tenter de remplacer cette approche par l’utilisation de données et cartes d’OpenStreetMap:

OpenStreetMap est un projet qui a pour but de constituer une base de données cartographiques libre du monde (permettant par exemple de créer des cartes sous licence libre), en utilisant le système GPS et d’autres données libres. Il a été initié en juillet 2004 par Steve Coast au University College de Londres. Par l’utilisation de moyens informatiques basés sur Internet qui permettent l’intervention et la collaboration de tout utilisateur volontaire, OpenStreetMap relève de la géomatique 2.0 et est aussi une contribution à ce qui est appelé la néogéographie, dont les outils composent le GeoWeb.

Ce choix était d’autant plus logique étant donné que j’ai moi même tracé et corrigé beaucoup d’informations parmi mes contributions à OpenStreetMap, spécifiquement dans l’arrondissement d’Outremont (incluant beaucoup de ruelles!). Le but de l’exercice était de constater en tant que conseiller en TI libres (logiciels, données, contenus, etc.) s’il était possible de faire ce choix tout en donnant autant de fonctionnalité et de qualité sur l’aspect précis des cartes que si on utilisait Google Maps. L’exercice n’est pas terminé, l’événément ayant lieu le 16 juin d’ici là il y aura certainement des ajustements, mais les premiers commentaires des visiteurs et organisateurs de l’événement sont très positifs! C’est encourageant.

Je voulais aussi saisir l’opportunité d’améliorer encore plus les données des parcs de mon arrondissement. C’est mon devoir de citoyen (pas seulement numérique!), après tout. J’espère intéresser d’autres citoyens à contribuer à OpenStreetMap, quoique le seul fait de repasser sur mes contributions m’a déjà permis d’en corriger et augmenter quelques unes. À long terme, il me semble plus durable d’investir temps et énergie à l’amélioration du bien commun que constitue OpenStreetMap – mais surtout avoir un exemple bien local de ressource web qui utilise ces données.

Étant donné les contraintes de temps (quelques heures pour faire tout le site) et comme je devais refaire au complet les cartes, captures et données dérivées, j’ai utilisé une combinaison de fichier PDF avec les captures d’écrans et codes QR, archives .zip (pour rendre disponibles les traces en format de données ouvertes GPX et KML). Le fichier PDF inclût tous les parcours avec des liens par code QR vers les cartes statique ou interactive de chaque parcours. C’est utile pour consulter en impression ou si on a un appareil mobile (téléphone, tablette), quelqu’un qui a le PDF imprimé peut quand même partager cette information sans accéder à une imprimante.

Créer le document maître pour les cartes et générer le document PDF est une autre tâche simplifié par l’utilisation de LibreOffice. J’ai failli oublier ce logiciel dans les crédits tellement je suis habitué à l’utiliser.

Cartes-LaFouleedesParcs2013.pdf_006

J’ai aussi utilisé des liens directs vers le site Show Your Journey – http://syj.renevier.net/ (SYJ). Comme le site SYJ avait déjà une interface français/anglais (et japonais!), j’ai pu faire ce choix facilement. Voici un exemple de trace de parcours de la course. Pour une prochaine itération du même site ou autre semblable, l’idéal serait d’intégrer directement le code  de SYJ (libre, soit dit en passant).

Le résultat est ici:
http://lafouleedesparcs.com/courses/

Voici quelques captures d’écran:

Exemple d'intégration de lien vers Share Your Journey
Un lien banal vers la carte interactive – moins attrayant visuellement mais plus respectueux des ressources externes.
Exemple d'intégration de liens PDF, GPX, KML et cartes interactives
La section « Courses » du site inclût un maximum de variété de données pour donner le choix d’utilisation aux coureurs avant, pendant et après la course.

L’absence de cartes embarquées à même le site n’est pas un hasard, je ne voulais pas abuser des ressources du site SYJ – mais elle serait possible et certainement plus intéressante visuellement.

Un autre aspect important de la conception de ce site était de documenter les outils employés et leurs licences pour arriver aux résultats qu’on voit. Tout comme le code source et les licences de la plupart des outils employés étaient libres, je voulais m’assurer qu’un autre informaticien pourrait rapidement reproduire, étudier, modifier et partager mon travail. Le résultat est la section Crédits, une partie que je vois rarement détaillée dans la plupart de sites web conçus à l’aide d’outils, contenus et logiciels libres.

Après tout, le défi ici ne consiste pas à concevoir ce genre de sites mais bien à ne pas dupliquer les efforts d’autres, à être plus efficaces, tout en contribuant à des projets, données et  logiciels libres – sans oublier de citer nos sources. En tant que consultant en TI libres, je ne me sens pas menacé par le partage de ces informations, bien au contraire. D’une part mes clients sont rassurés car quelqu’un d’autre pourra comprendre et reprendre mon travail rapidement – et ça garde la pression sur moi pour être plus méticuleux, mieux planifier, mieux évaluer, faire moins d’erreurs. D’autre part la ligne est claire entre mon travail et celui des intégrateurs, graphistes, designers, rédacteurs, et autres: on peut collaborer, et je peux guider ou partager le travail de différentes manières, tout en tenant compte des valeurs communes aux libertés accordées par les ressources employées. Le plus difficile est souvent de briser les mauvaises habitudes et le manque d’information qui mènent à la dépendance de « solutions » informatiques non-libres.

Si le projet OpenStreetMap vous intéresse et que vous voulez y contribuer au Québec, voici quelques liens pour débuter:

J’ai aussi une page personnelle indiquant mes contributions et intérêts au sein de ce projet.

Une prochaine fois je vais parler aussi de la mesure et de l’analyse de statistiques de sites web à l’aide de Piwik, un autre logiciel libre.

Ajenti, another web admin panel

I just found out about Ajenti, a system management Web UI (released as free open source software under the GPLv3 license), it may be useful to manage desktops and small server setups, as opposed to other projects like Zentyal which do a lot more.

Ajenti

I’ve asked if it’s compatible with Ubuntu 12.04 LTS (which would mean also compatible with Trisquel 6).

Why is this interesting? There are tons of web interfaces out there and vendors of NAS hardware all implement a variation of this. A few years ago when I came across the Franklin Street Statement on Freedom and Network Services I decided that if I was to advocate the use of autonomous, self-hostined/managed services, I should try to Eat my own dog food whenever I could. With this in mind, I kept my eyes open for projects that would not only publish their source code under free open source licenses but also would be easy to implement at home, with consumer hardware, in typical DIY manner – just a bit shy of the current cloud this and cloud that madness.

I’ve been using OpenMediaVault for a couple of small NAS projects, and I love it. It’s based off Debian so I am in familiar territory, I wish this was part of Debian already, I prefer adding such web UIs to existing vanilla installs instead of using a dedicated/modified/derived distribution. I also like its plugins, specially the OpenVPN one, which even generates archives with files and instructions when creating a new access. But aren’t plugins much like packages, optional funcitonality which you should be able to add/remove without bvreaking the system? The main difference is when you have pluggins in such a web UI, such plugins aren’t of Debian-package quality, and introduce yet another layer of software you need to keep an eye on for updates, upgrades, security, etc. Oh, and yet another bug tracker, forum, blog, etc. to follow if you are to get involved.

I’ve always wondered why web UIs like those on OpenWRT or DD-WRT / Tomato are not part of all GNU/Linux distributions, as a separate package. A lot of commercial providers come up with their own too, it all seems like a huge duplication of effort when someone comes up with yet-another-web-ui. Having a common project or interface guidelines would make it easier to use 100% free software on such devices, while having an easy-to-use web interface.

When I researched alternative firmware to use with my DNS-323 Dlink NAS device, I came across Alt-F, yet another one! This motivated me into researching how to install a full distribution on it – eventually Debian was it. It’s very interesting that one can install Debian on several NAS-like devices or specialized hardware, but then you loose the access to a nice (though always different) web interface provided by the vendor.

In many ways it seems sysadmin work and infrastructure management can be done with 100% free software, but what good is it when you have to depend on proprietary interfaces or middleware? I think projects like OpenMediaVault and Ajenti go in the right direction.

What are your favorite Web UI implementations of every-day infrastructure administration tasks?

Tux Noël, Ahiṃsā et la CC-0

C’est assez rare qu’un de mes enfants intègre une marque ou un logo dans ses dessins, j’ignore pourquoi. Peut-être qu’à force de répéter que Word n’est pas synonyme de Traitements de Texte, ni Kleenex de Mouchoir, ni IPod ou MP3 de Baladeur on a fini par freiner un peu ce réflexe enfantin… et parfois adulte?

Même quand j’étais un fan-fini d’Ubuntu je n’approuvais pas que ce soit le mot qu’on utilise pour désigner le système d’exploitation à la maison. Et mes amis savent bien combien de casquettes, collants, sacs et autre matériel promotionnel j’avais accumulé! 🙂 J’ai donc eu une belle surprise avec une petite exception qu’une de mes filles a faite pendant le temps des fêtes. Un jour pendant les vacances elle m’a demandé de lui imprimer un Tux, et elle est partie avec la copie imprimée. Un peu plus tard j’ai retrouvé ceci sur le réfrigérateur, dans la cuisine:

Tux Noël
Tux Noël – modifications libérées au domaine public – Licence CC0 1.0 Universal (CC0 1.0)

Je lui ait fait remarquer qu’elle n’y avait pas mis son nom et j’allais enchaîner avec une question sur quelle licence elle allait y mettre – mais voici le court échange qui a suivi:

Elle: C’est un cadeau. Pourquoi mettre mon nom?
Moi: Pour que les gens qui le voient sachent qui l’a fait? C’est important, non?

Elle: Pas vraiment. Tu peux faire ce que tu veux avec! Bye!

J’ai donc décidé de faire la même chose, vous l’offrir en cadeau, sans conditions.

Il y a quelques jours j’ai vu cet article sur Framablog qui décrivait un geste semblable, et ça m’a rappelé ma promesse à ma fille de partager son cadeau, sans conditions.

Petite précision: L’image de Tux originale étant publiée sans licence claire, c’est bien les modifications au Tux original qui sont ici publiées sous licence CC0 😉

Exit la télé par câble, bienvenue à l’enregistreur numérique libre

Mon projet d’autonomie télévisuelle à la maison avance et a franchi une étape importante cette semaine: notre compte de câble (service Illico) de Vidéotron est officiellement fermé 🙂 Un enregistreur numérique conçu à partir de logiciels libres et de composantes informatiques ordinaires remplace maintenant la boîte noire fournie par cette entreprise québécoise. Ce projet s’est étalé sur environ 2 ans à temps perdu, parfois quelques minutes à la fois, parfois quelques heures de suite lors de nuits blanches ou autre moments de loisirs (j’ai une famile plus nombreuse que la moyenne des foyers au Québec) 🙂

Je tiens à préciser que le service technique et la qualité des services et appareils de Vidéotron sont exceptionnels, par contre le service à la clientèle pour ce qui est de la facturation lors  un week-end de fête du travail peut vous laisser avec une brique à la maison à la place de votre enregistreur numérique.

 

Illico_télé_numérique
Source: Wikipedia 

Ce projet personnel et son partage sont motivés par plusieurs facteurs:

  • Les pratiques douteuses de Radio-Canada, société d’état canadienne, pays où je paie des taxes qui la financent, et leur utilisation douteuse et discriminatoire de formats qui exigent des logiciels propriétaires sur leurs sites web, un sujet qui revient souvent sur la liste de discussion Ubuntu Québec;
  • Le lancement du site Tout.TV avec son manque flagrant de respect pour son audience utilisant Gnu/Linux: il faut encore simuler être un navigateur Apple pour avoir accès à des formats standards ou utiliser Flash, une aberration en 2012- des restrictions futiles étant donné la possibilité technique de les contourner (sauf pour la qualité de l’image);
  • Les restrictions par géolocalisation, d’espace, format (pas de HD sur les site web, même si on voudrait payer pour), heure (un exemple, une émission « osée » qui avait été limitée sur Internet), visionnement (« uniquement en ligne », pas de téléchargement direct possible/visionnement hors-ligne) et autres;
  • Le constat que mon enregistreur numérique était sous le contrôle de Vidéotron et devenait une brique si le service était interrompu, tout en bloquant l’accès aux émission enregistrées. J’ai d’ailleurs fait l’expérience du contrôle qu’exerce Vidéotron sur ces appareils lorsqu’ils ont effacé son contenu au complet à distance (à ma demande);
  • Le fait que passer à la technologie HD chez moi nécessiterait de racheter l’équipement (enregistreur numérique) et payer plus cher non seulement pour le service mais aussi pour les émissions/postes, ainsi que pour avoir accès au visionnement et programmation à distance;
  • Le manque d’exemples documentés publiquement auxquels on pourrait se référer facilement, sous forme de « recette », en utilisant un maximum de logiciels libres et formats libres pour remplacer ces pratiques et équipements désuets.
Cbc_tux
Source: LibrePlanet QC

j’ai commencé à documenter ce que je trouvais pour contourner ou trouver une solution permanente à ces problèmes sur « Radio-Canada Libre« , une page wiki éditée sur LibrePlanet, site de communauté de la Free Software Foundation dont je suis membre. Je trouvais incohérent de faire la promotion d’autonomie et liberté technologique dans mon travail en même temps que j’avais cet appareil dans mon salon. Au fil du temps je me suis rendu compte que la solution de remplacement est possible pour peu qu’on se renseigne, et à la portée de tous, pour peu qu’on sache suivre une telle recette.

n298602129514_4994
Tux et Tou.TV

L’enregistreur numérique de Vidéotron est remplacé par TVHeadEnd (logiciel libre sous licence GPLv3) sur Gnu/Linux (dans une machine virtuelle), qui enregistre vers deux NAS (stockage réseau) DNS323 par NFS (protocole d’accès à distance aux fichiers sur le NAS), à partir de 2 syntoniseurs numériques réseau doubles HDHomeRun. Le NAS qui roule aussi Gnu/Linux (microgiciel Alt-F, logiciel libre sous licence GPLv2) partage ensuite par DLNA. La capacité de stockage des deux NAS est de 5 TB (combinée).

Des obstacles ou « irritants » importants demeurent, et on comprends pourquoi quelqu’un pourrait choisir de payer 100$ et plus par mois pour accéder au service par câble/satellite:

  • Pour avoir un bon signal il est indispensable d’avoir une bonne antenne. En poser une et la positionner correctement n’est pas toujours facile ou fiable ou simple ou abordable.
  • Malgré la présence d’une antenne, il faut être proche des zones où le signal des postes que vous voulez se rends, soit un grand centre urbain (Montréal) ou en banlieue pas trop loin. Un endroit idéal: la rive-sud de Montréal d’où on peut capter aussi des postes numériques américains. Même dans les zones de très bon signal les commis de magasins qui vendent des télévisions n’y connaissent pas grand chose ou vont rapidement proposer le service de câblo-distribution sans élaborer sur les alternatives. Pourtant, vendre l’équipement requis serait probablement plus payant!
  • Les 400+ postes parfois disponibles en combinant multitude de plans offerts par les cablo-distributeurs ne sont pas transmis gratuitement sur les ondes en HD. Si vous dépendez de postes comme RDS, Yoopa, History Channel, etc. ceci ne remplacera pas vos plans numériques
  • Le coût du matériel, qui, je suppose, est financé par les coûts d’abonnement aux services, monte vite. Ma configuration personnelle dépends d’un ordinateur (utilisé pour la famille aussi, oui), de capacité moyenne (Core i5 avec 8GB de RAM), un réseau local Gigabit, 2 NAS (~200$ ou plus chacun, neuf, moins seconde main), 4 disques durs (~150$ chacun), 2 syntoniseurs réseau doubles (~130$ chacun), une bonne antenne (prix variés), et j’en oublie certainement. En revanche cette équipement peut servir à beaucoup plus.
  • Pas de fonctions de télé intelligente (ie. comme le service Illico): TV à la demande, radio, etc. – à moins d’ajouter un système XBMC.
  • La programmation pour l’enregistrement se fait via une interface web, pas à partir du poste de télé directement (sauf si on utilise XBMC)
  • Pour écouter des émissions sur d’autres appareils ou à distance il faut transcoder dans le bon format
L'interface web de contrôle de TVHeadEnd
L’interface web de contrôle de TVHeadEnd

Quelques avantages très concrets de cette configuration libre « maison »

  • La programmation pour l’enregistrement se fait via une interface web, pas à partir du poste de télé directement (sauf si on utilise XBMC) 🙂
  • Les syntoniseurs réseaux ne sont pas « incrustés » à vie dans l’ordinateur qui en tire le signal de télé numérique, on peut donc les remplacer facilement en cas de bris
  • Les syntoniseurs réseaux sont disponibles à partir d’une machine virtuelle pour laquelle je peux allouer des ressources (mémoire, disque, etc.) selon les besoins, sans changer la configuration physique (câblage, connection, emplacement, antenne, etc.) de ceux-ci
  • On peut écouter des émissions d’une quantité illimitée d’appareils pour peu qu’on transcode au bon format
  • Pas de restrictions sur l’accès au fichiers: je peux le copier, partager sur mes appareils, couper (pour prendre un extrait de bulletin de nouvelles par exemple), archiver, graver, etc. sans limites pour fins personelles
  • Accès gratuit illimité au contenu en format HD (jusqu’à 1080p! 1920×1080) – j’ai souvent une réaction de surprise totale sur ce seul point. Comparé à ce qu’offre Tou.TV, c’est très intéressant.
  • Enregistrement et visionnement possible sur plus de 2 postes pour peu qu’on ajoute des antennes/synthoniseurs – quoique je crois que Bell est rendu à 4 en simultané
  • Possibilité d’organiser les émissions et trier le contenu pour parents, enfants, films, séries, etc.
  • Mobilité! Je peux maintenant quitter la maison avec quelques émissions pour enfants lors de longs voyages (pas pour la route, mais pour les soirées « patate »), sans payer un extra
  • Le serveur TVHeadEnd en place est compatible avec XBMC et si j’ajoute un ou plusieurs PC avec XBMC, ils pourront tous utiliser le même serveur TVHeadEnd sans changement à la configuration actuelle.
  • Autonomie et liberté: personne d’autre que moi contrôle et connaît les contenus ainsi obtenus
  • Logiciels libres: je peux participer au développement et aux rapports de failles et améliorer tous les logiciels qui rendent cette configuration possible, explorer le code source, poser des questions à la communauté et repartager toute cette information librement. Je peux aussi installer et reproduire toute cette configuration sans restrictions: pas de frais supplémentaires par prise/appareil/format, etc.!

Voici un exemple d’émission HDTV en format 720p (1280×720). Attention, c’est une émission complète qui prends presque 9GB!

Le Téléjournal Midi de Radio-Canada sur VLC
Le Téléjournal Midi de Radio-Canada sur VLC

Quelques détails de fonctionnement:

  • Le signal transmis au Québec par la plupart des chaînes que je peux capter inclût la piste vidéo (MPEG2-TS), deux pistes audio (AC3 et Dolby je crois), ainsi que jusqu’à 4 pistes de sous-titrage (« closed-captioning »). L’enregistrement via TVHeadEnd se fait directement dans un conteneur .ts bien supporté par VLC, mplayer, etc.
  • Il est indispensable d’avoir une source du « télé-horaire » (l’horaire complet des chaîne de TV) pour pouvoir utiliser un enregistreur. Le seul que j’ai trouvé au Canada est payant, dans certains pays certains signaux numériques incluent cette information. Le prix est très raisonnable et on peut l’utiliser sans restrictions (source de données XML). J’ai aussi aimé la mission de SchedulesDirect qui fnance d’autres projets libres, entre autres Cable in the Classroom.
  • Je contrôle TV HeadEnd et l’appareil NAS par une interface web chez moi ou à distance, sur un PC ou sur avec TVHGuide (logiciel libre sous  licence GPLv3).
  • On visionne sur mobile (après transcodage par HandBrake) ou sur la TV Sony qui a lit directement les partages #DLNA. Je calcule que d’ici moins d’un an des tablettes et téléphones seront capables de jouer le format original en 1080p, si ce n’est pas déjà le cas.
  • Cette configuration a été testée sur Ubuntu
screenshot-1358542991928
L’application TVHeadEnd sur Android

Pour un remplacement à 100% de l’enregistreur numérique que nous avions dans le salon (pause en temps réel, enregistrement en voyant une émission, CC, etc.) il faudrait ajouter un PC dédié avec #XBMC. Plus tard, peut-être… 🙂

Si le sujet vous intéresse, contactez-moi ou mieux encore, joignez-vous au groupe Libre Planet QC en vous inscrivant à la liste de discussion.

Quelle est la suite de tout ça? Pour l’instant il est difficile d’accéder à nos contenus à distance efficacement, la vitesse des réseaux n’est pas tout à fait là. Les réseaux autonomes se développent de plus en plus suite aux mouvements globaux de protestation contre le contrôle et les abus des gouvernements, et d’autres mouvements et initiatives d’activisme pour promouvoir les media alternatifs, l’autonomie des données et l’informatique libre. En tant que citoyen je considère mon devoir de demeurer critique face à ce que proposent les entreprises et aussi tenter d’utiliser des alternatives utilisant les logiciels libres. Parfois il suffit de poser la question, parfois il faut démontrer par l’absurde (vu l’effort requis) que les alternatives techniques sont possibles. Encore faut-il qu’elles soient compatibles avec les modèles d’affaires existants, les intérêts des actionnaires ou le train de vie que nous menons. Pouvons-nous changer ces aspects de notre société par l’activisme technologique?

Pour l’instant, je me concentre sur rêgler ces problèmes pour moi, tout en essayant de partager les résultats. Le grandes questions de société démarrent parfois par des petit efforts individuels, et je crois qu’il est encore possible de provoquer des changements importants par de petits gestes quotidiens. En attendant, je vais placer une petite annonce pour vendre l’ancien enregistreur numérique de Vidéotron 🙂

Quelques liens pour aller plus loin:

Ubuntu Spyware: What to Do?

One of the major advantages of free software is that the community protects users from malicious software. Now Ubuntu GNU/Linux has become a counterexample. What should we do?

For the full original English version, see here.

Voici un texte de Richard Stallman. La version originale en anglais est ici.

Update: Une traduction en français est disponible sur Framablog.

 

Consultant et conférencier en logiciels libres et GNU/Linux basé à Montréal, Québec (Canada)