Aujourd'hui est un grand jour ! Cozy Cloud, une jeune startup, propose une véritable alternative aux géants du web nommée Cozy ! Cozy est un véritable cloud personnel libre (LGPL v3) qui permet d'installer ses applications web en un clic. Une fois Cozy mis en place, il n'y a rien de plus facile que d'administrer son serveur perso !

Plus d'infos dans la deuxième partie de la dépêche.

Sommaire

Le cloud nous fait perdre le contrôle de nos données

NB : En français « cloud » signifie nuage. Les applications « dans le nuage » sont celles dont les données et le cœur de programme sont en grande partie stockés sinon exécutés sur un serveur distant.

Les applications 'cloud' ont démultiplié les usages du web en favorisant la collaboration et en permettant un accès à ses données depuis n'importe où et depuis n'importe quel terminal. Malheureusement elles ont aussi bien vite montré leurs limites : nos informations sont enfermées dans des silos étanches, notre vie privée n'est pas respectée et le code est bien souvent propriétaire. Ces défauts sont tellement marqués qu'elles sont parfois comparées au minitel, où les interactions possibles avec le service proposé était finalement assez limité. En effet, bien que répondant tout à fait à la démocratisation du téléphone intelligent, les applications cloud n'exploitent pas tout le potentiel du web.

Mais ça, c'était avant…

Et dans la pratique ?

Cela veut simplement dire qu'on gère son serveur personnel et ses données aussi facilement qu'on gère son smartphone. En quelque sorte, le serveur personnel devient un nouvel appareil ! Ici on ne parle donc pas d'un simple Dropbox, mais d'une plateforme pouvant proposer des fonctionnalités infinies : stockage, statistiques, backup, interface avancées… En effet, à chaque fois qu'une nouvelle application est proposée, on gagne en possibilités ! D'ailleurs, huit applications sont déjà disponibles :

Notes ;

Todos ;

Photos ;

Mails (read-only) ;

Agenda ;

Bookmarks (appli communauté) ;

Feeds (appli communauté) ;

Nirc (client IRC, appli communauté).

Un cloud bidouillable

Vous pouvez aussi créer votre propre application. Et ce sans apprendre un nouvel SDK. Ici on développe sa web app comme d'habitude, les seules contraintes sont d'utiliser Node.js et notre système de stockage de données. Et pour partager l'application avec vos amis, rien de plus simple, l'URL de votre dépôt Git suffira et nous nous ferons un plaisir de la référencer sur notre "app registry" !

De plus toutes les applications partagent le même entrepôt de données, il est donc très facile de faire une application qui réutilise les données des autres. Par exemple, si je veux faire une application qui croise mon nombre de tâches réalisées avec le nombre de mails reçus, c'est possible.

Enfin nous fournissons un utilitaire et une machine virtuelle de développement pour commencer rapidement. Plus d'informations ici.

Installation

Plutôt que de rallonger encore plus cette dépêche, je vous renvoie à deux bons tutoriels à ce sujet : Tutoriel 1, Tutoriel 2

Et si on parlait technique ?

Pour faire bref, Cozy est une Platform-as-a-Service personnelle. La différence avec une PaaS classique, c'est qu'on n'isole pas les applis via des containers mais avec de simples utilisateurs unix. Toutefois, fonctionnellement, cela revient au même, une simple commande permet de deployer des apps à partir de leurs repos respectifs. Seule la partie stockage de données est imposée. Les applis communiquent avec un module nommé Data System qui sert de couche d'abstraction à une base NoSQL (CouchDb) et au moteur d'indexation (Tornado/Whoosh). Petit détail, un stockage "clé/valeur" en mémoire (Redis) est utilisé pour gérer les notifications de changement des données. Enfin un proxy gère l'authentification et le routage des requêtes (attention ici on parle de plateforme personnelle, il n'y a donc qu'un utilisateur possible).

Point de vue technos, Cozy se base essentiellement sur des modules écrits en Node.js, seul le moteur d'indexation est écrit en Python.

Enfin les applications communiquent en JSON via des API REST, on peut donc facilement interagir avec ou même développer son propre client en ligne de commande.

Roadmap

Pour la suite nous allons nous concentrer sur les autorisations inter-applis. Pas exemple qu'il soit possible qu'à l'installation d'une application, Cozy demande à l'utilisateur s'il est d'accord pour que celle-ci puisse accéder aux données de contacts et de notes.

Ensuite les quatre sujets que nous allons étudier et réaliser (si cela peut être fait dans un délai raisonnable) sont :

Le proxy de données (synchroniser ses données avec ses terminaux mobile et desktop) ;

Le support des apps Python ;

Un meilleur support mobile ;

Une appli de contact.

Cozy Cloud : c'est quoi votre business model ?

Cozy Cloud proposera bientôt des solutions d'hébergement payantes (nous ne monnayons pas vos données) qui vous permettront de vous affranchir des contraintes de backup, de disponibilité et de mise en service. Nous proposerons également des solutions "backup-only".

Actuellement le service est disponible en beta gratuite, une inscription sur liste d'attente est disponible.

Nous sommes aussi prestataire de la FING pour le projet MesInfos, une expérimentation sur le retour des données aux utilisateurs. Je ferai un journal à ce sujet quand le projet sera plus avancé.

Au passage Cozy c'est aussi une équipe de sept personnes motivées qui se sentent vraiment concernées par les problèmes posées par le cloud !

Appel à la communauté

Cozy Cloud fera partie de la compétition de Startup de LeWeb London qui aura lieu les 5 et 6 juin. Cet événement est important car c'est la première fois qu'une startup « libre » est sélectionnée. Cette compétition est importante pour nous car elle devrait faciliter nos rencontres avec des investisseurs et nous permettre ainsi de continuer l'aventure (et donc d'améliorer Cozy).

Pour arriver en finale, nous avons besoin de votre aide, car en plus d'un bon pitch, une solide réputation pourrait nous aider à y parvenir. Pour nous aider, nous vous demandons trois choses (si le projet vous plait bien entendu) : Pouvez-vous ajouter des stars à nos dépôts github ? Pouvez-vous microblogger sur Cozy ? Pouvez vous tester à fond le script d'installation auto-hebergée et proposer des améliorations ?

Et bien évidemment toutes les contributions habituelles (bug report, discussions, audit et code) sont les bienvenues ;).

Voilà c'est tout, merci pour votre attention ! À bientôt et si vous voulez causer avec nous, vous pouvez nous retrouver sur #cozycloud sur freenode.net !

Aller plus loin