08-11-2015 08:24 AM
@Hooovahh wrote:
Okay a couple of interesting uses that I never thought of.
Again another use I never thought of. Does this get to be complicated looking at the bookmark manager? Seeing a bunch of tags dealing with when a new feature was added? Did you go back and find that to be useful information to look up often?
The bookmarks can be collapsed, so it's not crowded; all of the revision notes are grouped together. I also follow the bookmark with a description of the change. This lets me quickly document what's changed for my Software Quality submission.
08-11-2015 10:35 AM
I think #Covers is a fine replacement for #Requirement. When I have used #Requirement, I do use a space between the bookmark and the specific requirement identifier. That way, I get one tag with a bunch of unique descriptions (containing the requirements identifiers, etc...).
08-12-2015 08:14 AM
When bookmarks first came out, I remember them being demonstrated and it was mentioned that bookmarks could be used to find parts of the code that are important. Has anyone used bookmarks this way?
The example he came up with was that with a large scale system you may have multiple layers of software and finding exactly where the code does something like log to disk, might be hard to find, and you could put a #Logging to find where the logging is happening. I thought that was a neat idea until I realized, software that is structured into actors should be relatively easy to follow, and finding where the code does the logging shouldn't take too much time if it is well structured.
Was this just a silly use of the bookmark, or does anyone use bookmarks to find parts of the code instead of needing to traverse down subVIs, or useing the project?
Unofficial Forum Rules and Guidelines
Get going with G! - LabVIEW Wiki.
16 Part Blog on Automotive CAN bus. - Hooovahh - LabVIEW Overlord
08-12-2015 01:22 PM
@Hooovahh wrote:
When bookmarks first came out, I remember them being demonstrated and it was mentioned that bookmarks could be used to find parts of the code that are important. Has anyone used bookmarks this way?
The example he came up with was that with a large scale system you may have multiple layers of software and finding exactly where the code does something like log to disk, might be hard to find, and you could put a #Logging to find where the logging is happening. I thought that was a neat idea until I realized, software that is structured into actors should be relatively easy to follow, and finding where the code does the logging shouldn't take too much time if it is well structured.
Was this just a silly use of the bookmark, or does anyone use bookmarks to find parts of the code instead of needing to traverse down subVIs, or useing the project?
Absolutely not silly. It's there so you can go directly to the code. This is a perfect way to use them, IMHO.
08-12-2015 01:30 PM
@billko wrote:
Absolutely not silly. It's there so you can go directly to the code. This is a perfect way to use them, IMHO.
What bookmarks have you used for finding common places in the code? Maybe silly wasn't the right word. Trying to rephrase:
It seemed to be using bookmarks in a way I hadn't thought about, and wasn't sure if it would function well in my work flow.
I just thought that an organized project would work better than bookmarks. And being a visual person I remember where parts of the code are, based on what is calling it more than by a name or anchor. But then again you can have multiple bookmarks where in the project your code can only be in one virtual folder. If a VI falls into multiple categories organization might be a little strange, especially with common functions, but I guess there could be a common category.
Unofficial Forum Rules and Guidelines
Get going with G! - LabVIEW Wiki.
16 Part Blog on Automotive CAN bus. - Hooovahh - LabVIEW Overlord
08-12-2015 06:30 PM
@Hooovahh wrote:
@billko wrote:
Absolutely not silly. It's there so you can go directly to the code. This is a perfect way to use them, IMHO.
What bookmarks have you used for finding common places in the code? Maybe silly wasn't the right word. Trying to rephrase:
It seemed to be using bookmarks in a way I hadn't thought about, and wasn't sure if it would function well in my work flow.
I just thought that an organized project would work better than bookmarks. And being a visual person I remember where parts of the code are, based on what is calling it more than by a name or anchor. But then again you can have multiple bookmarks where in the project your code can only be in one virtual folder. If a VI falls into multiple categories organization might be a little strange, especially with common functions, but I guess there could be a common category.
Besides the aforementioned requirements bookmarks, I also use bookamrks like #todo and #needs_VI_description, #needs_icon.
But maybe you might start thinking like some of the bookmarks aren't for you, but for someone else who might be perusing the code.
08-13-2015 08:21 AM
@billko wrote:
Besides the aforementioned requirements bookmarks, I also use bookamrks like #todo and #needs_VI_description, #needs_icon.
Is separate tags needed for adding an icon and description? Would using the same #todo with a comment that it needs a VI icon work?
Personally I wouldn't make a bookmark for needing a VI description or icon, I'd scan the project periodically with VI Analyzer.
I also saw a few new tags by NI. If you make a right click function in 2015 the template has a #CodeRequired and #CodeRecommended when being used in a template instructing a new developer on the steps to complete. I think I like these for templates, but what you usually end up with is a whole bunch of comments that the developer doesn't delete and end up with tons of duplicate tags in code that is functionally complete.
Unofficial Forum Rules and Guidelines
Get going with G! - LabVIEW Wiki.
16 Part Blog on Automotive CAN bus. - Hooovahh - LabVIEW Overlord
08-13-2015 08:34 AM
Hooovahh wrote:I also saw a few new tags by NI. If you make a right click function in 2015 the template has a #CodeRequired and #CodeRecommended when being used in a template instructing a new developer on the steps to complete. I think I like these for templates, but what you usually end up with is a whole bunch of comments that the developer doesn't delete and end up with tons of duplicate tags in code that is functionally complete.
And then you yell at them in the code review for not deleting those comments when the task is complete.
08-13-2015 01:10 PM
@crossrulz wrote:
Hooovahh wrote:I also saw a few new tags by NI. If you make a right click function in 2015 the template has a #CodeRequired and #CodeRecommended when being used in a template instructing a new developer on the steps to complete. I think I like these for templates, but what you usually end up with is a whole bunch of comments that the developer doesn't delete and end up with tons of duplicate tags in code that is functionally complete.
And then you yell at them in the code review for not deleting those comments when the task is complete.
Actually I use tags in templates so when I plop a template down, I see that I need to include a description, and icon and whatever it is i need to do with it. Usually the first thing I do is assign an icon and a description because I know what I'm creating. But sometimes I'm not exactly sure what I want to include in it and where it is going, so the icon and the description remain at the default. When I want to see exactly which VIs need a little TLC, I just open the bookmark manager and I have a list of everything that needs attention. And yes, I delete the comments as they expire. And no, it's not a big deal if I've forgotten to delete one here and there. If deleting those comments is part of your workflow, it generally gets done. (Of course, as crossrulz stated, if they leave a bunch of comments around like that, they deserve to get yelled at.)
09-08-2015 08:37 AM
Okay finally got around to making a first attempt at this. Attached is a set of VIs that are intended to be invoked from the tools menu, but may work if it is just ran, saved in 2014. Be aware that because this is invoked from the tools menu the main VI Bookmark Maker Dialog.vi is set to run when opened. CTRL+. still aborts if you want to see the source.
The included VIs has the ability to scan open VIs or projects for existing bookmarks, and then adds them to the list of bookmarks to make. There are several that exist without scanning a project, things like todo, question, note, etc., each with a short description of when they should be used. A couple of them will prompt the user for more input like the Covers, and Software Version information. Select the bookmarks to make, and click OK. Then the text for the bookmark will be placed in the clipboard.
I attempted a couple solutions like placing the comment on the cursor like quickdrop does, but this function has a bug in it that I made NI aware of. I also tried placing the comment in the clipboard instead of the comment text, but this doesn't seem to work right when invoked from the tools menu for some reason. This code still exists but is commented out.
A few things I haven't done yet but thought about, is the ability to remember previously scanned bookmarks. So if you scan a project and it adds several, when this dialog is closed it could remember these project based ones instead of having to scan again.
Unofficial Forum Rules and Guidelines
Get going with G! - LabVIEW Wiki.
16 Part Blog on Automotive CAN bus. - Hooovahh - LabVIEW Overlord