Jump to content

Stagg54

Members
  • Posts

    143
  • Joined

  • Last visited

  • Days Won

    6

Everything posted by Stagg54

  1. And we wonder why LabVIEW is losing out to tools like Python..
  2. I am not an AF person, but I think if you look at the State Pattern Actor, I'm pretty sure it uses that override.
  3. Nancy, Malcolm, Taylor and I are putting on an online unconference for LabVIEW consultants. https://www.lvconsultantsummit.com/
  4. It feels like you are trying to be too clever. Brute force seems like the easier way. Yes it's less elegant. Unless your cluster is enormous, I would probably just brute force it.
  5. It is a huge challenge in LabVIEW. It is often overlooked by beginners which causes lots of problems. I often just have a common folder on disk full of typedefs. I have tried to use more generic types as much as possible when transferring data across module boundaries. If I can I pass some native datatype like a map, set or array. For a waveform, why not just a simple native waveform? If you have metadata, IIRC waveforms accept metadata just like variants do. Occassionally, I'll even pass a simple cluster without making it a typedef. ie. an x-y point is just a cluster of 2 doubles. No real need to make that a typedef. Of course as soon as it gets any more complicated, then you probably need a typedef. I've also given a lot of thought to using JSON to pass data between modules, but haven't quite worked that out yet.
  6. Finding work is one of the bigger challenges and often results in a lot of waiting around for contracts to resolve and then having a bunch of them resolve at once. Feast or Famine.
  7. If you don't like downtime and just want to write LabVIEW code, being a consultant is a horrible idea. Find a better employer.
  8. Just copy-paste this into Git Bash - that's it! cd && git clone https://gitlab.com/sas-blog/LVCompare-Merge-Setup.git && cd LVCompare-Merge-Setup && ./setupLVTools.sh For more info checkout the repository here: https://gitlab.com/sas-blog/LVCompare-Merge-Setup Demo'd here:
  9. forgot to mention this part: Presenters at the GLA Summit will be eligible to receive 30 recertification points for NI LabVIEW certifications. Attendees will also be able to receive 20 points.
  10. We are looking for presentations. more info here: https://www.glasummit.org/
  11. Marketing - the 3rd oldest profession!
  12. Those original scripts will no longer work with new versions of Git. In newer versions the 2 files being diffed will have the same file name. The script needs to account for that condition and rename the remote file. I have a created a similar bash script here that accounts for that. https://gitlab.com/sas-blog/LVCompare-Merge-Setup
  13. The conference went well. We got lots of good video, but it will take a while to edit. I don't have an exact timeframe, but they should be posted within the next month or so. We had an extra cameraman and better lighting and angles this year, so the videos should be even better than last year.
  14. I'll just stick with the self-deprecating one "yes_i_am_aware_i_am_still_an_idiot". Probably not taken.
  15. see here for how to load stuff dynamically https://www.sasworkshops.com/ppl-plugins/ That solves part of your problem. The other half is about organizing your object heirarchy. The GOF can help here. You can buy the original, but this is better. https://refactoring.guru/design-patterns/book I would envision using an interface for switch and an interface for DMM. the DMM with a switch would implement both. You would need some way to discover that or hardcode it into a config file or something. Sorry if that is a little vague, but I could envision several different ways to do it. I'd probably just sit down with LV and iterate until I found something that works. And then sit and stew and make sure I didn't miss anything. I'd still be prepared to throw away version 1 in favor of version 2 because you are sure to miss something. Good luck.
  16. I'm no Python guru, but maybe a decorator? and or maybe monkeypatching? or some combination?
  17. I'll be there. But since you are also going to GDevCon NA, we could do a LAVA BBQ there as well. Or might might I suggest a LAVA tubing event? There is a whitewater park a block from the venue.
  18. Possibly. Depends on your definition of better. They certainly had more constraints to work within and it forced them to be more efficient with things like memory usage and storage space. One could argue that makes for better code, but optimizing for those things often compromises readability. So what do you value more? and how do you define "better" software?
  19. To that I would say, someone else looking at your code is much more likely to find the holes than you are. If the holes were obvious to you, you wouldn't have put them there to begin with. We inherently understand that, that's why we do code reviews. However, often the code review is too late to really change things. What if we caught those problems while they were being written and fixed them then? What's the old saying "2 heads are better than 1"?
  20. The Joel test was good for its time, but it's 20 years old. I think it's time we reevaluate it. Number 8 is probably one of the most outdated. Remote work didn't even really exist back then. Here is a more modern take on it. https://www.sasworkshops.com/joel-3-joel-test/
  21. I have done pair programming with clients and it works quite well. Granted these were one-off sessions working to solve a very particular problem. I mostly work alone so I haven't used it in a wide spread way, but I know people that have and are successful with it. Given the fact that most corporate management is still stuck in the industrial age, it's not very widespread.
  22. Seperate projects is not that uncommon, but I second what Neil says. Innosetup works great if you are still building installers. Much nicer than the NI build-in one and the results are orders of magnitude smaller. Offers you a lot more control too. Lately I've just migrated to doing NI Packages instead of installers. They seem to work fine. Although you would still have the same problem with multiple devs working in parallel. One other often overlooked solution to the whole working in parallel problem is pair or mob programming. No need to worry branching, merging or stepping on each other's toes.
  23. Apparently it's contagious!
  24. Well NI just solved the distribution and licensing problem didn't they? No one's complaining about that any more.
  25. I think it is totally worth watching the NetFlix documentary on Boeing, much of the same sentiment.
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.