Tuxitecte
Latest Posts

Nuxeo en 2009


Cela faisait un petit temps que je ne vous avait pas fait part de nouvelles à propos de Nuxeo sur ce blog. Je vais essayer de me rattraper un peu...

Faisons un petit retour sur les différents faits marquant en 2009.

Nuxeo 5.3
Courant octobre, Nuxeo a annoncé la disponibilité de sa nouvelle version de Nuxeo DM : la 5.3.
Cette version est la plus aboutie que Nuxeo nous ai donné de voir. Plus riche fonctionnellement, elle permet de couvrir des besoins plus complexe et plus vaste.

Parmi la liste des nouvelles fonctionnalités, j'en retiendrai deux.
  • Open Social : Lorsque l'on discute avec des "clients", on retrouve souvent la demande d'un "portail". Je mets bien le terme "portail" entre guillemets car comme le terme ECM, portail peut tout dire et rien dire en même temps. Ici je parle du portail version gadget/widget à la Google ou la Netvibes. Il s'agit de pouvoir agencer sur une seule et même page un ensemble de petits carrés afin de former une mosaïque répondant au besoin fonctionnel du client. En d'autre terme comment au sein de mon application puis je aggréger des contenus et des applications provenant de sources différentes (et si cela ressemble à du Google alors c'est encore mieux!!!)

    Pour assouvir ce besoin, Nuxeo a intégré http://www.opensocial.org/ La Référence (standard de facto) en terme de création d'application composite. Nuxeo DM devient ainsi aussi bien client que serveur de gadgets Open Social. Pensez y donc lorsque vous voudrez ajouter la fameuse boite Météo.

  • Publication distante et fédérée : Il s'agit ici d'un besoin plus orienté technique mais ô combien important pour tout intégrateur ou grande entreprise. Pour comprendre l'utilité, prenons l'exemple d'une entreprise qui possède 2 sites distants (géographiquement et fonctionnellement). L'un des sites est le siège tandis que l'autre site est un site de production. Au niveau du siège, l'équipe de développement des produits crée l'ensemble de la documentation des nouveaux produits (schéma du produit, instructions de fabrication, manuel d'utilisation...) et le stocke/partage ensuite au sein de sa base documentaire dans la solution de gestion de contenus. L'équipe de production quant à elle utilise la documentation et faute de documentation le site de production peut ne pas fonctionner correctement. Pour éviter ce genre d'imprévu, on va créer un mode "maitre-esclave" entre la solution centrale du siège et une solution locale de production. Entre ces deux sites, il y aura une circulation et une distribution des informations garantissant ainsi une disponibilité des données.
Vous pouvez retrouver l'annonce à l'adresse suivante http://www.nuxeo.com/fr/societe/actualites/nuxeo-dm-53

Si vous préférez la vidéo, vous pouvez retrouver un webinar présentant les fonctionnalités Nuxeo à l'adresse suivante :

Nuxeo et le marketing
Depuis un peu plus d'un an maintenant et pour accompagner son essor international, Nuxeo a amélioré considérablement sa présence marketing. En d'autre terme, comment promouvoir et diffuser les différentes offres de la société vers ces clients.

Concrétement cela se traduit par plus d'évènements aussi bien sur la toile via des webinars, des vidéos, des présentations ou de la participation à des réseaux sociaux que dans des meetings.

A noter : Nuxeo World http://www.nuxeo.com/fr/societe/actualites/nuxeo-world-2010

L'un des points d'orgue de cette politique fut la nomination de Cheryl McKinnon en tant que responsable marketing ou CMO (Chief Marketing Officer en Anglais). Vous me direz oui et alors ? Je vous répondrai qu'elle était d'une part Directrice du Program management-Enterprise 2.0 chez Open Text (éditeur de solutions "propriétaire" dans le monde de la gestion de contenu et l'un des leaders dans ce marché... et donc concurrent de Nuxeo) et d'autre part elle est connue et reconnue dans la communauté ECM internationale. Si vous vouliez une nouvelle preuve de la montée de la gestion documentaire open source, je crois que vous en avez une nouvelle ;-)

Nb : Si vous voulez suivre Cheryl McKinnon

Les trois axes de conquête
Au cours de 2009, on a constaté que Nuxeo s'oriente suivant 3 axes (que je considère comme majeure)
  • La recherche sémantique
  • Apache Chemistry et CMIS
  • Nuxeo Cloud

La recherche sémantique
Pour être franc, je ne suis pas loin d'être un expert dans la matière mais je sais ô combien il est important d'apporter de l'intelligence aux données que l'on stocke dans un système de gestion de contenus.

Pour vous faire une idée de l'intégration de cette composante dans Nuxeo, je vais vous renvoyer vers les différentes ressources disponibles. Elles sont constituées essentiellement par le travail d'Olivier Grisel de chez Nuxeo, et Yerbabuena Software qui a développé le premier module Nuxeo dans ce domaine.
Apache Chemistry et CMIS
Nuxeo a lancé maintenant depuis plusieurs mois l'initiative Chemistry : http://incubator.apache.org/chemistry/. Cette initiative tente à devenir l’implémentation open source de référence pour le standard CMIS. Au vue de la fin prochaine de la revue publique de ce futur standard, on peut se douter que cette partie va prendre de plus en plus d'importance dans les prochains mois et va contribuer au savoir faire de Nuxeo.

A noter au passage le très bon article sur CMIS sur le blog jonontech.com
http://jonontech.com/2009/11/26/cmis-jcr-and-osgi-for-idiots/


Nuxeo Cloud
Vous voulez simplement utiliser Nuxeo sans vous préoccuper de l'infrastructure technique à mettre en place ? Vous voulez une offre distribuée capable de monter en charge facilement ? Alors n'hésitez pas à adopter Nuxeo Cloud, l'offre d'ECM dans les nuages par Nuxeo. Pour plus d'informations : http://www.nuxeo.com/

Et demain ?
Le dernier post de Laurence Hart sur son blog wordofpie.com nous renseigne sur les principaux axes d'évolution de l'offre Nuxeo. On retrouve l'axe Archivage (Record Management) et la constitution d'un catalogue d'offre applicative (Gestion de courriers, DAM, Cloud...). On voit ici encore s'étendre le périmètre fonctionnel.


Voila mesdames, mesdemoiselles et messieurs tout ce que je pouvais résumer sur l'état actuel de l'offre Nuxeo. Je reste à votre disposition pour de plus amples informations et pour partager les différentes nouveautés de Nuxeo.

Alors à très vite !
Lire la suite...

Open Source ECM V2


Comme vous avez pu le constater, http://www.opensourceecm.fr/ a changé de look!

Plus clair, plus spacieux, plus blanc, plus simple, plus collaboratif... en d'autre termes plus mieux !


Les nouveautés

La présentation des articles passent en mode "magazine". Sur la page d'accueil il est désormais possible de visualiser les derniers articles publiés sur le blog. Pour aller plus loin, il suffit de cliquer sur le bouton "Lire la suite" pour visualiser l'ensemble de l'article.

Une barre de menu est apparue! Cruel manque dans mon précédent blog, cette barre va me permettre de créer des liens plus simple et rapide vers un aspect particulier de mon blog. Les 3 sujet sont pour l'instant "A Propos", "Mes Interviews", "Mes Présentations".

A droite de la barre de menu (cette fois ci bien intégré), on retrouve un champ de "recherche rapide". Utile n'est il pas ?

Une nouvelle mascotte a fait aussi son apparition!! Tuxitecte de son petit prénom nous arrive du site http://tux.crystalxp.net/fr.id.13668-tuxitecte.html et a été crée par kami23 sous licence creative commons. On peut retrouver ses oeuvres sur le site http://jonkie.ch/index.htmlMerci Kami23 !

Dans la rubrique 2.0, vous pouvez retrouver l'ensemble de mes espaces de partage et de "social networking" dans la rubrique Mon Univers. Dans cette même rubrique n'hésitez pas à vous abonner aux flux RSS sous forme de flux ou sous forme d'email.

Les catégories sont passées en mode "nuage" pour une meilleure lisibilité. On s'aperçoit alors très vite de mes centres d'intérêts. ^^

Chaque article est maintenant "retweetable". Sur mon ancienne version j'avais essayé des indicateurs Dzone et Digg mais je me suis vite aperçu que ces indicateurs (pour le contenu de ce blog) n'etaient pas forcément très convaincants...

La création des commentaires devient maintenant beaucoup plus simple et plus clair. En faisant un petit état des lieux de mon ancien blog, je pense que le manque de simplicité a sans doute été un frein... J'espère que maintenant ce manque sera maintenant comblé. Affaire à suivre...

Chaque article possède désormais le fameux "5 star ratings". Je ne sais pas si pour vous c'est un réflexe de noter mais pour moi j'essaie au possible de mettre un retour sur chaque article qui en possède un. Si cela fonctionne, ces petites étoiles me permettront d'orienter un peu la constitution de mes articles.

Chaque article possède aussi les différents liens vers les "favoris" des réseaux connus.

Voilà je crois que j'ai fait le tour du propriétaire... Et pour finir quelques citations qui me tiennent à cœur et que je partage dans ce blog...

La connaissance est la seule chose qui s'accroit lorsqu'on la partage.

La connaissance, c'est partager le savoir qui nous fait grandir.

Donc don't hesitate! ;o)
Lire la suite...

Comment choisir sa solution de gestion de contenus ?

Bonjour tout le monde,

Le sujet du jour, si vous le voulez bien, sera consacré à un éternel problème:
Comment choisir sa solution *CM (Gestion de Contenus)?
(* représentant une lettre de votre choix mais communément un E ou W)


Cette question sous-entend de nombreuses questions, comprend de nombreuses méthodologies et est propre à chaque contexte projet. En d'autres termes il n'est pas facile (voire impossible) de standardiser une seule et unique approche du problème. Néanmoins il est possible d'éviter les principaux écueils et d'utiliser les meilleures pratiques. C'est ce que nous allons essayer de voir par la suite grâce à une série de règles.

Remarque : L'ensemble des règles sont issus des différents retours d'expérience que je cite en référence à la fin de ce post. Elle n'envisage que moi et ne saurait être le remède miracle pour choisir sa solution...


Règle n° 1 : Quels sont mes besoins ?
Dois-je rappeler qu'il s'agit de la base... Sans une définition LITTERALE des besoins, sans des cas d'utilisations SCHEMATISES avec des explications LITTERALE, sans une HISTOIRE des demandes fonctionnelles est il nécessaire de démarrer un projet qui aura pour conséquence le choix d'une solution inadaptée ?
On parle bien ici du fameux QUOI pour Quel est le futur cadre de mon travail ?

Dans les projets de gestion documentaire, il faut identifier les types de documents que le système devra gérer. Quels sont leurs formats, leurs tailles moyennes, leurs fréquences de création, de modification, de suppression. Qui est responsable de ces données...?

Règle n° 2 : Quelles sont mes contraintes techniques ?
Suivant la recommandation de mes urbanistes je dois pouvoir récupérer des informations provenant d'une application de mon SI. Existe t il un connecteur avec cette application ou quels sont les moyens envisagés dans la solution susceptible de récupérer ces informations ?
Suivant les directives de mes architectes, ma future solution doit être basée sur une architecture comprenant des EJB3 et doit pouvoir être installé sur un socle Linux Ubuntu.
Le service d'exploitation a besoin de surveiller la future application via JMX.
Lorsque ce genre de contraintes est connu en amont alors il est beaucoup plus simple (aussi bien pour le client que pour le fournisseur) de choisir une solution adaptée. Ces contraintes peuvent ainsi constituer une liste de MUST-HAVE qui pourrait être discriminant lors d'une comparaison d'offres. A vous de placer le curseur sur l'importance des critères (en sachant bien évidemment que rares sont les solutions remplissant tous les critères )

Règle n° 3 : Les petits ruisseaux font les grandes rivières
En partant de ce principe ou du fameux KISS (Keep It Simple Stupid), il vaux mieux commencer simplement, rapidement et humblement pour ensuite vérifier, valider et voir recommencer afin dans un second temps d'étoffer les fonctionnalités offertes. Cette approche permet d'avoir un retour l'utilisateur final plus rapide et améliore ainsi l'adhésion au projet et donc à l'outil.

Dans le domaine du développement on appelle cela le développement Agile ;o)

Règle n° 4 : Pour choisir une solution, la grille de notation tu banniras !
Pour avoir pratiqué l'exercice aussi bien en tant que consultant qu'en temps qu'utilisateur les grilles ne servent en fait... pas à grand chose. Sauf à prouver et à dire ce que vous voulez!

Pour ceux qui n'en aurait jamais vu, voici un petit descriptif :

Il s'agit en général d'un fichier Excel avec une liste de critères regroupés en famille, qui eux même sont regroupés en groupe, qui eux même sont regroupés en catégorie. Ils Chaque critère possède ensuite une pondération. Celle ci est parfois aussi envisagée pour les familles, les groupes et les catégories... Cette liste constitue l'axe des Y (de haut en bas).
Ensuite sur l'axe des X (gauche à droite), on va ajouter les différentes solutions que l'on veut soumettre au traitement de la matrice.
L'intersection des lignes de critères avec la colonne de la solution est ensuite complétée par une combinaison de note comprise entre 0 et 5.
Au final en bas de la feuille Excel, il y a la note finale. Résultant de la moyenne des produits entre pondérations et notes, cette note au combien symbolique est le salut pour le responsable du choix de solution puisqu'elle indique l'heureux vainqueur incontestable!

Dis comme cela c'est simple non ? :o)

Le principal reproche de cette pratique vient de la "partialité" lors du choix des critères, de la pondération et de la note.

Exemple :

Partons du besoin :
Les équipes techniques (conceptrice de nos produits) ont besoin de pouvoir partager leurs bonnes pratiques de manière collaborative.

Critère envisageables :

Intégration d'un wiki.

Réponses possibles :

  • Réponse d'un consultant : Pour la solution X, il existe une possibilité d'intégrer une solution de Wiki via l'API du système de GED.
  • Réponse d'un éditeur : La solution Y, Une de nos fonctionnalités permet de gérer un système de wiki.
  • Réponse d'un intégrateur : Avec un peu de code, il est possible de créer un système de wiki simple que l'on pourra brancher au système de GED de la solution Z.
Maintenant je vous laisse libre de mettre une note de 0 à 4.

Au fait avez vous pensez à demander quelle est la syntaxe du moteur ? Votre équipe technique voudra-t-elle écrire en apprenant qu'un mot entre le symbole ' indique un italique, avec [ qu'il s'agit d'un lien... ou bien voudriez vous plutôt un éditeur de texte simple ou riche, avec l'intégration de médias comme des images...?
Ensuite avez vous pensez à comment sont stockés ces contenus ? Comment ils peuvent être réutilisés, partagés et indexés ? et j'en passe...

Maintenant mettriez vous la même note ?

Voilà en substance les limites du système matriciel...

Règle n° 5 : Pour demander le choix d'une solution dans un appel d'offre la grille de critères tu banniras!
Corollaire du point précédent, si tu ne veux pas que les réponses données soient fausse, alors ne demande pas de remplir une grille. Simple isn't it...

Règle n° 6 : Avec qui ai je envie de travailler ?
Règle simple mais pas toujours appliqué. N'est-il pas plus simple de travailler avec des personnes que l'on connait et avec qui on a noué des liens de confiance, de respect, d'honnêteté et d'efficacité ?

N'hésitez donc pas à rencontrer les différentes personnes qui vont intervenir aussi bien dans la phase de choix, de conception que celle de réalisation. Ceux sont ces personnes qui sont avant tout garantes de la réussite de votre projet.

Règle n° 7 : Vous connaissez votre budget ? Alors dites-le!
Je sais que ce choix peut paraitre osé suivant les projets, mais il va vous permettre de gagner du temps ! D'une part parce qu'il vous permettra de savoir qui sont les fournisseurs réellement intéressés par le projet, d'autres part il vous permettra de choisir la gamme de produit pouvant répondre à votre problématique.

Remarque : Parlant souvent de solutions open-source, je tiens à rappeler qu'une solution Open Source N'est PAS GRATUITE!


Règle n° 8 : Open Source ou Propriétaire même combat ou dit autrement aucun préjugé tu dois avoir!
Bien que je sois un fervent supporter de l'open source, le propriétaire n'est pas à exclure du choix d'une solution (et vice-versa!). Dans le choix d'une solution seul compte votre besoin (et votre budget...)!

Si ce besoin est mieux couvert par une solution propriétaire et que celle ci entre dans le budget fixé, pourquoi se priver ? (et vice-versa!).


Règle n° 9 : Un prototype tu demanderas!
Parfois dans les critères de sélection, on trouve la mention : "Expérience utilisatrice à 2.0", ou "Ergonomie et Experience Enrichie". Si vous n'avez jamais installé le produit ou utilisé le produit comment pouvez vous vous fiez à une note ou à une description. C'est dans ces moments la que l'on constate l'utilité d'un prototype.

Petit rappel : Un prototype ne consiste pas à faire en quelques jours ce que le projet demande de faire en plusieurs mois.

Le but d'un prototype est de montrer les forces et faiblesses d'un produit sur un cas d'utilisation particulier. En outre, il vous permettra de voir le degré de maitrise de la solution par un intégrateur, ou le degré d'adaptabilité d'un produit par un éditeur. Ce n'est pas à l'éditeur de montrer ce que le produit sait faire mais bien au produit de montrer ce qu'il sait faire dans votre contexte. Et si le prototype "plante" ce n'est pas grave, il montre au contraire sur quoi il faut réellement travailler.

Règle n° 10 : Je n'y comprends rien...
Vous avez du mal à comprendre les principes régissant un projet de gestion documentaire. Demandez de l'aide tout simplement !

Voilà en quelques points ma vision de comment choisir sa solution de gestion de contenus.

L'ensemble de cet article n'aurait été possible sans les innombrables articles traitant du sujet sur le web. Voici quelques morceaux choisis :

[FR] BPMBulletin :

[ENG] BIG MEN ON CONTENT


[ENG] BLEND INTERACTIVE


[ENG] CMS WATCH


[ENG] CONTENT HERE
(My favourite!)

[ENG] JON ON TECH
(A lire absolument !)
Lire la suite...

Wave & ECM : Mes impressions

Bonjour tout le monde!

Si vous ne vivez pas dans une autre planète, vous avez sans doute entendu parler du phénomène ou de la vague GOOGLE WAVE. Ayant obtenu le précieux sésame depuis quelques semaines, j'ai pu tester l'outil et me faire une opinion.

Je ne vais pas vous faire une n-ieme présentation sur le sujet. Les ressources ne manquent pas.
Non aujourd'hui je vais simplement vous faire part de mes récentes pensées sur les relations qui existent entre l'ECM ou CM en général avec Google Wave... Google wave va t il écraser l'ECM ou bien va t il l'épouser ? Mouton à cinq pattes ou réelle avancée technologique ?

Collaboration et communication

Tout d'abord Google Wave est comme sa définition le dit :
Google Wave is an online tool for real-time communication and collaboration. A wave can be both a conversation and a document where people can discuss and work together using richly formatted text, photos, videos, maps, and more.
un outil qui permet d'échanger de l'information (communiquer quoi...) entre une ou plusieurs personnes de manière synchrone (interactive) ou asynchrone (statique)...

Faisons un petit état des lieux. Dans la catégorie des outils de collaboration et de communication il existe :
  • E-Mail : Il s'agit d'un service de transfert de messages envoyés par un système de messagerie électronique via un réseau informatique (principalement Internet) dans la boîte aux lettres électronique d’un destinataire choisi par l’émetteur.
  • Forums : Lieu d'échange où les internautes posent ou répondent à une question donnée. Les différentes contributions, accessibles à tout à chacun, forment un fil de discussion (thread en anglais). Chaque forum de discussion se consacre à un thème précis.
  • Messagerie Instantanée : permet l'échange instantané de messages textuels entre plusieurs ordinateurs connectés au même réseau informatique, et plus communément celui d'Internet. Contrairement au courrier électronique, ce moyen de communication est caractérisé par le fait que les messages s'affichent en quasi-temps-réel et permettent un dialogue interactif.
  • Mailling List : est une utilisation spécifique du courrier électronique qui permet le publipostage d'informations aux utilisateurs qui y sont inscrits.
  • Podcast : le podcasting permet aux utilisateurs l'écoute ou le téléchargement automatique d'émissions audio ou vidéo pour les baladeurs numériques en vue d'une écoute immédiate ou ultérieure.
  • Wiki : Il s'agit d'un site Internet qui offre aux utilisateurs la possibilité de procéder à l'édition des pages du site.
  • Edition collaborative de document : Ensemble d'outils permettant de créer de manière conjointe au sein d'un groupe un ou plusieurs documents.
Maintenant mettez le tout dans une seule et même application, ajoutez y une forte dose de Mashup à base de widgets, secouez le tout et vous obtiendrez un Google Shake à la sauce collaborative c'est à dire Google Wave!

Google Wave : Un Outil de Collaboration Génétiquement Modifié.
Voilà ce qu'il ressort lorsque l'on utilise Google Wave. Cet OVNI est impossible à ranger dans une case et c'est bien cela qui étonne et qui dérange en même temps la plupart des utilisateurs. Du déjà vu pour certains, une révolution pour d'autres. Et vous comment le voyez vous ?

Google Wave : One ring to rule them all ?
Faisons une comparaison avec le téléphone portable. Il y a 10 ans, le téléphone portable servait à ... Téléphoner! Ensuite il nous a permit d'envoyer des SMS, des MMS, des E-Mails... Il s'est transformé en lecteur de musique portable, puis album de photos, puis salle de cinéma... De nos jours il nous sert à nous localiser, à aller sur internet ou encore à jouer... Eh oui il existe une application pour à peu près tout!

Et bien on peut comparer Google Wave à un téléphone portable de Xe génération pour les moyens de communication. Il va nous permettre de faire tout un tas de trucs plus géniaux (ou pas suivant les idées...) entre toi et moi (pourquoi pas!) ou entre toi et nous (j'ai des copains aussi!) ou entre vous et nous (parce que toi aussi tu as des amis) ou au sein d'une communauté maintenant, demain ou encore plus tard.

Dans la modélisation de contenu on appellerait cela un contenu générique ou primaire(Google a-t-il mis un noeud dans le patrimoine génétique d'une Wave... Mystère...) capable de s'adapter et d'être adapté.

Alors Google Wave : ECM Killer ?
Et bien au vu de son patrimoine génétique... Ma réponse est clairement NON! (Après je peux clairement me tromper...)
Il s'agit au contraire d'un très prometteur PLUS (dans le sens + ) pour rendre la gestion de contenu plus simple(?). En effet l'intérêt d'une wave c'est qu'il
  • n'est pas répliqué sur chacun des clients (comme dans chaque boite aux lettres dans le cas des e-mails)
  • est partageable facilement (on peut facilement dire qui a le droit ou pas d'être dans une wave)
  • est classifiable et donc indexable et donc trouvable (c'est quand même le métier de google à la base de retrouver...)
  • est modifiable à souhait! (tout le monde peut mettre sa petite touche personnelle)
  • peut être synchrone et/ou asynchrone (tu n'es pas là... tant pis je te laisse un message. Tu es là alors on peut aller plus vite!)
  • gère les versions (Playback... j'aimerai bien voir qui a ajouté quoi à quel moment)
  • est deployable aussi bien chez un fournisseur que chez moi à l'abri derrière mon firewall!
Google wave a pris certains principes fondateurs de la gestion de contenu (versionning, catégorisation, edition collaborative, gestion des utilisateurs...) mais n'est pas en soit un "outil de gestion de contenu" (comme je l'ai dis précédemment, on ne peut le mettre dans une case...) . Sa matière première est le contenu! Content is everywhere and is everything... Wave permet de créer, diffuser l'information facilement et simplement.

Google Wave en entreprise ?
Google Wave va bien entendu attérir en entreprise comme la plupart des outils Google. Qui ne s'est jamais servi d'un Gmail, d'un Google maps, d'un Google reader ou de Google tout court dans un cadre professionnel ? (Oui bon on exclut ceux qui n'ont pas Internet au travail.) Par contre cela ne sera pas pour tout de suite.. D'une part parce qu'il s'agit d'une phase de Beta (une vrai de vrai), d'autre part parce qu'il faut que tout le monde commence à domestiquer le monstre pour en faire fidèle un compagnon puis enfin parce qu'il faut inventer de nouvelles pratiques basées (ou pas) sur les anciennes bonnes pratiques.

Qui va en profiter ?

Tout d'abord les petits seront encore les plus chanceux pour une raison simple.
Pourquoi investir dans un outil de wiki + messagerie instantanée + e-mail + outil de collaboration + forum + ... alors qu'il me suffit de connaitre simplement un outil et qui, de plus, me permet de m'abstraire de son infrastructure informatique...(ou pas suivant les méthodes de déploiement que l'on aura choisi.) Une offre PME/PMI devrait être vite disponible comme c'est déjà le cas pour les Google Apps.

Ensuite les créateurs d'apps
Comme pour l'Iphone, Faceboox et autres moyens de communication dans le vent, on va voir apparaitre (et c'est déjà le cas) plein de gadgets, widgets et autres add-ons pour enrichir notre expérience utilisatrice. Il est à parier que de nouveaux clients vont aussi apparaître.

Après les intégrateurs tiers.
Une première intégration envisageable sera l'archivage des waves c'est à dire comment garder à long terme un échange d'informations entre une ou plusieurs personnes. Cela s'avérera moins gourmand en volumétrique que pour les e-mails mais sans doute plus complexe car intégrant plus de sources de données externes.

Les autres intégrations seront celles que l'on voit récursivement c'est à dire intégration avec l'existant (outils bureautique, outils de gestion de contenus bien sur, applications métiers, système de sécurité...)

Et puis nous... Parce que nous sommes à l'origine de tout.

Finalement
Autrefois Windows offrait tous les services grâce à un système d'exploitation + des logiciels.

Maintenant Google offre tous les services grâce à Internet et des Apps.

Cela devient de plus en plus visible et palpable. Impressionnant pour un intégrateur tel que moi, normal pour des utilisateurs lambda... C'est aussi cela la magie de l'informatique !

Merci de m'avoir lu et à très bientôt.

PS : Il me reste 2 invitations Google Wave... Les 2 premiers à poster un commentaire seront les heureux élus! C'est aussi cela la magie des waves. La chasse à l'invitation...
Lire la suite...

Ma famille de solutions Open Source ECM

Hello tout le monde,

Ci-dessous vous pouvez retrouver un ensemble de présentations pour apprendre comment installer une petite collection de solution Open Source ECM sur des environnements virtuels.
A la fin de chaque présentation, vous pouvez retrouver un ensemble de liens vers chaque aspect de la solution.
PS : Ces installations servent de base pour des tests et ne seraient en aucun cas une base pour une mise en production...

Mettre en place son environnement virtuel
Installation Simple Installation Avancée
  • Alfresco (Work in progress)
  • Nuxeo (Work in progress)

Dans un futur plus ou moins proche, j'essaierai de partager d'autres présentations sur certains aspects comme le clustering, connexion LDAP, Intégration Continue etc...

Si vous avez des retours ou des liens n'hésitez surtout pas!
Bonne installation !
Lire la suite...

Interview : Julien Viet, Product Manager eXo platform SAS

Bonjour chers lecteurs et lectrices,

Aujourd’hui je vais de nouveau vous présenter un voisin du Sud de la France avec qui je vais aborder le sujet des portails d'entreprise et l'écosystème s'y attachant.

Aujourd'hui j'ai donc l'honneur et le privilège d'interviewer Julien Viet, product manager au sein de la société eXo platform SAS et l'une des références communautaire sur les projets de portails d'entreprise.


Bonjour Julien,

En premier, un grand merci de m'accorder un peu de votre temps pour répondre à cette interview et pour partager votre vision des portails, de la gestion de contenu et du monde open-source à travers ce post.

Commençons tout d'abord par les présentations. Serait-il possible de vous connaître un peu plus ? Quel est votre métier et quelles sont vos responsabilités actuellement au sein de la société eXo Platform ?
Mon poste actuel est Chef de Produit chez eXo Platform où je m'occupe spécialement du portail qui est à la base de l'offre d'eXo Platform. Mon métier est à mi chemin entre le partie marketing du produit qui consiste à définir les fonctionnalités du produit et sa réalisation technique pas nos équipes de développement. Je collabore en amont avec le avec le chef produit principal avec lequel nous définissons les besoins du portail et son évolution et en aval avec le chef de projet portail qui se charge de son implémentation.

Quel a été votre parcours professionnel pour arriver à ce poste ?
Mon parcours professionnel s'est toujours orienté grâce à des opportunités qui se sont offertes à moi au bon moment.

Après un premier et second universitaire dans les mathématiques et informatique, j'ai intégré une école d'ingénieur (INT Telecom) et pendant la dernière année d'étude j'ai découvert Java 2 Enterprise Edition et le coté technique m'a fasciné tout e suite, c'est à dire que je voulais savoir comment la plateforme entière fonctionnait. Je me suis donc orienté naturellement vers l'open source et le serveur d'application JBoss qui m'a permis de découvrir et de comprendre le middleware en général.

Je suis passé ensuite contributeur sur le serveur et en 2003 j'ai été embauché pas JBoss Group Europe, à l'époque la structure était toute jeune, une quinzaine d'employés, j'étais parmi les 7 employés initiaux de JBoss Group Europe fondé par Sacha Labourey. En 2004 j'ai commencé à écrire un prototype de portail et de fil en aiguille le projet JBoss Portal a été crée.

En 2008, je voulais m'orienter vers de nouvelles perspectives et donc j'ai accepté un poste à peu près équivalent chez eXo Platform, ma motivation principale étant de me retrouver dans une infrastructure où le portail est au cœur de l'offre produit, contrairement à JBoss où le portail était une couche assez éloignée du cœur de métier. Je désirais aussi avoir une expérience produit plus aboutie et moins technique.

Vous avez toujours intégré des sociétés dîtes open-source. Pour les jeunes qui me lisent et qui ne connaissent pas forcément le monde de l'entreprise, existe-t-il des différences entre des sociétés/éditeurs open-source et leurs équivalentes propriétaires en terme travail jour après jour ?
Je pense que fondamentalement l'objectif est le même, à savoir créer un produit. Les principales différences concernent le modèle économique de l'entreprise ainsi que le mode de collaboration, mais ceci n'est pas une généralité. Dans mon cas, le modèle économique de l'entreprise a été basé sur la souscription et le mode de travail distribué.
Maintenant intéressons nous à la société eXo Platform. Tout d'abord qu'est ce qu'un portail selon la vision d'eXo Platform et quelle est votre vision ?
eXo Platform considère le portail comme la plateforme qui permet à un écosysteme d'applications d'être déployé au cœur de l'entreprise. Les applications peuvent aussi bien être des applications développées par eXo comme par exemple la suite collaborative eXo CS, des applications d'entreprise écrites en Java ou des gadgets opensocial qui consomment des services REST. Le but du portail est d'intégrer toutes ces technologies afin que l'utilisateur puisse les utiliser dans un portail unique. Le portail fournit divers services utilisés par ces applications telle que l'agrégation de contenu, la gestion de l'identité, l'aspect social.

Pouvez-vous nous en dire plus concernant les différentes solutions et les différents produits d'eXo (eXo Portal, eXo WebOs, eXo ECM, eXo CS…) ?
Comme expliqué précédemment, le portail est l'offre de base qui sert plateforme au déploiement des autres produits eXo.

eXo WebOS, basé sur le portail, offre une vue orienté bureau des applications qui est utilisé quand l'utilisateur a besoin de se retrouver dans un environnement de ce type auquel il est habitué.

eXo DMS est l'outil de gestion documentaire basé sur eXo JCR qui est notre implémentation de la spécification Java Content Repository.

eXo WCM est l'offre CMS d'eXo basé sur le portail et sur le DMS, le portail s'occupant de la partie visuelle et le DMS se chargeant naturellement de la gestion des sites avec notamment la gestion des versions de sites, du mode prévisualisation. La combinaison du portail et du DMS font que WCM est un outil puissant et très abouti.

eXo CS est la suite collaborative qui comprend un client mail, un calendrier, un carnet d'adresse et un outil de chat. Les calendrier et carnets d'adresse pouvant être partagés entre les utilisateurs.

eXo KS est la suite de gestion de connaissance qui fournit un forum et une foire aux questions.

Enfin nous avons finalement eXo Social qui fournit un support transverse de fonctions sociales aux applications, comme le graphe social, la notion d'espace collaboratif.

Comment qualifiez-vous ces produits ? L'ensemble des composants constitue t il un portail d'agrégation d'un ensemble de composants, une plateforme, une solution verticale spécialisée... ?

Nous fournissons avant tout une plateforme avec comme objectif principal la collaboration et la gestion de documents. Certains éditeurs reprennent nos produits et créent des solutions verticales basées dessus.

Quels sont les dépendances entre ces différents produits ? Faut-il posséder un eXo Portal pour avoir un ou plusieurs produits annexes ?

Oui, eXo Portal est la plateforme au sens littéral du terme.


Récemment, eXo Platform et JBoss ont communiqué sur le "mariage" des projets eXo Portal et JBoss Portal. Connaissant vos relations avec ces 2 sociétés (vous avez été leader JBoss Portal avant d'intégrer eXo Platform), on se doute de votre forte implication à ce projet. Pouvez-vous nous en parler un peu plus ?
J'en ai un peu parlé sur le blog d'eXo Platform (http://blog.exoplatform.org/2009/06/10/exo-jboss-partnership/) et dans une interview des cast codeurs (http://blog.exoplatform.org/2009/06/22/cast-codeurs-french-interview-of-julien-viet-exo-and-thomas-heute-rhjboss/).

L'intérêt principal de la collaboration provient de l'orthogonalité des deux entreprises. JBoss est une entreprise qui fait du middleware et eXo de l'applicatif. Pour JBoss, le portail est quasiment tout en haut dans sa pile produit et pour eXo au contraire c'est la base de tous les produits. Le rapprochement entre les deux entreprises s'est donc fait naturellement et petit à petit, chacune y voyant surtout des intérêts. Un des points importants dans le partenariat est l'aspect humain avec plusieurs équipe qui doivent collaborer, mon passage de JBoss à eXo joue certainement un rôle afin que la collaboration des équipes se déroule sans problème. Thomas Heute est le co-lead du projet et est mon alter ego chez Red Hat. Au final nous collaborons sur le portail afin de créer le meilleur portail.

Quelles sont les principaux changements et répercussions à prévoir sur la gamme des solutions eXo cités précédemment ?
Pour eXo cela ne change pas beaucoup de chose en terme produit, la seule différence étant plutôt la gestion du projet qui est faite en collaboration avec Red Hat.

On constate sur le marché des portails dits « traditionnels » qu'ils intègrent de plus en plus des modules de gestion de contenus. S'agit-il d'une évolution logique ? Les portails vont ils rentrer dans le domaine fonctionnel de l'ECM ou seront ils la plateforme de base qui permettra d'agréger des applications hétérogènes ?
Je le pense certainement, en général les portails fournissent du contenu mais en général plutôt orienté web via des CMS ce qui est souvent insuffisant pour des besoins de gestion documentaire pur. Un des points fort d'eXo Platform est d'avoir deux produits distincts, le portail et le DMS, mais qui sont parfaitement intégrés aussi bien en termes de service que d'interface utilisateur. A mon avis c'est la seule solution de ce type sur le marché du portail et de l'ECM. Il est ainsi possible de fournir par le portail, l'application DMS ainsi que d'autres applications grâce à la technologie des portlets.

Quels sont les avantages de cette approche par rapport à des acteurs dits « pure player ECM » ?
Si on regarde les éditeurs ECM purs, on se rend compte qu'ils ont l'ambition de fournir les même services que les portails sans toutefois y parvenir sur le point de vue technologique. Ces éditeurs comprennent l'aspect fonctionnel du portail mais pas la nature middleware du portail et cet aspect d'agrégation assez technique. Souvent ils négligent le standard Portlet (JSR286) et fournissent l'intégration de composant par une technologie propriétaire. La première conséquence est que l'utilisateur couple ses applications au produit et ensuite ces technologies n'ont pas la degré de maturité du standard Portlet. Le standard Portlet a été conçu pour l'agrégation d'applications hétérogènes.

On parle de plus en plus de la confrontation entre le monde open source et le monde propriétaire. Est-il possible de comparer une solution telle que la votre et des solutions Propriétaire ? Existe-t-il un écart ?
Du fait de la nature à la carte de l'offre produit d'eXo, il est possible de confronter nos offres à différent types de solutions. Nous adressons naturellement le marché du portail, de la gestion documentaire, du collaboratif, du CMS et du tout intégré à la sharepoint.
Parlons maintenant un peu d'histoire. Dans votre carrière comment avez-vous constaté l'évolution du marché des portails ?
En fait je suis arrivé sur le marché du portail un peu tard et mon premier produit JBoss Portal était un outsider, ceci ne m'a pas empêché de le placer dans le top 3 des portails open source Java (avec notamment eXo Portal). A cette époque il y avait 7 ou 8 portails open source mais la plupart d'entre eux aujourd'hui ont disparu ou alors n'ont plus un développement très actif, cela vient du fait que derrière chaque portail open source présent encore aujourd'hui il y a une entreprise, c'est le modèle open source professionnel, longtemps évangélisé par Marc Fleury.

Du coté propriétaire il y a eu énormément de consolidation aussi, notamment par le biais de rachats je crois qu'aujourd'hui Oracle possède 4 ou 5 portails... Au final clairement aujourd'hui il y a eu une grosse consolidation du marché, de manière similaire à ce qui s'est passé pour les serveurs d'application.

En tant que membre de la communauté open source faîtes vous parti d’une communauté de référence comme les Java User Group... ? Avez-vous réalisé des publications ?
Avec plusieurs personnes de Marseille nous sommes en train de fonder le MarsJUG, nous serons actifs dès septembre 2009. Les deux années précédentes ont tout simplement été énormes à ce niveau là avec l'explosion du nombre de JUG en France, l'initiative étant partie de Paris avec Antonio Goncalves qui a fondé le Paris JUG. Quand aux publications, je n'ai rien publié de manière formelle, mon blog même s'il n'est pas très actif me sert à véhiculer mes idées.



Pour finir sur une note annexe, quels sont vos blogs, liens et Twitter préférés sur l'informatique en général ?

Il y a quelques années je lisais pas mal d'articles sur TheServerSide, OnJava et autres mais depuis que Java est devenu très mature, ces sites n'offrent plus beaucoup d'articles novateurs. Je lis pas mal de blogs mais je tombe rarement sur des blogs qui sont des mines d'or d'information. Il me semble que les articles techniques intéressants se font de plus en plus rare et ça me désole, il y a pas mal de blog intéressants que je lit même si la plupart des gens intéressants semblent avoir de moins en moins de temps pour publier:
Au final je me rends compte que peu de contenu intéressant est publié de nos jours. Je suis ouvert à toute suggestion de lecture si vos lecteurs m'en proposent. Après je lis pas mal de blog sur la cuisine et le retro gaming pour la détente :-) .

Un dernier mot avant de se quitter ?

Comme j'ai la possibilité de m'exprimer voici quelques pensées je vais faire un j'aime/j'aime pas à la ciel mon mardi:

  • j'aime l'open source
  • j'aime la maturité à laquelle sont parvenues les plateformes Java SE et Java EE
  • je n'aime pas les langages dynamiques
  • je n'aime pas les fluents interfaces, ça frise le ridicule
  • j'aime les commentaires de code source qui disent du mal d'autre frameworks
  • je n'aime pas les solutions et frameworks simplistes (style Prevayler ou Picocontainer)
  • je n'aime pas qu'on me dise que l'injection de dépendance est révolutionnaire, au final ce n'est qu'un modèle de programmation pratique
  • je n'aime pas que l'on juge la qualité d'un produit sur la taille de ses jars, aujourd'hui on a des disques durs de l'ordre du tera octets et mon ordinateur portable à 4go de mémoire vive, alors qu'un jar fasse 100ko ou 1mo ca ne change pas grand chose tant qu'il le fait bien
  • je n'aime pas les frameworks qui utilisent Class.forName, ça montre une incompréhension de la plateforme Java
  • je n'aime pas les frameworks qui ne fournissent une API couplée à l'implémentation
  • j'aime lire du beau code

Merci pour toutes ces questions très pertinentes et à bientôt!

Merci encore pour cette interview et bonne continuation sur la route d'un monde ECM Open Source !

Vous pouvez retrouver toutes les informations sur l'offre eXoPlatform à l'adresse suivante : http://www.exoplatform.com/
et bien entendu Julien Viet sur son espace personnel : http://www.julienviet.com/

PS : Vous pouvez télécharger l'interview à l'adresse http://www.scribd.com/doc/18717050/Open-Source-ECM-Interview-FR-Julien-Viet-eXo-SAS
Lire la suite...

CMIS-SQL : Tutorial et Presentation

Bonjour à tous !

Sur mon blog anglais, j'ai publié une présentation sur l'utilisation du nouveau langage de requête CMIS-SQL. Ce petit tutorial se veut simple mais assez complet pour vous donner l'ensemble des informations nécessaires pour que vous aussi vous puissiez tester ce langage.

Pour visualiser la présentation, je vous invite à consulter mon post anglais à cette adresse :

http://www.open-source-ecm.com/2009/08/cmis-tutorial-cmis-sql.html

Si vous aussi vous avez des informations ou des observations avec CMIS-SQL, n'hésitez pas à les partager.

Bonne viusalisation et A la prochaine !

PS : Si vous avez besoin d'une traduction...
Lire la suite...

Nuxeo Tips : Installation et Parametrage

Bonjour à tous !

Je profite d'un petit temps mort pour vous parler de Nuxeo!

En effet, ayant eu l'opportunité d'installer, paramétrer et personnaliser cette solution dans un environnement windows, je me suis dis qu'il était bon de partager certaines informations avec vous.

Installer Nuxeo

Comment installer Nuxeo ?
Par défaut, utilisez l'installeur de Nuxeo 5.2 que l'on peut retrouver en téléchargement http://www.nuxeo.com/downloads/
Cet assistant permet d'avoir une très bonne base de départ. Il intègre en outre Nuxeo Shell (un vrai petit bijou pour les administrateurs!). Néanmoins il faut savoir qu'il embarque une base de données légère (Derby). Cette base est fâite pour les environnements de démonstrations, développements ou expérimentations. Il ne s'agit pas d'une base de production! Il faut donc paramétrer Nuxeo pour une autre BDD.


Comment paramétrer Nuxeo avec une base de données PostgreSQL ?
Pour les explications pas à pas, jetez un oeil à la FAQ : http://www.nuxeo.org/xwiki/bin/view/FAQ/ Rubrique Administration
Vous pouvez avoir plus d'informations dans le Nuxeo-Book http://doc.nuxeo.org/5.1/books/nuxeo-book/html/admin-database-configuration.html ou Admin Book : http://doc.nuxeo.org/5.1/books/nuxeo-book/html/admin-database-configuration.html

Et si vous êtes vraiment fainéant ... Télécharger les fichiers de configuration par défaut ci-dessous pour une configuration Nuxeo/PostgreSQL/VCS : A VENIR ;o)
PS : N'hésitez pas à lire le README.txt qui vous expliquera comment faire.


Quelles sont les configurations Nuxeo pour un environnement de Production ?

Pour la partie Nuxeo, les informations se trouvent http://www.nuxeo.org/xwiki/bin/view/Main/NuxeoProdSetup/

Pour la partie PostgreSQL, les informations sont là : http://www.nuxeo.org/xwiki/bin/view/FAQ/PostgreSQLSettings/

Vous avez maintenant une bonne base pour démarrer une mise en production au niveau système en tout cas. Il faut maintenant prendre en compte la partie fonctionnelle c'est à dire les différentes fonctionnalités que l'on veut ou non voir apparaitre. Pour cela intéressons nous aux possibilités offertes de paramétrer Nuxeo.


Paramétrer Nuxeo

Petite introduction
Comme j'ai coutume de le dire, dans les solutions d'ECM Open Source, il y a 3 types d'approches possibles.
  • L'approche Utilisateur : L'utilisateur ne sait que cliquer sur des boutons (Ce n'est pas un reproche ou une insulte mais c'est bien caricaturé par contre...)
  • L'approche Administrateur : L'administateur sait utiliser et modifier des fichiers humainement compréhensibles (XML, Properties, txt)
  • L'approche Developpeur/Intégrateur : Le développeur est omniscient et omnipotent. Il comprend et connait tout surtout la programmation.

Dans notre cas on va s'intéresser uniquement au niveau administrateur. En effet beaucoup de fonctionnalités sont paramétrables par des fichiers XML dans Nuxeo.

Pour illustrer ce niveau, je vous propose le cas d'utilisation suivant : Je souhaite augmenter le nombre de document affichés dans une espace. Par défaut cette valeur est fixée à 10. Si l'espace contient plus de 10 documents, alors la page de présentation va créer une pagination automatique de 10 en 10. Pour des questions de visibilité, je souhaite maintenant que cette valeur soit de 25.

Voyons voir quelles sont les approches possibles pour répondre à ce besoin

Tout d'abord dans une installation Nuxeo, il y a 3 répertoires à retenir pour un administrateur :

  • NuxeoEP5\NuxeoServer\server\default\deploy\nuxeo.ear\System
    Il s'agit du répertoire qui contient l'ensemble du coeur de l'application Nuxeo.
  • NuxeoEP5\NuxeoServer\server\default\deploy\nuxeo.ear\plugins
    Ce répertoire contient l'ensemble des modules addons/plugins/extensions qui ne font pas partie du coeur Nuxeo.
  • NuxeoEP5\NuxeoServer\server\default\deploy\nuxeo.ear\config
    Il s'agit du répertoire qui contient l'ensemble des fichiers de configuration.
Ces 3 répertoires vont illustrer les 3 façons de paramétrer Nuxeo.

Le répertoire System
Si vous avez jeté un œil à Nuxeo de près ou de loin, vous avez remarqué que la majorité des fichiers sont des fichiers .jar. Pour ceux qui ne connaissent pas ce format de fichier, un petit tour sur wikipedia s'impose : http://fr.wikipedia.org/wiki/Jar Pour faire simple, il s'agit d'un ZIP pour tout ce qui touche au langage de programmation JAVA. Pourquoi je m'attarde dessus ? Eh bien tout simplement comme il s'agit d'un ZIP, on peut ouvrir ce ZIP avec un outil comme winZip, 7-zip etc... et donc... On peut modifier le contenu de ce ZIP !

Le jar qui nous intéresse est : nuxeo-platform-webapp-core-5.2.0.jar
Il se situe dans une installation standard au niveau du répertoire : NuxeoEP5\NuxeoServer\server\default\deploy\nuxeo.ear\
Ouvrez le (avec 7-zip dans mon cas) et recherchez le fichier OSGI-INF/querymodel-contrib.xml. Editez (ou faites une extraction) le fichier et remplacer la valeur 10 par 25 dans le bloc suivant :



Sauvegardez le fichier (ou importer le dans le .jar).

Vous pouvez maintenant redémarrer Nuxeo, importer plus de 10 documents dans un espace et vous apercevoir qu'il n'y a pas la création par défaut de la pagination.
Il faudra attendre le 26e document pour la voir apparaitre!



Passons maintenant à la seconde méthode :

Le répertoire Config
Comme vous pouvez le voir, ce répertoire se compose essentiellement de fichier de configuration sous format .xml. Le premier but de ce répertoire est de configurer les principaux paramètres de l'application. Or c'est un peu ce que nous voulons faire : Paramétrer le nombre d'élément affiché dans un espace. Tout d'abord si vous avez testé la méthode précédente, il faut supprimer vos modifications. Ensuite créez un fichier ui-configuration-config.xml (le nom n'importe pas sauf la partie -config.xml qui doit rester inchangée) dans le répertoire config et ajouter le bloc ci-dessous :

La partie la plus importante réside dans la balise . Dans cette balise on va identifier le composant défini par défaut (que l'on a vu dans la précédent méthode) Ainsi comme nous avons ce composant, nous pouvons "surcharger"/"remplacer" les données par défaut.

Vous pouvez maintenant redémarrer Nuxeo, importez plus de 10 documents dans un espace et vous apercevoir qu'il n'y a pas la création par défaut de la pagination.

Vous venez juste d'apprendre une méthode qui marche pour la plupart des fonctionnalités par défaut de Nuxeo.

Si on devait avoir un mode opératoire (la recette de cuisine), cela serait le suivant :
  • Explorez les fichiers .jar du répertoire system (avec votre utilitaire de zip : 7zip pour moi...).
  • Interessez vous particulièrement aux répertoires OSGI-INF et aux fichiers xml à l'intérieur (surtout les fichiers finissant par -contrib.xml)
  • Prenez le bloc qui vous interesse et retenez le nom du composant (2e ligne du fichier -contrib.xml en général sous la forme : ).
  • Créer votre fichier -config.xml dans le repertoire config.
  • Insérez le bloc dans le fichier et modifiez les données par défaut.
  • N'oubliez pas de respecter la validité du fichier xml et de déclarer que c'est un fichier .xml
  • Rédémarrez votre instance de Nuxeo.
  • Vous pouvez servir, c'est prêt! :o)

Finalement la dernière méthode
Le répertoire Plugins
Cette méthode (la plus préconisée par Nuxeo) est celle qui est la plus évolutive, modulaire mais aussi la plus compliquée! (On ne peut jamais tout avoir surtout en informatique...). Je ne vais pas renter dans les détails avec cette approche car elle est très bien documentée. Pour rappel, si vous êtes interessé par le sujet, je vous conseille de lire l'ébauche de livre Nuxeo à cette adresse : http://www.nuxeo.org/static/dev-tutorial/

L'un des reproches à cette méthode est qu'il n'est pas donné à tout le monde d'installer et configurer Eclipse, JDK, Maven etc... Il s'agit d'une tâche parfois complexe qui peut prendre pas mal de temps...et donc d'argent.

Si on reprend l'exemple précédent est il judicieux d'installer un environnement de développement ? La réponse risque fortement d'être non. Par contre, je veux ajouter et modifier de nombreux composants ainsi qu'étendre une fonctionnalité Nuxeo, alors oui l'installation d'un environnement est de mise.

Comme souvent : Tout dépend du besoin!

Conclusion
Pour simplifier voici mes recommandations (pour gagner du temps!) :

  • Banissez la modification d'un .jar appartenant au répertoire system!!!! Parfois Cela parait etre la solution la plus simple mais il s'agit la solution la moins rentable sur le long terme.
    Et dans le monde de l'opensource il faut savoir être évolutif par la suite (migration, upgrade...). Le seul cas possible envisageable concerne la suppression d'une fonctionnalité. Si vous avez identifié une fonctionnalité qui ne vous interesse pas, il peut s'avérer utile de supprimer les jar associés (Accélération du démarrage de l'application...)
  • Si vous voulez modifier un paramètre par défaut d'un composant Nuxeo, choisissez la méthode basé sur le répertoire de configuration. Elle sera à long terme, la meilleure des méthodes.
  • Si vous devez modifier un composant Nuxeo + ajouter des fichiers (.java, images, définition d'un workflow) ou ajouter un composant, privilégiez la méthode plugins.

Pour la suite, il ne reste plus qu'à être curieux, d'avoir du temps et de naviguer dans les profondeurs des jars de Nuxeo !

Bon voyage et à la prochaine fois !

Lire la suite...

Interview : Benjamin Jean, juriste spécialisé en Propriété Intellectuelle au sein du groupe Linagora et promoteur du libre

Bonjour tout le monde !

Aujourd'hui, je publie une interview un peu différente. En effet, mes interviews sont généralement orientées vers le métier, les hommes ou la technique. Or lorsque l'on parle de solution d'open source on parle aussi de licence libre et lorsque l'on parle de solution informatique on parle aussi de propriété intellectuelle. Ceux sont ces aspects fondamentaux : le juridique et le légal que nous allons découvrir avec cette interview.

Pour nous expliquer ces différents axes qui prennent une part de plus en plus importante, j'ai l'honneur et le plaisir d'interviewer Benjamin Jean, juriste spécialisé en Propriété Intellectuelle au sein du groupe Linagora et promoteur du libre !


Bonjour Benjamin,

Je tenais avant tout à vous remercier de m'accorder un peu de votre temps pour répondre à cette interview et pour partager votre expertise dans le domaine du juridique.

Comme d'habitude dans mes interviews ma première question sera sur vous. Pouvez vous nous parler un peu de vous, présenter votre métier et votre rôle au sein de Linagora ?

Bonjour Jean-Marie,

C'est un réel plaisir de participer à cet interview et, ainsi, de donner un aperçu rapide de ce que peut être le métier de juriste dans une SS2L (Société Spécialisée en Logiciels Libres – éditeur, intégrateur, etc.). Peut-être pourrais-je ainsi créer des vocations (pour un poste aussi intéressant que qu'accaparant...) ou surtout aider les différents services (l'équipe technique, les commerciaux, etc.) à cohabiter.

Au sein de Linagora, je suis en charge de toutes les problématiques de propriété intellectuelle et plus spécialement des sujets relatifs à l'usage de Licence FLOS (Free Libre Open Source). Traverse, cette responsabilité m'amène à intervenir dans la quasi-totalité des engagements contractuels de la société. Enfin, et à l'instar de tout juriste d'entreprise, j'ai un rôle de prévision, gestion et résolution de conflits – mes positions sont principalement consultatives, mais leur niveau d'expertise fait qu'elles sont généralement suivies.

Pouvons nous en apprendre plus sur le métier et les services que Linagora offre ?
Initialement Société de Services spécialisée dans les Logiciels Libres, LINAGORA a étendu son activité, en offrant dorénavant : de la formation, de l'assistance et du consulting dans tous les domaines liés au FLOSS (transfert de compétences, mise en place de gouvernance open source, appréhension des différentes licences, élaboration de schéma directeur OS, etc.).

Reconnue comme leader et experte en matière logiciels libres et open source, la société cherche à renforcer son activité d'expertise et mettre en valeur l'excellence de ces compétences. L'offre juridique en fait partie ;-)

Quel est le lien entre la propriété intellectuelle et le domaine informatique ? N'existe t il pas une distorsion de terme entre propriété intellectuelle et libre ?
Il existe un « droit de l'informatique », qui inclut notamment des notions de Propriété Intellectuelle, néanmoins cette dernière est plus large et les deux domaines se rejoignent uniquement dans leur vision de l'informatique comme vecteur de création : l'informatique et Internet ne sont que support et moyen de diffusion de biens susceptibles d'appréhension par les droits de propriété intellectuelle.

Quant à la seconde question : il peut sembler en effet étrange d'associer les termes « Libre » et « Propriété Intellectuelle ». Un objet sujet d'appropriation peut-il être libre – c'est-à-dire à la disposition de tous –, alors que la propriété est au contraire fondée sur le monopole ? Pour la plupart des biens corporels (table, chaise, etc.), l'objet ne le permet pas (car il est rival – c’est à dire qu'il empêche l'usage par les autres – et souvent consomptible – le bien se détruit progressivement par son usage) ; en revanche, on s'aperçoit que la seule limitation, en ce qui concerne les biens immatériels, réside dans la décision du titulaire de droits. Ainsi, et c'est là le mécanisme sous-jacent aux licences FLOS, il suffit que le titulaire de droits – le « propriétaire » de la création – décide de partager l'exploitation et la jouissance qu'il contrôle sur cette dernière.

Le principe du copyleft repose plus encore sur la Propriété Intellectuelle puisqu'en l'absence d'un contrôle sur son logiciel, comment un auteur pourrait-il forcer celui qui modifie son programme à mettre à disposition cette version modifiée dans les mêmes conditions ?

Quels sont les organismes de référence dans le domaine du juridique en informatique ?

C'est une question difficile : il n'y a pas de « référence » dans le domaine, tout au plus quelques organismes plus pertinents que d'autres. Parallèlement à la pratique de nombreux cabinets d'avocats spécialisés dans l'informatique et la propriété intellectuelle, différents organismes gouvernementaux réfléchissant (CSPLA notamment) sur ces problématiques. On peut noter au passage qu'il est intéressant de constater que de nombreuses initiatives communautaires se mettent en place pour combler le manque en la matière (je pense à des initiatives comme Grocklaw, l'OSI, Fossbazaar, etc. aux États-Unis, ou l'OSOR, Veni, Vidi, Libri ou CeCILL en Europe).

Par ailleurs, ces groupements, communautés, qui cherchent (gracieusement) et souvent afin de mutualiser, vulgariser et faire progresser le domaine scientifique afférent, sont très souvent tout à fait avertis des enjeux liés à l'usage des licences libres et, par là, en avance dans leur appréhension.

Maintenant essayons de découvrir ensemble les différents aspects du juridique dans le domaine de l'open source. En effet suivant le point de vue, nous n'avons pas la même vision des choses!

En premier, j'ai cru comprendre dans l'une de vos présentations qu'il existe une différence entre la notion d'open source et de logiciel libre. Pouvez vous nous résumer la différence d'un point de vue juridique ?

J'essaie systématiquement de mettre mes interventions en ligne sur le Blog de l'association VVL et je suis ravi d'apprendre que cette mise à disposition permet une plus large diffusion !

Pour commencer (et d'après moi), les deux notions sont assez proches. Ainsi, les licences libres répondent à une finalité alors que les licences open source répondent à des critères précis :

conformément à la définition de la FSF, un logiciel sera dit libre si l'utilisateur dispose effectivement des libertés :
  1. d'exécuter / utiliser le programme ;
  2. d'étudier et d'adapter le programme ;
  3. de redistribuer des copies ;
  4. de modifier et de publier ses modifications.
de son côté, l'Open Source Definition, afin d'établir une définition plus pragmatique , claire (moins sujette à interprétation) détaille dans l' « Open Source Definition » les 10 critères qui confèrent automatiquement à une licence la qualité d'Open Source :
  1. la libre redistribution du logiciel — elle ne peut, par exemple, exiger le paiement d'une redevance supplémentaire ;
  2. le code source doit être fourni ou être accessible ;
  3. les dérivés des œuvres doivent être permis ;
  4. l'intégrité du code doit être préservée — un tiers ne peut pas s'approprier le travail d'un autre et les contributions de chacun sont clairement attribuées (les modifications peuvent n'être éventuellement distribuées que sous forme de patch, séparément : distinguo que ne tolère pas la FSF) ;
  5. pas de discrimination entre les personnes ou les groupes — toute personne détentrice d'une copie du logiciel bénéficie des termes de la licence tant qu'il s'y conforme lui-même ;
  6. pas de discrimination entre les domaines d'application — la licence se limite à la propriété intellectuelle : elle ne peut en aucun cas réguler d'autre domaine « politique » ;
  7. la licence s'applique sans dépendre d'autres contrats — on ne peut par exemple pas ajouter un NDA lors de la cession du logiciel ;
  8. la licence ne doit pas être propre à un produit — elle est attachée au code et non à un logiciel particulier : une brique peut resservir dans un logiciel différent, voire concurrent ;
  9. la licence d'un logiciel ne doit pas s'étendre à un autre — je précise au passage que la large étendue de la GPL (et c'est la raison pour laquelle certains utilisent le terme de viralité ou de contamination) est conforme à ce critère puisqu'elle ne s'étend qu'au programme envisagé comme un tout ;
  10. la licence doit être neutre technologiquement — c'est-à-dire ne pas dépendre d'une technologie.

Une solution open source ou un logiciel libre n'est donc pas une solution gratuite ?

Effectivement, les licences sont gracieuses (tout titulaire de copie – ou utilisateur pour certaines licences – bénéficie automatiquement des droits que confèrent la licence), mais la mise à disposition du logiciel peut, elle, être gracieuse ou payante – c'est d'ailleurs pour cette raison que l'on entend souvent qu'un logiciel n'est gratuit qu'une fois qu'il a été payé...

Ainsi, le Libre ne se positionne pas sur le caractère commercial ou non de l'usage des oeuvres – j'ai pour habitude de dire qu'il est a-économique –, ce qui permet aux sociétés d'élaborer divers business model et aux communautés de concevoir de multiples systèmes contributifs.

Prenons un cas concret, je suis développeur et j'aimerai savoir si cette bibliothèque (ce framework) que je viens de télécharger est open source. Quels sont les réflèxes que je dois avoir ?
Pour commencer, il est utile de vérifier sur le site du logiciel : la licence utilisée – et éventuellement les limitations qui lui sont apportées ; ensuite la FAQ si celle-ci existe ; et enfin toute autre information précisant les conditions d'exploitation (notamment en matière de marque).

En cas de doute ou si les mentions ne sont pas présentes sur le site, il est alors nécessaire de jeter un œil aux sources afin d'y trouver : un descriptif des différentes briques et licences si le projet est basé sur d'autres briques open source ; les licences portant sur le tout et éventuellement les limitations apportées ; au sein des en-têtes, toute information utile.

Une fois que l'on connaît avec certitude la licence utilisée, l'idéal est bien sûr de la lire, mais certains sites économisent ici du temps aux développeurs (j'invite en revanche les juristes à ne pas se passer de la lecture des Licences Libres) : la présence de la licence sur le site de la FSF (à la page « licences compatibles ») ou de l'OSI (sur la page listant les licences certifiées) ; et – un peu de promotions ne fait jamais de mal – certains sites comme celui de Veni, Vidi, Libri offrent des analyses et descriptions desdites licences afin de mutualiser leurs connaissances.

Enfin, si on s'aperçoit, suite à cette phase de vérification, que les sources supposées open source ne le sont pas en réalité, alors il ne faut pas hésiter à communiquer sur ce fait : ce sera un gain de temps pour tous et cela incitera peut-être ceux qui n'auraient pas fait de recherches suffisantes à se renseigner plus précisément, voire à leur faire changer la politique en matière de licences.

Combien de licences libres existent ils à l'heure actuelle ?

Plus de 80 d'après l'OSI, plus de de 50 sur le site de la FSF, plus de 4000 pour des logiciels d'audit de code comme Black Duck ou Fossology...

En vérité, ce chiffre doit être relativisé : contrairement aux premières années où les licences ne s'influençaient que très peu les unes les autres, on s'aperçoit que la multiplication des licences n'a pu se faire que grâce à une inspiration très forte des licences préexistantes. Pour cette raison, on ne dénombre qu'un faible nombre de licences véritablement différentes (étant entendu que deux licences très proches ne sont pas nécessairement compatible : une licence qui copierait la dimension hégémonique de la GNU GPL serait de facto incompatible avec cette dernière – deux hégémonies étant difficilement conciliables...).

Pouvez vous nous présenter les 2/3 principales licences libres ?
Le choix de ces trois licences dépend véritablement de ce que l'on veut différencier (le copyleft ; les droits concernés, etc.). Pour faire la transition avec la question précédente, je vais prendre une distinction classique : GPL / MPL / Apache.

La GNU GPL est (donc) la licence la plus hégémonique qui soit : tout logiciel qui est dérivé d'un autre licencié sous GNU GPL doit être distribué (au moins) sous la même licence. Une brève description : elle s'étend au logiciel comme un tout (ce qui devrait inclure les logiciels liés statiquement comme dynamiquement) ; sa dernière version homogénéise ses obligations à l'ensemble des droits exclusifs (droit d'auteur, brevet, signes distinctifs, etc.) ; et ses rédacteurs apprécient la compatibilité d'une licence comme sa faculté à permettre la redistribution sous GNU GPL (ce qui n'est pas anodin).

La MPL est une licence que j'appelle modulaire. Pour la comprendre, il suffit d'avoir à l'esprit le logiciel Firefox pour lequel elle a été rédigée : tout fichier intégrant du code de Firefox sous MPL doit être distribué sous MPL ; tout fichier, même associé étroitement aux autres, qui ne contient aucun code sous MPL peut être diffusé sous n'importe quelle licence. On le voit, la principale principale entre la MPL et la GPL est l'étendue de leur copyleft : c'est notamment cet écart qui a causé leur incompatibilité et, ainsi, à justifier le triple licencing de Firefox sous MPL/GNU GPL/GNU LGPL (utilisateur et développeur choisissent la licence qu'ils veulent respecter et bénéficie donc des droits que celles-ci leur procurent).

Enfin, la licence Apache est une licence permissive, dans le sens qu'elle n'oblige pas une licence particulière pour la redistribution du logiciel ou de son dérivé (qui peut donc devenir propriétaire). Néanmoins, elle soumet le licencié à un certain nombre d'obligations (notamment en matière de brevets) qui empêchent sa redistribution sous n'importe qu'elle autre licence (à l'inverse d'une licence comme la BSD qui limite tellement peu la redistribution que toute substitution de ses termes par ceux d'une autre licence se fait conformément à ces derniers).
Voilà pour une rapide description. Néanmoins, il faut faire attention à ne pas se contenter d'une telle classification : d'autres critères sont aussi très importants (les domaines des licences, les licences qui appréhendent la problématique du SaaS, etc.).

On entend souvent parler de la notion de viralité des solutions GPL. Quels sont les contraintes et les avantages de cette licence ? Je crois qu'il faut uniquement faire attention à la notion de distribution ?
Plus que de « viralité », j'ai pour habitude de parler de réciprocité (ou de copyleft : double jeu de mots à partir de copyright) : il s'agit en effet du pot commun que décrit parfaitement Eben Moglen (chacun est libre d'y puiser, mais avec l'obligation ensuite d'y reverser ses contributions).

Le copyleft est le mécanisme, la clause qui, contractuellement, assurent cette pérennité des libertés attachées au logiciel : autant le licencié d'une licence copyleft doit simplement veiller à ne pas obliger mois les licenciés subséquents s'il ne veut pas prendre en charge leurs actes ; autant le licencié d'une licence copyleft doit conserver et les obligations et les droits de la licence originale (usuellement en contraignant à l'utilisation de la même licence, mais d'autres mécanismes existent).

Enfin, un grand oui pour la notion de distribution. Toutes les licences ont une clause qui définit leur « élément déclencheur » : le moment à partir duquel la licence produit ses effets contraignants vis-à-vis du licencié (licence en matière de droit d'auteur, brevet, etc.). Pour la GNU GPL, et les nombreuses licences qu'elle a influencées, la notion de distribution était suffisante pour s'assurer que tout détenteur d'une copie du logiciel pourrait en jouir librement. Mais les technologies ont rapidement évolué et il est dorénavant possible de permettre la jouissance des fonctionnalités offerte d'un logiciel libre sans distribuer physiquement ce dernier (Google est le meilleur exemple d'une société qui utilise du Libre pour fournir des prestations sans pour autant reverser son propre code ; le logiciel de bureautique OpenOffice.org avait aussi été fourni de cette façon). Certaines licences (OSL, CSPAL, EUPL, Affero GPL, etc.) sont donc venues assimiler cet usage à une distribution de façon à permettre à l’utilisateur d'un logiciel de bénéficier des mêmes libertés que celles auparavant offertes au seul détenteur.

La notion de distribution peut elle etre mise en cause dans le cadre d'une société de services en informatique ? En tant qu'intégrateur, les SSII qui "distribuent"des solutions open source modifiés doivent elles automatiquement redistribuer leurs contributions ou bien sont elles considérées comme travaillant en interne pour le client ?
Question tout à fait pertinente, sachant que la GNU GPL v3 va délimiter clairement cette exception (sous réserve d'une série de conditions, notamment l'usage d'un NDA entre le client et son prestataire).

Ainsi, cette exception mise à part, il semble logique de considérer qu'il y ait bien une distribution. Mais la situation (de fait et contractuelle) est telle que seul le client (en tant que seul détenteur d'une copie du logiciel sous Licence Libre) bénéficie de la licence, et, ainsi, le laissant seul maître de la redistribution qu'il souhaiterait ensuite faire du logiciel offert (en revanche, le prestataire n'a pas le choix et doit livrer le logiciel conformément à la licence).

Donc, contractuellement, la licence est suivie d'effets, mais, en pratique, il faut attendre la première mise à disposition publique du logiciel pour qu'il débute sa vie de logiciel libre.

L'un des intêret de l'open source est bien entendu de pouvoir regarder et "copier" les bonnes pratiques. Existe t il des contraintes quand il s'agit de reprendre/s'inspirer/modifier un code source ? Par la suite est il possible de modifier la license associé à ce code (d'un code GPL vers un code LGPL par exemple) ?
Il y a deux choses : l'intérêt de l'accès au code source (partage de bonnes pratiques, intérêt scientifique, rendre le logiciel plus communiquant, etc.) ; et l'intérêt de la licence libre qui permet de bénéficier de l'exploitation du travail que constitue ce code (pour le copier, modifier, mixer, distribuer, etc.). Ainsi, la licence conditionnant les droits nécessaires à cette exploitation du code, il n'est pas possible de les dissocier des contraintes attachées : en matière de brevet, marque, licence pour la redistribution, mention des auteurs, etc.

Techniquement, il n'est pas possible de modifier la licence, puisque cela reviendrait à changer les conditions d'exploitation de la licence, chose que seul l'auteur est habilité à faire. En revanche, le licencié peut parfaitement distribuer une brique logiciel sous une licence différente de celle d'origine, dès lors qu'il respecte ainsi la licence d'origine (si un logiciel est distribué sous une licence du type BSD, il est tout à fait possible de reprendre la brique et la distribuer sous GPL – tout en laissant la mention de la BSD attaché au Code – puisque l'on respecte ainsi la BSD). En ce qui concerne la possibilité de distribuer sous GNU LGPL un code originairement sous GNU GPL : cela est impossible puisqu'une distribution sous GNU LGPL ne respecterait pas les termes de la GPL (la GNU LGPL autorise des liaisons que ne permet pas la GNU GPL) – et qu'il n'y a pas non plus de permission expresse (comme celle que l'on retrouve de la GNU LGPL vers la GNU GPL).

Finalement les licences libres vont elles devenir les nouveaux standards et supplanter les licences propriétaires ?
Je n'ai sur ce point aucune certitude, ayant tendance à penser qu'un modèle mixte/hybride caractérisera l'industrie du logiciel de demain : la plus grande majorité des logiciels utiliseront certainement des briques open source – ces derniers étant ensuite distribués sous licence libre, licence propriétaire, ou encore de façon hybride (avec des modules, fonctionnalités ou services – pensons au Cloud – propriétaires).

En revanche, il me semble intéressant de constater l'impacte des licences libres/open source sur les utilisateurs : ces derniers ne sont plus seulement « consommateurs passifs », mais, bénéficiant de prérogatives plus étendues, auront des responsabilités nouvelles. Ainsi, à mes yeux, on assiste là à un usage équilibré, compris et respecté des droits de propriété intellectuelle (quelque chose de plus citoyen en quelque sorte) – dans une logique bien éloignée de celle que l'on entend actuellement...

Personnellement, faites-vous partie d'une autre communauté open source? Avez-vous des exemples de participation (Animation, articles, forums...) ?
J'ai en effet différentes casquettes : historique (Framasoft, Dogmazic, Copyleft Attitude, April, Aful, FFII, etc.) et plus liées à mes compétences juridiques (Veni, Vidi, Libri, la FniLL, EOLE, etc.).

De mon point de vue, le plus important dans ces implications communautaires (et souvent associatives) reste le plaisir de partager et de construire en commun. De ce fait, on est rapidement amené à se spécialiser sur certaines tâches, une bonne répartition de celle-ci assurant un fonctionnement optimum de la structure.

Pour finir sur une note annexe, quels sont vos blogs et liens préférés sur l'informatique et le juridique dans l'informatique en général ?
La liste est longue et je préfère ne pas donner de liste qui serait forcément partiale.

Ainsi, pour commencer, je vous conseillerai bien entendu le site de Veni, Vidi, Libri (http://venividilibri.org) et son blog (http://blog.venividilibri.org), très spécialisés « Licences Libres/open source ». Ensuite, le site de l'OSI référence dorénavant les blogs très pointus de ses membres ; FOSSBazaar (https://fossbazaar.org/) mutualise les expériences de nombreuses sociétés du secteur ; et, enfin, je peux aussi vous inviter à suivre les actualités sur le site du cycle de conférences EOLE (European OpenSource & Free Software Law Event) (http://eolevent.eu/), vous y trouverez de très bonnes informations.

Un dernier mot avant de se quitter ?

Enfin, pour ceux qui s'intéressent à ses sujets, je ne peux que les conseiller la prochaine conférence EOLE, qui se tiendra le 13 octobre prochain au Parlement Européen : un programme et des intervenants de grande qualité, un lieu de prestige et des partenaires de qualité, j'en attends le plus grand bien !

Merci pour l'interview ! C'est un plaisir d'échanger autour de ces problématiques, qui deviendront de plus en plus comprises et maitrisées par tout un chacun.

Merci encore pour cette interview et bonne continuation sur la route d'un monde Open Source !

Vous pouvez retrouver toutes les informations sur la société Linagora à l'adresse suivante : http://www.linagora.com

Et vous pouvez retrouver Benjamin Jean à travers ces nombreuses contribution sur http://www.venividilibri.org


Vous pouvez télécharger l'interview à cette addresse : http://www.scribd.com/doc/16951653/Open-Source-ECM-Interview-FR-Benjamin-Jean-Linagora

Lire la suite...