Bientôt sur Minitel 2.0

Et toc !

Et comme toujours les sources (xcf)

Architecture de la base de donnée + nature des ID (API et utilisateurs)

Un petits article aujourd’hui sur le projet Movim

L’architecture de la base de donnée

Voilà donc à quoi elle va concrètement ressembler, pour plus de détails veuillez consulter le fichier source (au format MWB, libre et ouvrable avec Mysql Workbench) ou directement le script SQL de création de base de donnée disponible ici.

Les ID des API et des utilisateurs

Tout les utilisateurs de la plateforme et toutes les API seront définis par un ID. Celui-ci sera défini par une suite de 6 caractères en alpha-numérique (les 10 chiffres et les 26 lettres sans les accents et les caractères spéciaux). Des petits exemples d’ID possibles 04H5K9, E3B4HM…

Cela va donc permettre d’avoir plus de 2 milliards de possibilités et tout ça avec un ID simple à retenir (sachant que les ID API et IP user seront dissociés).

Pour les développeurs

Nous avons besoin de tout les développeurs PHP possibles pour coder les classes nécessaires à la base de la plateforme, en l’occurrence : Movim_Core, Movim_Acl, Movim_Acl_Data et Movim_Acl_File (cliquez sur les différents classes pour plus de précision).

Architecture de MOVIM

Voilà l’architecture du projet est (quasi terminée), nous allons maintenant pouvoir plonger dans les lignes de codes à proprement parler.

L’architecture ne semble pas être si complexe en elle même mais mérite tout de même de s’y intéresser :

Légende : En bleu nous avons les dossiers, en vert les fichiers et en rouge les actions que les fichiers vont faire.

  • Le dossier lib/ contiendra les librairies nécessaires au bon fonctionnement de la plateforme avec deux sous dossiers : les libraires venants du framework sur lequel nous nous baserons (en l’occurence Zend) et les librairies développés par l’équipe dans le dossier movim/.
  • Les api publiques et installés depuis les dépôts officiels seront stockés dans api/ (les thèmes en feront aussi partis).
  • tmp / contiendra tous les fichiers temporaires nécessaires à la plateforme (notamment lors de l’installation d’apis) mais ne fera pas office de cache.
  • Les Movims à proprement parler (il pourra y en avoir qu’un si l’administrateur décide d’être le seul sur son serveur, il en aura le choix à l’installation) seront stockés dans movims/ et seront définis par un ID général (l’ID ne sera pas uniquement destiné au serveur sur lequel le compte est stocké mais pour l’intégralité du réseau social). Dans ce répertoire se trouvera le dossier storage/ contenant les données de l’utilisateur (avec un dossier media/ pour ses photos, documents…). L’utilisateur pour aussi installer des api non officiels (à ses risques et périls) qui seront stockés dans api_extra. Le fichier bootstrap.php permettra d’initialiser l’espace utilisateur à sa connexion sur son compte.
  • Finalement le fichier admin/ contiendra les données d’administration du serveur Movim.

Nous détaillerons dans de prochains messages avec plus de précisions l’utilité exacte des dossiers.

La plateforme possèdera aussi un système de droit pour les apis permettant de restreindra l’accès aux données utilisateur et de permettre à celui-ci d’accepter (ou non) quelles données il souhaite donner à l’api utilisée. Cette gestion permet alors à l’utilisateur de garder le contrôle total de ses donnés et ainsi d’avoir un contrôle total de sa vie privée.

Il y aura aussi une gestion des utilisateurs dans le serveur en sachant que l’utilisateur qui aura installé le serveur sera par défaut administrateur mais pourra aussi donner ses droit à d’autres utilisateurs (pour de la cogestion sur un gros serveur par exemple). Si la personne est seule sur son serveur elle possèdera par défaut tout les droits (avec tout de même une distinction entre son compte Movim et son compte administrateur, pour plus de sécurité).

Les api feront parties intégrante du projet pour finalement faire de Movim l’une des plateformes web la plus modulaire qui n’ai jamais existé. Ces apis seront de 3 types :

  • Les api dites « tierces » qui ne feront pas parties officiellement du projet et seront proposés pour la plateforme, celles-ci ne seront pas vérifiés et seront installables aux risques de l’utilisateurs.
  • Les api dites « testing » qui seront validés par l’équipe mais ne seront pas intégrés dans les dépôts officielles, celles-ci seront considérés comme compatibles et ne possédant pas de risques majeurs.
  • Et finalement les api dites « officielles » qui seront dans les dépôts officiels et seront suivies par l’équipe du projet.

Chaque api possèdera un ID qui sera vérifié à l’installation permettant d’éviter d’usurper l’ID d’une api officielle par une api malveillante.

Pour les développeurs :

Le développement de Movim se basera en grande partie sur le framework Zend, nous vous conseillons de vous intéresser à la documentation officielle qui est très bien faite (lien vers la documentation en français).

Comme lecture nous vous recommandons aussi de regarder du coté de la documentation de XMPP et plus généralement de tout ce qui peu se faire de bien en Ajax, CSS et autres technologies web.

Le codage de classes vous sera très rapidement proposé sur le gestionnaire de développement suivez donc de près l’activité de gestionnaire ;) (le mieux étant tout de même de vous abonner au flux atom de la page) plus vite les classes importantes seront faites plus vite nous avancerons dans le projet :) .

Voilà aussi les photos des feuilles A4 des schémas et autres gribouillages sur le projet :

SL742704 SL742702 SL742706 SL742708

C’est tout pour le moment, si vous avez des questions et/ou remarques à faire laissez un commentaire ou contactez l’équipe de développement.

Jaussoin Timothée – edhelas – Mainteneur officiel du projet Movim

Resto

Un ptit dessin non vectorisé (mais nettoyé sur GIMP), les sources (XCF) comme toujours

Relier (simplement) deux ordis sous Ubuntu avec un cable ethernet

Qui a dit que Linux c’était difficile ?

Aujourd’hui petit tuto très cours qui va vous permettre de relier deux ordinateur sous Ubuntu entre eux avec… un simple câble ethernet ! Contrairement au Wifi le bon vieux cable ethernet (RJ45 pour les intimes) permet d’avoir des débits important et stables !

Pour cette manipulation nous avons donc besoin :

  • De deux ordinateurs sous une version récente de Ubuntu (testé chez moi entre un Karmic et un Intrepid).
  • D’un cable RJ45 croisé (vous pouvez tester avec un cable droit mais pas tout le matos supporte cette manipulation avec du droit).
  • Et de 10 petites minutes ;)

Tout d’abord choisissez quel ordinateur va servir de « maitre », en effet la manipulation va au final permettre de « simuler » un routeur sur un des ordinateurs pour que l’autre puisse s’y connecter sans aucune configuration.

Sur cet ordinateur installez le paquet dnsmasq-base.

Puis faites bouton-droit sur l’icône de connexion internet (en haut à droite par défaut sur Ubuntu) et cliquez sur Modification des Connexions , dans l’onglet Filaire choisissez eth0 (ou eth1…) et faites Modifier.

Dans l’onglet Paramètres IPv4, changer Automatique (DHCP) en Partagé avec d’autres ordinateurs. Puis faites appliquer.

Sur l’autre ordinateur connectez vous sur la connexion filaire et le tour est joué !


Petit bonus :

Comment faire une copie rapide avec rsync entre les deux ordinateurs ? Installez le paquet openssh-serveur sur le PC vers qui vous allez copier les documents puis lancez la commande :

rsync  -a -v <dossier source de votre ordinateur> identifiant_de_l’ordi_cible@ip_de_l’ordi_cible:<dossier cible sur l’autre ordinateur>

Pour connaitre l’ip de l’ordinateur cible tapez ifconfig | grep Bcast et cherchez l’ip (inet adr) dans les résultats renvoyés (le plus souvent le premier).

Framabéarn veille sur le projet MOVIM

Voilà le projet Movim est lancé ! (si vous ne savez pas encore ce que c’est visitez le site officiel pour vous faire une idée). Étant le mainteneur du projet, ce site (qui se trouve être aussi mon blog perso) deviendra le site officiel où je vous informerai des toutes dernières avancées du projet.

Et bien sur je continuerai à poster mes dessins et écrire mes autres articles ;)

GEEKISSEXY

Voilà donc l’arrivée de la couleur avec un premier dessin colorisé sur Inkscape, bon ce n’est qu’un premier jet, on verra par la suite pour des améliorations graphiques.

Les sources comme toujours.

Ensemble construisons, grâce au libre, l’internet de demain …

Voilà presque 20 ans que le réseau que nous connaissons aujourd’hui et que nous appelons si communément « Internet » est né. Et encore aujourd’hui nous observons non sans surprise que nous nous situons au tout début de la vie de la toile qui comptait il y a presque quinze ans seulement quelques milliers de pages web.

Depuis l’éclatement de la « bulle internet » au début des années 2000 nous poursuivons une perpétuelle arrivée de nouvelles technologies créant à chaque fois une véritable révolution dans l’espace d’échange des informations. Les internautes ont alors pus entendre les notions de « Web 2.0 », de « social network » ou simplement de « plateforme de partage ».

Il faut se rendre compte d’une chose; ces mots n’existaient tout bonnement pas il y a 5 ans de cela et pourtant ils sont devenus presque inévitables lors d’échanges sur les technologies web.

Initialement réservé à une élite possédant le fameux « 56k » si rare à l’époque, internet est de nos jours accessible à quiconque et cela par de multiples moyens :  ordinateur personnel, GSM, netbook… Et ce sont ces nouveaux arrivants sur la toile qui ont sus apporter ce que nous pouvons observer de nos jours, c’est grâce à eux que nous avons des plateformes de partages de contenus (YouTube, Flickr, Dailymotion…), des réseaux sociaux (Facebook, MySpace…) ou des sites communautaires (eBay, Twitter…).

Mais nous l’observons tout les jours, le web est en mouvement perpétuel, des réseaux qui étaient alors ultra majoritaires il y a quelques années sont aujourd’hui remplacés par d’autres, plus jeunes, plus dynamiques, plus rapides, plus simples… (nous pouvons citer l’exemple de MySpace qui ne semble plus séduire autant et dont bon nombre de ses utilisateurs se sont tournés vers « Facebook ») et cela dans un laps de temps raccourcis.

Tout laisse à croire que nous nous tournons vers un réseau de plus en plus communautaire, de plus en plus interconnecté, de plus en plus universel, et c’est cette visions d’interconnection universelle qui s’entrechoque avec la vue qu’ont les gouvernements actuels de l’internet. En effet il est difficile pour eux de comprendre l’arrivée de ce réseau qui ouvre dans leur monde qui leurs semblait alors si compréhensible des portes inexploitées. Par exemple le partage des albums et films par les réseaux P2P n’est toujours pas considéré à sa juste valeur comme une expansion de la volonté naturelle de culture de l’homme mais reste toujours face à l’idéologie des hommes politiques actuels une volonté de détruire l’industrie musicale et filmographique (oui nous parlons bien ici d’industrie de la culture).

Le Web ouvre donc de nouveaux horizons à la société actuelle et peu de personnes possèdent aujourd’hui une visions globale de cette nouvelle vague qui est entrain de déferler.

Nous nous situons donc dans une époque de transition qui pose les bases d’un futur réseau.  Nous voyons alors que la société actuelle n’est pas encore totalement préparée à l’arrivée de celui-ci si bien qu’un grand nombre de personnes croient encore et toujours à une compatibilité totale avec le modèle libéral. Et c’est ici le cœur du problème : le désir de rester accrocher au modèle actuel et de le lier dans une quasi-uniformisation avec le réseau. Nous ne devons en aucun cas confronter les deux mais apprendre à les différencier et montrer qu’ils peuvent subsister sans se détruire mutuellement.

Internet à besoins d’indépendance mais aussi de règles, de droits et de lois car comme dans notre société l’homme qui reste tout de  même entier possesseur continue de demander justice et respect face à son voisin. Le Web n’est aussi pas totalement blanc, et c’est bien cette face obscure (pédophilie, industrie du sexe ou réseaux criminels) qui est décriée par les ministres et gouvernements soucieux de « légiférer le nouveau far-west » plutôt que d’agir sur la dimension culturelle en danger (selon eux) comme il était prévu initialement dans leurs projets de lois (comme il est surprenant, la première version du projet de loi Hadopi qui était sensé protéger l’exception culturelle française ainsi que toute l’industrie de la musique et du film se tourne dans sa seconde version comme un véritable projet de surveillance de l’internaute).

Avec ces projets de lois nous avons ici les parfaits exemples de la volonté des hommes de la société actuelle de légiférer sur un réseau « qui marche pareil » selon eux mais qui en pratique se trouve être totalement différent si bien par son organisation que son fonctionnement. Et si l’opposition semble avoir été faible face à ces projets de lois (nous saluons la Quadrature du Net et l’April qui font un merveilleux travail d’information et de défense de nos libertés individuelles et du logiciel libre) elle va se faire dans le temps car trop peu de personnes sont aujourd’hui capables de comprendre et d’anticiper les enjeux et les dangers de ce type de lois sur le réseau actuel.

Nous pouvons alors nous demander vers quel type de réseau nous semblons nous mener et sous quelle forme celui-ci se présente. Il est en effet bien difficile de prévoir son aspect dans les années rien qu’en observant la vitesse d’apparition des technologies actuelles. Et pourtant un modèle commun semble émerger (ici la définition de réseau tiens compte de tout l’aspect informatique du terme mais aussi de toute la partie sociale et communautaire).

Et pour comprendre comment va évoluer celui-ci il faut revenir à sa source, au milieu de années 80 alors qu’il n’était encore que sous forme d’un simple embryon.
Dans ces années là ce que nous appelions informatique avait un tout autre aspect de ce que nous pouvons en définir aujourd’hui. En faisant abstraction du matériel qui n’a sans cesse évolué d’années en années c’est plutôt sur l’idéologie qu’il faut se pencher et qu’il va falloir étudier.

L’idéologie à proprement parler était celle du partage du code des applications et de la documentation qui les accompagnaient. Lorsque nous achetions du matériel, nous avons toute les informations sur son fonctionnement ce qui permettait de développer un programme qui permettait de l’utiliser et de jouir intégralement de l’ensemble des fonctionnalités qu’il offrait. Ces programmes appelés « logiciels libres » (ou free software, le mot free signifiant alors libre et non gratuit) donnaient à l’utilisateur toute la transparence sur leurs fonctionnement. Et c’est encore aujourd’hui des logiciels libres qui régissent les bases du réseau mondial (tout le protocole TCP/IP, les serveurs Apaches, GNU/Linux, les langages PHP, HTML… internet ne pourrait être ce que nous voyons aujourd’hui sans ces technologies).

Pourtant dès le début de nombreuses personnes on voulus jouer avec cet informatique ouvert en vendant cette technologie et fermant leurs code (notons que le système Unix était déjà à l’époque fermé), c’est notamment le jeune Bill Gates qui compris que nous pouvions désormais commercialiser un système d’exploitation en plus de l’achat de la machine sur lequel il devrais tourner, et c’est sur cette idée que naquis le plus grand monopole que la planète ait connue (Windows occupe encore aujourd’hui plus de 85% des ordinateurs personnels).
Sa société (Microsoft) sut alors jouir pleinement de la commercialisation des nouvelles générations d’ordinateurs en offrant alors quasi systématiquement leurs système d’exploitation phare avec la machine.

Ce monopole sensé être inébranlable est resté quasi intact jusqu’aux années 2005-2007, années vers lesquelles apparurent des nouvelles formes de connexion au réseau et de nouvelles technologies non uniquement construites sur la classique architecture PC, notamment grâce à l’apparition et à l’explosion du marché de GSM et des notebooks.
Et c’est ce marché qui a manqué à la multinationale, en effet Microsoft à clairement oublié la case « internet » en se cantonnant à son système d’exploitation (Vista est né durant ces années), sa suite bureautique Microsoft Office et ses jeux (Microsoft Games).
En effet même si Microsoft se trouve encore de nos jours majoritaire sur la marché des OS il n’en reste pas moins très minoritaire sur celui du Web, ce marché à essentiellement été occupé par Google. Et encore aujourd’hui l’entreprise possède de très importantes lacunes : son navigateur Internet Explorer reste très (très) en retard sur le respect des standards et des technologies web (et perd de mois en mois face à ses concurrents Mozilla Firefox, Opera, Safari ou encore Google Chrome de sérieuses part de marchés), Windows Server n’occupe qu’une très faible place sur le marché des serveurs (ne semble se cantonner qu’à environ 10% face aux serveurs Apache-GNU/Linux qui occupent très de 65% du marché) et son moteur de recherche (Bing) qui peine face à Yahoo! et Google, les deux géants.

Le libre semble alors faire très progressivement un retour sur l’ensemble de l’informatique, mais reste pour le moment assez discret sur de nombreux points, analysons ces aspects dans le détails.

En premier lieu nous pouvons noter la fulgurante progression du navigateur Mozilla Firefox qui jouait dans les 5% à son lancement en 2004 et conquiert de nos jours la barre symbolique des 50% dans de nombreux pays (la moyenne mondiale étant pour le moment aux alentours de 30%). Le marché des navigateurs reste un excellent exemple, en effet nous notons que le logiciel libre possède encore et toujours une omniprésence sur ce point, Safari (la navigateur de Apple) est basé sur Webkit, un logiciel libre qui est aussi le moteur de Google Chrome, navigateur dont la base (Chronium) est aussi libre; Mozilla Firefox est né suite à la libération du code de Nestcape à sa mort. Et mis à part Opera (qui n’en reste pas moins un excellent et puissant navigateur) la plupart des outils permettant de se connecter au réseau sont libres.

Ensuite, le marché des notebooks (ces ordinateurs portables de poches) qui a explosé durant l’année 2007 était à l’origine essentiellement fournis en système d’exploitations GNU/Linux (qui n’était malheureusement pas tout le temps à la hauteur des attentes), encore ici Microsoft a rapidement rattrapé le marché en refourguant les vieillisant XP, Windows Vista étant incapable de tourner sur ce genre de machine qui heureusement possédaient des configurations matérielles simplement adaptable pour la plateforme XP.
Mais encore ici le marché des notebooks semble apparaître comme un marché de transition vers de nouvelles machines : les MID (pour Mobile Internet Device), qui se basent sur de nouvelles architectures matérielles (ARM principalement), ces plateformes essentiellement basés sur la portabilité (faible consommation de batterie, puissance limitée et limitation de l’occupation des ressources) sont hors d’atteinte pour le système Windows (Intel fabriquant notamment les processeurs Atom et développant une partie des architectures pour MID s’est sérieusement fâché avec Microsoft pour son incapacité à adapter son futur système – Windows Se7en – à ses technologies).
C’est alors qu’apparut de nouveaux systèmes, essentiellement basés sur GNU/Linux, pour la plupart totalement ou en grande partie libres et développés spécifiquement autour de ces plateformes : Google Android occupant aujourd’hui une partie des nouveaux GSM commercialisés, mais aussi WebOS (notamment pour le Palm pre), Moblin une distribution Linux développée par Intel…
Les géants de l’informatique (Intel, Google…) jouent alors avec des outils libres pour accompagner leurs matériel et semblent avoir compris que le PC classique n’est pas la seule façon de se connecter et d’échanger avec le réseau.

Mais pourquoi ces grandes firmes jouent-elles avec du libre et ne développent pas en interne leurs propre logiciel maison et fermé ?
Car elles comprennent que pour offrir une utilisation poussée, stable, puissante, valable dans le temps et sécuritaire, le logiciel libre devient une véritable solution à toute épreuve pour leurs questionnement. En effet grâce à sa diversité et sa simplicité de développement (ils sont pour la plupart systématiquement fournis avec de la documentation et une communauté de support en plus du code sous licence libre). De plus c’est aujourd’hui que nous nous rendons compte que les technologies qui pourrons être offerte et être pleinement utilisés à l’avenir dans le réseau sont libres et possèdent déjà la maturité pour un déploiement massif et rapide (l’ensemble des protocoles XMPP, les procédés de chiffrement PGP et GPG par exemple).

Mais  « ce serait dommage que le logiciel libre ne libère que du code », en effet c’est plus que le logiciel à proprement parler qui semble percer, mais bien toute l’idéologie qui tourne autour, basée sur un partage des informations (forum, IRC), des connaissances (Wikis), de la culture (Jamendo, licences libres…); et c’est cette communauté qui représente le mieux l’idéologie générale qui nait peu à peu sur le réseau (puisqu’elle en est la source et la principale porteuse).

La communauté du libre souhaite offrir au web actuel une nouvelle vision à l’internaute qu’elle souhaite transformer en acteurs du web et non plus comme un simple utilisateur (ou pire comme un « client » pour certains). Le libre est tout bonnement le père du web.

Mais il ne faut pas se voiler la face, la route va être longue (mais la voie est libre ;-) ) pour offrir cet idéal aux internautes. En effet nous pouvons encore aujourd’hui clairement rencontrer de nombreuses impasses tant au niveau technologique (c’est le cas du flash qui reste majoritairement utilisé malgré l’arrivée encore très récente de standards sensés le remplacer – HTML5, balises <vidéo> et <audio>, canvas…), que de l’idéologie (parlez du logiciel libre à une personne lambda aujourd’hui c’est rare qu’elle sache exactement de quoi il s’agisse).

Le chemin va donc être parsemé d’embuches mais tout laisse à croire que nous nous menons inexorablement vers un réseau qui souhaite offrir à l’internaute une uniformisation des procédés d’échanges mais aussi une multiplication des moyens d’expressions, d’une préservation de l’identité personnelle (contrairement aux réseaux sociaux tels que Facebook qui reste une véritable éponge à informations privée), d’une simplification et d’une sécurisation du partage des données personnelles et tout cela en préservant l’unicité de chaque personnes.

Le libre semble être une vision qui va lentement et surement percer pour à terme se révéler être la meilleure façon d’offrir la vision globale qui émerge du web.

First they ignore you
Then they laught at you
Then they fight you
Then you win

Mohama Gandhi

ce serait dommage que le logiciel libre ne libère que du code

Comptons les geeks

Retour du SVG pour les dessins, et bien sur les sources

IKEA et des ptits bout de oueb

Un petit strip sur IKEA, désolaÿ mais le dessin est encore sous forme crayonné (les sources). Promis le prochain sera vectorisé par mes soins, pour me faire pardonner un nouveau smiley de George Clooney (et pis si vous êtes pas content ben z’avez qu’à pleurer (mouahahahaha).


Et aujourd’hui petit bonus avec des ptits bout de oueb sympa que j’ai trouvé ici et là :