David's blog

To content | To menu | To search

Tuesday, August 24 2010

La fin du bureau ?

Un aspect social du bureau (licence CC-BY) On parle de plus en plus de la fin du bureau, du desktop, au profit d'« applications » web. Tristan Nitot se pose par exemple la question de l'avenir de Linux sur le poste de travail. Même les développeurs Gnome s'y mettent, comme Luis Villa demandant à la communauté Gnome de prendre à bras le corps le web (« to embrace the web »). Et bien sûr lil faut compter sur Google qui, de Google Chrome à Google Docs, vise à fournir tous les outils et applications pour laisser nos informations dans le nuage (c.-à-d. sur les serveurs de Google), loin de nos PC de bureau et nos portables.

Est-ce que l'avenir du PC et de ses applications est définitivement compromis ?

Certes, les applications web sont très pratiques. Gros utilisateur du webmail, j'apprécie sa disponibilité en toute situation, sur n'importe quelle machine pourvue d'un accès Internet et d'un navigateur. Et l'aspect centralisé des applications web est appréciable lorsqu'on utilise plusieurs machines, dans différents endroits. Enfin et peut-être surtout, l'aspect « social » des applications web peut être vraiment utile. Trouver la réponse à un problème technique dans un forum sur Internet est inappréciable et m'a sauvé plusieurs fois de plusieurs heures de recherches fastidieuses. Par ailleurs, les applications web sont faciles à déployer. Tout le monde à un navigateur sur son poste de travail, chez soi ou au travail. Et en tant qu'informaticien, il devient plus facile de déployer une nouvelle version de l'application.

Pour autant les applications web sont loin d'êtres parfaites et posent même de sérieux problèmes.

En premier lieu et probablement le plus important, nous perdons le contrôle sur nos données. En tant que Libriste convaincu, cela m'inquiète de laisser mes données chez Google ou Yahoo!. Je ne sais pas comment ses données personnelles sont stockées, qui peut y accéder ou même leur pérennité.

En second, les interfaces web sont très pauvres, malgré les progrès indéniables du Web 2.0 et des technologies AJAX. Google, expert et leader en ce domaine, arrive péniblement à finaliser le Glisser-Déplacer dans les dernières versions de GMail, alors que cela existe depuis des (dizaines d' ?) années sur les applications de bureau. Et quel que soit les efforts de programmation, la latence réseau sera toujours là, ralentissant l'interface au point de la rendre malcommode voire inutilisable. Sans compter que le réseau même doit être disponible en permanence, ce qui réduit d'autant la disponibilité des applications.

Alors, quel avenir pour le bureau et ses applications ? Je pense que le bureau n'est pas mort, que ce soit sur un PC de bureau, un ordinateur portable ou un téléphone portable. Par contre, les framework de développements doivent évoluer, prenant en compte dès le départ le réseau et la distribution des données. Pour reprendre un vieux slogan publicitaire de SUN, « the network is the computer » (le réseau est l'ordinateur).

Ces frameworks doivent fournir un moyen simple pour une application de stocker des données sur un ou plusieurs ordinateurs distants, de manière centralisée ou distribuée, et ce de manière sécurisée et authentifiée. Par exemple chaque utilisateur d'application devrait pouvoir facilement mettre en place un serveur pour stocker ses données ou répartir ses données entre plusieurs ordinateurs avec des protocoles Peer to Peer (P2P). La confidentialité des données doit être prise en compte dès le départ, que ce soit sur le bureau de l'ordinateur ou un serveur distant. Les frameworks doivent également fournir des API simples permettant de gérer les problèmes de latence d'un réseau sans que le programmeur soit un expert en réseau et en comprenne toutes les implications. La technologie d'appel de procédures à distance des années 80, les fameux RPC (Remote Procedure Call), encore utilisées dans les applications AJAX avec les XML RPC sont trop limités. D'autres paradigmes doivent être utilisés. Et bien sûr des API doivent être fournis pour développer facilement des applications « sociales » où l'ont peut partager facilement des données avec des autres utilisateurs sur la planète.

En bref, il va falloir inventer le meilleur des deux mondes. Mais un monde où l'utilisateur, le citoyen, garde le contrôle sur ses données. Comme le dit Philippe Meyer, « le progrès est en marche et le futur ne manque pas d'avenir ! » :-)

Correction 2010-08-24 : s/Christian/Tristan/. Merci Thomas ! ;-)

Saturday, August 21 2010

De grands pas vers une téléphonie Libre !

Le projet OsmocomBB a pour objectif de créer une solution de téléphonie GSM (nos téléphones portables de 2e génération dit 2G) entièrement Libre, que ce soit sur le téléphone et la station de base.

Ce projet fait des progrès de jours en jours. Le dernier en date est qu'il a été possible de passer un appel de 20 minutes en utilisant uniquement des logiciels libres, tant sur le téléphone que la station de base !

Le déploiement de telles solutions est encore très loin, ne serait-ce que parce que les fréquences utilisées pour la téléphonie GSM sont soumises à des licences au coût exorbitant. Mais je trouve exaltant cette incursion du Libre dans le royaume du propriétaire et les progrès qui sont fait en si peu de temps ! Relisez le blog d'Harald Welte pour vous en convaincre.

Thursday, August 19 2010

L'observatoire du SSL

L'EFF (Electronic Frontier Fundation) a lancé récemment un nouvel Observatoire du SSL. Ils ont examiné un grand nombres de certificats SSL et en font une étude intéressante.

Je n'ai jamais tellement cru au modèle d'Autorité de Certification (CA) mis en avant par HTTPS. Ce rapport montre qu'en pratique on trouve un peu n'importe quoi (par exemple des certificat pour des adresses IP en 192.168.*.*) et que ce modèle est difficile à mettre en place.

Un jour quelqu'un proposera quelque chose de plus décentralisé qui correspond mieux à Internet.

Wednesday, August 18 2010

Le test de Joel

C'est vieux de 10 ans mais toujours d'actualité : 12 règles à vérifier pour faire des développements logiciels de qualité :

Le billet a un peu vieilli, Subversion, Git ou Mercurial sont nettement mieux que CVS qui est éviter comme la peste.

Et comme l'a souligné un de mes collègues, le 13e test indispensable :

  • Faites vous des tests de non régression réguliers ?

Bon codage ! (et merci Gilles ;-)

Thursday, April 1 2010

Pourquoi je quitte l'expérience démocratique

demexp On m'a récemment contacté à propos de l'expérience démocratique. J'avais déjà annoncé que je quittais le projet mais j'ai fini par élaborer une réponse plus précise. Il me semble intéressant de la rendre publique, non pas pour étaler mes états d'âmes mais comme une réflexion a posteriori sur un engagement et sur un projet de logiciel Libre qui n'a pas marché (et accessoirement pour l'« histoire » du projet ;-).

Si on retourne en 2003, je venais surtout pour l'aspect informatique du projet. Faire un logiciel de débat et de vote électronique original, c'était intéressant et très motivant. Mais après plusieurs années de développement je n'ai toujours pas un logiciel utilisable et je me suis retrouvé tout seul à le faire (ou quasiment). La lassitude a fait le reste du travail. ;-)

Par ailleurs, certains choix technologiques ont limité le développement du projet (client lourd en Gtk+, pas d'interface web), même si cela était dû à des contraintes quand j'ai commencé (Ocsigen n'existait pas à l'époque). Pour d'autres choix comme utiliser le langage OCaml, ça a très certainement limité l'arrivée de nouveaux développeurs. Mais je n'en aurais pas fait autant dans des langages plus classiques comme PHP ou Python. D'ailleurs d'autres ont proposé des morceaux de logiciel, en repartant de zéro comme Jean-Marc Fauché ou Lyu Abe. Mais ces propositions ne m'ont jamais emballé.

Plus sur le fond, je m'interroge pas mal sur le sens du projet. La démocratie ne se limite pas au vote, le débat et la formation des citoyens sont tout aussi important. Après quelques années, j'ai eu l'impression qu'on se concentrait uniquement sur l'aspect vote et pas assez sur les autres aspects. Pour le dire autrement, c'était peut-être plus important de faire un serveur de listes de diffusion, un service web pour synthétiser les débats et puis finalement voter en Condorcet avec du papier et du crayon que de faire un logiciel de vote électronique. On avait dit qu'on ferait des « soirées Condorcet » dans un bar, pour mettre en œuvre de manière concrète et ludique les idées du projet : cela ne s'est jamais fait.

Pour le logiciel, je suis parti sans réellement de spécifications, quasiment par le codage. Ce n'est pas comme ça que l'on fait un bon logiciel. ;-) Évidemment, quand on a démarré, on ne savait pas trop où on allait. Maintenant je pense que j'aurais des idées plus claires.

Informatiquement parlant, l'amplitude du projet est très vaste. Cela va des bases de données aux interfaces graphiques en passant par la cryptographie ou le réseau. C'est très stimulant sur le plan intellectuel, on apprend pleins de choses mais on n'est pas forcément bon partout.

Sur un plan plus pratique et citoyen, le vote électronique est très polémique (voir par exemple ordinateurs-de-vote.org). Je suis moi même contre les machines de votes actuelles[1] ! Il est quasiment impossible de faire un logiciel de vote aussi transparent qu'une urne en plexiglas. La recherche dans le domaine des protocoles de vote avance mais il faudra encore probablement de nombreuses années avant d'avoir quelque chose d'utilisable. Et ce sera très vraisemblablement plus compliqué qu'un bulletin dans une urne.

Sur le plan plus humain, on a démarré à quatre sur le projet, puis à trois au cœur. J'ai trouvé sur le long terme que j'étais un peu seul à faire la gestion de tâches informatiques (mise à jour du serveur, répondre sur les listes, le développement, etc.), malgré le soutien de mes deux compères. Ils ont beau être les pères de l'idée, j'ai trouvé que leur implication n'y était plus.

Enfin et surtout, après plusieurs années, j'ai envie de m'attaquer à d'autres défis, dans des domaines totalement différent et cela ne se fera pas sans dégager du temps libre. J'ai donc arrếté mon implication dans des projets non « productifs ».

Voilà, c'est probablement trop long et un peu confus, mais c'est dur de résumer plusieurs années de projet en quelques mots.

Je considère toujours que la thématique du projet, la réflexion sur la démocratie et le rôle du politique, est cruciale. Peut-être juste que l'angle n'était pas le bon, je ne sais pas. Apparemment, d'autres on des idées similaires et très intéressantes.

Et l'expérience a été pour moi enrichissante. Je ne regrette rien ! :-)

Notes

[1] Vous avez dit schizophrène ? ;-)

Wednesday, March 31 2010

Gagner du temps n°2 : se désinscrire des listes de diffusion et flux RSS qu'on ne lit pas

Dans un billet précédent, j'avais indiqué comment j'essayais d'avoir une boite de courrier entrante vide pour être réactif et ne pas perdre trop de temps.

Le deuxième conseil d'organisation du jour : se désinscrire des listes de diffusion et flux RSS qu'on ne lit pas ou très rarement.

Comme on les lit très rarement, on a bien souvent trop de messages ou billets en retard, les réponses qu'on aurait éventuellement pu faire sont obsolètes et cela prend tout simplement trop de temps de tout lire. Et même s'il y a peu de trafic ou qu'on ne lit pas les messages, on perd juste du temps à marquer les messages comme lu.

J'ai trouvé une solution simple : je me désabonne de ces flux RSS et listes de diffusions. J'ai l'impression d'avoir des journées plus longues. ;-)

Thursday, November 26 2009

Organisation : avoir la boite de courrier entrant toujours vide

Panier vide (© 2009 David Mentré - licence CC-BY-SA) Depuis quelques semaines, j'essaye, tant au travail que chez moi, d'avoir ma boite de courrier entrant toujours vide, ou du moins chaque soir.

Je ne sais plus où j'ai lu ce conseil, peut-être dans Get Things Done ou sur un blog. Cette contrainte à un avantage immédiat : se forcer à faire les choses et leur donner une priorité. Avant, bien souvent, je laissais un courriel dans mon dossier entrant pour une tâche ingrate ou quelque chose à-faire-quand-j'aurais-le-temps.[1] Maintenant, puisque ce dossier doit être toujours vide, soit je fais les choses immédiatement ou du moins avant la fin de la journée (le soir avant de partir par exemple), soit je mets le courriel dans un dossier « À faire plus tard » qui, je le sais, ne sera jamais consulté ou très rarement. En d'autres termes, je classifie immédiatement les courriels vraiment important, nécessitant une action immédiate et ceux plus accessoires.

Pour l'instant, cette approche fonctionne. Parfois, j'ai un ou deux courriels que je garde non lu dans ma boite entrante, par ce que je me dis que je n'ai vraiment pas le temps là maintenant et que je dois le faire. Mais si au bout du deuxième jour je n'ai rien fait, je sais que ce courriel n'est pas si important que ça et je le relègue aux oubliettes... ou je fais ce que je dois faire sur ce courriel immédiatement. :-)

Un autre truc que j'utilise, c'est de marquer les actions urgentes ou importantes sur mes courriels en les gardant comme « Non lus ». Comme ça, à chaque fois que je regarde ma boite j'ai l'impression d'avoir du nouveau courrier et je re-regarde les tâches à faire sur ces courriels. C'est pour moi une très bonne incitation à faire les choses.

Et vous, vous avez d'autres trucs pour vous organiser avec le courriel et les autres outils de communication ?

Notes

[1] Temps qu'on n'a jamais, bien évidemment ! :-)

Thursday, September 24 2009

Absences...

Règle n°23 : ne jamais dire qu'on fera un billet tous les jeudis. Rien que de l'annoncer est suffisant pour ne jamais le faire.

Sinon, le projet dont je parlais dans mon précédent billet a été largement diffusé (avec même un petit article dans SVM), c'est MapOSMatic. C'est un générateur automatique de plans de ville à partir des données libres d'OpenStreetMap. Vous donnez le nom de votre ville est zoouuu vous avez un joli plan avec l'index des rues.

La version actuelle est une première version, on a encore une foule de bugs et de choses à améliorer. Mais les premiers retours sont très positifs : ça fait plaisir ! :-)

Sinon, côté activité libriste sur la région, je suis actif dans plusieurs projets :

Ceci explique peut-être cela. ;-)

Thursday, September 3 2009

C'est la rentrée !

Helping paw Comme tout le monde, je fais ma rentrée : des tonnes de choses reportées à terminer en urgence et la perspective de nouvelles choses à démarrer.

Côté blog, j'ai décidé de changer sa fréquence avec désormais plus qu'un seul billet par semaine, le jeudi à 13h. Histoire de me laisser un peu de temps pour faire d'autres choses.

Justement, à propos d'autres choses, avec quelques amis on s'est pris une semaine de vacances à coder. Les geeks codeurs comprennent le plaisir qu'on a à faire ce genre de truc. Les autres ont plus de mal. :-) Durant cette semaine on a réalisé un petit projet à partir de zéro. Il ne peut pas encore être diffusé donc je n'en dirais pas plus, si ce n'est qu'il tourne autour d'OpenStreetMap. Stay tuned! ;-)

Monday, August 3 2009

Août, farniente & Co.

Pas de billets en août. Profitez bien de vos vacances (si vous en avez) ou du calme quand les autres sont partis (si vous bossez).

- page 1 of 6