Logiciels

Dynamo : « sans coder » est une demi-vérité utile

L'interface visuelle supprime la syntaxe, pas le raisonnement. Ce qui arrête les débutants n'est jamais l'interface : c'est la gestion des listes. Et ce qui coûte cher ensuite n'est pas d'écrire le script, c'est de le maintenir vivant quand Revit change de version.

Lecture : 7 minLe vrai obstacle : les listesLa donnée, pas la géométrieLe coût qu'on ne calcule pasMàJ : juillet 2026
La promesse, et ce qu'elle cache

Vous ne tapez pas de code. Vous programmez quand même.

C’est une nuance, et elle décide de la réussite. Relier des boîtes par des fils supprime la syntaxe, la ponctuation et les fautes de frappe. Cela ne supprime ni les variables, ni les conditions, ni les structures de données.

L’argument commercial est honnête sur un point : la barrière d’entrée est réellement plus basse. On produit quelque chose qui fonctionne en une heure, ce qui est impossible avec un langage classique. Beaucoup de professionnels franchissent ce pas et n’auraient jamais ouvert un éditeur de code.

Puis vient le mur, et il est toujours au même endroit. Ce n’est ni l’interface, ni le vocabulaire : ce sont les listes. Comment une opération s’applique quand on lui donne dix éléments d’un côté et un seul de l’autre, comment on traite une liste de listes, à quel niveau de profondeur agir. Ces notions ont des noms dans l’outil, et ce sont les premières à apprendre, avant tout le reste.

Le signe qui ne trompe pas

Si votre script renvoie un résultat mais pas le bon nombre de résultats, vous avez un problème de listes, pas de logique. C’est le diagnostic le plus fréquent, et l’essentiel du temps passé dans l’outil est du dépannage, pas de la construction. Sachez-le avant de commencer : ce n’est pas vous, c’est la nature de l’exercice.

Ce pour quoi il est réellement bon

La donnée d’abord, la géométrie ensuite

Les démonstrations montrent des façades paramétriques qui ondulent. Les usages qui font gagner du temps sont infiniment plus ternes, et c’est une bonne nouvelle.

Un conseil revient chez ceux qui enseignent l’outil, et il est contre-intuitif : commencez par les données, nombres, textes, éléments, et ignorez l’aperçu géométrique. La géométrie est ce qui attire, et c’est aussi ce qui rend les premiers scripts fragiles et lents.

✅ Ce qu'il fait très bien

Répétitif, massif, sur des données
  • Renseigner un paramètre sur des centaines d’objets d’un coup.
  • Renommer, recoder, réorganiser selon une règle.
  • Extraire des données pour les vérifier ou les exporter.
  • Contrôler : repérer ce qui manque, ce qui est aberrant, ce qui est en double.
  • Reporter une information d’un objet vers ceux qu’il contient.

⚠️ Ce qu'on lui demande à tort

Ponctuel, complexe, ou géométrique
  • Une tâche à faire une seule fois : la main est moins chère.
  • De la géométrie complexe, où l’outil devient lent et instable.
  • Ce qui demande un jugement à chaque cas, donc non automatisable.
  • Remplacer une règle de modélisation absente par un correctif après coup.
  • Produire un livrable dont personne n’a défini ce qu’il devait contenir.

Prenons comme exemple une tâche ingrate et payante : écrire sur chaque équipement le code de la zone dans laquelle il se trouve. Personne ne le fait à la main sur huit cents objets. Sans ce code, pourtant, il n’y a ni rattachement d’un planning à des objets, ni rapprochement d’un quantitatif avec une bibliothèque de prix, ni tableau de bord possible. C’est exactement la clé de jointure dont dépendent le phasage, le chiffrage et le pilotage.

Le détail technique qui décide de tout, sur cet exemple

Dans quel paramètre écrivez-vous ce code ? Un paramètre de projet ordinaire fera l’affaire à l’écran et se perdra à l’export. Un paramètre partagé, doté d’un identifiant stable, peut être visé dans un mappage vers un jeu de propriétés IFC, donc atteindre les autres intervenants. Le script est identique dans les deux cas ; ce qu’il produit ne l’est pas du tout.

Le meilleur usage de l'outil, et le moins spectaculaire

Fabriquer et entretenir les identifiants partagés qui rendent la maquette interrogeable. C’est laid à regarder, ça ne fait pas une bonne vidéo, et c’est ce qui débloque le BIM 4D, le BIM 5D et les tableaux de bord d’un seul coup.

Le coût qui arrive plus tard

Un script, c’est du code sans la discipline du code

Un développeur travaille avec un historique de versions, des tests, une revue par un pair et de la documentation. Un script d’agence n’a généralement rien de tout cela, et il porte pourtant les mêmes risques.

1. L'auteur unique

Le risque humain
Une seule personne comprend le script, et souvent elle seule sait pourquoi telle branche existe.
Ce qui se passe alors
  • Elle change de projet ou d’entreprise, et plus personne n’ose y toucher.
  • Le script continue de tourner jusqu’au jour où il produit un résultat faux.

2. La dépendance aux extensions

Le risque externe
Les bibliothèques communautaires apportent l’essentiel de la puissance, et sont maintenues bénévolement.
Ce qui se passe alors
  • Une extension sans version compatible bloque la montée de version du logiciel.
  • Le mainteneur peut cesser, et rien ne vous en prévient.

3. Le changement de version

Le risque structurel
Les scripts s’appuient sur l’interface de programmation du logiciel, qui évolue à chaque édition annuelle.
Ce qui se passe alors
  • Des fonctions changent de nom ou disparaissent, et le script casse.
  • La panne survient au pire moment, celui de la migration.

4. Le silence

Le risque insidieux
Un script qui casse franchement est une bonne nouvelle. Le vrai danger est celui qui continue de tourner en traitant mal certains cas.
Ce qui se passe alors
  • Personne ne vérifie un traitement automatique qui n’a jamais échoué.
  • L’erreur se découvre en aval, sur un quantitatif ou un export.

La règle minimale, si vous n'en retenez qu'une

Aucun script ne circule sans une phrase qui dit ce qu’il fait, ce qu’il attend en entrée et ce qu’il modifie. Écrite dans le fichier lui-même, pas dans un courriel. C’est cinq minutes, et c’est ce qui sépare un outil d’entreprise d’une bricole personnelle que personne n’osera reprendre.

La décision qu'on saute

Ce script doit-il exister ?

L’automatisation a un charme propre : elle est plus intéressante que la tâche qu’elle remplace. C’est précisément pourquoi il faut poser la question froidement.

Le calcul habituel compare le temps d’écriture au temps gagné. Il est faux, parce qu’il oublie le coût de possession : maintenir le script à chaque version, le réparer quand une extension disparaît, et le réexpliquer à chaque nouvel arrivant. Un script utilisé deux fois par an ne rembourse presque jamais ce coût.

1

Combien de fois ?

Une tâche répétée à chaque projet justifie l’effort. Une tâche unique, presque jamais : la faire à la main coûte moins cher que la décision de l’automatiser.

2

Combien de temps vivra-t-il ?

Un script lié à une convention de projet meurt avec le projet. Un script lié à vos standards internes vit des années, et mérite d’être soigné.

3

Qui le reprendra ?

Si la réponse est « personne d’autre que moi », vous ne créez pas un actif, vous créez une dépendance.

Le cas où il ne faut surtout pas automatiser

Quand le script sert à rattraper une règle de modélisation absente. Corriger automatiquement des catégories mal choisies ou des paramètres vides traite le symptôme et pérennise la cause : l’équipe continue de produire mal, puisque le script répare. La bonne réponse est dans modéliser proprement, et elle coûte moins cher à long terme.

Si vous vous lancez

Par où commencer, honnêtement

La progression qui fonctionne est l’inverse de celle que suggèrent les démonstrations.

  1. Les listes avant tout le reste. Comment une opération se distribue sur plusieurs éléments, et comment travailler à la bonne profondeur. C’est aride, et tout le reste en dépend.
  2. Des données, pas de la géométrie. Vos premiers scripts doivent lire et écrire des textes et des nombres. La géométrie viendra, ou pas : elle n’est pas l’intérêt principal de l’outil dans un bureau d’études.
  3. Un problème réel et petit. Une tâche que vous détestez faire à la main, sur laquelle vous savez à quoi ressemble le bon résultat. Vérifier est plus important qu’exécuter.
  4. Lire les avertissements. L’essentiel du temps se passe à comprendre pourquoi un nœud renvoie autre chose qu’attendu. C’est le travail, pas un contretemps.
  5. N’empruntez pas ce que vous ne comprenez pas. Un script trouvé en ligne et recopié fonctionnera peut-être, et deviendra ingérable au premier changement.

Ce qu'il faut avoir compris avant d'ouvrir l'outil

La logique interne du logiciel que vous automatisez. Un script manipule des catégories, des types et des occurrences : si ces notions sont floues, l’automatisation amplifiera la confusion au lieu de la résoudre. Le préalable est Revit, comprendre sa logique.

Ce qu'il faut retenir

En résumé

Un excellent outil, dont les échecs sont presque toujours des erreurs de décision plutôt que de technique.

Trois idées à emporter. « Sans coder » supprime la syntaxe, pas le raisonnement : le mur est toujours à l’endroit des listes, et l’essentiel du temps passé dans l’outil est du dépannage. Son meilleur usage est le moins spectaculaire : fabriquer et entretenir les identifiants partagés qui rendent une maquette interrogeable, ce dont dépendent le phasage, le chiffrage et les tableaux de bord. Enfin, un script est du code sans la discipline du code : auteur unique, extensions bénévoles, interface logicielle qui change chaque année. Le vrai coût n’est pas de l’écrire, c’est de le garder vivant.

La suite logique

Le préalable est Revit, comprendre sa logique : on n’automatise bien que ce qu’on comprend. Ce que les identifiants produits permettent ensuite est décrit dans Power BI et le BIM. Et pour la question de fond, celle de savoir s’il faut automatiser ou mieux modéliser, modéliser proprement.

Rebondir

À explorer ensuite

Les guides qui prolongent naturellement celui-ci, dans d'autres sections du site.