Phil Windley rapporte sur son carnet Web que l’Etat de l’Utah a adopté un logiciel de gestion de projet qui s’appelle dotproject. Un logiciel open source pour environnement LAMP qui a l’air pas mal du tout pour gérer un portefeuille de projets.
Archives de l’auteur : Jean Millerat
PHP pour des sites Web de grande échelle
Phil Windley a provoqué une discussion au sujet de la capacité de montée en charge de PHP. Une discussion intéressante car elle réunit en peu de messages l’essentiel des arguments en jeu.
Qu’est-ce qu’un weblog et à quoi ça sert pour une association
Cet article en anglais présente ce qu’est un carnet Web et, surtout, ce à quoi cela peut servir pour une association sans but lucratif.
WordPress is going semantic (a little bit)…
WordPress, the famous weblog engine (powering this site), is getting equipped (in its CVS HEAD version) with a new feature allowing webloggers to post small pieces of metadata (pairs of key + value) with each one of their blog entries. WordPress is going the same way Charles Nepote went with his semantic wiki prototype. We won’t wait a long time before someone comes with a real semantic bloki. It must be a matter of months.
By the way, Archetypes is a new masterpiece of Plone and its references management engine allows the weaving of semantic relationships inbetween Content objects. It just lacks the ability to publish its schema and data as RDF files through Plone URLs… Anyway, Archetypes should soon provide the ability to extend objects schemas at runtime through the web. It means users will be able to add metadata to objects. These features can already be tested with PloneCollectorNG in its latest version (test the CVS version if you can).
« God writes straight with crooked lines »
God is a pattern of a fractal reality. This is the reason why« God writes straight with crooked lines » Forget the « God » part of this proverb if you’re not comfortable with it. The idea I want to present here is that we poor human beings struggle a lot with our brain in order to make sense out of reality. As an example, we are facing a phenomenon (the NASDAQ is up x points) and trying to identify a trend in this phenomenon (will it last long ?). Day one, reality goes this direction. The day after, the trend seems to be opposite. The reality lines are much crooked.
You can sometimes modelize reality in order to identify some underlying more global trends. Long-term trends mix with shorter-term trends. Long-term economic cycles mix with shorter-term cycles. And the result is rather chaotic series of economic indicators. The mix of scales makes such a mess.
Is this mess chaotic ? Or is there a more complex order behind it ? Unfortunately, science does not always give definite answers to this question. And it is most often a question of faith ! What makes me comfortable with the idea that there must be an hidden order behind the chaos of reality is when I see some sort of fractal patterns in reality. And these patterns are quite common when dealing with complex systems (living systems, social networks, …). If these patterns are really fractal, it provides some interesting properties to reality. It first implies that just by looking at micro-patterns in reality, you will see the macro-patterns also : micro-patterns and macro-patterns are similar (this is the definition of fractality). Theologically, it is an attractive idea : one says that God does not sit on a cloud but resides everywhere in reality. If God is a pattern in a fractal reality, then it means that you are in relation with God in your everyday life (micro-level). You don’t need any spiritual elevator in order to reach a bigger scale God since He is the same (or at least similar enough to believe He is unique) at all scales.
Furthermore and somewhat paradoxically, if God is pattern in a fractal reality, it also means that you may never be able to predict the global long-term trend that He may have defined. Let’s admit the crooked lines above result from the mixing of several cosine curves applied one on top of the others in a fractal logic (see attached Excel file as an example : you can make the scale vary by modifying the yellow underlined numbers).
But let’s suppose also that you don’t have the mathematic formulae allowing the calculation of this curve. Then the question is : what is the long-term trend that can be predicted ? If I identify a global trend (« Eureka ! We are sitting on a global nearly cosine curve ! » i.e. the dark purple curve on the above diagram), isn’t there a more global trend that will, on a longer-term predict future results opposite to the results predicted by the more local trend (« Maybe the global cosine curve I identifed is just a minor variation of a longer-term larger cosine curve… ») ? Most often, I think there must such more global trends that escape our ability to modelize reality. Therefore, it reminds me that we should always be humble in our struggle with reality trying to make sense out of it. « God’s Ways Are Higher Than Our Way » It has something to do with modelling epistemology too : a given model or theory should never claim to be an absolute truth. A model is just a way to rationally handle a given set of problems. But may your set of problems be extended, then you may have to deeply and humbly revise your model.
Tolérance et prétention
Le bon sens, présenté par Philippe Lestang, montre qu’il vaut mieux ne pas avoir la prétention de juger la moralité des actions d’autrui. Inspirant…
Enterprise architects are too much object-oriented
My employer is considering a global model of an « enterprise architecture » consisting of layers building from legacy applications (at bottom of the model) upper to channel management (portals on top of other layers) with an enterprise-wide « business services integration layer » in the midlle (meaning some kind of E.A.I. solution or Enterprise Service Bus as the current buzzword says). This is a model typically invented by object-oriented architects. The kind of J2EE guys you know. It is said to be an « industry best practice » (ranting : which means we paid a consulting firm a lot of money and you can not criticize it since its credibility is proportional to the price we paid our consultants). What to think of such a model ?
I feel like such a model is nice but rather useless. What does it mean for the enteprise ? It may mean that you wish portals to be the unique location of user interfaces which I don’t think is necessary a good idea. And it certainly means that you want to build an enterprise-wide layer of business services which looks as a not-bad idea. Well, this model is certainly a nice pseudo-justification for financing an E.A.I. project involving the consultancy we hired for drawing this « best practice model ».
But my main point is that this model does not address the real issues of enterprise technical architecture. I think that these issues reside more in both information architecture (agreeing on common vocabularies, taxonomies, ontologies, …) and the technical design of web services (REST vs. RPC) and other issues raised by the W3C Technical Architecture Group. I think that addressing these issues is something that provides a lot more sustainability to the information system than wanting to considering the whole information system as a big object model.
This model tries to group set of IT software components according to their role : presentation, composition, aggregation, integration, etc. And it says that each role should not be tightly coupled with others (which is right). But this model is also not practical : the legacy information system is so far from this model and our organization is so much decentralized than this global model that I feel like mapping reality to this ideal model is impossible. It would cost so much (both in investment and in recurring costs) that I don’t see the relevancy of such a model. It seems to me that the enteprise architects should rather work on interoperability between IT components with general design rules focusing on sustainability rather than trying to plan and build a cathedral on top of a bazaar.
I really feel like object-oriented architects typically live in cathedrals. Object-oriented designers rather live inside chapels which fit better in a bazaar context. The problem is that today, most corporations believe that « enterprise architects » means « cathedral-oriented designers ». Do you know any Fortune corp. that asks technical architects to address the sustainability of their internal bazaar ? Do you know any CIO who publicly admits that his job is to manage a bazaar and asks architects to help him in his job without pretending changing it into a cathedral planning job ?
Items for a wishlist
What would be the programs I wish would be developped for me if ever I had a magic wand ?
- A semantic cache-based aggregator (see that) which would act as a sort of P2P metadata sharing system based on REST-like web services (instead of an ad hoc P2P protocol)
- A semantic Bloki
- A contact management product for Zope
- A e-machine that would allow users to quote priorities so that it sorts them democratically, the votes would be published on the weblogs of each user as a semantic feed (some specific RDF file), and the semantic cache-based aggregator would retrieve them, merge them and publish the sorted list of priorities for a given community or group ; more than priorities, this would ease the building of distributed reputation management systems
- A full web rewriting of my concept visualization hack
Fermier plutôt que métayer
Si le code est une terre, alors je préfère être fermier et cultive ma propre terre plutôt que métayer et cultiver la terre d’un éditeur. Je l’avais déjà dit ici.
Proprietary vs. Open Source, what’s the main difference ?
Is open source software more secure ? Maybe not. Is it less expensive ? Maybe not. Is it more robust ? Maybe not. Is it less industrial-grade ? Certainly not. So what must be the main difference between open source software opposed proprietary software ? Maybe it is just that open source software is more resilient.
When proprietary, a product that is known to be superior to its competitors in terms of features both for the end-user and the IT people may eventually fail to get into mainstream. Such products as MacOS, BeOS, NeXTstep, Smalltalk are said to fall into this category (these examples must not be that relevent, please correct me). They eventually failed to get into mainstream because they are deeply dependent on the success of their author or vendor. It seems to me that open source software, on the contrary, is somewhat independent from its author success. The open source organizational model guarantees such as independence and provides OSS with high resilience.
What do you think ?
Les portails d’entreprise (EIP) : pourquoi, comment…
Dans le fichier Zip ci-joint, voici un jeu de slides pour tenter d’exprimer ma vision sur les portails.
En résumé, quelques idées clefs :
- les bénéfices indirects (faciliter l’appropriation de l’informatique par les utilisateurs, rendre visibles les dysfonctionnements ou le manque d’harmonisation des process ou des organisations grâce à la juxtaposition de « vues » provenant de différents businesses) sont supérieurs aux bénéfices directs,
- un bénéfice direct important du portail est un gain en « usability » et notamment en « accessibility » ; mais on peut obtenir les mêmes gains sans portail à condition de les identifier comme objectifs réels (chantier « charte d’ergonomie », etc.) et cette dernière approche est préférable,
- je ne suis pas convaincu de l’utilité de portails pour tous les utilisateurs, pour y mettre les interfaces utilisateurs de toutes les applications informatiques de toutes les business units,
- nous ne devrions pas chercher à faire du portail le lieu UNIQUE d’interface entre l’utilisateur et l’informatique métier car cela serait trop peu rentable voire simplement infaisable ; par conséquent, il est plus prioritaire d’étendre horizontalement la couverture des portails (y brancher davantage de sources d’information, d’un plus grand nombre d’entités de l’entreprise, de manière légère, superficielle, limitée) que de l’étendre en profondeur (y intégrer des écrans d’application plus complets et plus interactifs)
- le portail ne devrait pas être notre principal levier pour simplifier et sécuriser l’authentification des utilisateurs : les solutions de 3SO (Simple but Secure Sign On) habitent dans le back-end du système d’information et non dans l’interface utilisateur.
Pour les débats plus techniques :
- nous devrions privilégier les « remote portlets » aux « local portlets » (couplage faible) mais nous méfier des standards manquant d’ouverture (WSRP est défini par un consortium d’éditeurs et n’a pas fait les preuves de son ouverture pour le moment),
- nous devrions privilégier les technologies de portlets proches des services Web ayant fait leurs preuves depuis de nombreuses années = les portlets fidèles au style REST = RSS dès à présent, RDF pour le futur, voire simplement l’intégration de flux XML en style REST en attendant mieux
- pour découpler au maximum les composants du système d’information d’entreprise et augmenter ainsi sa durabilité et sa capacité de passage à l’échelle, nous devrions privilégier (dans le portail comme ailleurs) l’intégration orientée message pour laquelle les messages sont davantage des documents (ensemble de données) que des appels à des procédures distantes (RPC)
2004, année des logiciels libres en entreprise ?
Lorsque l’on regarde la presse informatique française, on peut constater que, enfin, les produits issues du modèle open source (logiciels libres) sont entrés dans les moeurs. Le dossier qui leur a été consacré sur le Journal du Net en témoigne. Et celui de 01 Informatique également, avec des retours d’expérience satisfaisants.
Je ne peux que regretter que le secteur de l’industrie soit à la traine dans l’adoption des technologies open source et me féliciter que, pour une fois, c’est le secteur public qui est à la pointe ! Et dire que je m’épuise à essayer de faire comprendre à mon employeur (industriel) que le monde ne se réduit pas à un choix entre Microsoft .Net, J2EE de chez BEA et J2EE de chez IBM… Quelle désagréable sensation que celui d’être l’objet de ricanements lorsque je prononce des mots comme Zope et Plone auprès de certains de mes supérieurs ou collègues qui ont parfois du mal à différencier Linux et Open Source, PHP et je-suis-un-script-kiddie…
Les grandes entreprises, ces dernières années, y vont toutes de leurs démarches de standardisation des architectures applicatives. Ces démarches d’architecture du S.I. ne reposent-elles pas sur une conviction forcenée que l’on peut maîtriser l’architecture du S.I. dès lors que l’on parviendrait à appliquer sur le S.I. un modèle objet global, comme si le S.I. n’était rien d’autre qu’une grosse application… Une sorte de « cathédrale », « urbanisée », « architecturée » dans un bureau d’études. Quel dommage que l’on ne cherche pas plutôt à comprendre ce qui fait la durabilité et la scalabilité de systèmes d’informations planétaires aussi éprouvés que l’Internet ou le Web. La presse reconnaît maintenant que les produits issus du modèle open source ne sont pas pires que ceux vendus sous licence par des éditeurs. Comment aller plus loin et expliquer pourquoi le modèle open source offre aux entreprises utilisatrices un modèle de développement plus durable du S.I. que le modèle classique éditeur / intégrateur-distributeur… Comment expliquer aux entreprises utilisatrices que le droit de la propriété intellectuelle peut devenir un levier au service de leurs besoins métiers (répondre moins cher et plus durablement à davantage de besoins métier en adoptant des licences libres) plutôt qu’un système de défense des seuls intérêts des éditeurs logiciels ? Si une telle idée devenait monnaie courante, ce serait sans doute moins vendeur pour les consultants et éditeurs d’aujourd’hui. Les D.S.I. ne devraient-ils pas renoncer au rêve d’une architecture centralisatrice pour adopter des modèles plus pragmatiques ? Peut-être que l’Etat français a déjà atteint une maturité suffisante pour admettre les limites d’une administration centrale du S.I. ? pour décider de se fier à des modèles organisationnels plus sains et plus durables, à une approche plus « écologique » du développement informatique ? Comme expliquer que le débat sous-jacent relève davantage du bon sens que de l’idéalisme ou de l’utopie ?
Mon papa découvre RSSBandit
Mon papa aime bien découper des articles dans la presse. Je suppose qu’il sera intéressé par l’utilisation d’un agrégateur d’actualités. Le meilleur agrégateur open source pour Windows, à ce jour, me semble être RSSBandit. Inconvénients principaux de RSSBandit : il contient encore au moins quelques bugs énervants ; et il nécessite l’installation du framework .Net sur le poste de travail ! Mais bon, ceci accepté, voici donc les infos que je donne à mon papa pour qu’il apprenne à utiliser RSSBandit.
Tu peux faire plusieurs choses avec le pirate :
1/ LIRE les actualités : il suffit de cliquer sur le titre des sources d’actualité (newsfeed) exemple : « Liberation, politique internationale » puis de cliquer sur chaque actualité ; lorsqu’une actualité est lue, elle change de couleur (passage de gras à non-gras) ; ainsi tu sais ce que tu as déjà lu et ce que tu n’as pas encore lu.
2/ ORGANISER les actualités : tu peux ranger les sources d’actualité en rubriques et sous-rubriques (dossiers et sous-dossier). Pour cela, il faut cliquer bouton droit sur le dossier parent et lui dire de créer un sous-dossier. Ensuite tu fais glisser ta source d’actu vers ce nouveau sous-dossier.
Tu peux ainsi créer une arborescence thématique (le dossier « politique » contiendrait le sous-dossier « politique internationale » qui contiendrait par exemple la source d’actu « Libe, politique internationale »).
Tu peux préférer organiser d’abord tes rubriques par langue : un dossier pour toutes les sources en français et un autre pour tout ce qui est en anglais. Mais cela est déconseillé car peu pratique.
Mais le nec plus ultra, c’est de commencer simplement par un créer une liste de dossiers vides numéroté de 095 (avec un zero devant, c’est mieux) à 105. Ensuite tu mets toutes tes sources d’actualité dans le dossier 100. Et, chaque jour, tu viens parcourir les nouvelles actualités. Les sources qui te semblent peu intéressantes, tu les mets dans un dossier inférieur (tu fais passer « Libe, politique internationale » de 100 vers 099 par exemple). Et, inversement, les sources qui te semblent mériter plus d’attention de ta part, tu les mets vers 101. Les jours suivants, tu gardes la même règle à l’esprit : lorsqu’une source est intéressante, je la monte d’un dossier ; lorsqu’elle ne donne rien d’intéressant ce jour-là, je la fais descendre d’un cran. Ainsi, au bout de quelques jours, tu auras classé tes sources par ordre croissant d’attention qu’elles méritent. Ainsi, tu pourras à l’avenir ne lire souvent que les sources dans les dossiers méritant beaucoup d’attention (104, 105, …) et ne vérifier les actus des sources moins intéressantes (dossiers 097, 098, …) que moins souvent.
Tu peux décider de supprimer des sources en cliquant bouton droit dessus puis Delete news feed.
3/ AJOUTER de nouvelles sources
Chaque sources d’actualité est identifiée par une adresse Web. Exemple : la source « AkaSig » a pour adresse Web http://sig.levillage.org/wp-rdf.php En effet, c’est une source qui est publiée à cette adresse sur mon site Web perso.
Ajouter une nouvelle source implique donc que tu trouves des adresses Web de sources d’actualité puis que tu demandes à RSSBandit d’ajouter cette source dans sa liste (puis tu la mets dans le dossier/rubrique que tu veux). Demander à RSSBandit d’ajouter une source, c’est facile : il faut cliquer sur le bouton « New Feed » de sa barre de bouton puis saisir (copier-coller) l’adresse Web de la source que tu veux ajouter. Et RSSBandit fait le reste (y compris, généralement, trouver automatiquement le titre de la source).
La partie « difficile » consiste à trouver des sources d’actualité qui t’intéressent. Pour cela, le mieux est de faire une recherche classique dans Google sur un thème qui t’intéresse, en ajoutant « filetype:rdf » ou « inurl:rdf » ou encore « filetype:rss » comme mot-clef de ta recherche (sans les guillemets). En retour, Google te propose des adresses Web qui contiennent des sources d’actualité que tu peux ensuite ajouter dans RSSBandit. Exemple : chercher « inurl:rdf politique » te donne comme sources possibles l’adresse de plusieurs carnets Web célèbres qui commentent l’actualité politique et constituent donc eux-même des sources.
4/ METTRE des mots-clefs sous surveillance
Tu peux demander à RSSBandit de créer un genre de source virtuelle dans laquelle il va recenser toutes les actualités de tes sources dans lesquelles il aura repéré un mot-clef donné. C’est comme si tu demandait à RSSBandit de lancer automatiquement une recherche, parmi les actus dont il dispose, sur un mot-clef donné à chaque fois que tu l’utilises. Pour ce faire, il faut ajouter un nouveau mot-clef dans la partie en bas à gauche de l’écran. Je ne me souviens plus comment ça s’appelle à l’écran car je viens d’être obligé de désinstaller RSSBandit sur mon poste. Donc je t’en dirai plus plus tard à ce sujet.
5/ METTRE des sources sous surveillance
Tu peux demander à RSSBandit de t’afficher un genre de popup dès qu’une certaine source contient de nouvelles actualités. Pour ce faire, tu cliques bouton droit sur la source que tu veux mettre sous surveillance, tu vas dans propriétés de la source puis tu coches une case qui te dit « afficher une popup window lors de l’arrivée de nouveaux items » (ou alert window je ne sais plus).
Voila, voila… Bonne agrégation.
Nommage des individus dans le monde
Apparemment, le Vietnam est le pays dans lequel les noms de famille sont les moins uniques. Voici quelques liens pour comprendre les usages internationaux en matière de nommage des individus :
- Une bonne introduction : la wikipedia
- un retour d’expérience pour la construction d’une base de données sur le Vietnam
- les recommandations de la Dublin Core Metadata initiative… même si il ne s’agit pas vraiment d’une recommandation… et même si ce document est officiellement déclaré obsolète… (mais quel document le remplace ? aucun ? dommage…)
- le retour d’expérience d’une base de données médicale en Australie
- http://www.aussi.org/anl/2002/01janfeb/articles.htm
- Pour le Vietnam spécifiquement : http://www.saigon.com/~nguyent/hoa_03.html http://www.adoptvietnam.org/vietnamese/names-family.htm http://www.van-online.org/resources/name.html http://www.thingsasian.com/goto_article/article.630.html
- Ce document donne un bon aperçu de la diversité des conventions de nommage des individus à travers les différents pays de la planète.
- Enfin, une présentation complète et assez détaillée de la situation à travers le monde
54% des vietnamiens s’appellent Nguyen
54% des vietnamiens ont Nguyen comme nom de famille. N’allez pas choisir le nom de famille comme discriminant principal lors de la construction d’un nom d’utilisateur ou d’un identifiant unique pour annuaire… vous seriez bien embêté lorsqu’il s’agira d’en garantir l’unicité au Vietnam !
Let me introduce the Semantic Web
Why are there three versions of the Web Ontology Language (OWL) ?
The Web Ontology Language (OWL maybe because some non English speaker must have mixed the letters…) exists in three different versions :
- OWL Lite expresses constraints on and properties of an RDF schema, such as transitivity (if R1 > P1 > R2 and R2 > P2 > R3 then R1 > P3 > R3), and simple min and max cardinality properties of an RDF property (the values of theses cardinality properties can be 0, 1 or illimited).
- OWL DL expresses « first order descriptive logic » constraints on medata (such as if R1 > P1 > R2 then R1 > P2 > R3), this is much broader as OWL Lite
- OWL Full enables the specification of generic inference engines but it is still seen by some as a curiosity artefact for researchers
This is my very limited understand of the OWL topic. Please someone correct me if I am wrong (you can do it in French if you want !) !
Une petite fille de 6 ans avocate de l’open source
La fille d’Howard Greenstein, âgée de 6 ans, lui a donné une leçon de morale qui promeut le modèle open source plutôt que celui de l’exploitation plus classique de la propriété intellectuelle. Et dire que je vais bientôt être papa… Dans leur lit, le soir, mes enfants me demanderont-ils que je leur raconte des histoires sous licence GPL ?
Microsoft : « Je veux bien arrêter d’abuser, mais seulement pendant une heure. »
Dans l’amphi à Gouri (doit-on plutôt dire l’amphi de Gouri ? ou l’amphigouri ?), on peut lire ce bon résumé de la position actuelle de Microsoft au sujet des poursuites judiciaires dont il (elle ?!) est l’objet : « Je veux bien arrêter d’abuser, mais seulement pendant une heure. ». Plus loin, il est dit :
l’essence ne se duplique pas et se consomme, pas le logiciel, quoique Microsoft serait très content si on devait payer régulièrement pour quelque chose qui se duplique à coût nul et ne se consomme pas
Imaginons l’informatique du futur : « je voudrais trois litres de traitement de texte monsieur le pompiste » ou bien encore « faites-moi le plein de pauvre-point SVP » (aka point-puissant aka point-du-pouvoir)…
Le tout dans une salle de bain… Terrible, non ?
XML.com: The Beauty of REST [Mar. 17, 2004]
Jon Udell nous raconte par l’exemple comment le style architectural REST permet d’intégrer des catalogues de bibliothèques de manière fluide et peu coûteuse (à l’aide de services Web qui n’impose pas nécessairement l’utilisation de briques logicielles supplémentaires pour gérer les protocoles SOAP, WSDL et UDDI). S’il est encore nécessaire de vous apprendre ce qu’est le style architectural REST, ne retenez qu’une seule adresse, celle du site du très RESTafarian Roger Costello.