Gary Rubin Posted July 18, 2014 Report Share Posted July 18, 2014 (edited) I've downloaded the LINX LabVIEW interface for Ardiuno and am now doing my first LabVIEW programming after about 5 years of exclusively coding in MATLAB. Wow, is it ugly! And how did all those sequence structures get in there?! EDIT: I'm talking about my own code, of course. The LINX VIs look just fine. Edited July 18, 2014 by Gary Rubin Quote Link to comment
hooovahh Posted July 18, 2014 Report Share Posted July 18, 2014 There are way too many things wrong with LINX for me to use it. I made a post on their forums and the response was more or less that nothing is going to change. https://www.labviewhacker.com/forums/viewtopic.php?f=12&t=55 I am so glad to see that I am not the only one who thinks it is ugly. Who uses strict types in a driver level code? And who uses silver controls? And who hides data in a cluster by not showing it? Seriously I found myself changing all of their code just trying to use it. I was digging into the low level VIs and I saw them also constantly making their own subVI to do a function that already exists nativly, or in OpenG. Building relative paths, making a zip out of a directory, create folder if none exist, Get LabVIEW Data folder, Get LabVIEW Directory, Get File Extension, Get Relative Path, Strip Path to EXE, relative path to array of string, etc. These are just a few subVIs that are remade, instead of using the native function, or the OpenG function. If you look at some of the LAVA tools we have they replace even more functions, but I figured I wouldn't include those since they are less popular. In the end I am staying away from LINX. I don't really need it, LIFA does what I need when it comes to Arduinos, and the other supported hardware I haven't needed yet. I was just looking to extend the LIFA features and thought I would start with LINX instead. For me it was better starting with LIFA and adding the functions I wanted. Quote Link to comment
Neil Pate Posted July 18, 2014 Report Share Posted July 18, 2014 Who uses strict types in a driver level code? Me! I pretty much use strict for everything except GUI typedefs/controls that I want to customise a little bit. I suppose I use strict over normal typedef just out of habit. And who uses silver controls? What silver controls? I don't see any silver controls on the pallette. I think you are mistaken, silver controls do not exist. System, Modern and Classic are all I can see on mine Quote Link to comment
droseman Posted July 19, 2014 Report Share Posted July 19, 2014 What's wrong with the silver palette? From what I've seen, it makes UI's look a bit more slick and modern, are there more technical reasons for the dislike from more experienced users than I? Quote Link to comment
Neil Pate Posted July 19, 2014 Report Share Posted July 19, 2014 What's wrong with the silver palette? From what I've seen, it makes UI's look a bit more slick and modern, are there more technical reasons for the dislike from more experienced users than I? All my dislikes are purely aesthetic, I think they look quite cartoony and waste way too much space. I pretty much use System controls exlusively for GUI front panels. 1 Quote Link to comment
hooovahh Posted July 21, 2014 Report Share Posted July 21, 2014 What's wrong with the silver palette? From what I've seen, it makes UI's look a bit more slick and modern, are there more technical reasons for the dislike from more experienced users than I? I have used silver controls, but I have two issues with using them. There isn't a silver control equivalent for every classic, or modern control. So UIs will generally need a mixture of mostly silver controls, and then a modern, classic, or system, because that control isn't available in the silver palette. Secondly if silver controls are made for the UI then why would they be used for a driver level piece of code that we should assume no user will ever see? If it is for the UI, then why use it in a program that has no UI? Silver Clusters, and Arrays take up a lot of space on the front panel especially when you have arrays of clusters of arrays etc. Again for a driver level piece of code where we really only care about the inputs and outputs as data, not as they are seen this is a waste. As for strict types. In the past 2 years I have made 2 strict type defs, in the dozen of applications I've made. For me it restricts the things I can do, and again unless it is for a UI why do that? Quote Link to comment
hooovahh Posted July 22, 2014 Report Share Posted July 22, 2014 I was posting on NI's forums today and linked to the LIFA page. On their main page they link to LINX saying it includes all the features of LIFA with a bunch more. I certainly wouldn't recommend it. https://decibel.ni.com/content/groups/labview-interface-for-arduino Quote Link to comment
Gary Rubin Posted July 23, 2014 Author Report Share Posted July 23, 2014 So far LINX works and at this point, that's really all I care about from my middleware. If I start trying to make it do things that outside its current scope, then I might care about the LINX VI architecture and design. But isn't the whole reason for downloading such a library is so that I don't have to worry about such things?. Quote Link to comment
hooovahh Posted July 23, 2014 Report Share Posted July 23, 2014 But isn't the whole reason for downloading such a library is so that I don't have to worry about such things?. Along the same line of thought, why should source code need to be well documented, it will just go into an EXE where the user doesn't see it anyway. Quote Link to comment
Gary Rubin Posted July 23, 2014 Author Report Share Posted July 23, 2014 Along the same line of thought, why should source code need to be well documented, it will just go into an EXE where the user doesn't see it anyway. From a user standpoint, it doesn't. If user experience isn't affected, do you care if MS Word source code is well documented? Or even well-written? Unless you need to modify or support code, I don't see why in-code documentation matters. Quote Link to comment
hooovahh Posted July 23, 2014 Report Share Posted July 23, 2014 In my argument, we are developers, not users. Style guides exist for a reason, and not following them things more difficult for developers. Something about that code bothers me way more than it should. If I ever need to use it I will surely spend making my own copy and fixing it. Quote Link to comment
Gary Rubin Posted July 23, 2014 Author Report Share Posted July 23, 2014 (edited) At this point (and this may change), I'm looking at LINX as just a set of driver functions, much like a dll. I don't really care what's going on in the middle - all I know is that I make a function call and get the proper response. If I get to the point that I'm writing code to run on the Arduino and using LINX to talk to that code, my opinion may change. Right now, I'm more than happy thinking of it as a black box. EDIT: I've used plenty of non-NI acquisition hardware for which I've written LabVIEW wrappers around the vendor's dll functions. I see the Arduino/LINX combination the same as those hardware/dll combinations. That may be why you and I see this differently - I'm used to having black box functions sitting between me and the hardware, so I didn't even look into the LINX VIs. Edited July 23, 2014 by Gary Rubin Quote Link to comment
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.