La fin de l'ère de l'interface graphique
Nous devrions planter le décor en examinant un peu le contexte historique entourant les interfaces graphiques et leur rôle dans le monde de l'administration des systèmes.
À l'« époque d'antan », nous n'avions d'interfaces graphiques sur aucun ordinateur, et encore moins sur nos serveurs. Bien après que les interfaces graphiques ont commencé à se populariser sur les équipements des utilisateurs finaux, les serveurs n'en possédaient toujours pas. Dans les années 1980 et 1990, la charge de calcul nécessaire pour produire une interface graphique était importante au regard de la capacité de traitement totale d'une machine, et consacrer le peu de capacité disponible à produire une interface graphique était assez peu pratique, lorsque ce n'était pas même totalement impossible. Le monde de l'administration des systèmes a grandi dans ce contexte, travaillant à partir de lignes de commande parce qu'aucune autre option ne s'offrait à nous. Il n'était pas courant que les gens souhaitent des interfaces graphiques pour l'administration des systèmes, peut-être parce que l'idée ne leur était pas encore venue.
Au milieu des années 1990, Microsoft, ainsi que quelques autres, ont commencé à introduire l'idée d'une administration des systèmes pilotée par une interface graphique pour le marché des serveurs d'entrée de gamme. Au départ, cette approche n'était pas très populaire, car elle ne correspondait pas à la manière dont les administrateurs expérimentés travaillaient sur le marché. Mais peu à peu, à mesure que de nouveaux administrateurs Windows et, dans une certaine mesure, des administrateurs Novell Netware ont commencé à « grandir » avec un accès à des outils d'administration graphiques, une place admise pour ces systèmes a commencé à se faire sur le marché des serveurs. Du milieu à la fin des années 1990, les serveurs UNIX et autres serveurs non Windows dominaient complètement le marché. Même VMS demeurait un acteur majeur et, du côté des petites entreprises et des serveurs grand public, Novell Netware était l'acteur dominant au milieu de la décennie et restait un concurrent très sérieux en fin de décennie. Netware offrait une expérience d'interface graphique, mais une expérience très légère qui devrait probablement être considérée comme seulement « semi-graphique » en comparaison de la riche expérience graphique de Windows NT, proposée dès 1996 au moins, et dans une certaine mesure plus tôt avec la famille NT 3.x, bien que Windows NT ne fût alors qu'en train de trouver sa place dans le monde avant la sortie de NT 4.
Même à cette époque, le marché de l'administration pilotée par interface graphique restait avant tout un secteur marginal. Microsoft et Windows n'avaient toujours pas de place majeure du côté des serveurs, mais commençaient à percer par le biais du marché des petites entreprises, où leurs produits à faible coût et faciles à utiliser avaient tout leur sens. Mais c'est véritablement la panique et l'expansion du marché de la fin des années 1990, provoquées par la conjonction de la peur du bogue de l'an 2000, de la bulle boursière des dotcom et d'un excellent développement et marketing de produits par Microsoft, qu'une croissance significative et un basculement vers un marché de l'administration pilotée par interface graphique se sont produits.
L'expansion massive du marché informatique à la fin des années 1990 signifiait qu'il n'y avait ni le temps ni les ressources nécessaires pour former les nouveaux arrivants dans l'informatique. La courbe d'apprentissage de nombreux systèmes, dont Solaris et Netware, était très raide, et le secteur avait besoin d'un nombre véritablement colossal de personnes pour passer de zéro à « professionnel de l'informatique compétent » plus vite qu'il n'était possible de le faire avec les plateformes existantes de l'époque. La croissance du marché était explosive et il y avait tant d'argent à gagner en travaillant dans l'informatique qu'il n'existait aucune ressource disponible pour former efficacement les nouveaux arrivants qui devaient entrer dans l'informatique, car quiconque était qualifié pour assurer des fonctions de formation pouvait aussi gagner bien davantage en travaillant dans le secteur plutôt que dans l'enseignement. À mesure que le marché croissait, la valeur des professionnels mûrs et expérimentés devenait extrêmement élevée, car ils étaient de plus en plus rares dans un domaine en perpétuelle expansion dans son ensemble.
Le marché a répondu à ce besoin de bien des manières, mais l'une des plus importantes a été de changer fondamentalement la façon d'aborder l'informatique. Au lieu de pousser les professionnels de l'informatique à surmonter les courbes d'apprentissage traditionnelles et à développer les compétences nécessaires pour gérer efficacement les systèmes présents sur le marché à l'époque, le marché a changé les outils qu'il utilisait pour s'adapter à un personnel informatique moins expérimenté et moins compétent. Des outils plus simples et souvent plus coûteux, dotés fréquemment d'interfaces graphiques, ont commencé à inonder le marché, permettant à ceux qui avaient moins de formation et d'expérience de commencer à être utiles et productifs presque immédiatement, sans même avoir jamais vu un produit auparavant.
Ce changement a coïncidé avec l'avancée naturelle des performances du matériel informatique. C'est durant cette ère que, pour la première fois, la puissance de nombreux systèmes était telle que, si l'interface graphique avait toujours un impact assez important sur les performances, le coût plus faible du personnel de support et la rapidité avec laquelle les systèmes pouvaient être déployés et gérés compensaient généralement cette perte de capacité de calcul accaparée par l'interface graphique. L'interface graphique est rapidement devenue un ajout standard à des systèmes qui, quelques années auparavant seulement, n'en auraient jamais vu.
Pour améliorer les capacités de ces nouveaux professionnels de l'informatique et les précipiter sur le marché, le secteur s'est également fortement tourné vers les certifications, plus ou moins une innovation à l'époque, qui permettaient aux nouveaux informaticiens, souvent dépourvus de toute expérience pratique, d'établir un certain degré de compétence, et ce, couramment sans nécessiter d'interaction ni d'investissement significatif de la part des professionnels de l'informatique en place, comme l'exigeraient des cursus universitaires. Tant le marché de l'administration par interface graphique que le secteur de la certification ont explosé, et le visage de l'informatique a considérablement changé.
Le résultat fut assurément un afflux de nouveaux professionnels de l'informatique, non formés ou peu formés, entrant sur le marché à un rythme record. À court terme, ce changement a fonctionné pour le secteur. Le domaine est passé d'un sous-effectif spectaculaire à un effectif relativement bien pourvu des années plus tôt qu'il n'aurait pu le faire autrement. Mais il n'a pas fallu longtemps avant que les pénalités de cette assimilation rapide de nouveaux arrivants ne commencent à apparaître.
L'un des plus grands impacts sur le secteur fut un « baby-boom » à l'échelle de toute l'industrie, avec toutes les difficultés de croissance que cela suppose. Toute une génération de professionnels de l'informatique a grandi dans les camps de formation intensive et les programmes rapides de « formation à la certification » de la fin des années 1990. Cela a eu pour effet à long terme que les règles empiriques et les approches générales courantes à cette époque ont souvent été codifiées au point de devenir une croyance quasi religieuse, d'une manière que les approches antérieures, comme ultérieures, ne le seraient pas. Souvent, parce que la formation était dispensée rapidement et superficiellement, de nombreux concepts ont dû être appris par cœur, sans une compréhension des fondamentaux qui les sous-tendaient. À mesure que la « promotion 1998 » a mûri pour devenir, au fil du temps, les professionnels de l'informatique chevronnés de leurs entreprises, ils sont devenus les mentors des nouvelles générations, et cet ancien apprentissage par cœur s'est très visiblement transmis par des approches similaires au fil des années qui ont suivi, même bien après que le savoir est devenu obsolète ou peu pratique ; et dans bien des cas, il a été mal interprété et se révèle erroné de manière prévisible, y compris pour l'époque dont il est issu.
Une partie de cet apprentissage de l'époque consistait en une acceptation générale du fait que les interfaces graphiques n'étaient pas seulement acceptables, mais qu'elles étaient pratiques et attendues. L'effet du baby-boom a fait qu'il y eut peu de mentorat de la part de l'ère précédente, et les pratiques et normes antérieurement établies furent souvent balayées. L'effet du baby-boom a fait que le secteur ne s'est pas exactement réinventé, mais s'est plutôt simplement investi lui-même. Même le concept des technologies de l'information en tant que secteur spécifique à part entière a pris sa forme actuelle et s'est ancré dans la conscience collective durant cette relève de la garde. Au lieu d'être un vestige d'autres services ou disciplines, l'informatique s'est affirmée par elle-même ; mais elle l'a fait sans la maturation et la continuité des pratiques qui auraient existé avec une croissance plus organique, laissant le secteur dans une position peut-être pire que celle dans laquelle il aurait pu se trouver s'il s'était développé de manière continue.
L'impact persistant de l'essor de l'informatique à la fin des années 1990 se fera sentir pendant très longtemps, car il faudra de nombreuses générations pour que les tendances, croyances et présupposés de cette période soient enfin balayés. Lentement, de nouveaux concepts et de nouvelles approches s'installent, souvent seulement lorsque les anciennes technologies disparaissent et que de nouvelles sont introduites, brisant l'emprise de la tradition. L'une d'elles est la notion selon laquelle l'interface graphique serait la méthode dominante par laquelle s'accomplit l'administration des systèmes.
Comme nous l'avons souligné plus haut, l'interface graphique était, à son origine, un point de différenciation entre les anciens systèmes et le nouveau monde de la fin des années 1990. Mais depuis cette époque, les outils d'administration graphiques sont devenus omniprésents dans leur disponibilité. Toute plateforme d'importance dispose, et dispose depuis longtemps, d'options d'administration graphiques, de sorte que l'interface graphique ne distingue plus aucune plateforme de manière significative. Cela signifie qu'il n'existe plus aucun fournisseur ayant un programme clair qui le pousse à promouvoir le concept de l'interface graphique. La valeur marketing de l'interface graphique a, de fait, disparu. De même, non seulement les systèmes qui auparavant étaient dépourvus d'une interface graphique solide en ont presque tous développé une (ou plusieurs), mais les systèmes fondés sur une interface graphique qui ne disposaient pas d'outils en ligne de commande robustes sont revenus en arrière pour les développer eux aussi, et ont bâti autour d'eux de nouveaux écosystèmes professionnels. La tendance s'est très certainement inversée.
De plus, au cours des près de deux décennies passées, la rhétorique du monde sans interface graphique a commencé à s'imposer. Les administrateurs système travaillant à partir d'une maîtrise de la ligne de commande, sur n'importe quelle plateforme, surpassent généralement leurs homologues, ce qui se traduit par davantage d'opportunités de carrière, des rôles plus stimulants et des revenus plus élevés. Les entreprises axées sur l'administration en ligne de commande se retrouvent avec des collaborateurs plus compétents et une densité d'administration supérieure, ce qui, à son tour, abaisse le coût global.
Cela seul suffisait à faire vaciller la position de l'interface graphique. Mais il y avait toujours le vieil argument selon lequel les interfaces graphiques, même à la fin des années 1990, utilisaient une faible quantité de ressources système et n'ajoutaient qu'une très faible surface d'attaque supplémentaire. Même si elles ne devaient pas être utilisées, pourquoi ne pas les avoir installées « au cas où » ? À mesure que les processeurs sont devenus plus rapides, que la mémoire s'est agrandie, que le stockage est devenu moins cher et que la conception des systèmes s'est améliorée, l'impact de l'interface graphique est devenu de moins en moins important, ce qui a renforcé cet argument de disposer d'interfaces graphiques. Particulièrement fort était l'argument selon lequel les interfaces graphiques permettaient également au personnel junior d'accomplir des tâches, les rendant ainsi plus utiles. Mais il était bien trop fréquent que le personnel senior conserve l'interface graphique comme une béquille dans ces circonstances.
Avec l'avènement de la virtualisation dans l'espace des serveurs grand public, tout cela a commencé à changer. Le coût d'une interface graphique est soudain redevenu perceptible. Un système exécutant vingt machines virtuelles utiliserait soudainement vingt fois les ressources processeur, vingt fois la mémoire et vingt fois la capacité de stockage d'une seule instance d'interface graphique. L'empreinte de l'interface graphique était de nouveau perceptible. À mesure que les densités de machines virtuelles ont commencé à grimper, il en a été de même de l'impact relatif de l'interface graphique.
La virtualisation a donné naissance à l'informatique en nuage. L'informatique en nuage a accru les densités de déploiement des machines virtuelles et a exposé d'autres impacts des interfaces graphiques sur les performances, principalement en termes de temps de création des instances plus longs et d'accès à la console distante plus complexe. Les systèmes nécessitant une interface graphique ont commencé à accuser un retard notable sur leurs homologues dépourvus d'interface graphique, en matière d'adoption comme de capacités.
Mais le facteur de loin le plus important fut un artefact des méthodes de facturation standard de l'informatique en nuage. Parce que l'informatique en nuage expose généralement les coûts par instance de manière brute et entièrement visible, les services informatiques n'avaient aucun moyen de maquiller ou de dissimuler les coûts des déploiements d'interfaces graphiques, dont la surcharge supplémentaire venait souvent même doubler le coût d'une seule instance en nuage. La comptabilité voyait très clairement des factures pour les systèmes dotés d'une interface graphique coûtant bien plus que leurs homologues sans interface graphique. Même les équipes non techniques pouvaient constater que le coût des interfaces graphiques s'accumulait, avant même de prendre en compte le coût de gestion.
Ce coût continue d'augmenter à mesure que nous évoluons vers les technologies de conteneurs, où l'échelle des instances individuelles devient petite, et plus elles sont petites, plus la surcharge relative de l'interface graphique devient significative.
Mais l'impact réel, possiblement la plus grande mise en lumière des problèmes liés aux systèmes pilotés par interface graphique, est le mouvement du secteur vers les modèles d'automatisation des systèmes DevOps. Aujourd'hui, seul un pourcentage relativement faible d'entreprises évolue activement vers un modèle de gestion des systèmes DevOps pleinement compatible avec le nuage et élastiquement extensible, mais la tendance est là, et ce modèle laisse complètement à la traîne les administrateurs d'interfaces graphiques et leurs systèmes. Avec les modèles DevOps, l'accès direct aux machines n'est plus un mode de gestion standard, et les systèmes sont allés encore plus loin que le simple travail en ligne de commande pour être entièrement construits en code, ce qui signifie que non seulement les administrateurs système évoluant dans le monde DevOps doivent interagir avec leurs systèmes en ligne de commande, mais qu'ils doivent le faire de manière programmatique.
Le marché évolue rapidement vers des administrateurs système moins nombreux et plus hautement qualifiés, travaillant avec bien, bien plus de serveurs « par administrateur » qu'à n'importe quelle ère précédente. L'idée qu'un seul administrateur système ne puisse gérer que quelques dizaines de serveurs, croyance répandue dans le monde de l'interface graphique, est depuis longtemps remise en cause, y compris dans l'administration système traditionnelle en ligne de commande de type « flocon de neige », où les chiffres grimpent aisément jusqu'à quelques centaines. Mais le modèle DevOps, ou des modèles d'automatisation similaires, portent ces chiffres à des milliers de serveurs par administrateur. La surcharge des interfaces graphiques devient de plus en plus évidente.
À mesure que de nouvelles technologies comme le nuage, les conteneurs et les modèles d'automatisation DevOps se généralisent, il en va de même de la « prolifération » naturelle des charges de travail. Cela signifie que des entreprises de toutes tailles voient augmenter le nombre de charges de travail à gérer. Des entreprises qui n'avaient traditionnellement que deux ou trois serveurs peuvent aujourd'hui en compter dix ou vingt instances virtuelles ! Le nombre d'entreprises n'ayant besoin que d'une ou deux machines virtuelles diminue.
Tout cela ne signifie aucunement que l'administration par interface graphique va disparaître dans un avenir proche, ni même lointain. Le besoin d'une administration système « ponctuelle » demeurera. Mais le rapport entre les administrateurs capables de travailler en mode d'administration « ponctuelle » par interface graphique et ceux qui ont besoin de travailler en ligne de commande, et plus précisément au moyen de systèmes scriptés voire entièrement automatisés (à la manière de Puppet, Chef, Ansible), bascule déjà incroyablement vite en faveur de l'administration système sans interface graphique et des pratiques DevOps.
Qu'est-ce que tout cela signifie pour nous, sur le terrain du monde réel ? Cela signifie que même des rôles, tels que l'administration Windows en petite entreprise, qui traditionnellement n'avaient que peu ou pas besoin de travailler en ligne de commande, doivent reconsidérer leur dépendance à l'interface graphique du serveur local pour notre travail. Les outils et processus en ligne de commande deviennent de plus en plus puissants, connus, et la façon dont on attend de nous que nous travaillions. Dans le monde UNIX, la ligne de commande a toujours subsisté, et le besoin de s'appuyer sur des outils graphiques serait presque toujours perçu comme un handicap majeur. Cette même impression commence à s'appliquer au monde Windows également. Peu à peu, ceux qui s'appuient exclusivement sur des outils graphiques sont perçus comme des citoyens de seconde zone et de plus en plus relégués à des rôles plus subalternes et à de plus petites organisations.
L'amélioration des outils de script et d'automatisation signifie également que la valeur de l'échelle s'améliore, de sorte que le coût d'administration d'un petit nombre de serveurs devient très élevé sur une base par charge de travail, ce qui constitue une incitation très forte pour les petites entreprises à se tourner vers une consolidation de la gestion par le recours à des prestataires externes, capables de se spécialiser dans la gestion de systèmes à grande échelle et d'exploiter des techniques de script et d'automatisation pour aligner davantage leurs coûts sur ceux des grandes entreprises. La possibilité de recourir à des prestataires externes pour atteindre une échelle, ou une approximation de celle-ci, sera très importante, au fil du temps, pour que les petites entreprises restent compétitives en termes de coûts dans leurs besoins informatiques, tout en bénéficiant néanmoins du même type d'avantages informatiques que les grandes entreprises commencent à connaître aujourd'hui.
Il convient de noter que, parallèlement à ce basculement du secteur vers la ligne de commande et les outils d'automatisation, se produit le passage à des interfaces graphiques plus modernes, plus puissantes et principalement distantes. Il s'agit d'un basculement bien moins spectaculaire, mais qui ne devrait pas être négligé. Des outils comme RSAT et Server Administrator de Microsoft offrent une vue graphique qui exploite, sous le capot, des interfaces en ligne de commande et des API. De même, le monde Ubuntu de Canonical dispose désormais de Landscape. Ces outils sont moins populaires en entreprise, mais commencent à permettre au marché plus large des PME de maintenir une dépendance à l'interface graphique tout en gérant un ensemble plus important d'instances de serveurs. Le progrès de ce type d'outils graphiques pourrait bien être la force la plus puissante ralentissant l'adoption des outils en ligne de commande dans tous les domaines.
Que nous nous intéressions au passage de la ligne de commande aux interfaces graphiques, puis au retour à la ligne de commande, comme à un artefact intéressant de l'histoire des technologies de l'information en tant que secteur, ou que nous envisagions cela comme un moyen de comprendre comment l'administration des systèmes évolue en tant que parcours professionnel ou approche d'entreprise pour nos propres usages, il est bon pour nous d'apprécier les facteurs qui ont provoqué ce phénomène et de comprendre pourquoi le flux et le reflux du secteur nous ramènent désormais vers le large de la ligne de commande, une fois de plus. En comprenant ces forces, nous pouvons évaluer de manière plus pragmatique où l'avenir nous mènera, quand la tendance pourrait de nouveau s'inverser, comment aborder au mieux nos propres carrières, ou décider à la fois de la technologie et des talents humains pour nos organisations.

