Discussions au sujet de NI LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Labview (et NI) : un environnement de développement moribond?

Highlighted

 

Hello,

 

Je me posais la question de l'avenir de Labview. Effectivement un nouveau chantier se dessine pour moi et mon équipe, et nous ne sommes pas dépendants de Labview par rapport au hardware. Plusieurs solutions sont possibles, donc la question du langage se pose.

 

Eh bien je trouve que ce "langage" est vraiment en perte de vitesse. Certes les forums de discussion sont peu à peu remplacés par les réseaux sociaux, mais tout de même.. Un simple retour à ce forum en 2016 montre ceci : En 2020 il y a 15 sujets en 30 jours. En 2016, des dizaines et des dizaines, j'ai arrêté de compter!

 

Selon moi NI a un peu raté le virage communautaire, que Labview 2020 community vient un peu rattraper. Mais je pense aussi que l'embarqué a été fortement démocratisé par Arduino et Raspberry, et aussi par plein d'autres acteurs. Le positionnement tarifaire effrayant de NI doit aussi avoir un impact.

 

Bref, je voulais avoir votre avis, faut-il encore choisir Labview comme environnement de développment pour un nouveau projet en 2020?

 

 

0 Kudos
Message 1 of 7
(216 Views)
Highlighted

c'est une bonne question...

 

coté professionnel, le développement LV représente 10 à 30% de mon activité, donc plus amateur que vrai professionnel 🙄

pour le hardware ayant en stock des vieilles cartes PCI6601 j’apprécie de pouvoir encore les utiliser 😉

le prix de la licence n'est pas donné mais la question est : développe t on plus rapidement sous labview ?

n'étant pas formé aux autres langages je ne peux pas répondre 😁 

 

coté loisir/personnel l’environnement gratuit arduino offre quelques avantages et quand je voie des développements comme

https://github.com/Jetblack31/EcoPV 

cela offre beaucoup de possibilités à un coût très faible

 

et actuellement au travail j'utilise une interface I2C ...

0 Kudos
Message 2 of 7
(168 Views)
Highlighted

Supposant que cela peut vous intéresser, voici l'évolution des messages dans le groupe LV en anglais.
https://forums.ni.com/t5/LabVIEW/1M-messages-in-the-LV-board/m-p/3655198

 

Avec les 1'137'578 messages actuels, un tassement semble apparaître aussi (je n'ai pas vérifié en ajoutant ce point au graphique).

 

Ceci dit, je ne jugerais pas de la pertinence d'un langage de développement sur la base de l'activité sur les forums.

0 Kudos
Message 3 of 7
(134 Views)
Highlighted

C'est une bonne question en effet. 

 

Selon moi LabVIEW comme langage se tient à jour, est facile d'usage et permet de visualiser facilement l'architecture d'un projet. C'est une opinion personnelle mais je crois qu'un projet LabVIEW est plus simple à débugger à cause du dataflow (bon, c'est un peu biaisé car c'est le langage le plus familié pour moi).

 

Par contre il est indéniable que l'utilisation de LabVIEW est en perte de vitesse, la baisse du dynamisme du forum n'en est qu'un exemple. NI en est probablement responsable, entre autres: virage vers NXG qui ne semble pas obtenir l'opinion favorable de bien des développeurs, coût exorbitant des licences alors que Python, qui est gratuit et possède un large éventail de librairies, devient de plus en plus populaire. Baisse de la qualité du service à cause de la coupure du nombre de poste de représentant locaux, depuis 2 ans le renouvellement  de nos licences LabVIEW est un enfer. 

 

Faut-il encore choisir LabVIEW comme environnement de développement en 2020? Il y a probablement plusieurs facteurs à considérer: Coût d'un changement de plateforme (on ne peut réutiliser ce qui a déjà été fait), temps alloué au développement (un changement d'environnement implique forcément plus de temps de développement). Y a t-il un budget R&D pour effectuer ce changement (c'est probablement un facteur majeur, aucun manager ne voudra son projet impacté par un changement d'environnement comme ce sera le cas dans une compagnie qui fonctionne par gestion de projet). Matériel utilisé, par exemple si on a des cartes NI, DAQmx facilite le développement. Facilité à trouver des développeurs expérimentés et efficaces (ceci est un point faible de LabVIEW, beaucoup de LabVIEW dans les CV mais peu de bon développeurs LabVIEW). J'apporte ce dernier point car il est ressortie lors de discussions sur la direction à prendre au niveau compagnie pour les softwares de test (de plus en plus c'est Python qui est utilisé).

 

Bien que l'emploi de LabVIEW ait toujours été marginal où je travaille, il y a déjà un virage amorcé vers Python (avant le développement utilisait principalement VB).

 

Ben64

 

 

--------------------------------------------------
The best way to say thanks is to give kudos!
0 Kudos
Message 4 of 7
(113 Views)
Highlighted

 

Merci pour vos réponses. 

 

J'ai analysé les nombres de topics car ça m'a interpellé de voir si peu de nouveaux messages après une période d'absence. Le nombre de messages dans un forum est un indice de la popularité. Stackoverflow utilise d'ailleurs ce type d'indice pour établir les tendances actuelles. 

 

Je partage aussi l'avis de Ben. Finalement, Labview est efficace, stable, actualisé. Les qualités intrinsèques de l'outils sont là. 

 

La baisse de popularité me pose deux doutes.

Premièrement, au fil du temps et de manière générale,  le développement logiciel s'est fortement communautarisé selon moi. Dans tous les IDE il y a un explorateur de packages intégré. GitHub a pris énormément d'ampleur. La plupart des bibliothèques sont complètements libres de droits. La programmation passe d'un savoir obscur et propriétaire, à un service "d'assemblage". Finalement on ne demande plus au programmeur de faire de A à Z un produit unique, complexe, buggé, , mais d'utiliser au maximum les librairies à disposition. Et effectivement, si le langage perd de la popularité, il perdra aussi du support (forums), des exemples, des librairies, des packages, ...  A voir le maigre VIPM, (d'ailleurs qui ne vient pas de NI).

 

Deuxièmement, la perte de popularité signifie que le langage est moins attractif. Donc qu'il sera plus difficile de trouver des gens qualifiés et motivés à travailler avec. Personnellement je n'aime pas la sensation d'être sur une voie de garage, et je pense que c'est le cas de plein de développeurs. Donc la tendance pourrait s'alourdir.

 

A titre très personnel je trouve même que ce genre de situation un effrayante. On se demande soudainement si on a fait le bon choix de carrière. Et c'est fou de se dire que sa carrière en fait liée à une technologie propriétaire portée par une seule entreprise. Plus j'y réfléchis, plus je me dis qu'il serait sage de migrer.

Message 5 of 7
(98 Views)
Highlighted

Salut,

 

Sujet très intéressant effectivement. Je pense que comme beaucoup de choses, il y a des périodes qui vont avoir des implications et donc des changements. Je m'explique. LabVIEW a presque 35 ans. Il en a parcouru des années, des plateformes et des versions. Il continu d'évoluer, ce qui est déjà bon signe, car les langages qui n'évoluent pas sont plus dangereux je pense. Mais aujourd'hui LabVIEW connait peut être plus une phase descendante que montante c'est clair. Bien que les dernières versions ont apportés de réelles nouveautés. NXG sera forcément plus dans une phase ascendante en comparaisaon d'un point de vue investissement NI, mais on est pas encore au niveau de LabVIEW, c'est vrai aussi.

 

Est ce qu'il faut juger un langage à son forum? Difficile à dire, LabVIEW est un langage pour le domaine de la mesure, c'est un marché restreint par rapport à d'autres langages plus généralistes. Pour les forums aussi, il peut y avoir moins de posts actuellement, mais l'outil de suggestion de post similaires c'est grandement amélioré. Il permet parfois de trouver la solution au problème sans créer un doublon (ca m'est arrivé plusieurs fois ces derniers temps). Pour une fois qu'un outil de recherche sur le site NI est performant il faut le dire.

Un langage sur lequel tout le monde pose des questions, c'est bien, mais il faut aussi voir le niveau des questions. Bref, je reste très sceptique de cette approche. C'est un indicateur, mais je trouve qu'il est très difficile à interpréter.

 

Pour ce qui est de LabVIEW. j'adore ce langage. L'approche graphique est à mon sens extraordinaire. LabVIEW s'est tiré parti du multicœur depuis LabVIEW 8.6 quand Python est par défaut monothread...Et pourtant, quand on creuse un peu entre les deux, dans la philosophie, ils sont très proches. Python, comme LabVIEW a été pensé pour simplifier l'approche de la programmation pour les personnes dont ce n'était pas la vocation première. Python influence LabVIEW (Vis malleable par exemple, nouveau type de données Map...). Interactions en LabVIEW et Python (plus que perfectible sur ce point de mon point de vue). Ni fournit un environnement complet de développement et de mise au point. LabVIEW est compilé à la volée, un VI brisé est identifié immédiatement. En Python, suivant l'éditeur qu'on utilise, la plupars du temps, c'est jusque là tout va bien à l'exécution (propre au langage interprété).
Est ce que Python est gratuit? il faut se sortir ca de la tête. Il est open source et sa distribution et son utilisation ne nécessite pas de licences payantes, c'est vrai. Mais Python seul ne fait as grand chose. Il faut un environnement de développement, qui lui peut être payant pour en tirer pleinement parti. Il faut être formé comme tout langage. Il y a la question du support. Certes il y a la communauté, mais si votre sujet n'intéresse personne, personne ne répondra (faites un post Python sur un pilotage en RS232 d'un instrument inconnu au bataillon sur StackOverflow, je serais curieux du nombre de réponses). Par défaut, par de licence, pas d'éditeur, on n'a pas non plus d'ingénieurs dont c'est le boulot de nous aider comme on peut l'avoir avec les supports techniques de NI ou d'autres fournisseurs de matériels ou de logiciel.

La communauté c'est bien et c'est important, mais quand on cherche une bibliothèque pour une fonction et qu'on en trouve 30 avec des versions en 0.0.02 alpha ou autre, difficile de ne pas penser que c'est juste un étudiant qui a fait son projet pour le mettre sur son CV. 

Je crois surtout que la question a se poser est la suivante : Quel est le meilleur outil pour mon projet ?

Du matériel d'acquisition de données, du traitement et de la visualisation de données => LabVIEW existe pour répondre à cette question, donc il sera le plus adapté que je pense tous les autres langages.

 

Tu veux faire un site web ? ne le fait pas en LabVIEW. On te dira de le faire en Python. La réponse est raccourci, car Python est peut être bon pour gérer les bases de données, la gestion du site etc mais il faudra à moment ou un autre sortir du HTML, donc Python ne sera pas la solution unique ultime. D'ailleurs, tu veux faire un site web mais faire du LabVIEW, NXG le fait pas si mal que ca 🙂

 

Tu veux faire une application qui va vivre pendant quelques années et se préparer au futur ? Vise du 64 bits. NXG est forcément 64 bits, mais tu peux aussi commencer en LabVIEW en ayant déjà en tête une migration vers NXG.

 

Tu veux déployer une application simplement sous la forme d'un exe ? Est ce que Python est la meilleure solution ? Je ne suis pas convaincu. On peut faire des exe en Python, mais ce n'est pas ca nature. Python vit très bien sur un déploiement à base de serveur (web + IA par exemple chez Google). Mais une distribution sur un poste local, c'est une autre histoire. LabVIEW, il faut un run-time gratuit dans la plupart des cas. C'est plus simple et intégré.

 

Peut être que la meilleure réponse à tes questions pour ton projet te tourneront vers autre chose encore.

 

Enfin, quand on développeur en LabVIEW, on reste développeur avant tout. Si on comprends les concepts de programmation en LabVIEW ou sait rapidement les appliqués à d'autres langages. C'est comme les langues étrangères. Il faut faire l'apprentissage et la conversion. Alors c'est plus simple de le faire quand les langues ou langages partagent des concepts en commun mais LabVIEW est un langage suffisamment évoluer pour ne pas avoir à rougir face aux autres (programmation orienté objet, programmation parallèle ne sont que é exemples).

Désolé pour le post un peu long, mais ca me faisait plaisir de participer (en plus ca améliore les stats du forum 🙂 )

Maxime R.  

  CLA - Certified LabVIEW Architect / Architecte LabVIEW Certifié
  CTA - Certified TestStand Architect / Architecte TestStand Certifié

Message 6 of 7
(75 Views)
Highlighted

Merci pour vos points de vue. Je crois qu'on a tous plus ou moins le même sentiment. Pour ma part j'ai eu du plaisir à lire vos impressions, et ça aide à prendre de la hauteur.

 

C'est clair que l'environnement le plus adapté dépend pour chaque projet. Et que Labview restera certainement toujours un choix judicieux dans beaucoup de situations.

 

L'avenir nous diras assez vite si la sortie de Labview Community 2020 amènera du sang frais. En tout cas le test, l'automatisation, et l'embarqué ont encore de beaux jours. Nul doute que cet environnement persistera encore longtemps.

0 Kudos
Message 7 of 7
(35 Views)