LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

LabView VI in text format


@TimBlaisdell wrote:

I imagine that if I could save a VI as an XML file that contained every detail of every component on the screen (the location of every wire, every corner, every icon, etc., etc.)


Don't imagine anymore.  NGX actually saves the gvi in an XML format.


GCentral
There are only two ways to tell somebody thanks: Kudos and Marked Solutions
Unofficial Forum Rules and Guidelines
"Not that we are sufficient in ourselves to claim anything as coming from us, but our sufficiency is from God" - 2 Corinthians 3:5
0 Kudos
Message 11 of 22
(2,289 Views)

A VI should never be so large that it takes more than one person to support it.

"If you weren't supposed to push it, it wouldn't be a button."
Message 12 of 22
(2,268 Views)

@paul_cardinale wrote:

A VI should never be so large that it takes more than one person to support it.


While I think this is a good motto to live by, there are often time when two people will want to modify the same VI.  Having more than one person support the VI isn't the problem, the problem might be if that one person goes on vacation with some uncommitted changes, then another person is forced to update that VI when they are away, and then when they come back a merge needs to happen.  Still there are cases where a VI can be saved in XML but it is an experiment and undocumented.  

 

I haven't seen if the XML in NXG helps merging.  A merge only works well if the majority of the lines in the file are untouched after a change, and the format might be XML but still closed, and moving all objects one pixel over might cause every line to be changed.  For this reason I think Lock, Commit works better for SCC in LabVIEW.

0 Kudos
Message 13 of 22
(2,260 Views)
@Hooovahh wrote:

@paul_cardinale wrote:

A VI should never be so large that it takes more than one person to support it.


While I think this is a good motto to live by, there are often time when two people will want to modify the same VI.

 


"Often"?  At the places I've worked over the past 3 decades, that has hardly ever happened.

 


 Having more than one person support the VI isn't the problem, the problem might be if that one person goes on vacation with some uncommitted changes, 

Then you have a problem with undisciplined staff (especially if that happens often).

"If you weren't supposed to push it, it wouldn't be a button."
Message 14 of 22
(2,249 Views)

Libraries!

 

Use them.   This will help modularize your code into areas of responsibility for starters. It will allow your developers to focus on 1 thing at a time.  It forces you to think first code second. It avoids the need for two developers to modify the same vi.  AND as an additional plus. The source project for the lvlib can contain both the deployable lvlib for inclusion to the master project and the Unit Tests for the library


"Should be" isn't "Is" -Jay
Message 15 of 22
(2,247 Views)

Alright maybe the word "often" wasn't enough of a qualifier.  It has happened, and in my opinion it can happen easier if you don't have a lock commit paradigm.

 


@paul_cardinale wrote:

Then you have a problem with undisciplined staff (especially if that happens often).


You mean people in a rush to go on vacation, or travel for work, and forgetting that they even had something locked?  It happens.  If you have a team of 8 people, there's a good chance at least one of them is traveling or on vacation at any given time.  On teams of this size I would say merging issues did happen around once a month, but were less frequent as time went on and individuals became more disciplined.  Still the majority of the team in the situation I'm thinking of were younger, and less familiar with SCC.  In these cases I would say no VI is so large that one person alone can't support it, but more than one member of the team should be able to support it independently.

0 Kudos
Message 16 of 22
(2,234 Views)

@JÞB wrote:

Libraries!

 

Use them.   This will help modularize your code into areas of responsibility for starters. It will allow your developers to focus on 1 thing at a time.  It forces you to think first code second. It avoids the need for two developers to modify the same vi.  AND as an additional plus. The source project for the lvlib can contain both the deployable lvlib for inclusion to the master project and the Unit Tests for the library


I have encountered ZERO issues since we started using libraries and for that matter multiple projects in some cases.

 

But then again, we commit multiple times a day and yell at each other when we do.

 

Ben

Retired Senior Automation Systems Architect with Data Science Automation LabVIEW Champion Knight of NI and Prepper LinkedIn Profile YouTube Channel
0 Kudos
Message 17 of 22
(2,228 Views)

@Hooovahh wrote:

Alright maybe the word "often" wasn't enough of a qualifier.  It has happened, and in my opinion it can happen easier if you don't have a lock commit paradigm.

 


@paul_cardinale wrote:

Then you have a problem with undisciplined staff (especially if that happens often).


You mean people in a rush to go on vacation, or travel for work, and forgetting that they even had something locked?  It happens.  If you have a team of 8 people, there's a good chance at least one of them is traveling or on vacation at any given time.  On teams of this size I would say merging issues did happen around once a month, but were less frequent as time went on and individuals became more disciplined.  Still the majority of the team in the situation I'm thinking of were younger, and less familiar with SCC.  In these cases I would say no VI is so large that one person alone can't support it, but more than one member of the team should be able to support it independently.


When a person goes on vacation, it is the responsibility of that person, and also the responsibility of that person's manager to insure that the absence won't cause any problems.  The failure of both those people to act appropriately cannot be corrected with technology.  And where on Earth do you work where people are on vacation 1/8th of the time?

"If you weren't supposed to push it, it wouldn't be a button."
Message 18 of 22
(2,216 Views)

@paul_cardinale wrote:

...than one member of the team should be able to support it independently.


When a person goes on vacation, it is the responsibility of that person, and also the responsibility of that person's manager to insure that the absence won't cause any problems.  The failure of both those people to act appropriately cannot be corrected with technology.  And where on Earth do you work where people are on vacation 1/8th of the time?

 

 


Agreed.

 

 

Spoiler

Re: 18th of the time

 

hqdefault

 

That would be me!

 

 After 18 years plus the vacation days accumulate.

 

 

Ben

 

 

Retired Senior Automation Systems Architect with Data Science Automation LabVIEW Champion Knight of NI and Prepper LinkedIn Profile YouTube Channel
0 Kudos
Message 19 of 22
(2,209 Views)

@paul_cardinale wrote:

@Hooovahh wrote:

Alright maybe the word "often" wasn't enough of a qualifier.  It has happened, and in my opinion it can happen easier if you don't have a lock commit paradigm.

 


@paul_cardinale wrote:

Then you have a problem with undisciplined staff (especially if that happens often).


You mean people in a rush to go on vacation, or travel for work, and forgetting that they even had something locked?  It happens.  If you have a team of 8 people, there's a good chance at least one of them is traveling or on vacation at any given time.  On teams of this size I would say merging issues did happen around once a month, but were less frequent as time went on and individuals became more disciplined.  Still the majority of the team in the situation I'm thinking of were younger, and less familiar with SCC.  In these cases I would say no VI is so large that one person alone can't support it, but more than one member of the team should be able to support it independently.


When a person goes on vacation, it is the responsibility of that person, and also the responsibility of that person's manager to insure that the absence won't cause any problems.  The failure of both those people to act appropriately cannot be corrected with technology.  And where on Earth do you work where people are on vacation 1/8th of the time?


Probably anywhere but the USA.

Bill
CLD
(Mid-Level minion.)
My support system ensures that I don't look totally incompetent.
Proud to say that I've progressed beyond knowing just enough to be dangerous. I now know enough to know that I have no clue about anything at all.
Humble author of the CLAD Nugget.
0 Kudos
Message 20 of 22
(2,204 Views)