MyPads point de la semaine 18

Nouvelle semaine, nouveau point hebdomadaire. Avec quelques jours de retard puisque celui-ci aurait du paraitre jeudi dernier.

img-mypads-ulule2Les tâches réalisées

La semaine dernière, nous avons abondamment parlé d’une anomalie gênante autour d’Etherpad, de yajsml et de MyPads. Une solution de contournement a été trouvée mais devra être confirmée : pour réinstaller le plugin, il semblerait qu’après l’avoir désinstallé, la suppression forcée du cache NPM (se situant en général dans un répertoire caché, /home/user/.npm) permette de ne plus éprouver le problème. Nous verrons une fois MyPads publié sur NPM, et non installé en local, si ce contournement deviendra inutile et mettrons en œuvre ce qu’il faudra pour améliorer la situation si ce n’est pas le cas.

En dehors de cela, cette semaine a été consacrée essentiellement au module de gestion des groupes avec l’affichage de la liste des groupes, leur création. À propos de la notion, centrale, de groupe dans MyPads :

  • chaque utilisateur, authentifié, peut créer un nombre illimité de groupes;
  • ceux-ci contiennent chacun un nombre illimité de pads;
  • chaque groupe dispose d’un identifiant unique en base de données et d’un label;
  • au niveau du groupe, il est demandé de définir une visibilité pour les pads qui seront contenus
    • restreinte : uniquement pour les personnes explicitement invitées, lesquelles devront posséder ou créer un compte sur l’instance MyPads;
    • privée : accès restreint à l’utilisation d’un mot de passe et dans ce cas, un compte n’est pas nécessaire;
    • publique : les pads contenus sont accessibles par leur adresse Web, comme c’est le cas aujourd’hui sans MyPads.
  • cette visibilité est appliquée par défaut mais pourra être écrasée individuellement pour chaque pad contenu;
  • un groupe pourra être mis en lecture seule, pour consultation uniquement;
  • chaque groupe pourra voir son administration partagée avec d’autres utilisateurs, qui pourront alors en modifier les propriétés et y créer des pads;
  • en plus de ce qui était prévu initialement
    • chaque utilisateur pourra mettre en favori un ou plusieurs groupes auxquels il participe;
    • il sera possible d’associer des étiquettes (tags) pour chaque groupe.

Semaine 19

Le travail sur les groupes va être poursuivi. En théorie, nous devrions obtenir en fin de semaine :

  • la suppression des groupes;
  • les étiquettes, favoris;
  • les filtres et la recherche dans la liste de groupes;
  • les tests fonctionnels qui vont avec le module groupes.

Lorsque la gestion des groupes sera terminée, celle des pads arrivera rapidement, puisque cette dernière sera similaire à celle des groupes, et même simplifiée par rapport à elle.
Rendez-vous en fin de semaine pour le prochain point.

MyPads, week 18

New week, new point with a delay of couple of days : this news should have been published last Thursday

img-mypads-ulule2

Tasks done

Last time, we’ve copiously talked about an annoying bug around Etherpad, yajsml and MyPads. A workaround has been found but must be confirmed : to install the plugin again, it seems that, after uninstalling it, a forced removal of NPM cache (which resides into a hidden directory, like  /home/user/.npm) helps to not suffer from the problem. We’ll check after MyPads publication under NPM public repository if this workaround becomes useless. We’ll work to improve the situation otherwise.

Apart from this bug, the week has been mostly dedicated to group management module : list display, creation. About the groups main concept in MyPads :

  • every user, authenticated, can create an unlimited number of groups;
  • those one can contain one or more pads;
  • each group has a database unique identifier and a name;
  • for each group, you’ll have to define a visibility level for linked pads
    • restricted : only invited users can view and edit pads, people who need a MyPads account;
    • private : the access is protected by a password, in this case, the account isn’t mandatory;
    • public : pads are accessible through their Web address, like in classical Etherpad.
  • this visibility property is applied by default to all attached pads but can be overwritten for each pad;
  • a group can be set up on read-only mode;
  • each group can be shared with other users, then they will be able to edit its properties and create new pads into it;
  • bonus elements
    • each user can bookmark one or more groups;
    • tags can be assigned to each group.

Week 19

Work in groups management will continue. In theory, we should get, at the end of the week :

  • group removal;
  • tags and bookmarks implementation;
  • research and filters from the group list;
  • functional testing of the groups module.

When the groups management will be finished, pads management will be out quickly, because it will be similar, and even simplified.
See you at the end of this week for the next point.




MyPads point de la semaine 17

Comme annoncé la semaine dernière, c’est désormais un point hebdomadaire qui émaillera le travail autour de MyPads. Cette semaine n’aura pas été de tout repos et les avancées visibles sont malheureusement peu nombreuses. Explications.


img-mypads-ulule2

Les travaux

La mise en place des tests fonctionnels client, simulant une navigation réelle, a occupé les premiers jours de développement. Ensuite MyPads a subi quelques modifications pour fonctionner avec la version 4 d’Express, le cadre de développement sur lequel repose Etherpad et donc MyPads. Cette migration a été initiée par le tout premier contributeur externe au plugin, et a été rendue nécessaire par la migration d’Etherpad une semaine plus tôt.

Cette migration a été l’occasion de tester à nouveau la compatibilité de MyPads avec Eherpad. Cela peut sembler étonnant, mais MyPads est développé de manière autonome vis à vis d’Etherpad et est régulièrement testé en tant que plugin Etherpad, pour les raisons suivantes :

  • accélérer le développement et éviter de devoir relancer Etherpad voire réinstaller le plugin à chaque modification;
  • permettre les tests unitaires et fonctionnels serveur, très difficile sinon à partir d’un plugin Etherpad, isoler une base de tests du reste de l’instance;
  • conserver une forme d’indépendance vis à vis du cœur d’Etherpad : afin de ne pas nécessiter des modifications d’Etherpad lui-même et de limiter les régressions en cas de changements internes de ce dernier.

Malheureusement le fonctionnement de MyPads s’est révélé erratique : parfois correct, parfois non. Pour les techniciens, seules les méthodes GET et HEAD sont autorisées et toute autre méthode HTTP est refusée. Le problème, nouveau, est intimement lié au logiciel intermédiaire (middleware) yajsml, lequel est employé par Etherpad afin d’optimiser les requêtes des fichiers dits statiques (scripts, images, styles etc). En théorie, les requêtes prises en charge par MyPads ne devraient pas être impactées par ce logiciel intermédiaire, mais pour une raison mal comprise, elles le sont parfois.

Le problème, c’est que MyPads fonctionne autour d’une interface de programmation standard, une API HTTP REST, sur laquelle se connecte le client Web, et qui permettra à d’autres clients ou à des outils tiers de voir le jour. La résolution du soucis n’est pas aisée : l’anomalie intervient de manière aléatoire. Peu de plugins sont touchés car la plupart ne définissent pas leurs propres routes HTTP. Même si yajsml est modifié pour résoudre le soucis, il faudra que la fondation Etherpad accepte le patch et l’intègre avant de pouvoir retrouver une fonctionnement correct de MyPads. Or, il semble que yajsml sera bientôt remplacé par une technologie plus standard.

D’autres résolutions ont été envisagées, du fait de la situation de yajsml, et entre autres :

  1. Substituer, comme certains plugins le font,  l’API HTTP REST par une API basée sur socket.io, la technologie employée par Etherpad pour la collaboration en temps réel et qui repose en premier lieu sur le standard WebSocket. Cette voie a été expérimentée cette semaine mais représente une charge considérable de travail et la réécriture de nombreux modules. De plus, il ne s’agit pas d’un remplacement propre : MyPads y perd une méthode de communication plus standard ainsi que son système d’authentification, lequel avait été choisi pour permettre à terme une connexion depuis des comptes externes ou encore un annuaire LDAP, OpenID etc
  2. Faire de MyPads une application indépendante, de fait non plus un plugin, qui gèrerait les accès des utilisateurs aux pads en fonction des groupes définis. Le problème de cette solution est de complexifier l’installation de MyPads et de risquer des incompatibilités avec certains autres plugins. Aussi, nous sortirions de fait du cadre du cahier des charges initial.

Il a été décidé que la dernière piste ne serait à employer qu’en cas de dernier recours et c’est la migration vers socket.io qui a été d’abord privilégiée. Néanmoins, à la vue du travail nécessaire et surtout des pertes fonctionnelles que cela risque d’amener, cette solution ne sera pas poursuivie.

La semaine prochaine

Le travail va reprendre sur la version HTTP REST standard qui a été développée jusqu’ici. Il est prévu :

  • qu’étant donné que la suppression du yajsml n’arrivera qu’à un terme inconnu, il faudra dépister l’anomalie et la résoudre, ou au moins proposer un contournement simple;
  • de poursuivre le développement, moins actif que prévu cette semaine, avec notamment
    • le passage d’une authentification en propre classique vers JSON Web Token, dont le travail a commencé cette semaine avec le test de socket.io, de manière à renforcer la sécurité des échanges de données chiffrées entre serveur et client;
    • les groupes et pads, évidemment.

Rendez-vous jeudi prochain pour le point de la semaine 18.

MyPads week 17

As announced last week, we now give some news about MyPads development weekly. Last couple of days haven’t been picnic and few enhancements are visible. Explanations below.

img-mypads-ulule2

Work

Frontend functional testing setup, aiming to simulate real navigation, has filled the first days. Then MyPads has been updated to work with Express version 4. Express is the framework which powers Etherpad and so MyPads. This migration has been introduced by the very first MyPads external contributor, and was necessary because of the Etherpad migration a week earlier.

These modifications were a good moment to test MyPads’compatibility towards Eherpad. That can be surprising but MyPads has been programmed independently from Etherpad and is regularly tested as an Etherpad plugin, here’s why :

  • speeding up the development and avoiding Etherpad reboot or plugin re-installation at each update;
  • allowing unit and functional server testing, quite hard from an Etherpad plugin, and isolate a test database from the whole node;
  • retaining a distance regarding Etherpad core in order to avoid need of Etherpad updates and limit regressions in case of internal modifications of it.

Sadly MyPads behavior becomes erratic : sometimes correct, sometimes buggy. For technicians : only GET and HEAD HTTP verbs were allowed and all other method has been forbidden. This problem seems to be linked to the yajsml middleware, used by Etherpad in order to optimize static files requests (scripts, images, styles etc). In theory, MyPads handled routes should not be impacted by this middleware, but for an misunderstood reason, they sometimes are.

Problem is that MyPads is based on a standard home-defined HTTP REST API, which the Web client connects to. This interface may allow other clients and third party tools to be created more easily. Debugging the problem is not an easy task, due to the randomness of the behavior. Few plugins should be concerned because most of them don’t define their own routes. Even if yajsml is updated to fix the issue, the Etherpad developers will have to accept the patch and merge it before we have MyPads working correctly. Now it seems that yajsml will be soon replaced by a more standard technology.

Others resolutions have been considered, regarding to yajsml situation :

  1. Replace, as others plugins do, the HTTP REST API by a socket.io one. socket.io is the technology used by Etherpad for realtime collaboration, that use as a first class citizen the WebSocket protocol. This approach has been tried this week but requires a considerable amount of work and many modules rewriting. Moreover, it’s not a proper replacement : MyPads loses its more standard communication method but in addition its authentication system, which have been chosen to allow, later, connection through external accounts,  LDAP directory, OpenID etc
  2. Move MyPads from a plugin to a standalone application, which handle user access according to created groups and pads. Problem with this solution : harden the MyPads installation, risks of incompatibilities with some other plugins. Also, making a standalone app won’t conform to the initial specifications.

We have decided to follow the last proposition only as a last resort. The migration to socket.io has been preferred but, with the light of required work and moreover functional looses, it won’t continue.

Next week

Work will be resumed on the HTTP REST version, the one developed until now. We expect :

  • because yajsml removal won’t happen before an unknown time, it will be important to find and fix the bug, or at least to provide a simple workaround;
  • move forward, with
    • migration from a classical authentication to JSON Web Token, which has been partially done this week as part of socket.io test, in order to harden encrypted data exchanges between client and server;
    • groups and pads, obviously.

See you next Thursday for week 18 point.




MyPads : développement, point numéro 3

Cela fait déjà plusieurs semaines que le dernier point concernant MyPads a été écrit. Pour ceux qui ne le sauraient pas encore, MyPads est le plugin Etherpad, et donc Framapad, qui va apporter la gestion des groupes et pads privés pour chaque utilisateur enregistré.

img-mypads-ulule2L’avancement

Ces dernières semaines ont été moins actives que les précédentes. Malgré cela, c’est toujours l’interface client qui a été travaillée avec la réalisation de :

  • la page de connexion et l’authentification associée ;
  • la page de souscription de compte ;
  • la gestion du profil utilisateur.

À court terme

Le développement reprendra une activité soutenue dès cette semaine. Les premiers éléments des modules de gestion de groupes et pads seront posés et avant la fin du mois une première version de tests sera proposée pour les personnes intéressées. L’objectif poursuivi est l’obtention d’une version stable dans la première quinzaine du mois de mai. À partir de maintenant, un point hebdomadaire sera réalisé.

MyPads : third feedback

Three weeks ago we’ve made a second point about MyPads development. For those who don’t know yet, MyPads is an Etherpad plugin, and so Framapad, which will bring private groups and pads management for registered users.

img-mypads-ulule2Progress

Last weeks have been less active than previous ones. Nevertheless, the Web client interface has seen some work with :

  • login page and authentication;
  • account subscription;
  • user profile management.

Short term

The development will go back to regular activity this week. Groups and pads first pieces will be set up and, before the end of April, a first preliminary test version will be available for interested people. We plan to get a stable version within the first two weeks of May. As of now, weekly news will be sent.




Regooglisons Internet : le Libre citoyen

De grandes nouvelles et de beaux partenariats à vous annoncer en ce jour si particulier. Nous espérons vous renseigner en bonne intelligence, afin que vos données soient plus que respectées : afin qu’elles deviennent respectables.

Framasoft signe un pacte d’intelligence citoyenne

Suite à la dernière audition à l’Assemblée Nationale dans le cadre du projet de Loi Renseignement en vue de son examen prochain, Framasoft a eu le plaisir d’être convié à une soirée organisée conjointement par Red String et Clear Shield-France dans les bureaux de Google Paris dans le 9e. Nous avons eu la satisfaction de constater que le travail de toute la communauté en faveur des solutions libres a été reconnu, car nous avons été labellisés officiellement « Laboratoire des réseaux ouverts et libres » (Labrol).

Nous tenons à remercier tous ceux qui à nos cotés luttent et soutiennent notre action pour cette distinction qui nous honore. Voici ce que signifie concrètement cette labellisation : nous allons très bientôt signer un pacte d’intelligence pour opérer dans un esprit d’ouverture totale et néanmoins citoyenne, en permettant l’accès à nos serveurs à ces sociétés agréés par le Ministère de l’Intérieur. Une prochaine convention, se référant au texte de loi mentionné ci-dessus, sera paraphée sous l’autorité d’une commission administrative, afin de servir de banc d’essai (Luc préfère dire proof of concept) d’un Internet plus ouvert et plus sûr pour tous.

Keys on keyboard CC-BY-SA Intel Freepress
Keys on keyboard CC-BY-SA Intel Freepress

 

Libérer la Justice en la servant nous-mêmes.

Si nous avons fait le choix de capitaliser sur l’image de confiance renvoyée par Framasoft, c’est parce que nous croyons fermement que l’esprit d’ouverture et de bonne entente qui règne au sein des services offerts par Framasoft, permettra de concilier les impératifs de protection des citoyens et la possibilité de services respectueux des droits sans pour autant porter devant des services judiciaires déjà débordés les petites affaires de harcèlement et de suspicion pédopornographique que nous traitons régulièrement.

De même la surveillance des groupes Djihadistes, déjà identifiés pour la plupart sur Diaspora, sera d’autant plus facile que nous n’aurons plus à prendre la responsabilité de communiquer les données dans la mesure où un système de réquisition automatique et de transfert sera assuré par Red String, la startup leader sur le traitement automatique des métadonnées.

Nous nous réjouissons de ce partenariat gagnant-gagnant qui nous permettra, grâce au prêt de deux serveurs de Red String, d’ouvrir plus tôt que prévu notre prochain Framadrop, un DropBox-like très attendu, basé sur une solution libre, et qui ravira les utilisateurs. Pour assurer à Framadrop le plus haut niveau de sécurisation contre les virus et autres fichiers malveillants, les fichiers seront automatiquement scannés par l’anti-virus que met gracieusement à notre disposition Clear Shield.

Qu’ils en soient ici remerciés.

Regoogliser selon l’exception culturelle Française.

Il ne s’agit donc pas d’un changement de cap, mais bel et bien d’une révolution. Nos services LEDS (Libres, Éthiques, Décentralisés et Solidaires) se verront désormais tous adjoindre un add-on Privatif, Unipersonnel, Technocratique et Espionnant ; afin de distinguer vos données de celles des personnes en voie d’auto-radicalisation ou pouvant porter trouble à l’ordre public. Avec cet algorithme à la pointe des technologies hexagonales, nous aurons donc le meilleur des philosophies étatsuniennes (analyse de masse des méta-données en collaboration avec l’exécutif et les services de renseignement) ; mais dans une exception toute française, qui permettra de réserver l’usage du Logiciel Libre uniquement aux citoyen-ne-s qui n’ont rien à se reprocher.

Le but à moyen terme est de vous fournir un espace de liberté totale et clairement délimitée dans un ensemble de services unifiés qui, avec votre soutien indéfectible, nous permettront enfin de créer ce qu’un grand nombre d’entre vous nous demande à cor et à cri : le Frama-Phone. Nous avons d’ores et déjà acquis le soutien de l’association libriste La Triangulation du Net qui mettra à notre disposition sa base de données libre de géolocalisation, nécessaire à la transmission et au suivi des communications électroniques.

Bon, nous sommes réalistes, ce projet ne se fera pas en un jour, il vous faudra attendre plusieurs mois avant que sa commercialisation soit effective. Mais un premier prototype récemment expérimenté aux Journées du Logiciel Libre à Lyon a déjà atteint 720 points sur le benchmark  du FAI Orange, le fameux « Système Automatisé de Légalisation des Opérations de Protection Électronique ». La route est longue mais nous la ferons avec vous en toute transparence.

Promis : On Ne Lache Rien.

framaphone
Maya, un frama-cat qui nous a vu boire du rhum.

 




Framapad : le renouveau

Depuis le lancement de Framapad en 2011, son succès ne s’est pas démenti. Pour preuve, nos serveurs s’écroulent ! C’est pourquoi, depuis maintenant près de 2 ans, nous multiplions les instances d’Etherpad afin de garder un service réactif.

Les soucis à répétition sur notre infrastructure qui ont eu lieu pendant les deux premiers mois de 2015 ont monopolisé notre attention. Du coup, la dernière instance de Framapad, lite5, s’est retrouvée à héberger près de 90 000 pads ! Depuis son lancement à la mi-octobre, cela fait quand même 18 000 pads par mois, soit 600 nouveaux pads par jour, ou 25 pads par heure !

La nouvelle instance, lite6.framapad.org, mise en place il y a peu n’est pas hébergée sur le même serveur que les autres, ce qui devrait permettre de proposer des framapads plus réactifs et moins soumis aux plantages.

Évolution du nombre de pads sur lite6, en semaines :

Nombre de pads créés (lite6)
Évolution du nombre de pads créés, par semaine.

Les problèmes… et leur réponse !

Les pads vides

Un souci que nous rencontrons est la création de pads vides, jamais utilisés. Il s’agit le plus souvent d’une erreur de frappe dans l’adresse du pad lorsque l’on souhaite s’y rendre. Si ces pads ne prennent pas vraiment de place dans la base données, ils la polluent cependant : l’index de celle-ci grossit… pour rien !

C’est pourquoi Luc, notre gentil adminSys/codeur/râleur a codé un plugin Etherpad qui supprime automatiquement les pads vides.

Les pads qui ne servent plus

La base de données enfle toujours plus, alors que de nombreux pads ne sont plus utilisés. Nous recevons aussi de temps en temps des demandes de suppression de pads pour diverses raisons. Notre réponse ? Des pads temporaires !

Le plugin Etherpad Delete after delay, toujours codé par Luc nous permet maintenant de proposer des pads qui s’autodétruiront 24 heures, 7 jours, 31 jours ou 365 jours après la date de la dernière édition (pas la date de création, attention !).

Pour accéder aux framapads temporaires, vous pouvez vous rendre sur :

Ces différentes instances sont également proposées sur https://framapad.org.

creer un pad

Quand à l’instance https://beta.framapad.org elle porte bien son nom, puisqu’elle nous permet de tester certains plugins (commentaires, tableaux…) qui seront ajoutés sur les instances suivant leur intérêt et leur stabilité.

Les vieilles instances

Lite, lite2, lite3, lite4 et lite5 fonctionnent toujours, mais nous ne permettons plus la création de nouveaux pads dessus, étant donné l’instabilité régulière de ces instances (la chanson de JcFrog a bien failli achever le serveur, en lui amenant plein de nouveaux utilisateurs).

Afin de soulager notre infrastructure, nous passerons prochainement ces instances en mode lecture seule : vous pourrez toujours accéder (et télécharger) au contenu des pads, mais ceux-ci ne seront plus éditables. Ce passage en « read-only » sera effectué grâce au logiciel Padro créé par le bouillant Luc (encore lui !) pour répondre à nos besoins. Il faut dire que comme c’est lui qui s’occupe principalement des serveurs, il fait tout pour avoir le moins de problèmes possible !

Vous pourrez également, lorsque la prochaine version d’Etherpad sera sortie, accéder aux révisions sauvegardées de vos pads via Padro.

EDIT : la nouvelle version d’Etherpad est sortie (la 1.5.2) entre la rédaction et la publication de ce billet. Ce n’est donc plus qu’une question de disponibilité de Luc.

Et MyPads ?

Comme indiqué dans l’article publié récemment le développement du plugin de pads « privés » MyPads se poursuit.

Vous devriez pouvoir d’ici quelques jours tester une version alpha du plugin, et nous visons toujours une sortie officielle et un déploiement sur Framapad d’ici quelques semaines.

 

Mais alors, Framasoft fait du code ?

Non, toujours pas. L’inoxydable Luc a codé les plugins et Padro pour répondre à nos besoins et résoudre les problèmes que nous rencontrons, comme tout adminSys en telle situation 🙂

Et MyPads fait suite à notre campagne de financement participatif : Framasoft a pu passer un contrat pour faire développer MyPads grâce à ce financement, mais ce n’est pas Framasoft qui produit le code.




les rencontres Framasoft à venir

Exceptionnellement, cet article est sous licence Beerware. Car les membres de Framasoft, non content d’être hyperactifves du clavier en s’attaquant à une montagne de projets, aiment bien ces moments de rencontres, conférences, papotes, etc… que nous réservent les festivités AFK.

Stand Framsoft au RMLL 2015 de Montpellier
Stand Framasoft aux RMLL 2014 de Montpellier

Ainsi, si vous venez à notre rencontre dans les prochaines dates, et si vous aimez ce que l’on fait, vous avez désormais légalement le droit (et non le devoir) de nous payer une bière ou autre… Car oui : il y a des membres de Framasoft qui boivent autre chose que de la bière.

Voici donc quelques dates où vous pourrez nous retrouver, discuter, découvrir voire rejoindre les humains qui agissent derrière leurs claviers…

  • Ce week-end (les 28 et 29 mars) de nombreux membres de Framasoft seront présent-e-s au JDLL de Lyon. Pierre-Yves y donnera une conférence Degooglisons Internet, mais vous pourrez aussi y retrouver Kinou, Quentin, Lamessen, Fabien, Framartin, Flaburgan, Fat115, Pouhiou… bref, on y sera en force. Et vous pourrez aussi y retrouver un certain Tristan Nitot ou encore Louis Pouzin (un des papas d’Internet)
  • Et comme nous serons nombreuxses sur Lyon, on pourra même participer au Coding Goûter organisé de 14 à 17 heures à Locaux Motiv à Lyon le samedi 28 mars.
  • Mais le samedi 28 Mars, nous serons aussi à Paris où Fred fera une conférence gourmande et Libre, en collaboration avec Modzilla et l’April au ReSIC organisées par Ingénieurs Sans Frontières.
  • Et toujours le samedi 28 mars, ce sera Luc (notre Framasky favori) qui nous représentera aux Journées du Libre de Nancy avec une conférence Degooglisons Internet.
  • Les 24 et 25 avril à Bruxelles, Luc nous représentera à Associalibre pour une conférence Degooglisons Internet.
  • Le 5 mai, Pyg participera à un « Café éthique » sur le sujet de la vie privée organisé par l’École centrale de Lyon.
  • Le 7 mai, Pyg (dans sa tournée des écoles ^^) sera à l’école Isara où il donnera une conférence Logiciel Libre et Développement Durable.
  • Enfin les 23 et 24 mai, Fred et Pouhiou se sont faits inviter par Bookynette au festival Geekopolis (dans le village du Libre tenu par Parinux et Ubuntu-fr) où ils feront une conférence Dégooglisons Internet le samedi (pour Fred) et une sur le droit d’auteur le dimanche (pour Pouhiou).

Voilà pour les prochaines rencontres… Il y a de nombreuses demandes sur notre page de contact (on essaie d’y répondre au mieux selon les disponibilités de nos bénévoles).

Si vous ne pouvez pas nous payer une bière (ou un jus de fruits ^^) lors de ces rencontres, sachez que vous pouvez toujours soutenir Framasoft par vos dons, mais que vous pouvez aussi participer en venant proposer vos talents sur notre nouveau forum des bénévoles 😉

 




MyPads : second point sur le développement

Deux semaines se sont écoulées depuis le premier point sur MyPads, qui est pour rappel le plugin Etherpad, et donc Framapad, qui apportera la gestion des groupes et pads privés par utilisateur.

MyPads

L’avancement

Comme prévu, les dernières tâches ont été consacrées au début du développement de l’interface Web de MyPads, et plus précisément :

  • la mise en place de l’environnement de développement : browserify, watchify… ;
  • l’emploi d’un serveur HTTP de test autonome afin de fluidifier le travail de test et de relance ;
  • la mise en page générale et sa feuille de style associée, avec prise en compte de différentes tailles d’écrans (responsive) ;
  • la création de modules transversaux : système de notifications, infobulles, validation des saisies….

Pour ceux que cela intéresse, le code client repose entre autres sur Mithril.JS, Lodash, JSS.

La suite

D’ici quelques jours seront avancés les modules pour :

  • l’authentification et la souscription de compte en propre ;
  • la page de profil utilisateur ;
  • les tests fonctionnels pour ces modules.

Une fois cela réalisé, une version alpha sera proposée, qui emploiera la toute dernière version du code et sera remise à plat chaque jour. Elle sera disponible en anglais et en français.

Suivront bien entendu le module d’administration et ceux qui seront les plus utiles pour MyPads, à savoir la gestion des groupes et des pads. Notez que vous pouvez toujours suivre les avancées sur notre instance Gitlab, ou sur son miroir Github.

MyPads : second feedback

Two weeks have passed since our first point about MyPads development, the Etherpad plugin, and so Framapad plugin, which will bring groups and private pads managements per user.

MyPads

Progress

As intended, recent tasks have been dedicated to the MyPads Web user interface development, and more precisely:

  • setup of the front-end development environment : browserify, watchify
  • usage of a mockup HTTP server in order to make the workflow better
  • global layout and its stylesheet, responsive design included
  • development of common modules : notification system, tooltips, data validation….

For those who are interested about technical details, front-end code is based, among others, on Mithril.JS, Lodash, JSS.

Next steps

In the coming days you will see progress on modules:

  • authentication and subscription
  • user profile
  • setup of functional unit testing for these modules.

Once done, an alpha version will be setup online. It will use the latest commit and will be daily updated. It will be available both in English and French.

Of course, the administration and the most important modules of MyPads will come soon after that: groups and pads management. Note that you can follow MyPads progress on our Gitlab instance, or our Github mirror.




Huit.re, Framapic, Framabin : Framasoft met les bouchées triples.

Après un mois de janvier si mouvementé qu’il nous a donné du travail jusqu’en février, nous avons pu reprendre le cap fixé par notre (modeste) Plan de Libération du Monde : Dégoogliser Internet.

À notre sens, il faut reconquérir les Internets service après service, afin de proposer au plus grand nombre des applications Libres, Ethiques, Décentralisées et Solidaires. C’est ce que nous avons fait vendredi en ouvrant notre GitLab alors que Google code ferme ses portes. C’est ce que nous poursuivons aujourd’hui en vous proposant trois services simples, efficaces, mais qui (nous l’espérons) faciliteront la vie d’un grand nombre d’internautes dans le plus grand respect de leurs libertés.

Huit.re, la perle des raccourcisseurs d’URL

huitreEnfin un service qui ne s’appelle pas frama-machin !! (bon, OK, on y accède aussi sur frama.link :p ). Huit.re vous permettra de raccourcir vos URLs en huit petits caractères… et sera donc le mollusque qui cache la forêt de caractères qui forme souvent une troooop loooooongue adreeeeessse weeeeb.

À l’instar de bit.ly ou de goo.gl, vous pourrez l’utiliser pour gazouiller sans craindre de perdre trop des précieux 140 caractères auxquels vous avez droit. Vous pourrez enfin transmettre une adresse web par sms ou téléphone sans y passer trois heures…

Mais à la différence de ces géants du web centralisé, huit.re est basé sur LSTU (Let’s Shorten That URL), un logiciel libre que les barbu-e-s de tout poil peuvent s’empresser d’étudier, améliorer, bidouiller… Donc non seulement on sait ce qui se trouve derrière, mais en plus il est placé sur les serveurs de Framasoft. Et l’on vous rappelle qu’on s’est engagés sur une Charte respectueuse de vos libertés et vos données, ainsi que sur des conditions générales d’utilisations claires et précises.

Bref : on a enfin de quoi faire taire Pouhiou quand il clame à qui veut l’entendre que : « Les huîtres, c’est le mal » ! [1]

Framapic, le lutin qui héberge vos images les yeux fermés

Basé sur le logiciel libre LUTIm (Let’s Upload This Image), un projet perso du bouillant framasoftien Luc Didry, Framapic est un moyen simple et sécurisé de partager et publier vos images en ligne. Attention, il ne s’agit pas d’un gestionnaire de collection de photos à la Picasa… Simplement d’un hébergement d’images comme Imgur ou hostingpic, qui supporte tous les formats (même le GIF !)

gif jif gege

Sauf qu’en plus d’être un logiciel libre, LUTIm est un logiciel qui offre bien des avantages :

  • Possibilité d’autodestruction de l’image après la première vue (avec le petit lien « corbeille ») ;
  • Possibilité d’effacer l’image de nos serveurs au bout d’un jour, une semaine, un mois, un an… (au choix) ;
  • Intégration facilitée (et jolie) à Twitter, Facebook, etc. pour vos images (et même vos GIFs !) ;
  • Téléchargement facilité (par une URL spécifique) ;
  • Code ouvert et disponible sur notre GitLab pour tous ceux qui veulent y contribuer voire se l’installer sur leur serveur. ;
  • Chiffrement des images sur nos serveurs.

Et le chiffrement, ça change tout. Cela signifie que nous n’avons pas la possibilité de voir vos images (pas sans la clé que vous détenez dans votre URL, et pour la récupérer il faudrait qu’on active les journaux (logs) du reverse proxy qui est devant Framapic, et ça c’est pas dans notre charte…)

Cela signifie que vos images vous appartiennent, et qu’on n’a pas à mettre nos nez dedans. Attention ! Notez bien les URL des images envoyées sur Framapic : sans elles et la clé de chiffrement qui y est, vous ne pourrez plus y accéder.

Framabin, pour partager vos secrets en mode mission impossible

Nous avons pimpé le très célèbre (et très libre) Zérobin de SebSauvage afin de le rendre assez beau pour que votre grand-père vous partage en toute sérénité le secret si bien gardé de son coin à champignons.

framabin papy

Framabin est un rêve de gosse nourri aux Missions Impossibles, Alias et autres James Bond : partagez un message qui s’autodétruira dès le premier accès. Ou au bout de 5, 10 minutes. Ou d’un jour, une semaine, un mois, un an…

Bien entendu, le message est chiffré, ce qui fait que nous ne pouvons pas (à aucun moment) consulter le code de la carte bleue de votre maman quand elle le partagera avec vous sur Framabin pour que vous lui achetiez un superbe T-Shirt sur EnVenteLibre

Et le top, c’est que vous pouvez carrément utiliser Framabin comme un lieu de conversations secrètes, où chaque personne possédant le lien peut commenter ce qu’a écrit l’autre. Cela sert bien entendu pour ce bout de code qui va révolutionner les Interwebs (même qu’il y a de la coloration syntaxique), mais aussi pour bien comprendre et discuter le secret du tajine aux olives que votre cousin garde jalousement.

Libérez vous ! (même de Framasoft :p )

Tous ces services sont là pour vous (et aussi pour les Dupuis-Morizeau notre fameuse famille-témoin résidant en Normandie). Mais ils sont aussi et surtout là pour démontrer que lorsqu’on veut faire un Web et des applications respectueuses de… de nous, en fait : ben c’est possible. Le chiffrement, le logiciel libre et la confiance en l’hébergeur du service sont des piliers indispensables à ce respect.

Mais plus que tout, nous ne voulons pas devenir le « Google du libre ». C’est bien pour cela que vous retrouverez, sur notre blog Framacloud, tous les tutoriels nécessaires pour « cultiver votre jardin », c’est-à-dire pour installer vous-même ces applications sur votre propre serveur (ou celui de votre famille, votre asso, votre collectivité, votre entreprise…)

C’est en se rendant indépendants, en s’apportant nos expériences les uns aux autres et en disséminant du Libre un peu partout que nous arriverons ensemble à vraiment Dégoogliser Internet.

À vous de partager, désormais.

[1] cf. #Smartarded, p. 172.