Jump to content

Black Pearl

Members
  • Posts

    410
  • Joined

  • Last visited

  • Days Won

    13

Everything posted by Black Pearl

  1. My planning before the posts about of NDA and such stuff was joking around: That's the newly recruited service staff of NI, which are here to get the answers they should give on the offical forum... (o.k., they arn't that bad, but sometimes...) Felix
  2. Actually, it is the default selector value (I just recently made this account). Furthermore, it is fun to assign oneself a Version that does not officially exist. Felix Edit: It make sense to have it listed, as those persons woul be able to read 8.6 code, though they propably need to post in the version they have as non-beta license. So you could spare yourself a downgrade to something like 7.1 (I heared that downgrading is easily possible inside the 8.x familiy.
  3. QUOTE (jgcode @ May 13 2009, 08:10 AM) People were invited to apply for the beta testing on NI forum. Felix
  4. QUOTE (Darren @ May 11 2009, 09:41 PM) Ah, yes, that works perfectly. 0 iterations, defaults to 0. 1 iteration is 0+1=1. Felix
  5. Just to add, in 7.1 we have external nodes, not XNodes. External nodes are said to be even more problematic than XNodes and will not be supported by some version of LV (I don't know if it is already discontinued or when it might happen). This prevented me from looking deeper into that issue, as I have some ideas to use them. But having 'rusty nails' code that breaks and no one except you has any clue on how this was done, I think of it as a really bad idea. On the other hand, in the informal documentation on external Nodes, there is a merge error VI, with the same behaviour as the build array function. So if you really, really want to do it, this way already was gone once... But again, be warned to explore those fields. You'll be a lone wolf on death march and no one will come to rescue you if you're lost in the mystical woods of intangible wires. Felix
  6. QUOTE (Justin Goeres @ May 8 2009, 02:40 PM) Not correct, as the 0 isn't coming out of the I when the loop executes 0 times, the tunnel is giving the default value of 0, which is the same as the I terminal output on first execution. My only 'wish' would be, that executing a loop 0 times would resulat in a different value as executiong it 1 time (be it -1 as default value or start counting at 1). But I'm sure it won't be implemented, as it would certainly break a lot of existing code. To push that point a bit further, I think that for loops of iteration 0 are potential troublemakers. If you don't use a shift register, you might end up with default data instead of the real data (happend once to me with a reference). It is neigther issueing a broken error nor throwing an error 'by wire', and can't be figured out after the loop has executed (actually not executed). Another thing is, that the while loop isn't called 'repeat until' loop. In the text based languages I know, the difference is that the stop condition is evaluated before (unlike in LV) loop execution on a while statement. You can't run into that issue in LV-while loops (repeat until statements). To summarize: you will seldom step on that trap so don't learn it by painful experience and difficutl to debug (and we all fear race conditions, don't we, and that's just because they are difficult to debug, ever had a 'Heisenbug'?). One way to avoid that issue would be to have a required error in/out terminal on the for loops (with shift register behaviour) and an optional terminal 'allowed to execute 0 times'. But that would make such a basic concept a bit too feature-rich for standard users. Felix
  7. QUOTE (jdunham @ May 7 2009, 08:19 AM) Can you hint me how to automate these nightly builds (and tests). And furthermore, isn't that an option to just buy one single license ($$) of the application builder for the whole team, as only the developer 'responsible' for the nightly builds will need to install it? @Joe Z: I'm mainly searching for software/tools, as we are settings up a network based development enviornment. Later on it will be moved in the grip of the IT-gods. But for now we are free to experiment around and and choose the software. The books are meant to get some ideas of what we might need and for what purposes we could use the tools. And I found a nice new wave for surfing the web, as book sometimes link to blogs covering similar topics... Felix
  8. I've got both constants in 7.1 For loop: if you wire I to the outside (no indexing), you will get 0 if the loop iterates 0 and 1 times. Not so nice... Felix
  9. Thanks for all that info so far, feel free to add more... One question: QUOTE (Dan DeFriese @ May 7 2009, 03:08 PM) Do I read correctly between the lines, that these tracking tools go further than just bug fixing? Felix
  10. QUOTE (PaulG. @ May 6 2009, 09:19 PM) I havn't tested, but if you can mimik the VI that passes all VI references (by loading a vi with the same name in the same context/namespace before the user launches the analyzer), and then you can filter. Just name the original file something else, and you don't loose the original functionality. Including it in your distribution will be illagal, but you can load a copy into memory, rename it, and discard it when done. As said, I can't promis that it works. I hav tried (unsucessfully) to hack the 'New...' dialog to get access to control templates (*.ctt) there, but they used a reference to a tree control (only way to deal with trees, so no intention I guess), otherwise I would just have renamed the original Vi and addded the ctt.*'s to the dialog. Felix
  11. Ok, now it's more going to be fun in hacking than real work (*). Some more specs on that point: - No SubVis, because it is the absolute easy hacker's trick to exploit the SubVi boundary in pre LV8 code. The Inlining VI (with some messing up and removing documentation) is already done, but not polished yet. - I want to inform the (informed) developer (via placed icon) that security Vi is in place. Furthermore, I'm pretty sure I can even fool VI analyzer, just by using the boundary trick and loading a Filter VI of the same name in the Analyzer context, that just skips the VI where that code resides. * So why I would say it's more on the fun side now, is that the skills you need to hack that would easily allow you to write the code on your own in less time. Felix
  12. QUOTE (jdunham @ May 6 2009, 06:50 PM) Both. Felix
  13. QUOTE (i2dx @ Oct 1 2006, 09:26 AM) Nested Virtual machines on a computer cluster. So you have a dedicated sandbox for each beta testing software... Of course you should back up the feed by some SCC repository running as beta on a VM ... Ok, we are nerds, aren't we? I actually never tried LAVA with scotch and cigar, I prefer wine or beer and electronic beats... (Would be a nice poll to go for: whoch drinks do you like to be served with lava: Coffee/caffeine, Scotch/Alcohol, LAVA is addictive enough). Felix
  14. Here the idea: Code is placed inside structure (sequence or other); auto grow of; sized to Icon size VI is placed on top of structure to hide the code Both are grouped or locked, so moving the Vi don't reveal the code below. Problem 1: I can't size any structure small enough to fit behind a standard icon. Not even with private properties. Workaround: Place it behind an express VI (ha, finally found out what they are good for!). Problem 2: I can't lock or group the elements. A private property (write only) exists, though. I don't want to dig into (use) external nodes (I use LV 7!), because of upward compatibility issues. But they hide behind icons (though unlocking with the ini keys shows larger sequences). Even more, they are protected from resizing and grouped with the loop (using private properties I see the timed loop having to structures beside, can't resize these with private properties though). Any ideas? Felix
  15. QUOTE (Gabi1 @ May 5 2009, 05:02 PM) an' lvl 15 is the last.
  16. Thanks, keep the posts comin'. I'm still missing the big guys.... As a general note: we as developers are pretty much free to go with any method we like, so to say I don't need a book to convince management to any method. But on the other hand, this means we software engineers will have to negotiate a 'common practice' among ourselfes. Always implying that someone isn't ok with it and any method will not be followed literally/in detail (one of the reasons to go with agile instead of formal methods). So I really need a book that is written for engineers that do a lot of LV programming (and maybe never have heard of OOP!). Any of us is in charge of some projects and pulling others in on demand for support, and the unifying conceopt is best described by 'autonomy'. Books in general: Give some more review please. It is a good starting point to look for readers reviews and the authors blog, but I would like a LV'er statement on the books (otherwise I could just hit a amazon search, and other forum users will benefit as well...). @Several Posters: OpenG and SVN rocks! @Chris Davis: VIPM: Community or Pro? If Pro isn't an option, can we go with SVN for that? @Paul: Enterprise Architect looks good. Any experience to share about uml and LV (propably we'd go for a new thread for this, but I'm eager on that one)? I'll sign up for a trial as time will permit. To go further: After some reading, I see that there are several ways to 'do agile developement'. Can you share any experience of which concepts work well with LV and which don't? (so I don't see any reason to do 'nightly builts'). Felix
  17. I'm looking into some general aspects of software developement 'best practices'. So I would like to get some recommendations on books covering that topic which are useful for LV developers. We are already 'fluent' in LV, so we don't need (or have already) books on LV. But having pictures/drawings would be gentle for our minds and having cryptic C# class hierarchies would bore us to death. We don't have any formal method yet for our design process. A good overview of concepts would be nice to have to narrow down the choices. But also I will go a bit more into detail, so you could hopefully hint us on a set of methods to look at. We are the software guys in a scientific environment. So it is all a bit chaotic with ever changing requirenments. And we never ever get any specs on how to design our software. This leads to feature creep/scope creep both by internal featureitis and customers new ideas (they are scientists!). The later we are on schedule, to longer the list of features to implement. I feel that we can't escape that scenario, so we need to go for some 'agile software developement' (what are similar concepts that might fit?). It is obvious that we need to educate us as well as the customer on that design process to get things done faster (which might be the main obstacle for too formal methods). But we also want to keep the line that we design/own the software and they don't. Another issue might be our internal developements of reusable VIs/libraries. In that case it's all software guys that want to get things done, with at least some idea of what we want to have. Propably we could use a more formal approach there. Apart from books, having software tools to help us in the design process/project management would be an issue, preferrable open source/free of charge (we use SVN already). Felix
  18. Got it working. It goes actually very nice as I can execute each plugin-exe on it's own as well as launching it as plugin. But I observed some strange behaviour of the plug-in's FP. Although set to 'top-level' (open front panel when called), it did not show up using the run method. I had to use the FP.Open property in the plugin vi. Thanks, Felix
  19. Cross-post from http://forums.ni.com/ni/board/message?boar...hread.id=405018 resonance wasn't to greate there. I'm planning an application with a plugin architecture, that will look up a directory during runtime for available plugins. I know I could do it using .llb Top-Level VIs. But I would prefere to have the plugins 'compiled', so as exe or dll. Is that a straight foreward build of those plugins or do we need to take care of some things? And how about compatibility when we use plugins of a newer LabVIEW version? Felix
  20. Thanks to all for your help. From the discussion so far, on the server side we can't work with encryption but rely on access permissions. The other points (https, client side encryption) are clear. We will discuss the issues today and I might come back with some more questions. Felix
  21. At first many thanks for your fast response on easter sunday. Our main issue is the security on the server side. Only those developers that are on a certain project should have access to the source code. And we would like not to completley relay on the OS permissions. QUOTE (Justin Goeres @ Apr 12 2009, 03:43 PM) Can you clarify that last sentence a bit? I understand it from a technical viewpoint, as the SVN keeps track of the changes in the directory structure and works incremental on binary level. But could not any one with a SVN client (given that the server is open to them) check out all files, or is the repository password protected? Felix
  22. Until now, every developer has his code secured by using cryptographic containers (TrueCrypt). We now want to use the advantages of a small network including SCC (Subversion). What we could do, is check in/check out of the complete crypto-container. But that would not allow to have each single VI put under revision control individually. What other options do we have? We have not yet any experience with the SVN process, but are planning the network structure including folder structure of the central server. Is there any encryption support by SVN? Does passwort protected VIs work with SVN (using Tags?)? How secure are password protected VIs anyhow? Felix
×
×
  • Create New...

Important Information

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