What Is Labview?

Labview is a graphical programming language that originally was intended for test and measurement.  Over time Labview has grown to include many features of less hardware-focused programming languages, but it still remains true to it's test and measurement roots.

Labview has several key selling points:

  1. Plug and Play interaction with National Instruments (NI) data acquisition (DAQ) hardware
  2. Large and powerful libraries of functions
  3. A graphical interface that allows the non-programmer to write code

In general, the first two points are very true.  The interaction with NI DAQ hardware works very, very well.  It is the most "plug and play" of any software and hardware combination we have seen yet.  Also, the libraries are indeed large and powerful.  There are also a vast array of toolkits that can expand this capability even further, for a price. 

The third point above is true, but giving a powerful tool to the untraining leads to unsatisfactory results most of the time.  The graphical nature of Labview makes writing and debugging code very fast and efficient.  It is true that inexperienced programmers can write simple programs very quickly.  What usually happens next is that the inexperienced programmers make a real mess of a medium complexity problem.  Proper training and understanding of some of the fundamentals of programming are needed to tackle anything but the simplest of problems, in Labview or any other programming language.  Proper training and discipline are as necessary when writing complex programs in Labview as in any other programming language.

Due to the graphical nature of Labview, large, multi-developer, multi-year projects can be difficult.  Again, proper project management, planning and discipline will overcome these challenges.  However, the fact that many beginning Labview programmers are tangling with these advanced issues is a testament to Labview's capability. 

Labview does deliver on it's selling points and is an excellent choice for an experienced programmer with a test and measurement project ranging from a few days to many, many months.  For the less expereinced, proper training is critical to writing anything but the simpliest programs.