This week I attended my local LabVIEW User Group (CSLUG). I have been a member for a few years and can’t emphasise enough how much you can get out of a two (sometimes three/four) hour discussion once a quarter.
Topics that are discussed can be anything from new and advanced ideas, different ways of documenting code, error handling and anything else that you have an interest in or need help understanding. I am lucky enough to be part of a LabVIEW User Group that has three LabVIEW Champions and a very long list of LabVIEW Architects and Developers who are more than happy to share their knowledge and experience with those willing to learn.
Here are a few reasons to join a LabVIEW User Group in your area, and if there isn’t one, maybe get hold of NI and start one.
- Meeting new developers in your area with common interests
- Learning from people who work on bigger/smaller/different types of projects
- Getting some advice before starting a project
- Teaching others if you have done something interesting/different, no matter how big or small
- Seeing how other people solve problems and write code
- Being part of a community where you can help others and get assistance when needed is invaluable
- If you don’t have experience presenting in front of an audience, this is a great place to learn
What I got out of CSLUG this week:
- A good idea on how to do error handling. Thanks to Steve Watts and James McNally
- A very cool way to display chart data. Thanks James Powell
- Creating scalable buttons using vector graphics. Thanks again to Steve
- A brief introduction to Database Triggers. This is something I never knew about but will definietly be looking in to. Thanks to John White
The biggest idea I got from this weeks LabVIEW User Group was from a chat once most people had gone home. Late on the night before CSLUG I was working on a calibration process and was wondering how to get a value from the previous three states in a while loop. It was late, the code was working but could have been better so I left it for the night.
Then after CSLUG, someone mentioned something about multiple shift registers and something just clicked. I went home and immediately wrote a simple vi to test what I thought he meant and it was exactly what I was looking for.
The idea is that adding a shift register to a while loop gives you access to the value of the previous state. This I always knew and use often. What I didn’t know is that you can add multiple input terminals to a single output terminal. This means that the top input terminal is the data from the previous state, the terminal below is the data from the state before the previous state and so forth.
Here is a video of it in action.
Without attending the User Group I might never have come across this. It also wasn’t something on the agenda so you never know what you are going to learn, but you can be assured that you will learn something. Another invaluable tool I use (learnt from a LabVIEW User Group) is the vi property that suspends a vi when called. Have a look this blog post by Chris Roebuck, it will change the way you debug.
My hope for the new year is to try and get to some other LabVIEW User Groups in the area, to meet new people, learn something new and hopefully teach someone else something new.
Have a great Christmas, New Year and happy coding.
Greg