J'ai besoin d'une explication appropriée de la loi de Jamie Zawinski sur l'enveloppement logiciel :
Chaque programme tente de se développer jusqu'à ce qu'il puisse lire le courrier. Les programmes qui ne peuvent pas s'étendre ainsi sont remplacés par ceux qui le peuvent.
Réponses:
Toutes les réponses (et commentaires) jusqu'à présent semblent se concentrer entièrement sur la première moitié de la déclaration, ce qui en fait un commentaire sur le «ballonnement», lorsque la moitié importante est la seconde moitié: les programmes qui ne peuvent pas s'étendre ainsi sont remplacés par ceux qui peut.
Il ne s'agit pas de ballonnement logiciel, il s'agit des réalités du marché. Les gens peuvent dire qu'ils veulent un produit simple, mais quand on regarde l'utilisation réelle, les choses qui s'utilisent sont les choses qui permettent aux utilisateurs d'en faire plus, et ils finissent par remplacer des outils moins capables.
Une partie du problème est que "simple" est un mot déroutant. Comme «couper», cela peut signifier deux choses presque complètement opposées. Ce que les gens veulent, c'est quelque chose qui simplifie les tâches complexes. C'est «le bon simple», et il faut beaucoup de complexité pour bien faire. Ce que certaines personnes interprètent cependant, c'est que les gens veulent quelque chose de simpliste ou de minimaliste. Ce concept peut avoir un certain attrait de niche, mais dans l'ensemble, c'est le mauvais type de "simple" sur lequel se concentrer lors de la conception d'un produit. Quelle que soit la qualité de votre travail, les nouvelles demandes de fonctionnalités continuent à arriver.
Pour donner un exemple, il y a le programme sur lequel je travaille au travail. Vous n'en avez probablement jamais entendu parler, mais nous sommes le leader du marché dans une industrie spécialisée: le contrôle des médias. Notre programme diffuse très probablement votre station de télévision et / ou radio préférée. Les clients adorent ça, ils disent que c'est tellement mieux que tout ce avec quoi ils ont travaillé.
C'est aussi énorme . L'EXE est de plus de 65 Mo, avec environ 4 millions de lignes de code, soutenu par une base de données avec plus de 150 tables, construite au cours de plus d'une décennie de travail. Et pourtant, il semble que chaque fois que nous essayons de l'installer sur une nouvelle station ou un nouveau réseau, il y a une ou deux choses absolument essentielles à leur flux de travail, pour lesquelles nous n'avons aucun support. Nous finissons donc par ajouter les nouvelles fonctionnalités, sinon les clients ne voudraient pas passer du système auquel ils sont déjà habitués. Et permettez-moi de répéter, les clients l'adorent.
la source
Vous devez comprendre que cela s'est produit il y a longtemps et qu'à cette époque, les ordinateurs n'étaient pas encore en mesure d'exécuter plus d'un programme à la fois pour un utilisateur donné. DOS pour les ordinateurs personnels (et éventuellement Windows 3 sur le dessus) et terminaux basés sur les caractères pour les utilisateurs Unix (seuls quelques-uns avaient X11).
Cela signifie que pour vérifier si vous avez reçu un e-mail, vous devez quitter ce que vous faites actuellement, démarrer le programme de messagerie, lire le courrier, quitter le programme de messagerie et redémarrer votre ancien programme. Je suppose que vous pouvez voir que si votre programme actuel pouvait vous permettre de lire votre courrier électronique, vous pourriez éviter tout cela.
Par conséquent, si votre programme actuel ne pouvait pas lire votre e-mail, vous étiez enclin à le faire (rappelez-vous qu'il s'agissait d'étudiants du MIT) ou à passer à un autre qui le pourrait.
De nos jours, c'est difficile à imaginer, mais vous pouvez avoir une idée de comment c'était en vous limitant à une seule fenêtre de navigateur - pas d'onglets, pas de fenêtres supplémentaires - et peut-être même pas utiliser de signets.
la source
Comme tout le monde l'a déjà mentionné, la "loi" est une observation humoristique sur le gonflement des logiciels et le fluage des scores , et elle est très similaire à la dixième règle de Greenspun :
La loi reflète le travail de Zawinski avec le navigateur Netscape et plus tard avec Netscape Mail & News, comme décrit ici par lui-même:
Le navigateur Netscape, à l'époque le navigateur le plus populaire, a souvent été critiqué comme ayant trop de fonctionnalités pour son propre bien, si je ne me trompe pas horriblement, c'était le dernier navigateur (populaire) qui supportait deux moteurs de rendu, Gecko et Trident. Par exemple, Ben Goodger identifie le ballonnement de Netscape comme l'une des (nombreuses) raisons qui ont conduit à la création de Firefox 1 :
1 À partir d'une version archivée du blog désormais disparu de Ben Goodger.
la source
Ce n'est pas une vraie loi, c'est un commentaire satirique sur la façon dont les projets logiciels (s'ils ne sont pas correctement gérés) peuvent devenir si grands et compliqués, ils incluent finalement un lecteur de courrier électronique (même si cela n'a rien à voir avec l'objectif initial du projet) . Un gestionnaire que j'ai eu une fois aimait une phrase similaire: "Tout système suffisamment compliqué contient une implémentation LISP à moitié assimilée".
la source
Il s'agit d'un commentaire sur la façon dont certains projets logiciels semblent continuer à se développer et à ajouter de plus en plus de fonctionnalités.
De nombreux projets ne semblent pas pouvoir résister à l'ajout de fonctionnalités, qu'elles soient nécessaires ou non.
Une conclusion logique est que chaque logiciel finira par envoyer du courrier.
Voir également Scope Creep .
la source
Je vois au moins trois façons de le voir.
La première consiste à ignorer la lecture du courrier en soi et à la considérer comme une déclaration selon laquelle les gens semblent aimer les produits avec la flexibilité nécessaire pour se tourner vers presque n'importe quelle tâche, indépendamment du peu que cela pourrait avoir à faire avec l'intention initiale de l'outil. Si nous le considérons de cette façon, un produit comme Photoshop qui ne prend pas en charge la lecture des e-mails n'est pas une anomalie car son architecture de plug-in est suffisamment flexible pour pouvoir prendre en charge la lecture des e-mails, même si (pour autant que je sache) non un tel plug-in existe. Ce point de vue pourrait être résumé plus clairement, mais moins à l'origine, comme «la flexibilité l'emporte sur la spécialisation».
La deuxième façon de voir les choses serait que Jamie Zawinski a un objectif si étroit qu'il ignore simplement les produits comme Photoshop, PowerPoint, la plupart des jeux, etc., qui existent depuis des années, ne prennent pas en charge la lecture des e-mails et ne le font pas. t semble être remplacé par quoi que ce soit d'autre.
Le troisième serait un peu un contrepoint au second, en disant que, essentiellement, l'intégration entre les produits est arrivée à un point tel que la lecture du courrier est effectivement intégrée à tout parce que la plupart des gens ont maintenant un lecteur de courrier fonctionnant en arrière-plan, tous le temps et peut y basculer assez rapidement / facilement, couper et coller avec autre chose, etc., que le détail mineur que le lecteur de courrier est emballé comme une application distincte est devenu hors de propos.
la source