07-24-2009 11:14 AM
I've had some revalations on how to best use LabView by reading this thread. I started programming with it 4 days ago when my boss said "Make a SQL<->PLC transaction manager and make it free", and then I learned of the free Ethernet/IP tools in LabView.
I think this is more of a commandment than a proverb: Thou shalt forget everything previously learned about programming with text based languages when using LabView.
07-24-2009 11:39 AM
pandersen wrote:Thou shalt forget everything previously learned about programming with text based languages when using LabView.
That reminds me:
You have reached the first level of LabVIEW proficiency once you can spell it with the right capitalization. 😄
07-24-2009 11:42 AM
This is more than just a movie quote, so it probably belongs here into the proverb thread:
Here's to Local variables: the cause of, and solution to, all of labVIEWs problems!
07-24-2009 05:25 PM
What was that about correct capitalization?
(and correct use of the apostrophe)?
07-24-2009 06:03 PM - edited 07-24-2009 06:10 PM
smercurio_fc wrote:What was that about correct capitalization?
(and correct use of the apostrophe)?
I can only respond with another Simpson quote: Doohhh!!! 😄
(This goes along the second part of my comment here. If I don't type fast, you beat me and answer first 🐵
07-26-2009 01:22 AM
09-08-2009 01:21 PM
Just came to this thread from another one, and liked it very much. Want to comment of some old posts.
tst wrote:
No sweat, Spif. All that no-globals-no-locals-no-non-strict-type-defs-no-nothing stuff is only for LabVIEW gods like Dennis or Ben or Charly or Rolf...
They work and the rest of us mortals can use them and learn slowly how to work without them. Even NI uses them.
You gave a big consolation with that last phrase tst. 😉
And also Ben's comment raised the same voice of my mind when he said:
I like the commandments, but I have to confess my ignorance.
"4. Remember the type def, to keep it strict"
Could anyone help me understand why "to keep it strict"?
In the response Dennis wrote he refers to the Strict Type Def. I had understood that, and the phrase was "good" but I don't know why Strict Type Def's are better. I mean, I have learned abt them just a couple of months back and now am using them a lot and though initially I started using "strict" I changed back to simple "type def" because strict type def additionally controls name and color (basically appearance) and if I am creating multiple objects of a single control in a vi, I think normal type def would be better no?
Anyways, sorry for starting discussion here. Am going off-topic. 😉
Haven't read all the proverbs above, since I have to work on my application, and also study the latest response by Dr Gray, but I would say most of what I read, are my sentiments too.
Well, my LabVIEW proverb, from the bottom of my heart (as a Thank You! to the labview designers/architects and those with the idea of those colorful objects-
"Life is Colorful"
09-08-2009 01:45 PM
Keeping Type Defs Strict or not is only of interest if you want to present them to a user. If you use a ring, it only updates every place if it is a Strict TD, on the other hand, you can not programmatically set the String and Value property anymore. There is several other situation where you might want to propagate Font, Size, etc to every instance. For good old enum state machine, it doesn't matter at all, the 'gods' use strings (they loose coupling -> more flexibility but no compiler errors), you need some tools to catch typos and if you can develope them, you're nearing the 'god'-level.
Here is my proverb for this:
Break the law before the law breaks you
Felix
09-08-2009 01:49 PM
Vaibhav wrote:tst wrote:
Even NI uses them.You gave a big consolation with that last phrase tst. 😉
I wouldn't be too consoled by that. I still think globals are legitimate under some circumstances, but not all code written by NI is that great. Just like everyone's code, some of it is good, but some isn't.
As for the typedefs, standard typedefs are fine. Strict typedefs are relevant for specific use cases where you want the typedef to be used in the UI.
09-08-2009 02:01 PM
Thanks Felix and tst!
I use those type defs mainly for enums for state machines. And from your comment Felix, I remember that I used Strict TypeDefs because in the beginning I used "Ring" (to experiment type defs actually) and they were updated only if "strict" but later the others were updated without strictness. I just switched to normal type defs, by seeing in books and other examples and "thought" it's a "safe" practice. And from your responses, I think I am not wrong if I use normal type defs.