NI send us the NI Developer Suite each year on DVDs all packed in a nice little NI branded dvd carry case. We are on the SSP suscription and we receive 3/years, which means I have a whole stack of them.
I suggest that NI start shipping USB keys instead. USB has several advantages:
The "Probe Display" pane of most default probes should have indicators that are set to "Fit to Pane". The worst offenders, in my opinion, are Strings and Variants...I often find myself cursing the fact that I can't see more of the data, and usually have to copy & paste into Notepad++ or something to actually see what I'm looking for.
Yes, you can make custom probes for this behavior. But it should be native.
Similar to 'Insert' and 'Delete' methods, please include 'Transpose Array' method as shown below:
When you develop with multiple LabVIEW versions, it is sometimes difficult to identify which version you're using or launching based on the icon of the LabVIEW EXE:
Here's my Windows 7 taskbar with, among other things, LabVIEW 8.0, 8.5, 8.6, and 2009 icons. Which one is which? There are ways to tell, but it sure would be easiest if the version number were overlayed on the icon. Note the Visual Studio 9.0 icon in the taskbar...I think we should do something very similar with the application icons of future LabVIEW releases.
NOTE: The icon should also reflect differences between the 32-bit version of LabVIEW and the 64-bit version of LabVIEW
For example, when you probe an array, the "Probe Display" only shows the first value of the array. A lot of times, I would like to see a few elements in the array, somewhat like resizing arrays on the front panel. This would be useful for strings, numerics, and clusters as well.
I don't like the way that long file paths are shown in path controls and indicators: If the path is longer than the textbox (and it usually is!), the user only sees the first several levels that fit. This can be pretty confusing.
One way to solve this issue is to truncate the path in the middle in such a way that the filename or last folder (which is usually what's most important) is always shown. I've seen this in other UIs and it should be a natural thing for users to understand.
Here's an illustration:
I think this should be a built in feature of the path controls and indicators, accessible through right-click menus and/or the properties menu of the control at edit time.
I think structures should have a better label system. Currently I use free labels of the same color as the loop which looks great and makes the code easy to read and debug. But if I resize my loop I have to manually resize the label as well. I think this should be built into a right-click option.
(structure) rick-click » visible items » Structure label
It has come up in discusssions that NI does not really cater to hobbyists. A cheap and functional version of LabVIEW is limited to the student edition, which is restricted to a small subset of potential users.
From the FAQ:
"The LabVIEW Student Edition is available to students, faculty, and staff for personal educational use only. It is not intended for research or institutional use."
As a suggested first step, I suggest to remove the academia restriction and mold it into a new product:
--- LabVIEW personal edition ---
Licensed as follows:
"The LabVIEW Personal Edition is for personal use only. It is not intended for commercial, research or institutional use."
It would be available to anyone for noncommercial home use.
LabVIEW currently has the home use exemption that allows installing a copy at home. Unfortunately, if you lose your job, you not only lose your health insurance, but you also lose access to LabVIEW, thus hampering any self paced LabVIEW tinkering that possibly would improve future job prospects. I am sure many retired LabVIEW engineers would love some recreational LabVIEW use. They could be a great asset, because they will have more time helping out in the community and forums. They could even give guest presentations at user group meetings, for example.
The LabVIEW personal edition should include all modules of interest to the hobbyist, including application builder, embedded, FPGA, and robotics. We should be able to distribute built applications as freeware. Support would be limited to community support.
Installing LabVIEW on every single private home computer in the world would cost NI exactly nothing (except for some sales of the current student edition which is about the price of a textbook, some internet bandwidth, and loss of the zero to two (?) multi-millionaires who actually bought the NI developer suite for themselves. ). 99.9% of users would never touch it, but that 0.1% could come up with great new application areas and would help spread the word on how great LabVIEW really is. Soon 0.2% would use it.
It should follow the "customer class limited" Freemium model, (as defined by Chris Anderson), i.e. limited to personal home use in this case.
The running applications should be clearly identified to prevent commercial use. The splash screen and "about" screen should prominently display the words LabVIEW and National Instruments and could even be used for NI advertising and product placements, for example.
The current commenting practice in the BD is to place free floating comment number labels and write the comment in a text field as in the example below.
- comment number labels do to stick to the code block. if the code number block is moved the comment has to be moved as well.
- no link between number and comment text block
This unsophisticated way of commenting LabView code lead to the lack of comments in general. Usually a new programmer can understand what happens, but not why a function is implemented like this.
LabView provides the Advanced Code Commenting Functions.
The comment block is more then just a text block. Basically it has a comment ID, the comment itself and a comment category.
By the context menu the following functions are provide:
Adding a comment in the comment block incorporates two steps (after selecting Add Comment from the context menu):
1. Sticking the automatically generated comment ID to a particular code block just by selecting the item the comment belongs to.
This could be any type of code: wires, SubVIs, the whole Case, a particular Case, Sequences....
2. Writing the comment
If the mouse pointer is set over a comment ID the comment is shown like a tool tip and disappears as soon as the mouse is moved away.
Block diagram string constants have a useful feature "Size to text" which is accessible through the standard right click menu. One way in which this is useful is to ensure that information in an array of constants is not hidden: Right click on an element of a string-constant array and select "Size to text" and it will expand to show the full length of all the strings it contains.
What's needed is an equivalent for numerics (including rings and enums). When dropped singly, these constants expand and shrink around their contents. But if you drop a numeric constant on an array constant, it takes the size of the numeric and can only be expanded manually. If you then enter a constant that is longer, only the first part will be shown, and there is no indication that the values are truncated. (see image)
I think that arrays of numeric constants should resize to show everything entered, automatically.
My idea is simple: Put the connector pane on the front panel next to the VI icon.
Why: Right clicking to show the conpane means extra clicks that would not be necessary if it was always there. It would also be solve the problem of saving the VI with the connector pane hiding the VI icon.
I don't know how many times I've added a case statement post-programming, but I do know that there isn't an easy way to make a tunnel the case selector. Usually I delete the tunnel and then drag the case selector down and then rewire, there should be an easier way. For loops and while loops have an easy way to index/unindex or replace with shift register, why can't a case statement be the same?
Large string constants, like to one shown below, can really get in the way. I would like to double-click the border and have it collapse, like the LV 2010 Cluster now does. Putting large string constants in a VI, or rolling them up, are some work-arounds, but this would be easier...
Double-Click the "text" icon to reverse.
It'd be usefull for develloper and especially application user to improve graph control by adding to Graph direct access to Plot Visible property on plot legend.
For the time being, you have to go to color and choose transparent or to change visible property dynamically.
I propose control like that ... but we could find another idea to access Visible property.
It could be nice to have a context help on coercion dots to see what is the expected type of the data that is supposed to be wired to. This way you can rapidly determine what kind of conversion to use to avoid the coercion dots.
When creating a subVI from a selection, LabVIEW should do two things:
It should also try to make the FP of the subVI cleaner, but that's another matter.