Jump to content

JKSH

Members
  • Posts

    494
  • Joined

  • Last visited

  • Days Won

    36

Everything posted by JKSH

  1. Your last Wikipedia link has a link to the answer(s) 😁 https://en.wikipedia.org/wiki/World's_second_oldest_profession
  2. You mentioned a number of different permissive licenses; Shaun and Rolf also mentioned copyleft licenses. Here is a simplistic ranking of the "forcefulness" of different open-source licenses, from most copyleft (#1) to most permissive (#5): GPL LGPL MPL 2.0 MIT/BSD-3/Apache 2.0 BSD-0/Unlicense (virtually Public Domain) That's a fair statement. I agree with Rolf: In terms of the common permissive licenses, MIT, BSD-3, and Apache 2.0 are very very similar in intent. Your project will probably end up in the same place no matter which of these 3 you pick (unless you or your project become super famous, as you said). Apache 2.0 is considered more complicated that the others though. BSD-0 and Unlicense are even more permissive; they are virtually at the level of public domain. Apache 2.0 has a similar clause. How strong is strong for you? GPL is the ultimate copyleft license: all software that uses a GPL library must also be published under GPL. You can release your software under any license you want if it only uses LGPL libraries, but you must still allow your users to swap out the LGPL'ed part for a different version. This makes it difficult to use a LabVIEW library under LGPL, because it's not trivial to write a LabVIEW application that lets users replace certain VIs. MPL 2.0 is a middle ground between LGPL and MIT. And it is easy for LabVIEW devs to use MPL 2.0 libraries. The difference exists because GPL is primarily concerned about freedoms for the end-users, while the permissive licenses are more about making developers' lives easier. LGPL does not require you to open-source your code at all.
  3. Perhaps a mod/admin can fork this thread? (The last several posts have been about SystemLink authentication) My apologies, I just realized that I was conflating SystemLink and NI Web Server myself. As far as I know, NI Web Server -- which can also be used for LabVIEW-based web services without SystemLink -- uses LDAP + Local Windows accounts like you said, plus Microsoft Active Directory only: https://www.ni.com/docs/en-US/bundle/ni-web-server-18.2-20.1-feature/page/choosing-an-authentication-setting.html "Regular" SystemLink hooks into the NI Web Server for authentication. SystemLink Enterprise (the one announced at NIWeek 2022, not the older releases which were also touted as enterprise-level) uses completely different technologies, from what I gather from the presentations. I haven't been able to find any documentation for SystemLink Enterprise yet. I don't know of a solution for this either; we'll have to see if SystemLink Enterprise offers anything. Try asking at https://forums.ni.com/t5/SystemLink/bd-p/1020
  4. To be clear: That NIWeek 2019 video doesn't contain any SystemLink at all. SystemLink asks us to use its integrated 3rd-party user management tools, not to implement our own. In other words, SystemLink doesn't want us to follow that video! I agree (and NI agrees) with y'all that we should not be rolling our own user management system. (This applies to all software, no matter what price it is)
  5. That would be a good question for https://forums.ni.com/t5/SystemLink/bd-p/1020 -- The NI Engineers have been reasonably engaged/accessible there. SystemLink 2020 R2 introduced the concept of "Workspaces" in SystemLink Server Advanced: https://forums.ni.com/t5/SystemLink/Announcing-SystemLink-2020-R2-SystemLink-Enterprise/m-p/4074358#M1478 but I don't know how fine-grained the control is. The new SystemLink Enterprise for 2022 (see Jordan's first post from Friday: https://lavag.org/topic/22548-interesting-announcements-from-ni-connect/?do=findComment&comment=140832 ) should give much better control, assuming NI integrates the components well. Note: Advanced != Enterprise The 2019 presentation only shows WebVIs' ability to interact with generic web services. It does not show any SystemLink capabilities. Even if there is underlying encryption, storing passwords as plain text in a database is extremely bad practice. I wouldn't want this. User management is difficult to develop, maintain, and keep secure. It would be unwise for NI to roll their own manager; they should integrate existing, tried-and-true technologies. Currently, non-Enterprise SystemLink does use LDAP and Windows Active Directory for user management, which is good. I haven't looked closely at what new technologies are available under Enterprise (Jordan mentioned OAuth?) If I'm not mistaken, we used to be able to specify permissions for specific Groups of users, and a WebVI could query what permissions are available to the the current logged in user. However, NI changed the permissions management system significantly in SystemLink 19.6 which broke this, and I don't think it was ever fixed: https://forums.ni.com/t5/SystemLink/Query-SystemLink-Account-Privileges-from-a-Custom-WebVI/td-p/4103386
  6. Try to develop a distributed SystemLink project where you have both both desktop and real-time targets. Every time you switch targets, you need to wait for all the ~100s of VIs to be recompiled.
  7. Actually, your earlier screenshot shows https://www.gnu.org/licenses/old-licenses/lgpl-2.1.en.html (or, if you prefer reading something shorter: https://tldrlegal.com/license/gnu-lesser-general-public-license-v2.1-(lgpl-2.1)) If I recall correctly though, other parts of OpenG are available under the BSD-3 license: https://opensource.org/licenses/BSD-3-Clause
  8. Nothing wrong with Excel! https://interestingengineering.com/80-year-old-japanese-man-uses-excel-to-create-dazzling-paintings
  9. I don't have an answer for your activation issue, but you're not alone: https://lavag.org/topic/22358-nis-new-software-subscription-model/ https://forums.ni.com/t5/LabVIEW/LabVIEW-subscription-model-for-2022/td-p/4204448
  10. That's rather worrying then, given that Farnell is now an "Authorized Distributor" for NI.
  11. Ain't this it? https://uk.farnell.com/ni/777849-35/labview-real-time-deployment-license/dp/3701592
  12. NI Linux RT is just another Linux distro. If you can install Linux on your device, you can probably install NI Linux RT which comes with the LabVIEW runtime. I'm not sure what the licensing implications are. You probably won't get NI hardware driver support, however. The Zynq FPGA is a completely different beast. The only other widespread dataflow language in industry (that I know of) is Simulink, so... The best language is one that you are experienced and competent in. The next best language is one that you have resources and drive to learn.
  13. Some hardware has a minimal sample rate. Double-check that the "SampClk.Rate" property does return exactly 250 Hz -- If it's actually higher, then you'll never empty your buffer and it just keeps growing. Use a producer-consumer architecture (example: https://forums.ni.com/t5/Example-Code/DAQmx-Encoder-Measurement-with-Producer-Consumer-Architecture/ta-p/3493445) Your DAQmx while-loops should be dedicated to calling DAQmx Read.vi only. The data should be sent to a different loop (via a queue or a Channel Wire) for writing. Beware: Since you are writing waveforms but you discard some data chunks, your file timestamps will be wrong. When you send your waveform to the data writing loop, send the relevant TDMS Group Name too.
  14. They do provide a built-in image uploader, which we're expected to use instead of off-site links: I had no problems like this: https://stackoverflow.com/questions/36852665/adding-delay-in-data-acquisition-in-labview/36857051#36857051
  15. I don't have experience with Beckhoff products, but a customer asked us to integrate a UEI Cube a few years ago. I remember thinking that their API was a bit more convoluted than DAQmx. This customer got non-rugged accessories so they struggled a bit to get good shielding, but I have seen MIL-STD compliant hardware in UEI's product line.
  16. That is... different from my experience. I had an old installation of LV2017 which has no expiry. When I added the LabVIEW Real-Time Module 2017 to it in April 2020, it was given an expiry date of August 2020. When August 2020 came, I had to re-activate LabVIEW Real-Time Module 2017 (but not LabVIEW 2017). And this repeated itself in August 2021. My employer had been using the old NI Developer Suite for over a decade and this still kicked in -- we never had expiry dates before.
  17. This is unrelated to the LabVIEW version, and unrelated to perpetual vs. subscription licenses. In recent years, NI's license servers have changed things such that all activations are only valid until the next August -- Even perpetual licenses must now be re-activated annually. So if you install and activate those same older versions on a different PC today, they too will expire in August 2022.
  18. I used the Web module with SystemLink, but not with Python. It is somewhat (not very) responsive; there is a lot of room for improvement. See the 2022 posts at Not personally, but NI does have official DAQmx Python API. It should work: https://nidaqmx-python.readthedocs.io/en/latest/
  19. I used the NXG 5.0 Web Module (direct precursor to the G Web Development module) for a large SystemLink-hosted project. The biggest issue for me is missing functionality. Despite SystemLink touting Tags + Messages + Files as the 3 pillars of data transfer, NI did not provide a Web Module API for downloading/uploading files from/to a SystemLink server. I thought... "That's OK, I'll just use the raw HTTP API instead". And then I found out that the HTTP API itself was unfinished. NI provides a WebVI for making a HTTP Multipart request (which is required for uploading files), but if you open up that VI it simply spits out an error constant that says, "feature not implemented". So I had to implement it in JavaScript in the end. The next headache is the rigid UI. It is near impossible to get the UI to even resize with the browser window; the result feels rather unprofessional next to non-NI web UIs. The Web Module is fine for making very basic, static dashboards. But if you want to do anything complex/interactive/dynamic, you'll need to delve into HTML + CSS + JavaScript.
  20. It's more than "bordering spam"; it's a common tactic used by spammers in forums across the Internet: One account posts a link and another extols its virtues while speaking as if they are a 3rd party.
  21. VMware 15.5.5 and newer can run alongside Hyper-V: https://blogs.vmware.com/workstation/2020/05/vmware-workstation-now-supports-hyper-v-mode.html
  22. Not the example you were thinking of, but this one was hilarious: https://forums.ni.com/t5/LabVIEW/Compiler-is-Too-Smart-for-My-Own-Good/td-p/4188524
  23. I'm pretty sure remote time syncing ("remote" as in "light-years from civilization") is a core use-case. Try asking at the Linux RT forums. Relevant NI engineers are quite active there: https://forums.ni.com/t5/NI-Linux-Real-Time-Discussions/bd-p/7111
  24. Does your institution have a school of computer science, software engineering, or similar? If you are allowed to, perhaps you could sit in on some of their introductory lectures.
×
×
  • Create New...

Important Information

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