-
Posts
867 -
Joined
-
Last visited
-
Days Won
26
Content Type
Profiles
Forums
Downloads
Gallery
Everything posted by shoneill
-
Never agree to a fixed price project for a finished work. The "customer" can simply claim something minor was not finished and decide not to pay. You need to make sure your liability ends once the customer accepts your code is transferred. Each deliverable should be immediately billable. I did a project like that once without help from a lawyer and it cost me 4 months of my life. Didn't get a penny at the end. Even if you have a contract, you have to have the means to enforce it legally. Most developers simply can't do that so I would also reiterate the stance of either money up-front or forget about it. Shane.
-
I have had cases in the past where I explicitly wanted the plot bounds larger than the plot size. I can't remember what it was but it had something to do with using plot images I think.
-
Are you therefore postulating that crelf doesn't troll at all? We must explore all avenues.
-
OMG. I just read through this thread in its entirety. My opinions on many LAVA members has been irrevocably changed. I almost wish I had never read the entire thread. The thing which popped into my head most while reading this thread was the following link. http://en.wikipedia.org/wiki/List_of_fallacies Shane.
-
Resolve control from pane mouse down event and traversing xctls
shoneill replied to kingcobraninja's topic in User Interface
You would need to cast to an XControl reference, get the "facade" VI reference and parse from there. I have to admit I don't know how to do this, but I have never tried either. -
Library & Class Naming Convention Advice
shoneill replied to MartinMcD's topic in Application Design & Architecture
One major thing is simply to have a convention and write it down. I'm not aware of one convention to rule them all so to speak. I tend to name accessors Set and Get instead of Read and Write because Set and Get have the same Nr. of Characters. When listed in detailed view, they seem easier to read for me. -
LabVIEW 2013 Favorite features and improvements
shoneill replied to John Lokanis's topic in LabVIEW General
Just to follow up a little. I've had success with adding the entry RTCloseVIsOnDocMod=True to the ni-rt.ini on the root directory of the RT system exhibiting the problem. This seems to get around the problem of the RT and host getting confused because of changed VIs not being deployed properly. Your mileage may vary. -
Dynamic Dispatch: Bug or Expected Behavior
shoneill replied to GregFreeman's topic in Object-Oriented Programming
Well it IS recursive (guaranteed) when the input terminal for the top-level DD call is directly connected to the DD sub-VI (as in the pic above). Or am I overseeing something? We already have type propagation checks for other LVOOP aspects (whether output wire has a direct connection to input wire for type retainment). Should this not be another check? I agree that the presence of the VI in itself does not automatically mean it's reentrant but having the input terminal wired directly to the VI does. I think this could be an option to break the run button if the DD Vi is under these circumstances NOT set to be reentrant. Otherwise I actually like LV leaving us to decide whether something is safe or not! Shane. -
Dynamic Dispatch: Bug or Expected Behavior
shoneill replied to GregFreeman's topic in Object-Oriented Programming
This might also go some way to explaining why DD calls are actually very expensive compared to standard VI calls.....? -
I see it on occasion but I can't tell you for the life of me when exactly it occurs except that with VI Server References coupled with case structures and shift registers. Sometimes the rules for deciding which actual data type the wire is seem to be a bit backwards (It retains old types even though the only definitive source has changed).
-
Dynamic Dispatch: Bug or Expected Behavior
shoneill replied to GregFreeman's topic in Object-Oriented Programming
Oh, LVOOP and Real-Time. I seem to be having problems with this also. I get lots of warnings when exiting LV that are related to a certain class (with only static inlined VIs). I've also been seeing completely different code running ont he RT than in the IDE. That makes debugging kind of hard. I've had VIs running on the RT but not marked as reserved on the host and vise versa. Apparently adding the line "RTCloseVIsOnDocMod = True" to the rt.ini in the root directory of your RT system can help this problem. It certainly helped me. Clearing my source code cache made no effect fo rmy problem. -
LabVIEW 2013 Favorite features and improvements
shoneill replied to John Lokanis's topic in LabVIEW General
I'm not 100% sure it's related to inlining but here goes: recently (Actually it seems to be happening a lot since we installed the "November 2012" patch for RT (which is supposed to fix glitch issues with FIFOs)) we started seeing what can only be described as "weird sh1t" happening with our code. When debugging RT code in the IDE and running the top-level VI from the IDE (plus automatic deploy and so on) we would see VIs which are running on the RT not being reserved (or marked as executing) when viewed on the host. With time I realised this was simply a mismatch between the deployed code and the IDE source code which led to all kinds of performance debugging nightmares. Debugging nightmares in general in fact. Setting probes where you KNOW it has been executed but not showing any values (listed as "not executed") is perhaps the most harmless version of what I was seeing. Hard crashes of the entire LV system was less harmless. I got some keys from NI which should have fixed the problem but actually led to all deploys failing and the VIs complaining when trying this were nearly all inlined - hence my irritated glance in that direction. I deleted the keys but am left with a system where I'm never quite sure which version of my software is actually running on the RT. I've spent days trying to debug something and tearing my hair out only to have the software (unchanged nominally) working fine when I re-connect the next day. My sanity is intact though, that was actually in doubt for some time. Another work colleague has started seeing the exact same behaviour. I got more keys to fix the behaviour but I haven't tried them all out yet. Shane -
LabVIEW 2013 Favorite features and improvements
shoneill replied to John Lokanis's topic in LabVIEW General
Ooh, Warnings with inlining. I think I should write a song about it. It's driving me nuts. Also problems with deployed code on a RT not matching the code in the IDE when editing and runn ing code from the IDE is a nightmare.... Roll on LV 2020. Maybe we'll have a really stable version by then. -
2014 - What's better, Laptop or Xeon desktop
shoneill replied to Phillip Brooks's topic in LAVA Lounge
Stick a decent SDD in your old i5 and you should be fine. Programming LV on a SSD is amazing due to the multitude of small file accesses. Shane. -
Perhaps the lack of a UI event structure to handle the UI events? I don't really know otherwise.... I don't know how much RT and XP Embedded are similar. I only have experience with RT (And even there, I don't have much)
-
Continuous waveform changing frequency
shoneill replied to Gepponline's topic in Application Design & Architecture
I can't run your code without hardware..... -
I would say that almost all of the time it's POSSIBLE to do what I do without using multiple event structures in a single VI. But if the workaround (automatic upgrade path) is to simply plop each extra structure in a sub-VI (and perhaps inline it) then what advantage is the change actually going to bring? It seems like an optimisation which could cause more problems than it brings but IF it brings some magical properties, then I'd be all for discussing it. I'm the last person who thinks that backward compatibility needs to be maintained at all costs. I feel there are many big changes which could benefit LV but I don't have the insight into the inner workings to guesstimate whether this would be worth it or not.
-
Not in LV 2012 they're not. The folder is there, lots of other VIs are there but your "Set Texture" Poly and the "Rotate Z axis.vi" are not included. I do actually USE the 3D Picture control so I certainly have the functionality installed in LV 2012. Can't you simply save the full hierarchy?
-
Sorry, still can't help. Several sub-VIs are missing.
-
Source code location affects execution speed?!?
shoneill replied to John Lokanis's topic in Application Design & Architecture
Ooh this sounds familiar. I had some WEIRD performance issues a few weeks back with the divide primitive taking different amounts of time depending on which values it was dividing, and I mean MEASURABLE differences. Closed the project, re-opened and the issue was completely gone (hopefully) never to be seen again. It seemed at the time like the math libraries had started going a bit wonky. As with all problems of this ethereal type (you look at them properly and they disappear) you end up questioning your sanity and have no change of filing a bug report because noone will be able to reproduce it. Shane. -
I would check it but have only LV 2012.... You have LV 2012 in your signature, but your file is LV 2013.....