Unhosted : libre et salutaire tentative de séparer applications et données sur le Web

Michiel de JongIl est désormais possible de se passer de la suite bureautique Microsoft Office et du système d’exploitation Windows en utilisant de fiables alternatives libres (GNU/Linux et Libreoffice pour ne pas les nommer).

Mais quid du réseau social Facebook et des services Google par exemple ? Est-il possible de proposer des alternatives libres à ces applications dans les nuages du web qui demandent une énorme bande passante et nécessitent des batteries de serveurs, avec tous les coûts faramineux qui vont avec (et que ne pourra jamais se permettre le moindre projet libre qui commence avec cinq gus dans un garage) ?

L’enjeu est de taille car c’est de nos données qu’il s’agit et dont on fait commerce.

Une piste de solution, qui sur le papier semble tout autant lumineuse que triviale, serait de pouvoir séparer l’application web des données que cette application traite. L’application serait quelque part sur un serveur et les données ailleurs sur un autre serveur (chez vous par exemple).

Imaginez un Facebook où toutes les données de ses utilisateurs ne seraient plus sur le site et les serveurs de Facebook ! Facebook serait bien bien plus léger du coup à administrer (moins rentable aussi c’est sûr).

Finis la centralisation et le contrôle sur vos données qui retrouvent du même coup une liberté qu’elles n’auraient jamais dû perdre. Et le web (re)devient un meilleur web.

C’est l’objectif pour le moins ambitieux mais ô combien urgent et utile du projet Unhosted conduit par Michiel de Jong dont nous vous proposons une instructive et enthousiasmante interview ci-dessous.

On notera au passage que le projet collabore avec Libreoffice. À quand un « Google Docs Killer » basé sur unhosted ?

On remarquera également que le projet n’hésite pas à accorder de suite une forte importance au confort de l’utilisateur. Extrait : « Nous avons besoin que les utilisateurs finaux sautent le pas, or les utilisateurs finaux ne comprennent souvent pas bien les principes du logiciel libre, mais si on fait des applications vraiment agréables, ils viendront pour les applications, et resteront pour la liberté. »

Bonne lecture. La problématique exposée ici constitue certainement l’un de nos prochains combats. En fait la bataille a déjà commencé. Elle s’annonce rude mais on déplacé tant de montagnes par le passé qu’il n’y a aucune raison de perdre confiance et de laisser le champ… libre aux seuls monopoles commerciaux à la taille démesurée.

Mais avant cela rien de tel que cette courte vidéo introductive pour se mettre dans le bain et comprendre plus encore de quoi il est question :

—> La vidéo au format webm
—> Le fichier de sous-titres

Entretien de Michiel de Jong avec la communauté

Fellowship interview with Michiel de Jong

Chris Woolfrey – 23 avril 2011 – Followship of FSFE
(Traduction Framalang : Pandark, Pyc et Slystone)

Michiel de Jong a travaillé comme programmeur, chercheur et administrateur système à Amsterdam, Oxford, Londres et récemment à Madrid en tant qu’ingénieur en scalabilité (ou adaptabilité) pour le réseau social espagnol Tuenti. L’hiver dernier il a pris deux mois de vacances (de hacker) à Bali pour monter le projet Unhosted. Il vit maintenant à Berlin avec Kenny Bentley et Javier Diaz, où ils prévoient de travailler à plein temps sur le projet si les donations le permettent.

Chris Woolfrey : Pouvez-vous expliquer ce qu’est le projet Unhosted avec vos propres mots ?

Michiel de Jong : Il y a plusieurs manières de le présenter ; mon approche préférée est l’angle du logiciel libre. Le terme de logiciel libre signifiait auparavant que l’on avait un pouvoir de contrôle (utilisation, partage, étude et amélioration) sur le code source et le logiciel exécuté par l’application, c’est la définition utilisée par la FSFE.

À l’époque, c’était suffisant. On considérait comme acquis le contrôle des données traitées par l’application ; c’est évident, elles sont sur votre ordinateur ou votre serveur, sur lequel vous avez un accès complet aux données utilisées par vos applications.

Concernant les logiciels installés, que ce soit sur un ordinateur de bureau ou sur un serveur, cette vision était juste : si vous contrôlez le code source, vous possédez la liberté logicielle. Mais ensuite, lentement, les logiciels installés ont été remplacés chez l’utilisateur par des logiciels hébergés (comme Google Docs, Facebook et Twitter). Ces sites web hébergés ne sont alors plus une source d’information comme les classiques sites web d’avant ; ce sont des applications interactives, et la liberté logicielle n’existe pas dans ce contexte.

Il est absurde que les logiciels hébergés vous fassent céder vos données à l’auteur de l’application en question, mais c’est ainsi que cela se passe. Cela s’est installé progressivement et insidieusement, car les sites web d’information sont devenus peu à peu des sites dynamiques, et ces sites dynamiques ont commencé à accepter les contributions d’utilisateurs et sont peu à peu devenu des applications interactives. Désormais, les logiciels hébergés sont largement utilisés, souvent en lieu et place d’anciennes applications installées localement sur les ordinateurs.

Dans la transition des applications locales aux application hébergées, la liberté logicielle a été oubliée. Personne ne parle plus désormais de logiciels installés localement, on parle de logiciels hébergés, et pourtant certains disent « Mon ordinateur ne contient que des logiciels libres ; seul le microprogramme de la carte graphique est propriétaire », et c’est une erreur car une bonne partie des « logiciels » qu’ils utilisent ne sont pas installés localement sur leur ordinateur mais utilisés au travers d’un navigateur internet.

Le projet Unhosted a pour but d’inventer et promouvoir un moyen de résoudre ces problèmes. La liberté logicielle doit, de nos jours, être non seulement la liberté du code mais aussi celle des données.

CW : Comment Unhosted permet-il ceci ?

MdJ : Nous séparons le code d’une application de ses données.

Quand vous vous connectez à une application web Unhosted, l’URI affichée dans la barre d’adresse indique l’emplacement du code de l’application, mais le nom de domaine suivant l’arobase de votre identifiant indique l’emplacement de vos données ; ce qui libère vos données de l’emprise du serveur de l’application, tout en libérant ledit serveur de la charge de l’hébergement de vos données.

Ceci implique que l’hébergement d’applications libres redevient possible sur le web. Après tout, il existe un évident substitut libre à Microsoft Windows : GNU/Linux, comme il existe un évident substitut libre à Microsoft Office : Libre Office.

Mais quel logiciel libre pour remplacer aussi évidemment Google Docs ? Pourquoi ne pas se connecter à « www.libredocs.org », par exemple, et utiliser là des applications web libres, comme pour un logiciel installé localement ?

La réponse simple est le coût inhérent au fonctionnement d’une application distante, trop élevé pour permettre la fourniture de ces services gratuitement. Pour coder du logiciel libre, il suffit que des développeurs y consacrent du temps et du savoir-faire. Mais il est impossible de proposer des logiciels libres en ligne sans coût financier, parce que cette activité nécessite l’utilisation de serveurs, et qu’il faut rétribuer les hébergeurs.

En séparant le code des données, laissant leur traitement au navigateur, notre solution règle ce problème : il devient très économique d’héberger des applications web libres parce que vous n’avez à héberger que l’application elle-même, son code, pas les données qu’elle doit traiter.

C’est le côté « libérez les applications du poids des données » de notre projet. Puis arrive l’autre coté : le logiciel c’est du code et des données, le logiciel libre c’est du code libre et des données libres.

Avec Unhosted, la liberté des données est assurée par le choix, lors de l’inscription à une application, du domaine devant héberger vos données pour vous. Vous pouvez ouvrir un compte chez un fournisseur de services (ils sont en train d’être mis mettre en place) ou demander à l’administrateur réseau de votre université ou de votre entreprise d’héberger un nœud pour celle-ci ; de cette façon, tout bénéficiaire d’une adresse « @quelquepart » aura la possibilité d’obtenir un compte Unhosted avec le même nom d’utilisateur.

CW : Y a-t-il des bénéfices en termes de vie privée à utiliser Unhosted en comparaison avec une application web qui conserve à la fois le code et les données à distance ?

MdJ : En utilisant une application Unhosted, toutes vos données sont chiffrées par le navigateur avant d’être transmises au serveur hébergeant votre compte Unhosted. De cette façon, les données confiées à votre compte Unhosted peuvent se trouver sur n’importe quel serveur, parce que, bien que vous vous reposiez sur ce serveur pour permettre un accès à vos données, ces données sont stockées et chiffrées, ainsi vous n’avez pas à craindre que l’hébergeur du compte lise vos messages, par exemple. Les données stockées par une application Unhosted sont chiffrées par votre navigateur avant d’être transmises et enregistrées sur votre compte, et elles seront déchiffrées au moment de leur sollicitation par le navigateur, au moment de leur utilisation. Le serveur hébergeant vos données Unhosted est aveugle ; il transmet vos données vers et depuis des sites web Unhosted sans pouvoir lire leur contenu.

Utiliser JavaScript pour la cryptographie n’a habituellement aucun intérêt, parce que si un site web contient des scripts JavaScripts pour chiffrer des données, alors ces mêmes scripts peuvent être utilisés pour espionner ces données chiffrées.

Avec Unhosted il en va autrement car nous séparons le domaine qui fournit l’application de celui qui héberge les données. L’hébergeur du compte Unhosted (celui des données) ne pourra pas accéder aux scripts de cryptographie de l’application, donc l’application Unhosted peut chiffrer des données que le serveur du compte Unhosted ne poura pas déchiffrer.

CW : Quel genre d’applications convient d’après vous le mieux à l’utilisation d’Unhosted ? Quel types d’applications Web vous attendez-vous à voir adopter Unhosted en premier ?

MdJ : Toutes les applications qui n’enregistrent pas un grand nombre de données utilisateur peuvent être facilement adaptées à Unhosted.

Ce sont toutefois les applications comme Google Docs, nécessitant le stockage de beaucoup de données utilisateur importantes, qui bénéficieraient le plus du passage à Unhosted. Celà pourrait aussi bénéficier grandement au parallélisme (informatique). Cependant, pour d’autres services, comme les moteurs de recherche, il faudra trouver de bons algorithmes pour permettre un fonctionnement plus décentralisé. En général, toute application web qui nécessite le stockage d’un grand nombre de données personnelles peut tirer profit d’Unhosted.

CW : Il y a une effervescence actuellement autour de projets libres décentralisé pour proposer des alternatives au réseau social Facebook (Diaspora, Appleseed…) ou au moteur de recherche Google (YaCy, Seeks…). Quel impact et comment pourrait s’adapter votre travail à des projets comme Diaspora, Appleseed et, Seeks ou YaCy ?

MdJ : Unhosted a été d’une certaine façon créé sur la mailing list des développeurs de Diaspora. Nous discutions du basculement de Diaspora de PGP vers SSL, et de la façon dont un chiffrement « de bout en bout » serait plus adapté. Alors j’ai commencé à développer un système de chiffrement de données en Ajax. Il était destinée à intégrer Diaspora. Plus tard, j’ai réalisé qu’il pourrait avoir bien d’autres applications.

Il nous reste encore à écrire une application « sociale » Unhosted qui pourrait fédérer Diaspora et Appleseed. YaCy étant un moteur de recherche, il nécessitera un travail travail d’ingénierie plus conséquent avant de l’intégrer dans l’architecture des applications web d’Unhosted.

Outre ceux que vous avez évoqués, nous avons aussi été approchés par LibreOffice pour discuter de la façon de faire fonctionner ensemble Unhosted et LibreOffice. Ce fut un grand honneur. Nous mettons actuellement en œuvre un cloud-sync Unhosted pour LibreOffice. Il ne déplace pas exactement LibreOffice sur le web, c’est à dire que toute l’application n’est pas dans votre navigateur, mais il fait de LibreOffice un « navigateur de documents », similaire à un « navigateur web », et il sera compatible avec les standards web que nous avons rendu publiques il y a trois semaines.

Pour le reste, nous ne faisons que commencer. Nous avons mis en ligne une application de démonstration qui montre le principe : http://myfavouritesandwich.org. Les gens peuvent copier cette démo et s’en servir comme un « Hello World! », de base pour l’utilisation d’Unhosted.

CW : En voilà un super nom de domaine !

MdJ : Au départ c’était myfavouritecar.org mais Javier estimait que myfavouritesandwich.org était plus marrant.

CW : L’apparence du projet est-elle importante pour vous ?

MdJ : 33% de notre équipe à plein temps est un graphiste. C’est une autre caractéristique relativement unique de ce projet ; je ne pense pas que beaucoup de projets de logiciels libres atteignent ce pourcentage. Nous avons besoin que les utilisateurs finaux sautent le pas, or les utilisateurs finaux ne comprennent souvent pas bien les principes du logiciel libre, mais si on fait des applications vraiment agréables, ils viendront pour les applications, et resteront pour la liberté.

Il n’y a pas de barrière d’entrée pour l’utilisateur : c’est une caractéristique importante pour nous. L’utilisateur n’a pas besoin de savoir si une application est complètement hébergée ou Unhosted. Si l’utilisation d’Unhosted devient transparente, alors nous aurons fait un bon travail.

Il nous faut convaincre les développeurs web de créer des applications Unhosted, et leurs clients n’ont même pas besoin de savoir précisément ce que c’est. Si un client demande à un développeur une nouvelle application, le développeur doit pouvoir juste répondre « OK, on va utiliser la dernière technologie pour développer cette application pour vous », et créer alors une application Unhosted. Le client n’a pas besoin qu’on lui signale l’utilisation d’une architecture Unhosted, seul le développeur doit le savoir.

Nous voulons créer quelques applications de démonstration qui soient vraiment agréables à utiliser, de façon à pouvoir éviter les stigmates qu’associent souvent les non-convertis aux logiciels libres (par exemple un logiciel libre peut bien fonctionner mais il est souvent moche). Je pense qu’il est important que les logiciels libres soient beaux et agréables à utiliser. Beaucoup de projets font du très bon travail aujourd’hui, et nous voulons être l’un d’eux. Voilà pourquoi 33% de notre équipe à plein temps est consacrée au graphisme.

CW : Il semble que vous essayez d’attirer des gens en dehors de l’écosystème existant des logiciels libres. Pensez-vous qu’il y ait des avantages évidents à utiliser Unhosted pour des entreprises et associations non concernées par les logiciels libres ?

MdJ: Oui, certainement. Tout d’abord, une entreprise qui utilise des logiciels comme moyen de production peut vouloir utiliser un chiffrement de bout en bout, de façon à ce que les secrets de l’entreprise ne quittent pas son réseau privé virtuel, mais qu’elle puisse tout de même utiliser le stockage sur les serveurs d’Amazon, par exemple. Ainsi, ils peuvent bénéficier d’applications web Unhosted avec des comptes Unhosted qui stockent des données chiffrées sur des serveurs Amazon, et le tout fonctionnera dans les navigateurs web de leur personnel, sans avoir à installer de logiciels chez eux.

De plus, l’évolutivité et la robustesse d’une architecture distribuée peuvent être un choix stratégique pour une entreprise : si vous désirez proposer une application propriétaire, mais ne voulez pas que vos serveurs soient le maillon faible du système, alors Unhosted apportera à vos applications moins d’indisponibilité, ou au moins les incidents ne toucheront pas tous les utilisateurs et votre application ne sera pas entièrement indisponible à cause de problèmes localisés. Enfin, le coût d’hébergement d’une application Unhosted est bien moins élevé que celui d’une application traditionnelle.

C’est un grand avantage pour les projets libres qui, à l’heure actuelle, ne peuvent simplement pas s’offrir l’hébergement d’applications web, mais pour les applications propriétaires c’est aussi une opportunité intéressante, parce que cela permet de réduire les coûts. Il y a donc là une activité commerciale possible comme fournisseur de comptes Unhosted. Selon le nombre d’applications intéressantes que nous pouvons susciter et promouvoir, des entreprises de ce type écloront, et alors les utilisateurs pourraient avoir un unique identifiant pour l’ensemble des applications Unhosted qu’ils utiliseront.

Les possibilités d’interopérabilité entre les applications sont elles aussi enthousiasmantes — la séparation des applications et des données permettra aussi (quand une complète compatibilité des formats le permettra) de basculer sur un autre site et constater, par exemple, que tous vos albums de photos sont bien là, pour revenir au site précédent pour voir que vos modifications ont été prises en compte instantanément, sans avoir à faire d’import ou d’export, parce que les données sont les mêmes.

Ce sera une expérience incroyable pour les utilisateurs finaux quand nous arriverons à faire fonctionner tout cela ! Certaines personnes ne se soucient pas d’évolutivité, de pérennité, de robustesse, de chiffrement, de vie privée, des applications dans le domaine public ou de logiciels libres, etc., ils ne se soucient que des possibilités d’interopérabilité des données. Ce type d’interopérabilité pourrait être le meilleur atout du projet Unhosted.

CW : Pourquoi a-t-il fallu attendre jusqu’à maintenant pour qu’un projet comme Unhosted voit le jour ?

MdJ: Je pense que tout cela est très récent. Il y a un an, on ne se rendait pas forcément compte qu’il y avait un problème avec nos données. Oui, il y a eu l’article de Richard Stallman au sujet de SaaS, puis les excellentes présentations de Eben Moglen, mais pendant ce temps-là, Facebook est devenu de plus en plus dominant. Sans oublier des projets tout neuf comme le Chrome Web Store et Chrome OS.

Il y a deux ans, ça n’était pas aussi évident. Enfin, je sais que je n’aurais pas pu envisager tout cela il y a deux ans, mais je pense que c’est le bon moment maintenant. Un grand nombre de ces idées ne sont pas les miennes. Certains principes importants viennent de Tim Berners-Lee et Zooko, je les ai juste rassemblées et ai rédigé un « manifeste » sur le sujet, ce qui encore une fois, est essentiellement copié d’Eben Moglen et Richard Stallman.

CW : Comment prévoyez-vous de travailler à plein temps sur Unhosted ?

MdJ : Nous ambitionnons de récolter pendant les prochains mois 36000 €. Nous avions le choix entre créer une entreprise ou développer entièrement le projet dans le cadre d’une association à but non lucratif.

Nous avons choisi la voie non marchande car nous pensons qu’il est important de le faire de cette façon. Nous sommes trois ingénieurs à plein temps, et nous avons l’intention de trouver un hackerspace à Berlin pour nous accueillir tous les trois, plus deux bureaux libres pour les hackers en visite. Nos locaux seront ouverts aux vacanciers qui voudraient passer une semaine à Berlin, trainer dans nos locaux et contribuer à libérer le web. Les loyers sont très bon marché à Berlin, toutefois chacun de nous a besoin d’environ 1000 € par mois pour vivre.

Nous sommes très impliqués dans ce projet. Prochainement, nous publierons des outils et des applications de démonstration afin de faire avancer le web Unhosted, et nous nous occuperons des détails à mesure que nous progresserons. Unhosted est un projet communautaire, entièrement ouvert, mais je pense qu’il est bon d’avoir une structure « fondation plus communauté », avec une petite équipe entièrement dédiée au projet, pour constamment lui donner une impulsion.

Nous encourageons les personnes intéressées à s’inscrire à notre liste de discussion, nous suivre sur Identi.ca et Twitter, et à rejoindre notre canal IRC. D’autre part, nous encourageons les développeurs à forker nos applications de démonstration pour développer leurs propres applications Unhosted.

Le web Unhosted commence aujourd’hui…




L’impression 3D déjà à la portée de tous avec Blender et Shapeways

Le Framablog poursuit son petit dossier sur l’impression 3D, histoire de faire comprendre à certains de quoi il s’agit et de donner à d’autres le goût d’entreprendre.

Après une courte vidéo explicative et un article de fond sur l’impact actuel et futur de la propriété intellectuelle sur l’impression 3D, voici une leçon pratique et concrète réalisée à partir du logiciel de modélisation 3D Blender.

Ce qui est intéressant ici, c’est d’abord le fait que Blender soit un logiciel libre mais c’est aussi le fait que vous n’avez pas besoin d’avoir une imprimante 3D à la maison, c’est le service en ligne Shapeways qui se charge de matérialiser l’objet à partir de votre fichier Blender et qui vous envoie le tout par la Poste.

Conclusion : on peut déjà s’y mettre !

PS : On nous signales dans les commentaires l’existence de la société Sculpteo qui propose en français un service similaire à Shapeways.

Créer des figurines imprimées 3D avec Blender et le service d’impression Shapeways

Creating 3D Printed Models with Blender and the Shapeways Printing Service

Terry Hancock – 26 mai 2011 – Free Software Magazine
(Traduction Framalang : Lolo le 13)

Un des sujets technologiques les plus intéressants de ces récentes années a été la montée en puissance de la technologie « d’impression 3D » pour le prototypage rapide de formes peines. J’avais déjà évoqué le sujet pour le Free Software Magazine, mais ce mois-ci j’ai finalement décidé de l’essayer pour mon propre compte, en créant matériellement des « figurines d’étude » (un joli synonyme de jouets) pour mon projet vidéo, Lunatics.

Dans cet article, je vais vous décrire le processus complet, depuis la création des modèles 3D jusqu’à la réception du produit fini dans ma boîte aux lettres.

La principale raison pour laquelle j’ai fait ce projet, c’est que je voulais tester les capacités du service d’impression 3D de Shapeways. Ils ont associé ce service d’impression avec une conception collaborative en ligne, ce qui crée un environnement fun et motivant pour créer et commander des figurines. C’est un service très facile à utiliser et la qualité d’impression semble être au rendez-vous. Ils proposent aussi une grande variété de matériaux d’impression comme la céramique cuite, des métaux et des plastiques.

fig_on_keyb_comp.jpg

Figure 1 : Conçu dans Blender, exporté et téléversé chez Shapeways, livré en tant que figurine plastique imprimée – C’est cool non ?

La deuxième raison est que je désirais avoir quelque chose d’un peu plus tangible pour élaborer mon projet Lunatics. J’aime travailler avec des ordinateurs, mais parfois vous voulez avoir quelque chose de tangible à tenir et à manipuler avec vos mains quand vous essayez de figer les scènes et planifier les scripts.

Il nous fallait constuire une maquette de la colonie lunaire dans laquelle se déroule la plupart des actions du film. D’ordinaire c’est une affaire de mousse avec des plans de sols imprimés, un peu comme un jeu de plateau. Et comme pour un jeu de plateau, nous allions donc avoir besoin de figurines représentant nos personnages. Nous aurions pu opter pour des pions de Cluedo ou utiliser ceux des échecs avec un code couleur ou encore des petits chevaux, mais ça aurait été bien plus sympa si nous avions des figurines qui ressemblent réellement à nos personnages.

À la même échelle (1/100e) que ces personnages, J’ai aussi voulu créer quelques véhicules spatiaux. J’ai décidé de commencer avec le Moon Truck, un rover lunaire pressurisé conçu pour transporter fret et passagers.

Comme j’ai eu quelques difficultés à imaginer concrètement ce véhicule, il m’a semblé utile d’essayer d’externaliser cette tâche à la fois comme une maquette 3D dans un ordinateur et comme une maquette physique à tenir et à regarder.

Figurine des personnages

J’ai commencé par créer les silhouettes de mes personnages dans un brouillon Inkscape. Elles sont basées sur des figurines d’architecture du domaine public que j’ai grandement modifiées. J’en ai fait des pions comme de simples découpes sur une base ronde (à la différence de soldats de plomb ou des pions Cluedo).

Puis, j’ai sélectionné chaque personnage depuis mon dessin original sous Inkscape et je les ai copiées dans des fichiers SVG séparés (Figure 2). Je les ai sauvegardés en tant que Plain SVG pour un maximum de compatibilité.

fig_svg_prep.jpg

Figure 2 : J’ai d’abord copié le dessin des silhouettes en SVG dans des fichiers séparé et sauvegardé ceux-ci au format Plain SVG.

J’ai importé chaque SVG dans Blender en tant que curves (Figure 3). Il y avait huit personnages principaux (plus deux extras). Pour les mettre à la bonne taille (à l’échelle 1/100e, un mètre est réduit à un centimètre) j’ai décidé de prendre la convention qu’un Bender Unit (BU) serait égale à 1 cm. J’ai donc mis à l’échelle les courbes de cette façon.

fig_import_to_blender.jpg

Figure 3 : J’ai importé les objet SVG dans Blender en tant que curves.

Les courbes (curves) sont des objets spéciaux et limités dans Blender. Il vaut mieux utiliser le format mesh pour l’impression 3D. Donc, après avoir importé les courbes depuis le fichier original en SVG, j’ai du les convertir en meshes (soit ALT+C au clavier, soit Changer le type d’objet… depuis le menu Objet).

Mais après la conversion, je n’avais que le squelette, c’est-à-dire les sommets et les arêtes qui les reliaient. Pour créer une face (surface) représentant la silhouette, j’ai utilisé la fonction Beauty Fill (avec le raccourci clavier Alt+F ou en sélectionnant Mesh > Faces > Beauty Fill dans le menu Option du Mode d’édition accessible via la touche Tab). En fait, ça ne crée pas une seule surface, mais plusieurs, l’espace est alors rempli automatiquement par des triangles.

J’ai ensuite passé quelques temps à simplifier la forme. La chose la plus importante est de s’assurer que les petites surfaces sont coplanaires (appartiennent à un même plan).

fig_extruding_figure.jpg

Figure 4 : Extrusion de la silhouette.

Ensuite, il m’a fallu donner de l’épaisseur à la découpe. J’ai décidé de les faire d’un millimètre de large, ce qui correspond ici à un dixième de Blender Unit. Pour ce faire, j’ai sélectionné le mesh, puis j’ai basculé sur la vue le long de l’axe X (en tapant 3 sur le pavé numérique). Puis j’ai tapé sur Tab pour passer en Mode édition et j’ai sélectionné tous les sommets (tapez A pour basculer la sélection sur tous les sommets). Enfin, tapez la séquence E (extrude), Y (direction) et 0.1 : cela créera l’extrusion de la silhouette dans la dimension Y (Figure 4).

fig_anya_figure.jpg

Figure 5 : La représentation du personnage d’Anya montre comment la silhouette extrudée chevauche la base cylindrique.

J’ai répété l’opération pour mes dix figurines : création d’une base mesh et extrusion en cylindre mesh, en faisant se chevaucher les figurines extrudées et la base (voir Figure 5).

Il n’est pas nécessaire de fusionner les objets dans Blender, ce qui me sauve d’une trop grande complexité, mais qui donnera une légère surcharge de travail à Shapeways (en effet le calcul actuel est basé sur une analyse des meshes et ils ne compte pas les chevauchements, ainsi, vous serez facturés en double pour les volumes chevauchés).

fig_all_figures.jpg

Figure 6 : Toutes mes dix figurines dans Blender.

Téléverser le modèle

J’ai fait cela plus d’une fois : au départ téléverser juste un des personnages puis essayer différentes combinaisons. Heureusement Shapeways ne fait pas attention si une forme consiste en une simple pièce ou en une douzaine, mais ils facturent un supplément par forme pour la plupart de leurs matériaux. Ça veut dire qu’il est généralement moins cher d’imprimer une petite collection d’objets en tant que forme simple (si vous le pouvez) en particulier dans le cas où, comme moi ici, elles sont de petite taille.

fig_export_stl.jpg

Figure 7 : Exportation d’une forme Blender en format STL pour l’impression 3D chez Shapewys.

Quand vous avez fini votre conception, l’étape suivante est de les exporter dans un format que Shapeways va comprendre. Celui que j’ai trouvé le plus simple à utiliser est le format STL (Figure 7). Ce format est commandé par le menu d’export standard dans Blender (File > Export > STL).

Pour impimer la forme en utilisant Shapeways, j’ai commencé par aller sur le site pour m’identifier. J’ai ensuite cliqué sur le bouton “upload” tout en haut qui m’a renvoyé vers un formulaire d’envoi de ma forme (Figure 8). Le formulaire permet aussi de créer des formes pour votre propre utilisation ou pour le rendre public. En fait, comme avec d’autres service de fabrication communautaire, si vous mettez vos formes à la vente, vous toucherez une commission. N’étant pas tout à fait prêt pour rendre ces fomes libres, j’ai donc juste cliqué sur la boite privée.

fig_upload_model_shapeways.jpg

Figure 8 : Téléversement de la figurine Anya chez Shapeways.

Il est possible que vous ayez besoin de modifier ce qui a été téléversé si vous voulez que l’image apparaisse correctement, J’ai suivi quelques mauvais conseils et j’ai orienté l’axe Y en tant que “up” (haut) à la place de l’axe Z, ce qui a eu pour résultat la malheureuse Figure 9. Ça aurait été bien imprimé, mais ça donne un rendu de prévisualisation affreux.

fig_oops_wrong_way.jpg

Figure 9 : Ooops ! L’axe Z devrait être en haut si vous voulez une prévisualisation correcte (là j’ai mis Y).

Une fois que vous avez bien téléversé votre forme, vous pouvez commander une impresion 3D avec comme matériau une variété de plastiques, des pierres recomposées, quelques différents types de métal et différents finis de verre (Figure 10).

De façon pratique, l’interface calcule automatiquement le volume et le prix de chaque matériau pour que vous puissiez comparer. Le coût de pour mon lot de 10 figurines va de $3.20 avec de la pierre recomposée jusqu’à $64.40 pour de l’argent (j’ai fait mes figurines en plastique “Indigo strong and flexible” vu que j’avais utilisé de l’indigo pour les travaux artistiques des Lunatics). Le coût a été facturé en fonction des volumes calculés des formes (pas le bounding box, la vraie forme), plus un coût de base par forme.

fig_materials_costs.jpg

Figure 10 : Matériaux disponibles et prix pour mon lot de figurines.

Camion lunaire

Après le téléversement de figurines et ma tentative de les commander, j’ai découvert une autre particularité du service Shapeways : Il y a un minimum de commande de 25 dollars. Donc si je ne voulais pas gâcher mon argent, il me fallait commander autre chose. J’ai donc décidé de créer une autre forme au 1/100e, cette fois un des véhicules créés pour mon projet Lunatics (Figure 11). Je ne vais pas vous faire le détail de la création, mais c’est bien entendu une conception plus complexe.

fig_moontruck_in_blender.jpg

Figure 11 : La conception du camion lunaire dans Blender (je n’ai pas imprimé le module passager sur la droite).

J’ai fait un camion en plusieurs parties qui seront assemblables après coup. C’était en partie pour permettre un assemblage modulaire avec des pièces d’autres modèles (les boogies à quatre roues sont supposés être enlevables sur le camion réel par exemple). Pour d’autres il a été plus facile de faire des formes creuses avec des paroies fines qui ne coûteraient pas tant que ça à imprimer. Le couvercle amovible sur le module l’est aussi pour pouvoir accéder à l’intérieur, bien qu’il n’y ait pas vraiment de détails à l’intérieur (mais je pourrai en ajouter dans une prochaine version).

Vous pouvez commander les pièces en utilisant un simple système de vérification, comme n’importe quel site d’e-commerce. En tant que produits fabriqués à la demande, il y a des délais de fabrication en plus des délais de livraison à inclure dans le bon de commande (Figure 12).

fig_ordering_models.jpg

Figure 12 : Shapeway s’engage sur un délai de fabrication de 10 jours dans la vue du panier d’achat.

Livraison

Bon, cet article ne serait pas complet sans les photos des produits tels que je les ai reçus ! Ils arrivent dans de jolis petits emballages, un par forme, comme vous pouvez le voir sur la Figure 13.

fig_in_packages.jpg

Figure 13 : Mes objets, tels qu’ils me sont arrivés depuis Shapeways.

J’étais content de voir qu’il n’y a pas eu de figurines cassées (séparées de leur socle). Le camion est arrivé en pièces comme prévu (Figure 14).

fig_truck_parts.jpg

Figure 14 : Le camion a été imprimé en cinq parties (châssis principal et cabine, deux boogies à quatre roues, un conteneur et le toît de la cabine).

L’assemblage du camion a marché dès le premier essai. Les roues sont plus glissées qu’emboitées, mais elles restent en place comme il faut. La prise du sas était passablement dure à ajuster et il a fallu un peu forcer mais le plastique a résisté (Figure 15).

fig_assembling_truck.jpg

Figure 15 : Assemblage des composants du camion lunaire.

Il est intéressant d’examiner la texture de près. Il est possible de voir les faces du modèle original sous Blender (les formes cylindriques sont en fait des polygones à très grand nombre de côtés, comme dans le haut du boogie à quatre roues de la Figure 16)

fig_quad.jpg

Figure 16 : Zoom sur un des boogies, notez les lignes dûes à la méthode d’impression.

Et voila !

Il faut vous avouer que j’avais espéré que les roues tournent. J’ai essayé de concevoir un modèle articulé comme un challenge, mais apparemment je n’ai pas dû laisser suffisamment de jeu pour ça et elles sont donc coincées comme si elles étaient imprimées en bloc. C’est un des nombreux problèmes de conception que j’étudierai avant de tenter d’imprimer ces figurines à nouveau.

La Figure 17 montre les figurines assemblées avec un sous et un DVD pour donner une idée de l’échelle. Je suis ravi d’avoir pu tester cette technologie sur quelle j’écrirai certainement à nouveau et j’espère avoir fait quelques émules parmi les courageux lecteurs.

fig_fullset_w_scaleitems.jpg

Figure 17 : Mes pièces complètes avec un penny et un DVD pour l’échelle.

Mais je vais arrêter d’écrire. J’ai trop envie de jouer là avec ma voiture lunaire 🙂




Geektionnerd : l’après RMLL 2011

Les RMLL 2011, c’était bien, mais c’est fini ![1]

Merci à l’orga (efficace), aux conférenciers (intéressants), aux associations (enthousiastes), aux visiteurs (sympathiques), aux barmens (généreux), aux strasbourgeois (accueillants), à la bière libre (fameuse), etc. Et à l’année prochaine…

Geektionnerd - Simon Gee Giraudot - CC by-sa Geektionnerd - Simon Gee Giraudot - CC by-sa Geektionnerd - Simon Gee Giraudot - CC by-sa

Crédit : Simon Gee Giraudot (Creative Commons By-Sa)

Notes

[1] PS: si vous avez des photos, des vidéos, des souvenirs à partager, utilisez les commentaires.




Geektionnerd : RMLL 2011

Geektionnerd - Simon Gee Giraudot - CC by-sa

Les Rencontres Mondiales du Logiciel Libre (RMLL ou Reumeuleuleu pour les intimes) débutent ce samedi à Strasbourg et dureront jusqu’au 14 juillet.

A la suite d’un week-end spécialement orienté “grand public” sur la place Broglie, vous pourrez assister à un nombre impressionnant de conférences. Et bien entendu aux désormais traditionnels “Repas du libre” et “Nocturnes RMLL”. Les absents pourront suivre l’évènement en direct via “Radio RMLL”, ou retrouver les vidéos d’une partie des conférences quelques semaines plus tard[1].

Framasoft sera bien évidemment présent en force, avec :

Bien entendu, vous pourrez retrouver le stand Framasoft au sein du village des associations. En plus des habituels Framakeys, FramaDVD et Framabooks, on me susurre à l’oreille que les visiteurs pourront y trouver en avant-première exclusive le Tome 2 du Geektionnerd. Son auteur, Gee, fera d’ailleurs lui aussi une conférence “Dessiner un webcomic avec Inkscape”.

Enfin, une petite annonce de service : il serait dommage de ne pas profiter du plus grand rassemblement de geeks de France pour demander aux personnes qui le souhaitent de nous apporter leurs clé USB inutilisées que nous reconditionnerons pour le futur projet Framaphonie.

Venez nombreux !

Notes

[1] Par contre, ils ne pourront pas gouter aux 1 200 litres de bière (libre, évidemment) brassées pour l’occasion…




Geektionnerd : Google +

A moins d’être parti en congés dans une autre galaxie ces derniers jours, difficile d’échapper au buzz du nouveau service du tentaculaire Google : “Google Plus”. Concurrent direct de Facebook, Google Plus repose sur le même business model : vous mettre entre les mains un service efficace et agréable à utiliser[1], sur lequel vous laisserez (volontairement !) des informations personnelles qui permettra à Google de vendre votre profil publicitaire au plus offrant.

Google Plus fera-t-il plus de vagues que les précédentes tentatives orientées “réseau social” de la firme de Mountain View ? Rien n’est moins sûr, car changer les habitudes de 700 millions de personnes réclamera des ressources conséquentes[2].

Geektionnerd - Simon Gee Giraudot - CC by-sa Geektionnerd - Simon Gee Giraudot - CC by-sa Geektionnerd - Simon Gee Giraudot - CC by-sa

Crédit : Simon Gee Giraudot (Creative Commons By-Sa)

Notes

[1] attention, efficace et agréable à utiliser ne signifie par pour autant utile !

[2] D’un autre côté, quand on voit que MySpace, coqueluche du web social il y a encore 5 ans, vient d’être racheté pour 35 malheureux millions de dollars, on se dit que les employés de Facebook font peut être bien de vendre leurs actions




Planifier librement ses rendez-vous avec Framadate

Framadate.org

Aujourd’hui, nous avons le plaisir de vous annoncer un nouveau site en “beta test” sur le réseau Framasoft : http://framadate.org

Vous avez besoin de trouver la meilleure date pour une sortie au resto entre amis ? Vous voulez savoir quelle serait l’heure qui conviendrait le mieux pour cette importante réunion de travail ? Vous voulez savoir qui amène la bière, les pizzas ou le dessert ?

Alors Framadate est fait pour vous ! 🙂

Plutôt que d’échanger de nombreux emails (avec toujours le boulet qui oublie de faire « répondre à tous » et dont on perd donc trace du message), il suffit de créer un sondage sur Framadate.org et d’en envoyer le lien aux participants (par email, par Twitter (ou identica), Facebook (ou diaspora 🙂 ), etc).

Quelques clics plus tard, vous saurez quelle est la date qui convient le mieux. On peut difficilement faire plus simple !

Framadate est un service proposé librement et gratuitement par le réseau Framasoft. Inspiré du service Doodle, il est basé sur l’application libre STUdS! développée par l’Université de Strasbourg, Framasoft ayant principalement relooké et sécurisé l’application. Le code source de Framadate est bien évidemment disponible.

<teasing>
Framadate est un service qui fait partie du projet “Framatools”, qui visera à sensibiliser le grand public à la décentralisation des données et applications.

En effet, de plus en plus de logiciels fonctionnent directement au sein des navigateurs web (d’où l’importance de navigateurs libres et de confiance) : c’est le fameux “cloud”. Cependant, cette informatique “dans les nuages” pose un certain nombre de problèmes : protection de la vie privée, propriété des données mais aussi sécurité et fiabilité du service.

Framasoft va donc proposer un certain nombre de services en ligne basés sur des applications libres [1].

Évidemment, cela peut paraître paradoxal, puisqu’on y retrouve sensiblement les mêmes problématiques de sécurité et de fiabilité du cloud “privé”. Cependant, il faut voir ces services comme des « produits de démonstration » fonctionnels et maintenus par nos soins. Un site de sensibilisation aux dangers du cloud sera mis en place d’ici la rentrée, et expliquera pourquoi et comment installer, chez soi ou pour son organisation, sa propre instance de l’application. </teasing>

Notes

[1] Framasoft propose d’ores et déjà le site de rédaction collaborative Framapad, par exemple.




Un gestionnaire de paquets dans la future Framakey

Capture Synapps, par RoromisEn gestation depuis… 5 ans, la Framakey 2.0 arrive enfin en version beta.

La Framakey a en effet vu le jour à l’été 2005 et, quelques mois à peine après sa sortie, nous écrivions les spécifications de ce qui nous paraissait être la voie à suivre pour en faciliter l’utilisation.

Le principe était simple : s’inspirer de “Synaptic”, le logiciel qui permet aux utilisateurs de Linux de gérer simplement l’ajout et la suppression de logiciels.

Ce concept, présent sur Linux depuis de très nombreuses années, a été repris par nombre de smartphones (dont l’évitable iPhone) : une interface simplifiée me présente les applications disponibles, classées par catégories, je mets celles que je souhaite ajouter dans un “panier”, puis je clique sur “Installer”. Le logiciel se charge alors de télécharger les logiciels sélectionnés, les installe, et crée le raccourci correspondant. Simple, rapide et efficace.

Après diverses phases de tâtonnements dans le développement[1], plusieurs développeurs successifs, et des priorités Framasoftiennes nous ayant éloignées de ce projet, c’est finalement grâce aux talents de Roromis que nous ne sommes pas peu fiers de vous présenter le premier[2] “gestionnaire de paquets pour Windows” : Synapps.

—> La vidéo au format webm

Couplé avec le portail d’applications Framakey, cela permet de proposer un “appstore” pour la Framakey. Mais évidemment, le logiciel est 100% libre, et vous pouvez donc créer vos propres dépôts. Et, mieux encore, rien ne vous oblige à le limiter à des applications logicielles : il est possible d’utiliser Synapps pour proposer des dépôts de tout types de contenus (musique, vidéo, PDF/ePub, etc), ce qui ouvre des perspectives… intéressantes.

La Framakey 2, dont le développement a été confié à Fat115, intègrera donc Synapps et toute la “glue” nécessaire pour proposer une bien meilleure expérience utilisateur à tous ceux qui aiment la Framakey mais pestaient légitimement après sa mauvaise capacité à gérer l’ajout/suppression d’applications.

Vous pouvez d’ores et déjà télécharger une version beta (qui motorise d’ailleurs la Framakey Ubuntu-fr Remix 11.04). Avec ces 39Mo tout mouillés à dézipper sur votre clé[3] , vous pourrez donc vous construire votre clé sur mesure. Evidemment, il s’agit là d’une version beta, aussi il se peut que vous puissiez rencontrer des bugs à l’utilisation, merci alors de nous les remonter sur le forum. À réserver donc pour l’instant à une utilisation de test et de découverte.

Soyez curieux ! 🙂

Notes

[1] le projet a vu des versions alpha développées en PHP/MySQL, en XUL, et même en… Windev, c’est dire !

[2] Il existe des systèmes équivalents pour Windows, mais à notre connaissance aucun n’est à la fois libre et graphique

[3] ou sur votre disque dur, ou sur votre baladeur MP3, ou sur la carte SD de votre appareil photo, ou…




Sensibiliser l’Économie Sociale et Solidaire aux valeurs du libre

Seeminglee - CC by-saL’économie Sociale et Solidaire, selon Wikipédia, “regroupe un ensemble de coopératives, mutuelles, associations, de syndicats et fondations, fonctionnant sur des principes d’égalité des personnes (1 personne 1 voix), de solidarité entre membres et d’indépendance économique.”.

Admettons que si cette définition porte en elle-même un certain flou, elle a le mérite de montrer qu’il s’agit d’institutions qui fonctionnent “autrement”. A tel point qu’on appelle souvent l’ESS le “tiers secteur” car les acteurs de l’ESS ne font pas partie du secteur public, mais ils marquent cependant une différence forte avec le secteur privé classique, en ce sens qu’il ne se fixent pas le profit comme objectif principal.

Or, il faut bien reconnaître à ce secteur un certain nombre de valeurs communes avec le logiciel libre et sa philosophie : une forme de démocratie dans les prises de décisions, et surtout une volonté de faire les choses ensemble, en coopération plutôt qu’en compétition. Le Framablog abordait déjà le sujet dans un texte publié par Bastien Sibille intitulé “Le temps de l’alliance”.

Il convient donc de s’interroger sur ce que ces deux mouvements, logiciels libres et Économie Sociale et Solidaire, peuvent s’apporter.

Cela tombe bien, car c’est justement le thème de la conférence organisée par l’AI2L le 9 juin prochain (inscription gratuite, mais fortement recommandée), à laquelle Framasoft participera.

Cela sera aussi l’occasion de présenter un cahier d’espérance qui “dresse un état des lieux des enjeux soulevés par le logiciel libre et leur pertinence pour l’économie sociale et solidaire, montre l’existence d’initiatives concrètes et propose des pistes pour renforcer les liens entre logiciels libres et ESS.

Quels sont les points de synergie et de divergence entre ces deux mouvements ? Comment pouvons nous “pousser” le libre dans les structures de l’ESS ? Quels apprentissages le mouvement du logiciel libre peut-il tirer de ces structures ? Quels (contre-)exemples pouvons nous citer en termes de ponts entre ces mouvements ? Comment convaincre l’économie “classique” que le libre et l’ESS sont créateurs de valeur(s) ?

Autant de questions auxquelles nous essaieront de répondre, mais sur lesquelles nous souhaiterions avoir vos avis…