1 points par GN⁺ 2024-02-22 | 1 commentaires | Partager sur WhatsApp

Si l’architecte devait travailler comme un programmeur

  • On a demandé à l’architecte de concevoir et de construire une maison sans connaître précisément les besoins.

  • La maison devrait pouvoir compter de 2 à 45 chambres, et les chambres doivent pouvoir être ajoutées ou supprimées facilement.

  • La décision finale serait prise après avoir vu les plans d’architecture.

  • La maison choisie doit coûter moins cher que celle dans laquelle on vit actuellement.

  • Tous les défauts de la maison actuelle doivent être corrigés (le plancher de la cuisine qui vibre, l’isolation insuffisante des murs).

  • Il faut minimiser les coûts d’entretien annuels tout en utilisant les dernières pratiques de conception et les matériaux les plus récents.

  • Il faut un design de cuisine capable d’accueillir un réfrigérateur Gibson de 1952.

  • Il faut écouter les avis de toute la famille et du beau-père, et concevoir une maison qui satisfasse tout le monde.

  • Ne vous souciez pas des petits détails, élaborez plutôt un plan global.

  • L’élaboration de plans détaillés et d’une spécification doit être prioritaire plutôt que l’obtention des ressources.

  • Le toit doit être terminé dans les 48 heures suivant l’approbation du plan.

  • Pour pouvoir le vendre plus tard à quelqu’un d’autre, il faut tenir compte des goûts de différents acheteurs potentiels.

  • L’accord de la communauté locale est nécessaire avant de figer le plan final.

  • Il faut préparer les plans architecturaux, même si le design réel peut être modifié par la suite.

  • Vous êtes responsable de l’augmentation des coûts de construction due aux modifications du design ultérieures.

  • C’est un projet intéressant où il est possible d’utiliser des technologies modernes et une conception libre.

  • L’épouse dit qu’il lui faudrait peut-être plutôt une remorque de camping qu’une maison, et demande des conseils.

L’avis de GN⁺

  • Cet article se moque d’un client imposant à l’architecte des demandes déraisonnables et contradictoires, et rapproche de manière pleine d’esprit les attentes irréalistes que rencontrent souvent les programmeurs.
  • Il peut être vu comme un exemple soulignant l’importance de définir clairement les besoins et les attentes d’un projet, ainsi que de gérer les changements.
  • Il permet de comprendre et de partager les difficultés communes aux experts de deux domaines différents, la programmation et l’architecture, et, en transmettant avec humour la difficulté de la gestion de projet, il suscite l’intérêt des lecteurs.

1 commentaires

 
GN⁺ 2024-02-22
Avis Hacker News
  • Peu importe comment vous vous y prenez pour faire ce travail, mais vous devez découper le travail prévu en petites unités de travail estimables
    Les estimations n’ont pas besoin d’être exactes, mais si vous les dépassez, vous devrez en répondre, et si l’on estime qu’elles sont arbitrairement trop élevées, vous serez soupçonné
    Vous pouvez effectuer ces tâches comme vous l’entendez, mais vous devez rendre compte de votre avancement lors d’une réunion quotidienne d’une heure avec d’autres concepteurs qui font des choses complètement différentes
    Il se peut que vous deviez répéter le même compte rendu oral dans d’autres réunions, et même si les réunions prennent beaucoup de temps, les estimations initiales doivent rester inchangées
    Pendant que vous concevez une maison, vous pourriez devoir aider sur une urgence architecturale, comme la stabilisation de la tour de Pise ; ce genre de choses peut arriver à toute heure du jour ou de la nuit et passer avant votre travail en cours, mais ne doit pas affecter vos estimations de temps

    • Les crayons pour tracer les plans sont gérés par quelqu’un de complètement différent, et vous ne pouvez pas les tailler vous-même
      Cela dit, cette personne peut être absente de son poste parce qu’elle taille les crayons de tout le monde et ajuste aussi les bureaux
      En plus, ils appartiennent tous à Blue Pants, donc ils ne travaillent même pas sur le même créneau horaire
    • Les associés du cabinet ont embauché BCG pour rationaliser le processus de construction des maisons
      Votre maison et les autres maisons du quartier que vos collègues concevaient sont laissées à l’abandon et pourrissent, et la plupart d’entre vous seront licenciés
      Certains seront réaffectés à la conception d’écuries et de piscines intérieures pour des marchés plus rentables
    • Comme il faut découper et estimer le travail à partir d’une description de deux lignes fournie par un chef de produit, on ne peut absolument pas connaître le périmètre avant d’avoir réellement commencé
      C’est exactement pour ça que toutes les estimations de mon équipe étaient fausses dans mon ancienne boîte et que des ingénieurs ont été licenciés
      Cette amertume est bien réelle
    • Avant de concevoir la maison, il faut d’abord monter un échafaudage avec des outils destinés à construire un hangar
      Qu’il y ait ou non une forêt à proximité, une géologie sismique ou des ouragans, il doit résister aux séismes, aux menaces nucléaires, aux ouragans de catégorie 7, aux incendies de forêt, etc.
      Comme ça, on pourra se vanter de suivre des principes que des architectes licornes spécialisés dans les hangars ont utilisés avec succès pour leurs propres besoins
    • Il n’existe pas de description plus juste de l’agilité d’entreprise que celle-ci
      Ça ressemble à une blague, mais la blague est à nos dépens
  • Ça ressemble vraiment à du cosplay de victime de haut niveau
    Construire une maison implique souvent de traiter avec des propriétaires ou des entrepreneurs geignards qui n’ont aucun goût, n’y connaissent rien, veulent tout, mais ne veulent pas payer
    C’est le boulot
    Un bon ingénieur logiciel sait aussi que traiter avec les parties prenantes et les utilisateurs fait partie du travail
    Et autre révélation choc : les plans sont parfois mauvais ou faux
    Pourtant, les gens construisent des maisons
    C’est le boulot

    • Exact
      À l’inverse, si les programmeurs devaient travailler comme des architectes, ils seraient beaucoup moins payés, auraient du mal à être responsables de projets importants avant la cinquantaine, feraient énormément d’heures supplémentaires non rémunérées, ne pourraient pas télétravailler, porteraient une responsabilité juridique sur leur travail, passeraient la majeure partie de leur journée à s’occuper de conformité réglementaire plutôt que de résultats, et devraient être bien plus orientés client que tout ce qu’ils ont pu imaginer jusqu’ici
    • Un membre de ma famille a acheté un terrain et les plans d’une maison à deux étages auprès d’un cabinet d’architecture, puis a engagé un entrepreneur
      Quand les travaux étaient déjà bien avancés, les entrepreneurs ont demandé s’il voulait relever le toit d’un mètre, puisque la différence de coût était minime ; il a d’abord refusé, puis a accepté
      Ce n’est qu’une fois la maison terminée qu’il a compris que s’il avait refusé cette proposition, le deuxième étage aurait été totalement inutilisable
      La maison avait un toit à pignon de type https://en.wikipedia.org/wiki/Gable_roof, et l’escalier était en U le long d’un des murs extérieurs
      Sans rehausser le toit, celui-ci aurait été trop bas côté mur extérieur pour pouvoir monter l’escalier, et même après l’avoir relevé, une personne grande doit pencher la tête en montant
    • Vous écartez ça si facilement, mais en réalité vous prenez trop peu de choses en compte
      Ironiquement, ce que vous faites suppose exactement le même statut de victime que celui que vous attribuez au texte original
      Crier « c’est le boulot ! » revient à soutenir implicitement qu’il faut accepter des concessions sur ses conditions de travail, indépendamment de ce qui a été convenu avec l’employeur à l’embauche, même quand ce n’est pas — du moins explicitement — le travail en question
      Le fait que vous cherchiez à faire passer ce message avec autant d’insistance donne l’impression que vous auriez besoin d’aide pour défendre votre position au travail
      D’après mon expérience, cela vient du déséquilibre de pouvoir dans la relation d’emploi ; les raisons sont complexes, mais pour donner un conseil général — et peut-être peu utile — sur une situation courante : développer ses compétences améliore son pouvoir de négociation implicite quand les réunions se multiplient ou qu’on vous entraîne vers d’autres tâches
      Il faut aussi apprendre à exprimer poliment sa position dans un contexte professionnel
      Tout le monde joue avec une information imparfaite, si bien qu’un peu de fermeté légère et de confiance suffit à rendre plus difficile, pour l’autre, de supposer sur-le-champ que vous avez tort
      Sachez à quoi vous acceptez, et soyez honnête sur ce que vous fournissez
      Si vous avez passé les quatre dernières années à étudier intensivement les algorithmes et structures de données, soyez franc sur le fait que vous prenez ce poste pour résoudre des problèmes de calcul, et indiquez dès le départ que vous n’êtes pas simplement là pour faire nombre ou occuper une chaise
    • Vu positivement, c’est une façon d’expliquer aux architectes à quoi ressemble la vie de programmeur
      Je suis sûr à 100 % que si un architecte lisait ce texte, sa conclusion serait : « les programmeurs ont vraiment la vie facile »
    • Si les programmeurs devaient travailler comme des architectes, ils ne pourraient pas programmer eux-mêmes et devraient seulement rédiger des spécifications
      La majorité des gens qui font réellement la programmation sont incapables de lire les spécifications, et parmi ceux qui le peuvent, beaucoup les ignorent volontairement pour réduire les coûts
      Pourtant, si c’est mal implémenté, la responsabilité vous revient
  • Ça ressemble à l’exemple parfait d’une idée de cocktail où des programmeurs s’imaginent savoir comment fonctionnent les autres domaines
    Un architecte pourrait écrire un texte similaire sur les programmeurs, et il contiendrait tout autant de suppositions erronées et de malentendus sur ce que le travail exige réellement
    https://danluu.com/cocktail-ideas/

    • J’aimerais lire ce genre de texte écrit par un architecte sur les programmeurs
    • Ce serait vraiment un article très intéressant
    • Le travail de tout le monde est facile, sauf le mien
    • C’est une bonne lecture qui colle parfaitement au texte ci-dessus
  • Je suis quelqu’un de visuel et de tactile, donc il faut me faire à l’avance une maquette de la maison
    Si possible, à l’échelle 1:1 et entièrement fonctionnelle, pour que je puisse voir comment elle marche réellement
    Si une partie quelconque de la maison ne me plaît pas, il faudra tout reconstruire depuis le début, et comme vous l’aurez déjà fait une fois, je m’attends à ce que vous puissiez la rebâtir plus vite en intégrant mes modifications

    • C’est bizarre que personne n’ait mentionné mon histoire préférée
      La nouvelle maison doit être reconstruite exactement au même endroit que celle que j’utilise, et la transition vers la nouvelle maison doit se faire sans interruption de service
      Il faut reconstruire le garage avec la voiture dedans, et remplacer le sol de la cuisine et le plan de travail pendant que le lave-vaisselle et le four tournent
      Je dois pouvoir prendre une douche et rester dans la baignoire pendant le remplacement de la salle de bains, la chambre doit être reconstruite silencieusement pendant que je fais l’amour, et les toilettes aussi doivent être refaites pendant que je les utilise
    • C’est quoi ça, une maison pour fourmis ? Comment suis-je censé vivre là-dedans ?
      Il faut l’agrandir
      Comme elle est déjà construite, je m’attends à ce qu’elle soit terminée sur le terrain demain
  • L’auteur de ce texte n’a apparemment jamais eu affaire à des architectes qui travaillent pour des clients fortunés
    Les riches qui veulent une maison sur mesure essaient souvent de la concevoir eux-mêmes, et deviennent extrêmement irrités lorsqu’ils se heurtent à la réalité des principes de base de conception, de l’utilisabilité, des matériaux ou de l’intégrité structurelle
    Ils changent parfois les plans à la dernière minute, une fois que la charpente réelle commence à monter
    À condition, bien sûr, qu’ils ne paniquent pas en voyant la charpente pour la première fois sans comprendre que ce n’est pas encore fini
    Ou bien un ami riche lance une petite remarque sarcastique en regardant le chantier des fondations, et voilà que le client insiste pour que chacun de ses deux enfants ait sa propre salle de récital
    Une seule ne suffit pas
    Autre excellent exemple : quelqu’un voulait mettre sa Ferrari à côté de sa chambre au deuxième étage, et voulait donc installer un garage au-dessus de la cuisine
    Les gaz d’échappement, il s’en fichait

    • Ce genre de choses n’arrive pas seulement quand on conçoit la villa privée d’un riche particulier
      Parmi les histoires que j’ai entendues à Dubai, beaucoup étaient absurdes
      Un promoteur a demandé à un architecte paysagiste de dessiner une terrasse de piscine sur le podium d’une tour en construction
      Quand l’équipe paysage a demandé à l’ingénieur l’épaisseur de la dalle et les valeurs de charge, on leur a répondu que le podium déjà terminé ne pouvait pas supporter une piscine
      Mais les appartements avaient déjà été vendus avec une brochure contenant des images de la terrasse de piscine, et personne n’avait dit à l’ingénierie qu’il fallait intégrer la charge de la piscine, ni même où elle serait placée sur le podium
      Autre histoire : alors que le noyau d’une tour résidentielle de 40 étages était déjà monté jusqu’au 20e étage, le promoteur a soudain eu l’idée d’une piscine sur le toit et a demandé au cabinet d’architecture de la concevoir
      Comme si ce n’était pas quelque chose qui devait être planifié à l’avance, depuis les fondations et la structure jusqu’à l’emplacement des équipements de maintenance
    • La personne qui voulait mettre une Ferrari à côté de sa chambre au deuxième étage, c’est celle-ci ?
      https://youtu.be/Us8mDKUaX2M?si=qnrckuGLyWzoFNAe&t=1515
    • Un ami architecte a travaillé sur un projet spécial pour des clientes particulières, qui se sont révélées être des épouses saoudiennes
      L’idée en elle-même était bonne, mais elles changeaient d’idée tous les mois à chaque nouvelle mise à jour d’un magazine d’architecture
      Du coup, mon ami devait descendre à Riyadh ou à Mecca environ tous les deux mois pour expliquer les détails de conception
      Le plus fou, c’est qu’il n’y avait pas une seule épouse, mais plusieurs, et plusieurs nouveaux magazines d’architecture sur papier glacé
      Il a fallu fabriquer beaucoup de maquettes, mais ça, c’est courant
      Autre client riche cauchemardesque : Hitler aussi était célèbre pour aimer les maquettes de Speer et changer constamment d’avis
      Il pensait toujours mieux savoir que les autres
  • Ce genre d’article et les commentaires qui suivent passent toujours à côté d’un point essentiel : la construction et le logiciel ne sont absolument pas la même chose
    Par exemple, dans la construction, il y a l’architecte qui conçoit le bâtiment, le concepteur qui prépare les plans techniques, l’ingénieur qui signe les plans pour approbation, la fabrication qui produit les éléments de construction conformément aux plans, le géomètre qui vérifie qu’il est possible de construire sur le terrain, l’entrepreneur qui construit effectivement, le couvreur qui pose le toit, le chef de chantier qui supervise pour vérifier que l’entrepreneur construit correctement, l’organisme de réglementation du bâtiment qui donne l’approbation officielle au bâtiment achevé, l’électricien qui tire les câbles, le plombier qui installe la plomberie, le plâtrier qui enduit les murs, les peintres-décorateurs qui finissent les murs, et les installateurs qui posent le reste
    Ce sont toutes des entreprises distinctes, et j’en ai sûrement oublié ou mal nommé certaines
    Même avec plusieurs personnes juridiquement responsables en cas de travail défectueux, des drames comme Grenfell arrivent encore
    À l’inverse, dans l’ingénierie logicielle, il y a le chef de produit qui décide quoi construire, le designer qui définit le fonctionnement et l’apparence, l’ingénieur logiciel qui écrit le code, et l’auditeur qui vérifie la conformité aux normes applicables comme PCI DSS ou SOC2
    Il existe aussi beaucoup de rôles de support, mais si je les ajoutais, il faudrait en ajouter cinq fois plus côté construction, donc je les ai laissés de côté
    Je ne cherche pas à dire qui a le travail le plus dur, ni quel domaine est meilleur ; je veux simplement souligner que les deux domaines ne sont pas comparables

    • Je viens de lire une citation du genre « personne ne demande à un constructeur de supprimer le deuxième étage et d’installer une piscine au sous-sol », et c’est vraiment juste
    • Je me demande si « Sparkies » est un jargon du métier, une traduction, ou une autre expression que je ne connais pas
      Normalement, je dirais plutôt « electricians »
    • Je pensais que l’ingénierie logicielle fonctionnait comme ça : des managers, encore plus de managers, toujours plus de managers, puis un seul développeur full-stack affecté à 20 % au projet
      Ce développeur assiste aux réunions avec les managers, rédige les spécifications, écrit le code, teste l’application, la déploie, et assure le support d’astreinte 24/7
    • Enfin quelqu’un qui voit à quel point le métier d’ingénieur logiciel est devenu bordélique
      Si vous regardez mon historique de posts et de commentaires sur HN, vous verrez que je dis exactement ça depuis longtemps
      On fait beaucoup trop de choses
  • C’est amusant, mais je préfère l’ancienne version sur l’équipe de construction d’un pont
    https://www.stilldrinking.org/programming-sucks - deuxième section

    • Ce texte a 20 ans d’avance sur celui-là, donc difficile de parler d’« ancienne version »
      Merci quand même pour le partage, c’est plutôt drôle
  • « Quand vous dites combien de temps prendra le travail, ne parlez pas en heures ni en jours ; utilisez des points imaginaires qui signifient autre chose pour chacun »
    Beaucoup de commentaires voient aussi ce texte comme étant de mauvais goût, rabaissant les architectes et adoptant une posture victimaire du type « la programmation, c’est trop dur », mais je l’ai lu autrement
    C’est une critique de l’industrie du logiciel elle-même, et cela dit que nous avons complètement échoué à faire comprendre à nos clients la réalité de notre travail
    Aucune personne saine d’esprit ne demanderait une maison dont le nombre de chambres passerait de 2 à 42
    Pourtant, le travailleur IT moyen accepte ce genre de chose comme normal dans le travail logiciel
    Il faut faire comprendre ce point au client, et ne pas déléguer cette tâche au Scrum Master
    En général, ils ne font que rendre les choses plus confuses et plus compliquées

  • Il faut garantir une confidentialité stricte aux personnes qui entrent dans la maison, tout en permettant à tout le monde de bien communiquer
    Il faut aussi que seules les personnes autorisées puissent entrer ou voir ce qui se passe à l’intérieur, et que tout le monde soit très bien protégé contre les incendies, les atteintes physiques et les autres personnes
    Malheureusement, cette sécurité doit être obtenue sans coût supplémentaire ni restriction d’usage

    • La maison doit être construite dans une zone non incorporée où la criminalité est omniprésente et où les forces de l’ordre ne peuvent apporter aucune aide
      Elle doit malgré tout être protégée contre le vandalisme, les incendies criminels, le vol, l’installation de dispositifs d’écoute, les agressions verbales ou physiques contre les visiteurs, ainsi que l’accès par des terroristes ou des personnes figurant sur des listes de sanctions mondiales
      Il n’est pas prévu de souscrire une assurance, la police n’enquêtera sur aucune infraction, et il n’est pas question d’embaucher des agents de sécurité
      Mais la maison doit être ouverte au public
      Les personnes qui chercheront à en abuser ou à l’attaquer iront de bandes d’adolescents désœuvrés à des groupes criminels organisés, en passant par les services de renseignement et les armées de grandes puissances hostiles
      Bonne chance
  • La plupart du temps, quel que soit le travail, il s’agit d’écouter les gens
    Peu importe que ce soit le président ou un agent d’entretien
    Les gens veulent quelque chose, mais ne savent pas exactement comment ni pourquoi ils le veulent
    Avant tout, ils veulent sentir que leur problème a été entendu, puis que l’on fait de son mieux pour les aider

    • Surtout avec de petits clients, j’ai compris qu’il est utile de vérifier si la personne qui paie est la même que celle qui utilisera réellement le résultat
      Dans certains cas, une nouvelle maison est construite pour des gens qui étaient satisfaits de l’ancienne
      Si les utilisateurs ne veulent pas changer, ils peuvent facilement faire échouer le projet
      Avant de dépenser de l’argent, il vaut mieux déterminer à quel point le propriétaire tient vraiment au projet
      Au final, quand il faudra passer en force, il faudra voir qui se fait virer : l’architecte ou la belle-mère
    • Ça sonne bien, mais je pense que la réalité de beaucoup de gens ici n’est pas celle-là
      En général, c’est plutôt : « Notre produit a besoin de X, débrouillez-vous »
      Même en écoutant ce manager pendant des heures ou des jours, en mettant sa casquette de psychiatre pour en tirer des informations plus utiles et en renégociant les exigences, on n’échappe pas aux semaines ou aux mois de travail pénible qui suivent
      Si vous êtes responsable d’un compte, je comprends
      Vous écoutez le client du mieux possible, puis vous rédigez un document, un ticket ou autre, et vous transmettez à quelqu’un d’autre pour qu’il s’en occupe
      Mais un agent d’entretien qui passe la plupart de son temps à écouter n’est pas un bon agent d’entretien ; cette affirmation n’est donc pas aussi universelle qu’elle en a l’air