ICON Technologies Services

Transition to LabVIEW

Transition to LabVIEW assists experienced programmers with skills in other languages such as VB, C or C++, to quickly become productive with LabVIEW.


Why should an experienced programmer require formal training in LabVIEW? Experienced programmers can typically adapt their skills to a new language quite quickly once they familiarise themselves with the syntax of the language.  However it is not uncommon for programmers with experience in other languages to initially struggle to adapt to the LabVIEW environment.


This is because most other mainstream programming languages follow the Procedural paradigm for code exeecution.  They all follow a broadly similar execution model, with only the syntax of the language changing.  So a VB programmer, for example, can quickly adapt his or her overall application development experience to C by simply focussing on the syntax differences between the two languages.


LabVIEW is not a Prodedural language. LabVIEW follows the Dataflow paradigm for code execution. Each paradigm has its own strengths and weaknesses, and a particular strength of LabVIEW's Dataflow paradigm for measurement and automation programming is that it maps more directly into today's parallel computing architectures than the Procedural paradigm. But it does require a slight shift in thinking from the programmer about how to structure the application code vs the Procedural approach.


The material in Transition to LabVIEW is drawn largely from our Understanding Dataflow and LabVIEW Development Top-Down units, condensed into one day and specifically focussed on the most significant differences between LabVIEW and Procedural languages.  We do not spend a lot of time on LabVIEW syntax, as covered in The Basics of Building a LabVIEW Application unit. We assume that most experienced programmers will be comfortable learning the LabVIEW syntax themselves, without formal LabVIEW training.


After attending this unit, you will be able to:

  • Understand the practical distinction between the Procedural and Dataflow paradigms
  • Understand both the benefits, and the potential pitfalls, of Dataflow programming
  • Recognize and implement the most important techniques for timing and synchronizing tasks in LabVIEW
  • Recognise and avoid race conditions and other timing and synchronistion errors
  • Recognise functions that "break Dataflow", and know when and how to use them
  • Recognise & implement standard design patterns in LabVIEW
  • Create LabVIEW Dataflow code that executes reliably under all conditions


When, Where and How Much?

Transition to LabVIEW is a one day course that is available on-demand, and scheduled to suit your timetable.  There is no minimum enrolment - we will run the unit for a single user.

It can be delivered at your premises, or in our office Training Room at:

22 Thorogood St
Burswood WA 6100

The cost is $1,260 ex-GST for the first attendee, and $630 ex-GST (50% discount) for each subsequent attendee from the same organisation.  The price includes a copy of the presentation slides, and a DVD with LabVIEW source code for all in-course demonstrations and examples.  Lunch is not included.  Attendees are required to bring their own laptop or desktop PC with LabVIEW installed - the LabVIEW trial version, downloadable from National Instruments' website, is acceptable.



  • Intermediate level experience with another language such as VB, C, or C++
  • Familiarity with generic computational algorithms and design patterns
  • Familiarity with the LabVIEW syntax (functions and wiring rules) sufficient to create a simple VI - an appropriate level of familiarity could be acquired by working through a few of the introductory tutorial exercises that ship with the LabVIEW trial version


What Next?

Once you have understood and mastered the key differences between Dataflow and Procedural programming, you should be able to adapt your previous programming experience quite quickly to improve your productivity with LabVIEW.


If you need to quickly develop equivalent expertise with practical tasks like data acquisition from NI hardware, device communications, or file IO we offer other complementary units:

These units are focussed primarily on the LabVIEW API's for interacting with the native drivers for these tasks, and can benefit anyone that is new to the LabVIEW environment, regardless of previous programming background.