Jump to content

Neil Pate

Members
  • Posts

    1,168
  • Joined

  • Last visited

  • Days Won

    104

Everything posted by Neil Pate

  1. As seen in the other thread, I am pretty negative about NXG. However I would like to temper this with some things I have seen in NXG which I do like Vector based GUI. I don't like the choice of colours, fonts, widgets or pretty much any of the iconography but I do think the switch to vectors is an absolute necessity for a modern application running in high DPI settings. Zoom! I was pleasantly surprised when I accidentally zoomed on the Front Panel. In current gen to get pixel perfect GUIs sometime I find myself resorting to the windows magnifier or dropping down to 1024x768, so being able to zoom is a welcome addition. The helper alignment hints when placing Front Panel controls. Anyone who has used any kind of vector drawing application in the last 5 years will be immediately familiar here. (I am not sure why this is not done when designing a typedef though). The placeholder location for controls and terminals when dropped from the "other" view. No more weird and random location for new controls and terminals! WebVIs. The WebModule is not ready for any heavy lifting, but for basic web pages it currently does the trick. As a LabVIEW developer I really do not want to ever have to learn JS or HTML5 and WebVIs are certainly many steps in this direction (now please port this to current gen!). Now that I know what I am doing I guess I could start from nothing and put together a simple web VI that communicates with something else via a REST API in a couple of hours. The build process turns the VI into a bunch of HTML and JS which you can serve up with any web server. This technology has potential! The panel on the right hand side which can stay open and give you quick access to the properties of controls. It currently pretty ugly and unfriendly to usability with all its greyness, but the concept is quite sound. It can be hidden away when not needed. I am so used to the current gen properties window that it takes me a while to find anything but I expect that to diminish with more use. The icon editor. The default size of the glyphs is much too large but in general this pane gets the job done. At a glance I can see the association of all the terminals. I am not so keen at having Inputs and Outputs as submenu items as this just slows things down a bit, but the concept of showing the user the "direction" of the control is welcome. I have not really used it to create banners and stuff like that yet so I cannot comment too much on that UX. The Build Queue lists about 10 of the last builds which although I did not need in my experimental project I can see how this might be useful. If the build version number could be included in the table this would be most welcome. These bottom pane things can all be collapsed away when not needed which is good. That is about it. My experiment only involved creating a WebVI, so it is possible I have missed some neat things that can be done when developing a traditional desktop application. Does anybody have any others to add to this list?
  2. I do not know the details of this messaging protocol but I can say that if the TCP/IP transmit packet sizes are small Windows will, by default, wait a bit to see if there is any more data to be sent so it can transmit it a bit more efficiently. See here. This is usually more annoying than helpful. Happily it can be turned off. Take a look at the TCP_NoDelay VI in this library. I did not write it and I am not entirely sure where I got it from but it works really nicely. Win32 Util.zip
  3. Fair point. I will do a mass compile and re-run the experiment. (Sorry ShaunR, I guess you were also right)
  4. You did not read my post. This is a LabVIEW 2019 project. Yet somehow NXG is not smart enough to know this.
  5. Just for fun I tried the code conversion utility on a 2019 project I am working on. This: Got turned into this: Yeah, that is a no then... Totally ignoring the 1300 things I have to attend to manually just look at the project tree. Urgh....
  6. My experiment with NXG is now over. A simple web page has taken about 5x longer than I had planned for. Some of this is due to me underestimating the nuances of the web module but most of it has been me fighting the new IDE. The other night instead of happily diving into some after dinner software development fun I was actually filled with dread at the thought of having to open NXG and finish what I started, it really is that unpleasant to use. For me, NXG is nowhere near usable in a real project that I expect to have to develop, maintain and make money off. Some stuff seems to work, but everything has this toy feel about it. It is ugly, sluggish, unintuitive and absolutely repulsive to develop with. Sorry that sounds harsh, but it has been in development for over 8 years and has an incredibly strong pedigree to compare against. NI have taken almost everything that made current gen so special and thrown it in the bin. NXG is clearly being managed and developed by people who have never actually become intimately familiar with LabVIEW. I will check back in a few years time but at this point I am extremely disappointed and now need to think very strongly about where my professional systems development career is going. Current Gen is going to be sunsetted at some point and will fade into irrelevance due to its closed source nature (not that open sourcing something of its complexity would help now, it is too late for that). I could wait a few years if I had confidence that the ship was sailing in the right direction, but apart from AQ who consistently has the courage to actually even reply to these threads there is virtually nothing coming back from NI and I feel that the HMS NXG-itanic is sailing full steam ahead towards its doom. NI is run by extremely clever people who have no doubt done their sums and analyses and are charting the course for NXG that they think will bring them the most success in the long-run. I have a strong appreciation for just how big an undertaking something like NXG is, but given where it is after 8 years of development it just seems that I am not the target market and there is not too much I can do about it. Happily, given how robust NI hardware and current gen LabVIEW actually are I suspect there will be quite a bit of work supporting old systems for at least another decade (perhaps more).
  7. https://www.cvedetails.com/vulnerability-list/vendor_id-12786/product_id-25696/NI-Labview.html
  8. OK I see. Interesting I never really thought about doing anything like that. I will keep that technique in my pocket for next time I am doing 1D array stuff. Thanks!
  9. It is so interesting how everyone uses LabVIEW differently. For me, the ability to stop a running application and still have the Front Panel of a particular sub VI open and then, without doing any more work, run it continuously and allow me to debug is so valuable.
  10. Wow, now I really am interested! Can you post a picture of something neat you can do with a Set? I have not really had the "aha!" moment yet with Sets.
  11. I am a bit late to the Map party. I love them though, thanks NI. 🤩 For those that have not tried them, take a quick look. I have only used the Map a few times (so cannot comment on Sets) but the API is nice and simple. Goodbye Variant Attributes 🙂
  12. NXG actually seems quite good at figuring out what I am looking for with quick drop; I just type the name of the primitive and it appears. This is good as I cannot identify anything because the new icons all look totally weird to me...
  13. I am not convinced this is a good idea to promote these to mere mortals though. Someone new to LabVIEW might actually try and use and remember this (instead of just typing the "<" symbol which also works...) Also, as a leftie my right hand hovers on the arrow keys when programming, so nowhere near the left hand side of the keyboard.
  14. I am not sure if I have mentioned that the fist time NXG starts it essentially freezes my computer so hard I cannot even click anywhere else (like the Windows start menu) or bring up the Windows task manager. This hard freeze lasts anywhere from 30s to 60s. Thankfully things are better after subsequent launches.
  15. You mean like this? That is possible. Obviously for the sake of change a colon is now used to separate the elements, because hey they were changing everything else, right?.
  16. Your two blog posts are really interesting reading, thanks for taking the time to document your experience. You really are persistant! This is a really nice writeup that will probably be totally ignored by all the managers and c# developers at NI and their sub contractors. Your example of setting the scale ranges just screams .net interface! Yuck 😞 Same with this unbundling drama in classes. No LabVIEW developer would look at the technique in NXG and come to the conclusion that is a good experience.
  17. And I had totally forgotten Run Continuously has been removed. Like all good citizens I don't use this for actually running anything, but it is so helpful when debugging. In Current Gen when I have a VI that is misbehaving and I already have all the data "pre-loaded" in the controls I turn on the Retain Wire Values, click Run Continuously and I can just hover my mouse over the wires and can usually very quickly spot the mistake in my code. Why is a feature like this removed? Sure, it is not a great thing to use this to actually run my application, but why removed it? Hide it away somewhere if you are worried it is going to be abused. I raised this issue in the technology preview forums years ago. Again, surely there are others who use this feature regularly? Edit: so I was probably too harsh here, sorry. It seems that in NXG if you have Retain Wire Values turned on and you hover over wires after the VI has run you do actually get a small tooltip type popup that displays the value on the wire. I need to play a bit more with this implementation. Edit2: actually I forgot another useful scenario where I still use run continuously. Simple VI prototyping. I write some code that does some kind of data manipulation and want to test it quickly manually with a bunch of input vectors. Hit run continuously and very quickly test a bunch of the input values and manually observe the outputs. Now in NXG I will have to create a new VI, drop down a loop of some sort, wire drop in my sub VI etc etc. What a pain in the ass... 🤮
  18. The GUI of NXG is unfortunately stuck in 2010. Perhaps forever. The depressing thing is I don't even want to know how much money has been sunk into development.
  19. Apparently X is now delete. (As an aside, not sure why the "X" is different sizes on these two icons. Also why do some of these things have blue overlays (like the Create Recursive) but not others (Like Create File Suffix or Check If File Of Folder Exists)) oh no wait, it is not. Here X is close. Here it is close. And now we use the bin for delete. Sigh...
  20. Why do web VIs have a different file extension? Now I have not used these on NXG but I sincerely hope we don't have a different file extension for RT and FPGA VIs.
  21. Speaking of quickdrop... "esseqz" really just flows out of the fingertips does it not? (Thankfully just by typing "Less" in the quickdrop you get want you want). I think the machine learning algorithm that was used to generate these "shortcuts" might need a bit more training data. Pity the algorithm did not at some point put their hand up and say, hang on, this is a bit crazy. Just look at the others, "ess" for Less... "erg" for Retain First Error
  22. Please do give it another whirl. Certainly it is getting better just most of the pain points we have been moaning about for literally years are not being addressed. I feel this feedback is just going nowhere. It is quite telling that the devs of NXG do not monitor LAVA (I agree with you). I wish NI could show us a just a single medium or large application that is being developed in NXG. Thankfully Current Gen is still fantastic and just getting better, but at some point (probably in less than five years) work is just going to be stopped and then it will slowly wither into irrelevance.
  23. I really like the auto-alignment feature of the Front Panel, but why is this disabled when designing a new gtype? There seems to be no snap at all so getting things to line up nicely in a cluster is a lot more work than it should be.
  24. Anyone want to guess what is in the bottom icon? (Not to be confused with the Cluster which looks quite similar and is just above it). Yes, you guessed right. Decorations and control references! Because those definitely deserve to be grouped together. But just to further confuse things, they are now called Data Placeholders. I am sorry, I just cannot believe this GUI was designed by anyone who has actually used LabVIEW in any capacity or that this is the result of 8 years of iteration.
  25. Buttons? Come on... what is wrong with saying they are Booleans? "True and False" data? Phew glad this was changed. What is next, renaming a DMA FIFO to "magic thingy the computer does to get data into the memory stuff without bothering the brains bit"?
×
×
  • Create New...

Important Information

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