22/12/2004

Plus souvent et plus stable ...mieux !

Faire des "releases" (des libérations de versions, en bon français), plus régulièrement, plus souvent et en améliorant leur état de "stabilité" (c'est à dire l'absence de bug) est une nouvelle donnée de l'industrie du Logiciel. On peut s'interroger sur cette évolution des mentalités des sociétés éditrices et des communautés OpenSource, tant elle tranche avec l'ancienne "politique" " 1 version par an".

Tout d'abord, la pression vient de leur "clients" :

- Les sociétés et constructeurs, subissent une pression constante pour modifier leur produit afin de l'adapter aux différents clients. Aujourd'hui, il n'est plus possible de vendre, le même produit à l'ensemble de ces clients. C'est même souvent un "must" pour remporter une affaire que de savoir personaliser, adapter son produit aux souhaits et aux spécificités de ses clients. Cette tendance étant d'autant plus lourde, si le client est un "grand compte". Ainsi, même des industriels des technologies de masse, comme la téléphonie mobile, doivent personaliser, internationaliser, traduire, bref, adapter leur produit.

- Les communautés OpenSource, subissent aussi des demandes répétées de la part de leur utilisateur. Ainsi, Linux Torvals, a déclaré vouloir donner aux utilisateurs du noyau Linux, de nouvelles fonctionnalités sur un rythme plus élevé. Il fallait auparavent attendre 2 ans pour que la communauté "Noyau Linux" fige ses développements et "libère" une nouvelle version... Désormais, les utilisateurs des distributions stables devraient pouvoir profiter plus rapidement de nouveautés au sein du noyau Linux.
Je pourrais aussi vous parler du projet Gnome, qui est passé dans un mode "Time based releases" où le projet s'oblige à sortir une nouvelle version tous les 6 mois. Cela permet d'assurer une animation continue et un cycle de vie dynamique. Cela le prémunie aussi contre des echecs lors de l'intégration d'une version, où un sous projet, une fonctionnalité va retarder la sortie de nombreuses autres.

Finalement, on en revient aux concepts sous jacents des méthodes agiles et itératives, comme eXtreme Programming ou RUP par exemple. Il s'agit alors de de fournir une visibilité importante aux clients et aux utilisateurs des logiciels et de prendre en compte leurs souhaits et leurs demandes. Plus encore, étant donné que nous changeons tous d'avis et de priorités ("changement de plan !", voir les pubs IBM, celle-ci n'y figure pas), il faut prendre en compte le risque majeur de dérive : avoir de petites itérations, de petites releases permet d'ajuster sans cesse son produit et de fonctionner par essai / erreur.

Il est sûr qu'on ne peut pas batir un politique produit et d'innovation sur ce type de méthode, mais pour répondre aux exigences "clients", il faut parfois user sans abuser de petites releases, contentant les bonnes fonctionnalités !


Merci à "Un blog par Jour"

J'ai l'honneur d'être sélectionné aujourd'hui par le site "Un Blog par Jour".

Merci beaucoup pour ce coup de pouce ! Et longue vie à votre revue quotidienne de la "Blogosphère" !

Vive l'Europe à 25 !

J'ai déja abordé le sujet des brevets logiciels à plusieurs reprises, concernant l'interêt des grandes multinationales américaines ou exprimant ma modeste pensée sur l'absence d'argument "pragmatique" dans ce dossier.

Pourtant ce n'est pas mon sujet de prédilection, mais le sujet est _trop_ important pour le laisser de côté. Surtout qu'outre sur le fond dont on peut toujours débattre, on peut s'interroger aujourd'hui sur la tournure que prend cette affaire au sein du Conseil Européen. Je ne résiste pas de vous livrer un extrait des déclarationsde la FFI (via LinuxFR) :

"Les diplomates du Coreper décideront mardi et mercredi si l’accord sur les brevets logiciels en Europe sera adopté lors des prochaines réunions sur la pêche ou l’environnement, qui seront les derniers rendez-vous du Conseil cette année. Contrairement à l’information récente donnée par le gouvernement belge, la présidence néerlandaise semble toujours essayer de pousser le texte de mai dernier en tant que « point A », i.e. sans discussion et sans vote. Les justifications publiées pour rejeter tous les amendements subtantiels du Parlement européen oscillent entre ce qui a été depuis longtemps démystifié (les ADPIC exigent des brevets logiciels) et le comble de l’absurde (les politiciens ne devraient pas changer la pratique établie)."

"La réunion était présidée par le ministre néerlandais de l’agriculture, Cees Veerman. Veerman a accepté l’intervention polonaise et a rejeté une tentative du commissaire de résister à cette intervention. Voir la transcription.
Peu de gens s’attendaient à voir apparaître le sous-secrétaire d’état polonais à la science et aux technologies de l’information, Wlodzimierz Marcinski. Ce dernier est venu en personne à Bruxelles pour présenter le point de vue de la Pologne, car les diplomates polonais de l’UE avaient été soumis à de fortes pressions de la part de la présidence néerlandaise."


Bref, il est incroyable qu'une question aussi débattue par le parlement européen, autant décriée ou souhaitée par des citoyens européens, soit mise à l'ordre du jour d'un conseil européen totalement hors sujet. De plus, la présidence souhaitait faire passer ce texte "en force".

J'espère que l'arrivée des 10 nouveaux états membres, permettra d'ajouter un peu de démocratie et de transparence dans les circuits de décision européen et surtout renforcera le rôle du parlement. Il est crucial de pouvoir débattre publiquement de ce type de question, afin d'assurer en retour une compréhension et une adhésion des opinions publiques.... Esperons, que la Pologne, et tous les nouveaux entrants permettront cela...

Vive l'Europe ! Vive l'Europe à 25 !

Pour plus de détails, consultez l'article de ZDNET.

13/12/2004

LG s'implante en France !

La nouvelle vous a peut-être échappé la semaine passée, LG a décidé d'installer en France, un centre R&D de 200 ingénieurs afin de développer des services sur la troisième génération de téléphone portable, la fameuse technologie UMTS (pour les plus curieux, le communiqué de presse officiel est disponible).

Que faut-il penser de cette annonce ? L'article publié par Libération sur le sujet, donne plusieurs pistes : l'un des responsables de LG en France, y explique qu'il est difficile de tout faire en Corée pour des clients français. Ainsi, même pour un produit très standardisé comme le téléphone mobile, l'usage de l'interface et surtout les nouveaux services (dont la video) nécessitent d'être adaptés aux marchés américains et européens. Et surtout, LG a besoin d'une présence européenne, pour être proche de ces clients (les opérateurs) et leur offrir le support technique, et la personnalisation dont ils ont besoin.

Je crois que les produits technologiques, multimédia et de télecomunications, s'ils sont des produits de consomation de masse, entrainent ce besoin d'adaptation, de modification d'ergonomie et d'intégration à l'architecture existante. Ceux qui s'engageront dans ces voix, qui sauront concevoir des logiciels avec un maximum d'ergonomie, de souplesse et pouvant s'intégrer dans un environement tiers, n'auront pas à l'avenir de soucis à se faire sur une délocalisation possible en Roumanie, en Pologne ou à Bangalore (Inde) !

LG a certainement fait un bon choix !

PS : J'ai volontairement laissé de côté dans cette note, l'excellence technologique, géographique et de qualité de vie dont bénéficie mon cher pays, mais ces aspects ont du aussi peser dans la balance ...


09/12/2004

Estimation de coût / taille des logiciels libre

Via le blog de Miguel de Icaza, Mickael Meeks nous livre sur ce slide une comparaison interressante de la taille des différents logiciels open source.
Dans le même thème, pour ceux qu'il l'aurait loupé, je vous recommande l'excellent article "Counting Source Lines of Code (SLOC)" de David Wheeler sur la taille et le coût estimé avec la méthode COCOMO, des plusieurs logiciels open source majeurs. Cette étude datant déja de Juin 2001, estime le coût de développement de la distribution RedHat 7.1 à 1 Milliards de Dollars !

Par ailleurs, je repense à une méthode qui estimait le nombre de bugs par nombre de lignes de code développées, et le nombre d'itérations (développement - validation - développement - validation etc..) qu'il faut pour stabiliser un logiciel mais j'ai égaré ce papier... Si l'un d'entre vous à ce type d'information, laissez-moi un commentaire ou un mail !

J'ai hâte que ce type de métrique se standardise dans le monde du logiciel et que la communauté du Génie Logiciel partage ces métriques et offre une base de connaissance sur le sujet. Ces informations sont conservés en cercle privé à tors...Car il faut aujourd'hui enclencher une véritable "Culture de la Mesure" dans le monde du logiciel. Cela permettra de relativiser certains choses et de connaitre à l'avance le travail à accomplir lors de la libération d'une version (en tests, Q&A et correction de bugs).

Tous les sites que vous me recommanderez sur le sujet sont les bienvenus !

Entrez dans le PixVillage

Où s'arretera le peer to peer (P2P) ?

On croyait peut-être à tors que ce mouvement périrait avec la fin de Napster, mais d'autres ont pris la suite (Kazaa, EDonkey, EMule pour ne citer que les plus célèbres)... Le succès de ces logiciels mélangeait en réalité deux succès :
- Celui du téléchargment de films et de musique de façon gratuite et le plus souvent illégalle (je ne vais pas entrer dans ce débat...)
- Celui du mode de communication, où chacun partage ces informations et est à la fois "serveur" et "client". Les membres du réseau devenant tous égaux, ils peuvent partager ensemble, sans contrainte externe, sans le contrôle d'une société tierce, des informations et des contenus. Notez que ceux qui voudraient rester "in touch" avec le monde du P2P, doivent lire le Weblog P2P & NTIC qui regorgent d'informations sur le domaine.

Mais, je m'égare, je voulais surtout vous signaler l'extension du concept à un nouveau domaine, celui des Photographies. C'est le pari fait par le site PixVillage qui permet de partager les photos de ces amis et de sa famille, sans avoir besoin d'un blog dédié, d'un site internet, ou d'une connexion FTP (certains d'entre vous sourient ?).
Découvrez donc vite, la simplicité de mise en oeuvre de "PixVillage", qui m'a vraiment séduite dans sa simplicité et sa maturité.

Je suis curieux de voir l'usage que feront les internautes de ce logiciel... Peut-être certains de vous offriront les photos qu'ils auront prises lors d'évenements , de conférences, de manifestations ?

Dans tous les cas, il faut saluer l'initiative et la créativité, car finalement le P2P peut encore nous étonner !

Usage d'un brevet ou définition d'un standard ?

Je vous avais déja parlé des brevets logiciels (notez que certains professeurs des USA sont d'accord avec moi ;) ). Pour ceux désirant creuser le sujet, je tiens à vous recommander, un très bon article sur le sujet intitulé "Java, .NET et les logiciels libres" qui est paru dans le numéro de décembre de Linux Magazine.

L'auteur de cette synthèse nous rappelle combien les stratégies mise en oeuvre grace à des brevets logiciels, peuvent être pernicieuse. Car au delà, du brevet qui protège l'invention et l'innovation de son détenteur, qui permet d'attaquer en justice les copieurs et les fraudeurs, le brevet est désormais une arme pour imposer une technologie sur un marché.

Mais, cet article suggère que Sun ou Microsoft pourraient utiliser leurs brevets pour interdire l'usage d'implentation alternative (comme le projet ClassPath), ou GCJ pour Java, ou encore Mono ou DotGNU pour .NET), je ne crois pas que ca sera le cas.

D'abord parce que ces projets OpenSource ont pris en compte cette menace et font très attention à ne pas tomber dans les travers évidents. Ensuite parce que les grandes compagnies comme Microsoft et Sun ne chercheront pas à défendre corps et ames les technologies en question : ils cherchent à établir un standard, connu et reconnu de tous. Les langages Java et C# seraient alors les sésames obligatoires du monde logiciel de demain... Supportés par un grande communauté de développeurs et d'entreprises de services, le buisness de leurs concepteurs et de leurs créateurs serait assuré par un marché important dans les services, la formation et par le vente des produits "connexes" (Microsoft prépare déja la version .Net de SQL Server, nom de code Yukon, croyez-vous qu'ils vont la donner ;) ?). C'est pourquoi, je suis persuadé qu'ils ont interêt à "lacher" un peu de leste, à la communauté Open Source et au "public", via différents processus (comme les JSR, très bien décrits dans l'article de Linux Mag :), pour ne pas apparaitre comme le Big Brother. Un bon exemple était de voir comment Microsoft cherchait à créer une "communauté" (terme employé) lors des derniers Devs Days en France.

Pour conclure, la disponibilité libre de ces technologies cherchent à permettre l'établissement d'un standard. Cette stratégie est comparable à celle d'un MySQL AB qui propose sa base de donnée en Open Source, ou celle d'un IBM qui offrent de nombreuse technologies dans l'espoir de se trouver au centre, d'un vaste marché, standardisé par ses soins...

Suis-je trop machiavélique ?

Toutes les notes