Archives de juin 2009

La culture Apple

26 juin 2009

La culture d’une entreprise est grandement influencée par deux facteurs. Tout d’abord la personnalité de son fondateur. Ensuite, les challenges qu’une entreprise doit faire face à ses débuts – et la manière dont elle les surmonte. Ces deux facteurs vont façonner la culture de la compagnie, créer ses forces ainsi que ses faiblesses.

Cette semaine je me penche sur le cas d’Apple (voir également la Culture Microsoft et la Culture Google).

Même si la firme a la pomme a été co-fondée par Steve Jobs et Steve Wozniak, c’est Jobs qui l’a le plus influencée. Steve Wozniak a été le génie de l’électronique qui a conçu l’Apple I et II, mais son rôle s’est arrêté ici. Jobs par contre a façonné la culture Apple tout au long des années.

C’est pour cette raison que je vais me focaliser sur Apple lorsqu’il était dirigé par Steve Jobs plutôt que lorsqu’il était dirigé par des PDG professionnels (Sculley, Spindler, Amelio).

Dans la suite de cet article, les phrases en anglais en italiques sont des citations réelles employées par Jobs.

Steve Jobs, ni geek, ni businessman mais idéaliste

L’itinéraire de Steve est très particulier. Ce n’est pas un techie comme le sont les fondateurs de Google. Ce n’est pas non plus un businessman de formation comme peuvent l’être Jeff Bezos (le fondateur d’Amazon.com) ou Steve Balmer (PDG actuel de Microsoft). Ni même le type d’homme d’affaire que des entrepreneurs amateurs deviennent, comme Bill Gates.

Si Steve Jobs est devenu un excellent businessman, sa motivation est très différente de celle du monde des affaires traditionnel. Alors que Bill Gates est intéressé par être le numéro un, Steve Jobs cherche à être le meilleur – nuance subtile (« And our primary goal here is to make the world’s best PCs — not to be the biggest or the richest » a-t-il dit dans une interview à Business Week)

Steve est en effet un idéaliste. Il ne travaille pas pour l’argent, il ne veut pas forcément conquérir tout un marché, mais cherche à « faire une brèche dans l’univers » (« make a dent in the universe« ). Ce n’est sans doute pas pour rien que deux des marques que Steve adore sont Porsche (les voitures de sport) et Miele (les laves-vaisselle). Deux compagnies connues pour vendre des produits de haute qualité – et avec de confortables marges.

Alors qu’un homme d’affaire essaiera d’être le plus rationnel et objectif possible, la manière de travailler de Steve est extrêmement émotionnelle et subjective. A commencer par son obsession du design – pas seulement extérieur mais plus généralement la conception – par définition subjectif. C’est par exemple parce que Steve a suivi un cours de calligraphie à l’université que le Macintosh a eu dés le début des fontes proportionnelles.

Pour Jobs,  soit un produit est « génial » (« insanely great » est son adjectif favori), soit c’est une « daube » (« crap« ). Soit une personne est géniale, soit c’est un rigolo (« bozo« ). Bien évidemment, Steve ne veut avoir affaire qu’à des produits et personnes du premier type. C’est un perfectionniste qui n’attend que le meilleur de ses troupes.

Microsoft est prêt à vendre n’importe quel type de logiciel du moment que cela rapporte. Apple au contraire ne s’aventure sur un marché que s’il peut créer un produit « génial » qui dépasse ce qui existe.

Pour Bill Gates le businessman, faire affaire avec IBM lorsque ce dernier cherchait des partenaires pour son futur PC en 1980 était du pain béni: il était évident que travailler avec Big Blue ouvrait la porte à un marché colossal. Mais pour l’idéaliste Steve Jobs cela aurait été impensable – si tant est que Big Blue ait été intéressé de faire affaire avec Apple. Tout d’abord Steve a toujours considéré IBM comme l’ennemi à abattre. Ensuite il n’aurait jamais accepté de se plier aux exigences d’Armonk et de leur laisser le contrôle sur quoi que ce soit. Il aurait enfin refusé de travailler sur une « daube » comme l’IBM PC.

La plupart des particularités de la culture Apple dérivent de ce désir de Steve de « faire une brèche dans l’univers ».

« Les bons artistes copies. Les grands artistes volent »

Créer des produits qui dépassent ce qui existe demande une grande créativité et beaucoup d’idées. A ce sujet, Steve se plait à citer Picasso: « Les bons artistes copient. Les grands artistes volent. » Et sur ce point, Jobs plaide coupable (« We have always been shameless about stealing great ideas« ). Le génie de Jobs ne consiste pas à inventer des idées révolutionnaires, mais à les repérer avant tout le monde. Les repérer lorsqu’elles ne sont qu’à l’état embryonnaire et les transformer en un produit destiné à la grande consommation. C’est de ce qui fait Steve Jobs un visionnaire.

Apple n’a pas inventé l’ordinateur personnel (également appelé micro-ordinateur). Mais l’Apple II a été le premier ordinateur à être prêt à l’emploi pour un prix accessible aux particuliers.  A cette époque, tous les autres micro-ordinateurs étaient livrés en kit, souvent sans clavier, et demandaient un montage assez complexe. Ce sont les compétences en électronique de Steve Wozniak qui ont permit à l’Apple II d’exister – il fallait réduire au maximum le nombre de processeurs. Mais c’est Steve Jobs qui a eu la vision d’un ordinateur en tant que produit fini, livré dans un boîtier plastique de qualité.

L’interface graphique a été inventée par Xerox. Mais c’est Apple qui l’a commercialisé le premier avec le Lisa puis avec le Macintosh. Si cette idée était restée au sein de Xerox elle aurait dépérie, son état-major n’ayant pas vu l’intérêt d’une interface graphique pour ordinateur. Steve a par contre tout de suite vue l’intérêt, a copié l’idée et l’a transformée en un produit.

C’est Tony Fadell, alors un contractant indépendant, qui a eu en 2001 la vision d’un baladeur MP3 lié avec une plate-forme de vente de musique. Lui et son partenaire ont frappé à de nombreuses portes pour vendre leur idée. Mais seul Apple a été intéressé, et a rapidement embauché Fadell. Et c’est Steve Jobs qui, en étant fortement impliqué dans le développement de l’iPod à quasiment tous les niveaux, a transformé le business model de Fadell en un produit culte.

Finalement, le marché du smartphone était bel et bien existant avant l’arrivée d’Apple. Mais ce dernier à réussi à créer la sensation avec son iPhone.

Se différentier sur son produit

La culture d’Apple est commune aux constructeurs de micro-ordinateurs des années 70: on conçoit le meilleur produit que l’on peut, et on se distingue principalement par la qualité du produit et/ou le prix – uniquement le produit dans le cas d’Apple.

L’un des challenges d’Apple a donc été de créer ces produits. Steve a beau avoir la vision, il faut des gens pour transformer cette vision en réalité. Jobs a tout d’abord été très bon pour attirer les talents pour développer ses produits: Steve Wozniak, Tony Fadell et bien d’autres. Apple a dû également créer une culture centrée autour du produit. Mais pas une culture d’engineering typique où plus on ajoute de fonnctionalités mieux c’est. Une culture qui prend en compte l’aspect design et qui partage l’obsession de Steve pour les détails et le goût de l’excellence.

Pour Microsoft, développer un produit est un moyen, le vendre est une fin. Pour Apple, créer le produit est une fin en soi et la vente est un processus naturel – dans l’esprit de Steve il est évident que le public va acheter ses produits car ils sont les meilleurs.

Apple a parfois fait appel à des compagnies externes pour développer ses produits. Un exemple célèbre est pour la souris de son premier Macintosh, où la firme à la pomme a fait appel à la célèbre société de design IDEO. Pour ses premiers iPods, pressé par le temps, Apple s’est basé sur le système d’exploitation de PortalPlayer – ce dernier a cependant dû travailler quasiment exclusivement pour Cupertino et signer un accord de confidentialité draconien.

Mais dans beaucoup de cas, si Apple peut réinventer la roue (en mieux évidemment), Apple le fera.

Pour l’interface graphique du Lisa et du Macintosh, Steve Jobs a réussi à obtenir de Xerox que leur équipe de Palo Alto lui montre leur travail sur l’interface graphique. Les développeurs d’Apple s’en sont inspirés pour concevoir leur propre interface graphique.

Si la firme à la pomme a tout naturellement démarché de nombreux talents pour développer ses produits, elle n’a que rarement racheté des compagnies pour leur technologie, pratique commune dans l’industrie – une exception notable est le rachat en 2008 de PA Semiconductor afin de gagner de l’expertise en microprocesseurs. Mais Apple n’a racheté aucune compagnie pendant 3 ans (de 2002 à 2005).

C’est ainsi que l’iPhone a ainsi été grandement conçu en interne. Pour le système d’exploitation de ce dernier, Apple a considéré utiliser Linux, mais Steve Jobs a refusé et Apple a fini par écrire une version portable de Mac OS X.

Autrement dit, si Apple n’hésite pas à prendre des idées de l’extérieur, il privilégie la mise en oeuvre de ces idées en interne.

Une offre produit limitée

Avant son éviction d’Apple, Steve avait lancé de nombreux projets au sein de sa compagnie. Mais son passage par NeXT l’a grandement changé, et à son retour à Cupertino il a adopté une position radicalement opposée.

L’une de ses premières actions à son retour à la tête d’Apple a été de faire des grandes coupes. La gamme produit a été limitée au strict minimum: ordinateurs portables et ordinateurs de bureau, tous deux avec une version standard et une version haut de gamme. De nombreux projets internes ont été éliminés.

Steve se plait à dire que des nombreux succès de sa compagnie sont les produits qu’ils n’ont pas lancés autant que les produits qu’ils ont lancés. D’ailleurs, les managers d’Apple sont plus souvent évalués sur l’argent qu’ils ne dépensent pas que l’argent qu’ils dépensent.

Apple n’a aucune dette, est très profitable et a 20 milliards de dollars en banque. La firme à la pomme n’ouvre pourtant que rarement les cordons de sa bourse. Alors que Google et Microsoft – deux autres compagnies avec des milliards en banque – n’hésitent pas à investir des centaines de millions dans des projets sans retour immédiat, Apple n’investit que dans des domaines directement liés à sa gamme de produit existante.

Intégration verticale et impact sur les partenaires

Etant donné qu’il veut se différentier principalement par son produit, Apple a naturellement préféré utiliser un modèle d’intégration verticale dés que possible. Steve est un maniaque du contrôle et veut tout régenter (« I’ve always wanted to own and control the primary technology in everything we do« ). Or la meilleure manière de tout contrôler est de tout concevoir. Si Apple ne peut bien évidemment pas tout faire (ils ne vont pas commencer à faire leur propre fonderie plastique), ils ont conçu leurs propres composants dés qu’ils peuvent (lire à ce sujet pourquoi le Mac résiste toujours).

Mais lorsqu’on est habitué à tout faire tout seul, on n’a qu’une patience limitée avec les partenaires. La firme à la pomme est en effet connue pour être extrêmement exigeante avec ses fournisseurs et partenaires.

Etant un négociateur hors pair, Steve Jobs arrive généralement à ce qu’il désire avec ses partenaires. Si Microsoft est la main de fer dans un gant de velours, Apple est la main de fer dans un gant de fer, mais un gant tellement séduisant qu’on veut quand même lui serrer la main – et même si on le regrette rapidement. Jobs s’est par exemple mis à dos plusieurs maisons de disques (Universal en particulier) lorsqu’il a refusé d’augmenter le prix de la musique qu’Apple vendait en ligne.

Pour les fournisseurs, travailler avec Apple n’est pas de tout repos. La firme à la pomme étant de notoriété publique extrêmement secrète sur ses futurs produits et peut être extrêmement exigeante. Par exemple, les fabricants d’accessoires pour iPod apprennent comme tout le monde la sortie de nouveaux iPods, et doivent se ruer pour adapter leurs produits aux nouvelles spécifications.

De même, les conditions pour développer des applications pour l’iPhone sont très contraignantes. Accord de confidentialité strict, obligation de passer par l’App Store d’Apple pour distribuer ses applications iPhone, applications qui peuvent être rejetée sans aucune explication, etc.

Apple reste un fabricant de matériel

Apple reste avant tout un fabricant de matériel. La firme à la pomme aime offrir une solution complète et aime vendre un produit fini, packagé. La compagnie se fait certes de l’argent en vendant de la musique en ligne ou des applications pour iPhone, mais les revenus restent sans commune mesure avec les revenus liés à la vente de matériel.

Il est intéressant de noter qu’Apple n’est pas très orienté Web, même s’il pourrait fournir du logiciel sans avoir à se soucier du matériel. Par exemple, iTunes est un logiciel traditionnel – s’il utilise Internet pour l’achat de musique, il demande d’être installé sur sa machine. Amazon.com utilise son site Web pour vendre sa musique en ligne – pas Apple.

Mais qui dit être vendeur de matériel dit avoir à gérer l’inventaire – le cauchemard de tout constructeur. Ne construisez pas assez et vous perdez des ventes. Construisez trop et vous vous retrouvez avec un stock invendu sur les bras. C’est pour cette raison que Steve a embauché Tim Cook, considéré comme un génie dans la matière. Et ce dernier a fait un excellent travail chez Apple – la compagnie est désormais extrêmement bien organisée opérationnellement parlant.

Le prix

Les produits Apple n’ont jamais été donnés. Cela est dû d’une part à l’intransigeance de Steve sur la qualité de ses produits et d’autre part à son goût prononcé pour les marges confortables – certains disent que Steve ne lance pas un produit s’il ne se fait pas au moins 20% de marge, ce qui est inédit dans le marché des fabricants de matériel. D’ailleurs, de nombreux produits que Steve a lancés ont été des échecs commerciaux en grande partie du fait de leur prix beaucoup trop élevé: l’Apple III, le Lisa, le NeXT, et même les premiers Macintoshs. Steve a toujours pensé que les gens seraient près à payer plus pour un produit de meilleure qualité (cela est vrai, mais uniquement dans une certaine mesure).

Il faut dire que les débuts d’Apple n’ont pas fait grand chose pour dissuader Jobs. Jusque dans les années 80 Apple a roulé sur l’or uniquement grâce à l’Apple II, une machine parfois surnommée à l’époque la Rolls Royce des micro-ordinateurs. L’Apple II était littéralement dix fois plus cher que d’autres ordinateurs: 10000 FF (1500 €) pour l’Apple II, contrairement à 1000 FF (150 €) pour le Sinclair ZX-81 (prix de l’époque). Les capacités de ces deux ordinateurs n’ont peut-être rien à voir, ils se trouvaient néanmoins côte à côte dans les mêmes bancs d’essai de l’époque.

Fort de ses leçons du NeXT, Steve a depuis essayé de limiter le prix tout en conservant des marges confortables. On trouve par exemple des modèles d’iPod d’entrée de gamme comme l’iPod Shuffle à 80 €. Et l’iPhone n’est pas plus cher que les autres smartphones. Il faut dire que pour ce dernier, Steve a trouvé la parade: se payer en touchant une partie de l’abonnement des iPhones.

La manière de vendre

Lorsque l’on cherche à vendre des produits haut de gamme, on a intérêt à avoir un bon marketing. Et lorsque l’on désire vendre du haut de gamme à un marché principalement grand public, l’aspect émotionnel est important.

Sur ce point Apple a su développer une mystique. La firme à la pomme a certes un fan club des plus loyal, mais ce n’est pas suffisant pour être en bonne santé. La combinaison de l’innovation et du design fait qu’Apple génère énormément de buzz, même au sein des gens qui n’ont jamais acheté Apple.

C’est pour cette raison qu’Apple est une compagnie notoirement extrêmement secrète. Le meilleur moyen de faire parler de soi est de surprendre tout le monde, comme ça a été le cas avec l’iPhone. Et pour surprendre tout les monde lorsqu’on s’appelle Apple, il faut s’assurer qu’il n’y a aucune fuite en prenant des mesures draconiennes.

Mais l’aspect émotionnel est limité lorsque l’on vend en entreprise. De même, réinventer n’est pas forcément du goût des entreprises qui préfèrent la compatibilité avec l’existant. C’est peut-être pour ça que Steve a souvent répété en interne qu’Apple ne vend pas aux entreprises (« Apple is not an enterprise company« ). Il existe bien sûr des exceptions. Cupertino vend des serveurs Mac (la gamme Xserve). Il vante désormais l’interconnexion avec Microsoft Exchange de son iPhone comme de la dernière version de Mac OS X. Et pendant longtemps un bastion d’Apple a été l’édition. Mais le marché d’entreprise est rarement un marché stratégique pour Apple.

Conclusion

Les forces d’Apple en font une compagnie idéale pour s’attaquer à des marchés high tech non matures. Pour ce type de marché, l’offre manque encore de finition – un domaine où Apple excelle. Lorsqu’un marché devient mature, la différentiation du produit est de moins en moins importante, et d’autres facteurs tels que le prix ou le service importent de plus en plus.

Pour survivre, Apple doit donc régulièrement trouver de nouveaux marchés. Même si les ventes du Mac se portent bien depuis le retour de Steve, la firme à la pomme a dû son salut à l’iPod. Et afin d’éviter de souffrir d’un phénomène de commoditisation des baladeurs MP3, Apple a consolidé sa position en s’attaquant aux marchés adjacents du smartphone et de l’ordinateur de poche / console de jeu de poche en sortant son iPhone puis son iPod Touch.

Lorsqu’on cherche à se différentier par ses produits, on est en constante course pour toujours innover.

Mais il est intéressant de noter que beaucoup des forces d’Apple (trouver une vision, attirer les talents, séduire des partenaires) sont apportées par Steve Jobs lui-même.

A quand des logiciels d’entreprise génériques?

19 juin 2009

L’un des gros problèmes de l’informatique d’entreprise à l’heure actuelle est son coût. Les projets d’ERP (Enterprise Resource Planning) et de CRM (Customer Relationship Management) sont connus pour être très longs et très coûteux à mettre en œuvre. La raison tient en un mot: la personnalisation. Customiser une solution de CRM pour qu’elle s’accommode au fonctionnement de l’entreprise n’est pas une mince affaire, et la route est semée d’embuches.

Tout d’abord, les personnalisations peuvent être complexes – un exemple typique est le nombre d’exceptions aux règles (suivant un type de client, service ou produit particulier). Parfois même, les customisations doivent être redéveloppées de A à Z. Voici un scénario trop commun: l’équipe de développement propose un cahier des charges sur ce que la customisation doit faire. Mais les managers qui prennent les décisions étant des gens très occupés, ils assistent rarement aux réunions avec le développement et lisent rarement les mémos. Le développement ayant une échéance, ils assument que le cahier des charges convient à tout le monde et commencent à coder. Jusqu’au jour où un manager prend finalement le temps de lire ledit cahier des charges (souvent après que le développement soit terminé) et s’aperçoit que le résultat est inaplicable à l’entreprise. Oups!

Finalement, la customisation d’une solution de CRM empêche souvent la mise à jour vers des versions les plus récentes dudit CRM. Nombreuses sont les entreprises qui utilisent des versions périmées car bloquées par leurs personnalisations.

La solution serait bien évidemment de ne rien personnaliser et d’utiliser son ERP ou CRM tel quel. De fait, tout le monde critique la personnalisation à outrance. Mais dans les faits personne ne veut lâcher ses propres customisations, citant des besoins spécifiques à son organisation.

Mais dans l’histoire de l’informatique on trouve certains types de logiciels génériques (« prêt-à-porter ») qui ont remplacé les logiciels « sur mesure ». Des logiciels où la personnalisation ne demande pas (ou peu) de programmation.

Le tableur: programme de compatibilité générique

Lorsque le tableur a été inventé, les premiers comptables qui l’ont vu en bavaient d’envie. Et pour cause: cela leur permettait de faire leur travail beaucoup plus facilement.

Avant le tableur, seules les grosses entreprises pouvaient informatiser leur comptabilité. Il fallait en effet se payer les services d’un (de plusieurs) informaticien(s) qui devai(en)t programmer à la main le logiciel de compta en incorporant toutes les subtilités spécifiques à la compagnie.

Le tableur a littéralement révolutionné (et je n’emploie pas ce terme à la légère) l’informatique car il a permit à n’importe quel comptable de se « programmer » son propre logiciel de compta en n’ayant à entrer que des formules. Certes, les premiers tableurs n’offraient pas toutes les fonctionnalités offertes par des logiciels créés sur mesure. Mais c’était suffisant pour les petites entreprises. Et avec le temps, le tableur s’est amélioré, a offert plus de fonctionnalités, s’est doté d’un langage de macros[-commandes] et a pu couvrir les besoins de plus en plus complexes.

Le navigateur Web: client générique

Le terme « client/serveur » a été un terme à la mode pendant longtemps en informatique d’entreprise. On installe un logiciel sur les postes clients qui va se connecter à un serveur.

Dans cette architecture, le développement de l’interface graphique (ou GUI, pour Graphical User Interface) était tout sauf standardisé. Car la manière de développer une interface graphique changeait selon le système d’exploitation, le langage de développement utilisé ainsi que le fournisseur du compilateur. Vous vouliez développer un GUI en C++ sous Windows? Les MFC (Microsoft Foundation Classes) de Microsoft et l’OWL (Object Windows Library) de Borland offraient deux manières différentes. Vous vouliez développer un GUI sous Windows en utilisant une solution Microsoft? Visual C++ et Visual Basic offraient une manière de développer l’interface graphique totalement différente.

Le navigateur Web a, lui, apporté un client générique. La clé à été le HTML qui s’est avéré être un puissant langage de description d’interface graphique quelle que soit la plate-forme. Le HTML étant simple, il pouvait être généré par n’importe quel langage de programmation ou n’importe quel logiciel sur n’importe quelle plate-forme.

Là encore, les premiers navigateurs avaient des capacités limitées. Il a fallu 10 ans pour qu’ils de développer un GUI qui rivalise un tant soi peu avec le client/serveur traditionnel. Qui plus est, avec le HTML on ne peut pas calibrer l’interface graphique au pixel près. Mais qu’importe! Le navigateur a permit de développer facilement une interface graphique avec qui plus est un déploiement immédiat. Et au fil des versions, le standard HTML s’est amélioré, s’est doté d’un langage de script (JavaScript) et a pu couvrir des besoins de plus en plus complexes.

L’utilité d’un langage métier

Ces deux exemples mettent en avant l’utilisation d’un « langage métier » (business language). Par langage métier j’entend un langage qui n’est pas destiné aux informaticiens mais aux utilisateurs. Le tableur ne parle pas en terme de variables mais en terme de colonnes, formules et pourcentages. Le HTML ne parle pas en terme de bitmap, widget ou windows handle mais en terme de pagination, de style de texte ou de tableau.

Le HTML est en plus un langage fortement intelligent dans la mesure où beaucoup des choix sont implicites, évitant à l’utilisateur de spécifier toutes les options de pagination possibles. Si par exemple on définit un tableau dont la largeur prenne 75% de la page, le navigateur Web va s’assurer que le tableau ait la bonne dimension quelle que soit la taille de la fenêtre – et gère le cas où cette dernière est redimensionnée. Mieux, il va automatiquement ajuster la taille des colonnes suivant la quantité de texte dans chaque colonne. Cela demande d’oublier la logique du positionnement de tous les éléments au pixel près, mais permet une très grande simplicité de développement. Avec un GUI traditionnel (encore utilisé dans des logiciels modernes comme Windows 7 ou iTunes), l’utilisateur final doit lui-même redimensionner les colonnes si des informations sont cachées.

Le HTML a d’autant plus été révolutionnaire qu’il a débuté à une époque où le développement d’un GUI s’orientait vers une solution graphique à la Visual Basic (utiliser une interface graphique pour développer une interface graphique semblait des plus logiques).

Maintenant, en quoi un langage au format texte apporte-t-il quelque chose? Le texte a l’énorme avantage de pouvoir être facilement manipulé. Vous voulez créer une copie d’une partie de l’interface graphique et la modifier légèrement? Rien de plus simple en HTML, et ce grâce à des fonctions telles que copier/coller et rechercher/remplacer. En Visual Basic, aucune automatisation n’étant possible, cela demanderait beaucoup de clics de souris et de saisies manuelles de texte.

Mais la manipulation ne s’arrête pas à l’utilisateur mais s’étend à n’importe quel programme. Le fait que le HTML soit du texte a permit un transfert facile du serveur vers le client – d’où un déploiement facile. N’importe quel logiciel peut facilement générer du HTML, et des portions de HTML complètes peuvent être facilement stockées dans une base de données. On imagine mal un serveur Web créer en temps réel un programme Visual Basic en l’envoyer au client – c’est pourtant ce que font les serveurs Web modernes avec du HTML généré dynamiquement.

L’exemple d’un langage de requête de haut niveau

Le SQL est le langage le plus utilisé pour accéder à des données stockées dans un SGBD (le fait qu’il soit simple et au format texte a certainement aidé). Mais le SQL reste un langage de technicien qui nécessite de connaître le fonctionnement d’une SGBD/R (tables, jointures) ainsi que le schéma de la base (comment les données sont agencées).

Les tentatives de trouver un langage de plus haut niveau que SQL se sont souvent orientées vers le langage naturel. Ce dernier pose cependant un problème: étant donné qu’on ne peut pas imposer de grammaire stricte, un programme de langage naturel n’est jamais 100% certain de comprendre ce que l’utilisateur veut dire.

C’est pour cette raison que, pour des besoins professionnels, je me suis lancé dans l’écriture d’un business language destiné à effectuer des requêtes de plus haut niveau qu’un SELECT / FROM / WHERE en SQL. Le langage ne parle pas de table et de jointures mais de clients, de produits, d’enquête clients, etc. Ce langage essaie d’employer des termes les plus proches de l’utilisateur que possible – on précise par exemple une date en disant « last month » (le mois dernier), « last fiscal quarter » (le dernier trimestre fiscal) au lieu d’entrer les dates exactes. Il permet cependant certaines requêtes complexes, comme les clients qui ont le produit X et qui ont passé des appels support contenant certains mots-clé – et afficher la corrélation entre le temps de résolution et la satisfaction du client. Le langage permet même de faire des requêtes qui sont ordinairement difficile à coder, comme l’absence de jointure (chercher les clients qui n’ont PAS un type de produit donné).

Conclusion

L’informatique d’entreprise a grand besoin de logiciels génériques pour gérer son système d’information, les coûts de personnalisation devenant de plus en plus importants.

Nombreuses sont les compagnies qui essaient de s’attaquer à ce problème. Verra-t-on un jour un langage métier qui permette de complètement décrire la manière dont fonctionne une entreprise, permettant une personnalisation facile d’une solution de CRM? Qui sait.

Un tel langage ne doit pas être un langage de programmation mais un langage qui parle à l’utilisateur final. Avec le tableur les comptables n’avaient pas à apprendre un langage de programmation. Juste comment écrire des formules, et plus tard des macros. Pareil pour HTML: c’est un langage de mise en page. Le langage nécessaire ici est un langage de système d’information, où la syntaxe parle aux managers (client, revenu, tarification, produit, service).

Une telle technologie étant disruptive elle aura besoin d’être promulguée par une startup. En effet, elle permettra d’offrir moins de fonctionnalités qu’un CRM ou ERP traditionnel. L’écosystème autour de ces deux produits a donc toutes les chances de rejeter une telle solution. Cette dernière n’accommodant que les PME et demandant moins de travail pour la personnalisation, elle est peu séduisante pour une société de service habituée aux gros projets de customisation de CRM. C’est la raison pour laquelle le pionnier du CRM en ligne est Salesforce.com et non SAP ou Oracle.

Microsoft se rebiffe

19 juin 2009

Après plusieurs années de passivité (ou d’agressivité sans succès) sur le marché de la recherche Internet, Microsoft semblerait finalement se réveiller. Redmond n’a peut-être pas sorti un service clairement supérieur à la concurrence comme Google l’a fait en son temps, mais la firme de Steve Balmer ne fonctionne pas comme ça. Elle s’acharne, ne lâche jamais prise, essaie de s’améliorer à chaque nouvelle mouture et attend que l’ennemi fasse un faux pas.

Microsoft met souvent trois versions avant de faire une percée. Ca a été le cas pour Windows comme pour Internet Explorer. Bing, troisième incarnation du moteur de recherche de Microsoft, semble se démarquer de ses prédécesseurs. Selon les cabinets d’étude Compete et ComScore, le moteur de recherche de Microsoft aurait gagné des parts de marché ces deux dernières semaines. A noter toutefois que ces deux même compagnies trouvent que Google a également gagné des parts de marché pendant cette même période.

Quoi qu’il en soit, Bing a suffisamment secoué Sergey Brin, co-fondateur de Google, pour que ce dernier dirige lui-même une équipe dédiée à trouver la réponse du berger à la bergère. En attendant, Redmond peut s’estimer satisfait de ces deux premières semaines.

Il faut dire que la forme de Steve Balmer n’a pas lésiné sur la campagne promotionnelle. De plus, le service de Microsoft a bénéficié d’un « bug » d’Internet Explorer 6 qui a redirigé pendant un temps les requêtes vers Google ou Yahoo vers Bing.

Les challenges à venir

Mais la difficulté de tout moteur de recherche est de garder les utilisateurs après la première visite de curiosité. Les utilisateurs ne vont pas lâcher Google complètement du jour au lendemain. Il faut donc qu’ils se souviennent d’utiliser un moteur de recherche alternatif lorsqu’ils n’arrivent pas à trouver ce qu’ils veulent sur Google – ou mieux, qu’ils associent ce moteur alternatif à un type de requête précis.

Cela signifie que les utilisateurs doivent se souvenir du nom (« Bing » est OK, « Wolthram Alpha » ne l’est pas), mais aussi et surtout qu’ils aient le réflexe d’aller sur Bing. En optimisant le site pour des questions générales comme la réservation de vol ou l’achat en ligne, Bing marque des points. Une fois que les gens ont l’habitude d’aller sur Bing, Microsoft peut essayer de les orienter sur d’autres services.

Et sur ce point, une polémique autour de Bing est peut-être le plus gros atout. Il est en effet assez facile de rechercher des images et vidéos X avec Bing et surtout de les visualiser sur le site même – évitant ainsi tout contrôle parental. Mais pour l’instant cette polémique n’a que des avantages pour Microsoft. D’une part cela lui a fait de la publicité sans pour autant lui causer des problèmes majeurs. Je n’ai entendu personne appeler au boycott de Bing pour cette raison – même aux Etats-Unis.

L’autre avantage est que le sexe est l’un des moteurs d’Internet (comme il l’a été pour le Minitel). Une des meilleures manières de se faire de l’argent sur Internet est de créer un site pour adultes. Et le message numéro un du spam est lié au sexe (viagra et grossissement de la virilité)

Un moteur de recherche pornographique a toutes les chances de faire un carton! Les clients numéros un seront les adolescents et jeunes adultes (mâles), qui sont sans doute des gros utilisateurs Internet en général.

Conclusion

Il est encore trop tôt pour savoir si Bing va continuer son ascension ou retomber – et si Google va réussir à trouver une parade. Quoi qu’il en soit, un peut de concurrence fera le plus grand bien à Google. Les annonceurs, eux, ne peuvent que se réjouir, eux qui trouvent que Google a trop de poids sur le marché de la publicité sur Internet. Espérons que la peur ne leur fasse pas commettre à Google des bêtises et complexifie à outrance son moteur de recherche.

Sur la singularité

12 juin 2009

Il y a eu récemment une résurgence des discussions sur la Singularité – le moment où les ordinateurs deviendront aussi puissant que le cerveau humain et nous seront intellectuellement supérieurs.

Je vais être honnête: je n’y crois pas – pas dans le futur immédiat du moins. D’ailleurs, la Singularité me rappelle le bide de la soi-disante « intelligence artificielle » des années 70 / 80.

Je ne suis pas sceptique parce que je pense que c’est impossible. La puissance des ordinateurs a de fait augmenté de manière exponentielle. Le Cray 2 était l’ordinateur le plus puissant du monde de 1985 à 1990 avec une puissance de 1,9 Gflops (milliards d’opérations à virgule flottante par seconde). La France n’en n’avait que deux (un détenu par l’EDF, et un par Polytechniques et utilisé par Météo France). 20 ans plus tard, un Intel Core 2 Duo E6700 que l’on trouve dans un ordinateur de bureau a une puissance de plus de 12 gigaflops. Si en 1950 quelqu’un avait prédit la puissance des ordinateurs de nos jours ainsi que leur application, il aurait été pris pour un fou.

Je suis sceptique de la Singularité comme présentée par ses promoteurs, et parce que je pense que leur modèle est fondamentalement erroné. Leur argument est le suivant: un ordinateur peut à l’heure actuelle simuler sans problème quelques neurones qui interagissent entre eux. En se basant sur la loi de Moore, on peut prédire la puissance future des ordinateurs  et ainsi déterminer la date où ils pourront simuler un cerveau humain entier. A tel point que certains pensent que la Singularité sera atteinte d’ici 10 à 20 ans.

Je vois cependant un défaut à cette théorie: le modèle utilisé est un modèle linéaire – la réalité l’est rarement. Connectez quelques neurones et vous obtenez un circuit électrique facile à émuler. Mais lorsque vous connectez des milliards de neurones – suffisamment pour en faire un cerveau – quelque chose de surprenant se produit: une conscience émerge. Appelez ça une âme, un esprit ou autre chose mais personne ne peut nier que quelque chose apparaît et qui a des sensations – et cette « chose »-là n’est prise en compte par aucun modèle informatique. Est-ce que la conscience est un effet dérivé de l’électricité? D’une réaction chimique? D’autre chose? A l’heure actuelle personne n’en n’a la moindre idée.

J’utiliserais un parallèle: les lois du mouvement de Newton ont été très utiles pour l’humanité – elles sont un des piliers de la mécanique moderne. Mais ces lois sont linéraires, et par conséquent affirment que l’on peut atteindre n’importe quelle vitesse pour peu que l’on fournisse l’énergie nécessaire. Nous savons désormais que la réalité est bien plus complexe – et certainement pas linéaire – et qu’à partir de 100.000 km/s ce modèle ne fonctionne plus. Nous devons utiliser un autre modèle: celui de la relativité d’Einstein.

Et quelque chose me dit que qu’il en est de même pour un réseau de neurones. A partir d’un certain moment, quelque chose se produit, et nous avons besoin d’un autre modèle. Tant que nous n’aurons pas trouvé un modèle pour la conscience, faire quelconque prédiction sur la singularité est aussi fiable qu’une prédiction météorologique un an à l’avance.

Et en parlant de météo, je terminerais par un autre exemple. Dans les années 50, Jon von Neumann pensait que les ordinateurs nous permettraient non seulement de prédire le temps mais également de le contrôler.  Son raisonnement était le suivant: tout système possède des points d’équilibre instables. On peut donc contrôler l’état d’un système en agissant sur ces points. Imaginez une balle en haut d’une colline: on peut la faire dévaler la colline dans la direction que l’on désire par une simple pichenette. Il suffisait simplement de calculer les points d’équilibre instables de l’atmosphère et le tour était joué. C’était juste une affaire de calculs. Sauf que le modèle de von Neumann était erroné car la réalité était plus complexe qu’envisagée: il n’avait en effet pas prévu que tous les points de l’atmosphère sont des points d’équilibre instables – le fameux effet papillon. 50 ans plus tard, malgré des ordinateurs plus puissants que von Neumann n’aurait jamais pu imaginer, on ne peut toujours pas prédire le temps à plus d’une semaine – encore moins de le contrôler. Juste une affaire de calculs, hein?

Et devinez quoi? « C’est juste une affaire de calculs » est exactement ce que les promoteurs de la Singularité nous disent. Se pourrait-il que la réalité soit plus complexe qu’ils ne croient?

La difficulté de prédire les évolutions technologiques

5 juin 2009

2007santa_smallsample

« Le père Noël en 2007. » Cette illustration d’un livre pour enfant publié en 1907 peut prêter à la rigolade. Mais même plus proche de nous les prédictions futuristes sont souvent comiques.

Prenez la plupart des descriptions de l’an 2000 datant des années 80. En l’an 2000 nous étions sensés tous avoir notre soucoupe volante personnelle et nous balader en combinaison spatiale. Les robots étaient sensés être intelligents, mais les écrans de télévision tout petit. Bien évidemment, pas d’Internet ni de téléphone cellulaire. Et quand une illustration montre quelqu’un utiliser un téléphone portable c’est bien souvent un gros talkie-walkie.

Autrement dit, des prédictions à 15-20 ans se sont révélées être à la fois beaucoup trop optimistes sur certains points (la soucoupe volante personnelle) et beaucoup trop pessimistes sur d’autres (Internet ou la puissance des ordinateurs).

Et même des experts se fourvoient. Je prendrais pour exemple l’éminent scientifique Lord Kelvin – après qui sont nommés les degrés Kelvin – qui a affirmé « une machine volante plus lourde que l’air est impossible. » Ou Thomas Watson Jr, PDG d’IBM qui en 1943 voyait « un marché mondial de 5 ordinateurs. »

Qu’est-ce qui rend si difficile de prédire les évolutions technologiques?

Difficulté d’estimer les performances

La première raison est que l’évolution d’une technologie est tout sauf linéaire. Un « produit » high-tech, qu’il s’agisse d’une fusée ou d’un ordinateur, dépend en effet de nombreuses technologies. Or toute technologie a une période de croissance mais à un moment où à un autre se heurte à un « mur technologique ».

Prenons l’exemple des fusées spatiales: depuis le lancement de Spoutnik en 1957 les fusées ont fait beaucoup de progrès. Mais la technologie reste fondamentalement la même: la propulsion s’effectue par un engin à réaction et la fusée essaie de se diriger du mieux qu’elle peut. Même après des décennies de progrès technologiques les fusées restent peu fiables et coûteuses (plusieurs milliers d’euros par Kg à envoyer dans l’espace). Avec la Navette Spatiale américaine, la NASA espérait diminuer le coût d’un vol spatial en réutilisant la navette, contrairement aux fusées qui sont perdues à chaque voyage. Mais on s’est vite aperçu que la maintenance nécessaire entre chaque vol était beaucoup plus importante que prévue. Au final, la navette spatiale coûte bien plus cher qu’une fusée traditionnelle.

Prenons maintenant l’exemple des ordinateurs. Inventés pendant la 2e guerre mondiale, ils se sont rapidement développés et étendus à d’autres secteurs au-delà des applications militaires. Les ordinateurs auraient eux aussi pu se heurter à un mur technologique, mais ils ont réussi à le percer grâce à deux inventions salvatrices: le transistor d’une part et le microprocesseur d’autre part. Ce sont ces inventions qui ont permit de se passer des lampes à vide, encombrantes et peu fiables. Sans ces deux inventions pas d’électronique, et sans électronique pas d’ordinateur moderne.

Mais cela ne veut pas dire que les ordinateurs ne vont pas se heurter à un mur eux aussi. La loi de Moore, loi empirique qui dit que la puissance des processeurs double tous les 18 mois, a perduré plus de temps qu’espéré (plus que Gordon Moore lui-même n’ait imaginé). Mais cela ne veut pas dire qu’elle va continuer éternellement. Par exemple, si la fréquence des processeurs de PC a explosé dans les années 90 (de quelques dizaines de MHz pour dépasser le seuil du GHz), elle n’a que très peu augmenté cette décennie pour plafonner vers les 3 GHz. Au-delà, la chaleur fait littéralement fondre le processeur. Peut-être arriverons-nous un jour à inventer un mécanisme de refroidissement à hélium pas cher et pratique… ou peut-être pas. En attendant on contourne le problème en utilisant la technologie multi-cœurs: les processeurs double voire quadruple cœurs. D’autres types de processeurs sont également à l’étude. Processeurs utilisant un rayon laser au lieu d’électricité (on évite les problèmes de chaleur) ou processeurs quantiques. Mais on est très loin d’une application industrielle.

Et en parlant d’ordinateur, il existe un autre domaine où les prédictions se sont fourvoyées: la programmation. On a eu beau inventer des langages de plus en plus avancés – parfois d’ailleurs trop complexes – la programmation reste fondamentalement la même qu’il y a 60 ans: jongler avec des valeurs numériques et tester ces valeurs. 60 ans plus tard les programmes sont toujours remplis de bugs, les gros projets informatiques sont toujours coûteux et toujours autant en retard. Les espoirs d’intelligence artificielle des années 70, quant à eux, se sont vites évaporés.

Difficulté de prédire l’utilisation

Mais au-delà des performances, l’utilisation que l’on va faire d’une technologie est un autre facteur qui fausse beaucoup de prédictions. Internet existe depuis des décennies, mais ce n’est que depuis l’arrivée du Web que le grand public l’a adopté en masse. Et même lors de l’explosion du Web personne n’a pu prédire la manière dont ce dernier serait utilisé.

Pour ce qui est des fusées, si elles n’ont pas permit à M. tout-le-monde de faire une promenade dans l’espace, elles ont eu des applications inattendues. Qui aurait pu prédire que les fusées seraient utilisées pour mettre en orbite des satellites qui guident les GPS dans nos voitures?

Parfois c’est l’utilisation d’une technologie même qui empêche son adoption. Si la soucoupe volante reste encore de la science fiction, comment se fait-il que nous n’ayons pas tous notre mini-hélicoptère personnel? On aurait pu penser que les hélicoptères se seraient démocratisés au fil des années, devenant de moins en moins cher pour finalement être accessible au grand public. Mais ce qui a bloqué l’hélicoptère est moins son prix que les contraintes qui vont avec. Outre le fait qu’un héliport prend nettement plus d’espace qu’une place de parking, piloter un hélicoptère est autre chose que conduire une voiture! Obtenir une licence coûte cher et demande d’y consacrer beaucoup de temps. Ensuite, imaginez si tout le monde avait un hélicoptère: ce serait le désastre dans les airs! Le trafic routier fait déjà beaucoup de morts sur les routes, un trafic aérien de masse serait un massacre, à la fois dans les airs et pour ceux en dessous.

Pour ce qui est de la programmation informatique, beaucoup des espoirs ont été annihilés par l’utilisation des logiciels. En particulier, l’un des plus grands espoirs de l’informatique a été la réutilisation de code, évitant de constamment réinventer – et débugger – la roue. Dans les années 80-90, l’avènement de la programmation objet a amené beaucoup d’experts à prédire « la fin de la programmation », pensant que l’avenir de la cette dernière ne serait qu’une question d’assemblage de briques. Fin des années 90, le CRM (Customer Relationship Management) était un buzzword à la mode, promettant aux grosses entreprises d’améliorer leurs relations avec leurs clients. A tel point que Nortel Networks a racheté en 1999 l’éditeur de CRM Clarify pour quelques 2,1 milliards de dollars.

Le grain de sable est venu de la manière dont on utilise les programmes. S’il existe de nombreux programmes génériques (de Windows aux navigateurs Web), dés que l’on passe aux besoins d’entreprise on s’aperçoit qu’il y a autant de besoins que d’entreprises. Imaginez que chaque maison ait besoin d’avoir des briques d’épaisseur et de taille différente. Cela compliquerait grandement la construction de briques. C’est un peu ce qui se passe en informatique d’entreprise: les besoins d’une compagnie sont très souvent presque identiques à ceux d’une autre, mais pas tout à fait, les deux compagnies étant organisées de manière différente. Les développeurs se sont aperçus que les « briques » informatiques ne collaient quasiment jamais à leur besoin, et qu’il était toujours plus difficile de réutiliser du code déjà écrit qu’initialement pensé. C’est pour cette raison que la fin de la programmation n’est toujours pas en vue. C’est également pour cette raison que les projets de CRM se sont révélés long et coûteux – chaque entreprise nécessitant de fortement personnaliser les logiciels de CRM. Ah oui, Nortel a revendu Clarify en 2001 pour 200 millions de dollars, soit 1.7 milliards de dollars de pertes. Aie!

Conclusion

Si prédire les performances d’une technologie donnée n’est pas forcément facile, elle est cependant parfois possible. La loi de Moore, tout empirique qu’elle soit, a été (et reste) un puissant outil pour estimer la puissance future des ordinateurs (ainsi que beaucoup d’autres choses). La plus grosse difficulté est celle que notre cerveau a à rationaliser des gains en performance lorsqu’ils sont exponentiels. Même avec du recul, il reste difficile de concevoir qu’un Cray 2 – l’ordinateur le plus puissant au monde de 1985 à 1990 – est moins puissant qu’un PC standard produit 15-20 ans plus tard!

L’arrivée d’un nouveau type de technologie comme les processeurs quantiques est par contre beaucoup plus difficile à évaluer. Des technologies prometteuses restent parfois en laboratoire, alors que d’autres technologies comme le laser ont pris tout le monde par surprise.

L’utilisation d’une technologie, elle, est également très difficile à évaluer. Le GPS par exemple n’a pu se démocratiser que grâce à des avancées technologiques dans plusieurs domaines: le satellite, l’électronique, les écrans LCD, etc.

Autrement dit, les prédictions erronées ont de beaux jours devant elles.