<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/" xmlns:georss="http://www.georss.org/georss"><id>tag:blogger.com,1999:blog-32599616</id><updated>2009-11-11T11:49:56.992-06:00</updated><title type="text">Eyes on VIs</title><subtitle type="html">A perspective on VI development from a member of LabVIEW R&amp;D.</subtitle><link rel="alternate" type="text/html" href="http://www.eyesonvis.com/blog/" /><link rel="hub" href="http://pubsubhubbub.appspot.com/" /><link rel="next" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/posts/default?start-index=26&amp;max-results=25" /><link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="http://eyesonvis.blogspot.com/atom.xml" /><author><name>Christina</name><uri>http://www.blogger.com/profile/17288980210854942300</uri><email>noreply@blogger.com</email></author><generator version="7.00" uri="http://www.blogger.com">Blogger</generator><openSearch:totalResults>75</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><link rel="self" href="http://feeds.feedburner.com/EyesOnVis" type="application/atom+xml" /><feedburner:emailServiceId xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">EyesOnVis</feedburner:emailServiceId><feedburner:feedburnerHostname xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://feedburner.google.com</feedburner:feedburnerHostname><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com" /><entry><id>tag:blogger.com,1999:blog-32599616.post-4400628590858633565</id><published>2009-10-30T12:49:00.003-05:00</published><updated>2009-10-30T12:52:59.235-05:00</updated><title type="text">Happy Halloween</title><content type="html">&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.eyesonvis.com/blog/uploaded_images/HalloweenFairy2-761330.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 267px; height: 400px;" src="http://www.eyesonvis.com/blog/uploaded_images/HalloweenFairy2-761296.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.eyesonvis.com/blog/uploaded_images/VIServer_NormK-761262.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 300px; height: 400px;" src="http://www.eyesonvis.com/blog/uploaded_images/VIServer_NormK-761211.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;It's Friday, October 30, at 12:50PM and the LabVIEW team Halloween Demo day is about to start! I wasn't very creative this year, so I'm just a run-of-the-mill fairy. Norm, however, went all out on his VI Server costume!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/32599616-4400628590858633565?l=www.eyesonvis.com%2Fblog'/&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/4400628590858633565/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=32599616&amp;postID=4400628590858633565" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/posts/default/4400628590858633565" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/posts/default/4400628590858633565" /><link rel="alternate" type="text/html" href="http://www.eyesonvis.com/blog/2009/10/happy-halloween.html" title="Happy Halloween" /><author><name>Christina</name><uri>http://www.blogger.com/profile/17288980210854942300</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="08333077494425734606" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-32599616.post-1668468963043746923</id><published>2009-10-27T16:46:00.002-05:00</published><updated>2009-10-27T16:52:40.831-05:00</updated><title type="text">The "R" in "R&amp;D"</title><content type="html">I'm so excited to be able to share with you the project that I've been working on recently! As far as I know, this is the first time LabVIEW R&amp;D has been able to run a Pioneer program to get customer feedback on a research project.&lt;br /&gt;&lt;br /&gt;I'd like to emphasize that this is &lt;span style="font-style:italic;"&gt;Research&lt;/span&gt;. This version of LabVIEW is a Pioneer. That could mean many things, but in this case it means that this version is not approved for production work and the features in it are not guaranteed to be in any future version of LabVIEW.&lt;br /&gt;&lt;br /&gt;If you see something you like or dislike in this Pioneer, please let us know! This is an opportunity for you to directly affect the future design of LabVIEW.&lt;br /&gt;&lt;br /&gt;I encourage you to watch these two short videos on the LabVIEW Notebook:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.youtube.com/watch?v=AT76UPUhqKw"&gt;Introduction to the LabVIEW Notebook Pioneer&lt;/a&gt; (on YouTube)&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.youtube.com/watch?v=Ejz_4wKS5Bs"&gt;Using Data in the LabVIEW Notebook Pioneer&lt;/a&gt; (on YouTube)&lt;/li&gt;&lt;/ul&gt;If you have time to "get behind the wheel," please join the LabVIEW Notebook Pioneer program and try it out. Although it's not actually a Beta, we're running the Pioneer through the Beta Program Resource Center, so to sign up go to &lt;a href="http://www.ni.com/beta"&gt;ni.com/beta&lt;/a&gt; and select the product &lt;span style="font-weight:bold;"&gt;LabVIEW Notebook&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Once approved to the program, you'll receive an e-mail invitation to join a private group on ni.com/Community. That's where you can download the Pioneer and discuss it on our private forum.&lt;br /&gt;&lt;br /&gt;Note that the LabVIEW Notebook is intended to complement the LabVIEW Project, not replace it. However, if you have ideas for how concepts in the Notebook could be applied to Projects as well, we'd love to discuss them with you!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/32599616-1668468963043746923?l=www.eyesonvis.com%2Fblog'/&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/1668468963043746923/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=32599616&amp;postID=1668468963043746923" title="5 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/posts/default/1668468963043746923" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/posts/default/1668468963043746923" /><link rel="alternate" type="text/html" href="http://www.eyesonvis.com/blog/2009/10/r-in-r.html" title="The &quot;R&quot; in &quot;R&amp;D&quot;" /><author><name>Christina</name><uri>http://www.blogger.com/profile/17288980210854942300</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="08333077494425734606" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-32599616.post-3693646239720379048</id><published>2009-10-22T14:01:00.004-05:00</published><updated>2009-10-23T07:28:39.566-05:00</updated><title type="text">Moving Servers</title><content type="html">I've decided to move the &lt;b&gt;Eyes On VIs&lt;/b&gt; blog to my own server since some people can't view blogspot.com content at work.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;It's likely that I'll break some thing in this move. (I probably already have, while setting up for it). The new location will be &lt;a href="http://www.eyesonvis.com/blog/"&gt;http://www.eyesonvis.com/blog/&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The old Blogger RSS feeds will become invalid. If you want to subscribe via RSS, I recommend you use the Feedburner feed: &lt;a href="http://feeds.feedburner.com/eyesonvis"&gt;http://feeds.feedburner.com/eyesonvis&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I apologize for any inconvenience!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;[Edit] As far as I know, this won't affect e-mail subscriptions (through FeedBurner) at all.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/32599616-3693646239720379048?l=www.eyesonvis.com%2Fblog'/&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/3693646239720379048/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=32599616&amp;postID=3693646239720379048" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/posts/default/3693646239720379048" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/posts/default/3693646239720379048" /><link rel="alternate" type="text/html" href="http://www.eyesonvis.com/blog/2009/10/moving-servers.html" title="Moving Servers" /><author><name>Christina</name><uri>http://www.blogger.com/profile/17288980210854942300</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="08333077494425734606" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-32599616.post-1870705188268022702</id><published>2009-08-28T14:50:00.000-05:00</published><updated>2009-08-28T14:50:08.588-05:00</updated><title type="text">Changes to the LabVIEW 2009 Getting Started Window</title><content type="html">&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_BN3_donLgVE/Spb8yXRRrhI/AAAAAAAAAQo/EcW3eLdPQX8/s1600-h/GSW_FEED.PNG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 345px;" src="http://3.bp.blogspot.com/_BN3_donLgVE/Spb8yXRRrhI/AAAAAAAAAQo/EcW3eLdPQX8/s400/GSW_FEED.PNG" border="0" alt="" id="BLOGGER_PHOTO_ID_5374761147483401746" /&gt;&lt;/a&gt;&lt;br /&gt;I made a few changes to the Getting Started window in LabVIEW 2009.&lt;br /&gt;&lt;br /&gt;On the right-hand side, the top section is now &lt;span style="font-weight:bold;"&gt;Latest from ni.com&lt;/span&gt;. These links monitor feeds from ni.com*, notifying you of new content by displaying a number in parentheses to show how many articles have been posted in that category since the last time you clicked the link.**&lt;br /&gt;&lt;br /&gt;If you mouse over these links, a tip strip previews the titles of the new articles.&lt;br /&gt;&lt;br /&gt;On the left-hand size, there is now a dividing graphic that appears in the recent files list, between the projects and other files.&lt;br /&gt;&lt;br /&gt;Also, it's not in &lt;span style="font-weight:bold;"&gt;Tools&gt;&gt;Options&lt;/span&gt; yet, but LabVIEW 2009 supports a config token for changing how many recent projects appear on the Getting Started window. Example: "MaxGSWRecentProjects=10" (The default is 2).&lt;br /&gt;&lt;br /&gt;I hope you find these changes useful!&lt;br /&gt;&lt;br /&gt;* &lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;- The web feeds are available only in the English version of LabVIEW 2009.&lt;/span&gt;&lt;br /&gt;** &lt;span class="Apple-style-span"  style="font-size:x-small;"&gt;- You might actually see more links when you click the link, because we filter out posts for modules that you're not using when determining the Getting Started window count. If you don't want LabVIEW to check the web for this information, you can disable the updates in &lt;b&gt;Tools&gt;&gt;Options&lt;/b&gt;.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/32599616-1870705188268022702?l=www.eyesonvis.com%2Fblog'/&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/1870705188268022702/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=32599616&amp;postID=1870705188268022702" title="4 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/posts/default/1870705188268022702" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/posts/default/1870705188268022702" /><link rel="alternate" type="text/html" href="http://www.eyesonvis.com/blog/2009/08/changes-to-labview-2009-getting-started.html" title="Changes to the LabVIEW 2009 Getting Started Window" /><author><name>Christina</name><uri>http://www.blogger.com/profile/17288980210854942300</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="08333077494425734606" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/_BN3_donLgVE/Spb8yXRRrhI/AAAAAAAAAQo/EcW3eLdPQX8/s72-c/GSW_FEED.PNG" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-32599616.post-6211093696695126206</id><published>2009-08-26T17:48:00.001-05:00</published><updated>2009-08-26T17:48:25.413-05:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="LabVIEW 2009" /><title type="text">Improved Block Diagram Cleanup in LabVIEW 2009</title><content type="html">&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_BN3_donLgVE/SpW3ogmzIFI/AAAAAAAAAQg/GWLwvH5RIpI/s1600-h/CleanUp.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 159px;" src="http://1.bp.blogspot.com/_BN3_donLgVE/SpW3ogmzIFI/AAAAAAAAAQg/GWLwvH5RIpI/s400/CleanUp.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5374403636911874130" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;One of my favorite features in LabVIEW 2009 is the improved Block Diagram Cleanup. We first saw Cleanup in LabVIEW 8.6. It worked well, but had a few limitations that caused me to use it only on small, simple VIs. &lt;br /&gt;&lt;br /&gt;The improvements in LabVIEW 2009 have made Cleanup much more useful to me. It's a huge time-saver! &lt;br /&gt;&lt;br /&gt;The most noticeable change is that you can now cleanup selections instead of entire diagrams. I use this frequently, selecting a loop or case structure and then clicking on the Cleanup button (the icon of a broom).&lt;br /&gt;&lt;br /&gt;Another significant change is that LabVIEW handles free labels more intelligently. Instead of treating them the same as functions and moving them arbitrarily, LabVIEW attempts to keep free labels with the items that they probably describe. This is especially useful when you have labels on top of wires describing their data.&lt;br /&gt;&lt;br /&gt;Finally, there is the ability to exclude individual loops and structures from the block diagram cleanup. This allows you to "lock down" sections of the code while still using the diagram-wide automatic cleanup. To use this feature, right click on the frame of a loop or structure and choose "Exclude from Diagram Cleanup."&lt;br /&gt;&lt;br /&gt;No more spaghetti code!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/32599616-6211093696695126206?l=www.eyesonvis.com%2Fblog'/&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/6211093696695126206/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=32599616&amp;postID=6211093696695126206" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/posts/default/6211093696695126206" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/posts/default/6211093696695126206" /><link rel="alternate" type="text/html" href="http://www.eyesonvis.com/blog/2009/08/improved-block-diagram-cleanup-in.html" title="Improved Block Diagram Cleanup in LabVIEW 2009" /><author><name>Christina</name><uri>http://www.blogger.com/profile/17288980210854942300</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="08333077494425734606" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/_BN3_donLgVE/SpW3ogmzIFI/AAAAAAAAAQg/GWLwvH5RIpI/s72-c/CleanUp.png" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-32599616.post-8337833768006962062</id><published>2009-08-10T11:52:00.004-05:00</published><updated>2009-08-10T12:23:28.154-05:00</updated><title type="text">Hi, I'm Christina</title><content type="html">&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_BN3_donLgVE/SoBTWVZKIfI/AAAAAAAAAOY/CFUP-eOsUuE/s1600-h/MyPicture2.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 141px; height: 160px;" src="http://2.bp.blogspot.com/_BN3_donLgVE/SoBTWVZKIfI/AAAAAAAAAOY/CFUP-eOsUuE/s320/MyPicture2.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5368382398990524914" /&gt;&lt;/a&gt;&lt;br /&gt;I had a great time at NIWeek 2009! It was so cool to meet with NI customers and see the amazing things they accomplish with our products.&lt;br /&gt;&lt;br /&gt;One thing that surprised me is how many people were curious about me, the person who writes Eyes on VIs.&lt;br /&gt;&lt;br /&gt;So I thought it would be good to take a moment to introduce myself. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Q&lt;/span&gt;: Who are you?&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;A&lt;/span&gt;: I'm Christina Rogers, a senior software engineer in the LabVIEW R&amp;D group at National Instruments.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Q&lt;/span&gt;: What do you do?&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;A&lt;/span&gt;: Part of my job is that I'm a proponent of usability and user interface design. I help other developers design the UI for their features, including dialogs and such. I also implement LabVIEW features, both in C++ and in LabVIEW VIs (a.k.a. G).&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Q&lt;/span&gt;: What kinds of things have you worked on?&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;A&lt;/span&gt;: I've been on the LabVIEW team for 12 years, so I've worked on all kinds of things, including the Getting Started window, the Navigation window, report generation, printing, the multicolumn listbox, type definitions, and other things I'm probably forgetting at the moment.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Q&lt;/span&gt;: And the "Eyes on VIs" blog?&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;A&lt;/span&gt;: I started this blog as a way to share my LabVIEW knowledge directly with LabVIEW users.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Q&lt;/span&gt;: Is it part of your job?&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;A&lt;/span&gt;: No. Although folks at NI appreciate that I run this blog, it's not what they pay me for.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Q&lt;/span&gt;: Who else works on "Eyes on VIs?"&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;A&lt;/span&gt;: Just me. I write the content, make the videos, do the graphics, do the web development, etc. Well, except for that time I had Norm as a guest blogger.&lt;br /&gt;&lt;br /&gt;If you have any other questions, please feel free to leave me a comment!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/32599616-8337833768006962062?l=www.eyesonvis.com%2Fblog'/&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/8337833768006962062/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=32599616&amp;postID=8337833768006962062" title="5 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/posts/default/8337833768006962062" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/posts/default/8337833768006962062" /><link rel="alternate" type="text/html" href="http://www.eyesonvis.com/blog/2009/08/hi-im-christina.html" title="Hi, I'm Christina" /><author><name>Christina</name><uri>http://www.blogger.com/profile/17288980210854942300</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="08333077494425734606" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/_BN3_donLgVE/SoBTWVZKIfI/AAAAAAAAAOY/CFUP-eOsUuE/s72-c/MyPicture2.jpg" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-32599616.post-3678489709592458638</id><published>2009-08-03T07:42:00.004-05:00</published><updated>2009-08-03T08:02:56.746-05:00</updated><title type="text">LabVIEW 2009</title><content type="html">It's NIWeek, and that means (you guessed it!) a new release of LabVIEW!&lt;br /&gt;&lt;br /&gt;As you probably know, we changed the version number scheme so this release is LabVIEW 2009.&lt;br /&gt;&lt;br /&gt;To see the new features, you should check out &lt;a href="http://www.ni.com/labview"&gt;ni.com/labview&lt;/a&gt;. There is a nice video (click "See what's new") that's in Flash, so you can easily navigate to sections that interest you.&lt;br /&gt;&lt;br /&gt;One change that isn't big enough to be listed as a new feature (and that I happened to work on) is a revised &lt;span style="font-weight:bold;"&gt;Edit Events&lt;/span&gt; dialog for the event structure:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_BN3_donLgVE/SnbdQMaaUpI/AAAAAAAAAOQ/JIVMhxIJpaE/s1600-h/2009-08-03_EditEvents.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 234px;" src="http://3.bp.blogspot.com/_BN3_donLgVE/SnbdQMaaUpI/AAAAAAAAAOQ/JIVMhxIJpaE/s320/2009-08-03_EditEvents.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5365719276338172562" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;This new design addresses numerous problems with the previous version of the dialog.&lt;ul&gt;&lt;li&gt;Grouping events in a tree structure helps keep the Event list browsable, and makes the commonly-used "Value Change" event visible without scrolling.&lt;/li&gt;&lt;li&gt;The flow when using the dialog is left-to-right, which should be easier for new users to understand.&lt;/li&gt;&lt;li&gt;The full label of the event case is visible instead of just the number.&lt;/li&gt;&lt;li&gt;The "Lock front panel" text includes "defer processing" to give a better indication that locking does not discard user actions while the panel is locked.&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;What are your favorite new features of LabVIEW 2009?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/32599616-3678489709592458638?l=www.eyesonvis.com%2Fblog'/&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/3678489709592458638/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=32599616&amp;postID=3678489709592458638" title="7 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/posts/default/3678489709592458638" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/posts/default/3678489709592458638" /><link rel="alternate" type="text/html" href="http://www.eyesonvis.com/blog/2009/08/labview-2009.html" title="LabVIEW 2009" /><author><name>Christina</name><uri>http://www.blogger.com/profile/17288980210854942300</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="08333077494425734606" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/_BN3_donLgVE/SnbdQMaaUpI/AAAAAAAAAOQ/JIVMhxIJpaE/s72-c/2009-08-03_EditEvents.png" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">7</thr:total></entry><entry><id>tag:blogger.com,1999:blog-32599616.post-8285892839551214044</id><published>2009-07-20T10:14:00.006-05:00</published><updated>2009-07-20T14:21:37.853-05:00</updated><title type="text">NIWeek 2009</title><content type="html">&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_BN3_donLgVE/SmSkTkJYFRI/AAAAAAAAANg/ioHjpwqFL_U/s1600-h/2009-register-for-niweek.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 204px; height: 68px;" src="http://1.bp.blogspot.com/_BN3_donLgVE/SmSkTkJYFRI/AAAAAAAAANg/ioHjpwqFL_U/s320/2009-register-for-niweek.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5360590112505206034" /&gt;&lt;/a&gt;&lt;br /&gt;Are you going to&lt;a href="http://www.ni.com/niweek/"&gt; NIWeek 2009&lt;/a&gt;? The Conference &lt;a href="http://www.ni.com/pdf/niweek/us/2009/niweek_program.pdf"&gt;program&lt;/a&gt; is on-line, so you can plan what sessions you want to see.&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Closed Door Session&lt;/h3&gt;I'm not presenting any regular sessions this year, but I am holding a closed-door session to get feedback on a project that I'm working on. There are a few spots still available. The target audience is people who teach LabVIEW, either formally (teaching classes) or informally (mentoring colleagues).&lt;br /&gt;&lt;br /&gt;If you are interested in participating, please e-mail me at my GMail account (eyesonvis at gmail.com). (&lt;span style="font-style:italic;"&gt;Note: I will reply to every e-mail on this topic so that you know your e-mail wasn't blocked by the spam filter. If you don't receive a reply after a day, please leave a comment here to let me know&lt;/span&gt;).&lt;br /&gt;&lt;br /&gt;Details&lt;ul&gt;&lt;li&gt;It's Thursday, August 6, 10AM-Noon.&lt;/li&gt;&lt;li&gt; You would need to sign an NDA (non-disclosure agreement) if you are not already under one.&lt;/li&gt;&lt;li&gt;Spots are limited, so I apologize in advance if you want to attend but I can't get you in.&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;h3&gt;Where Else I'll Be&lt;/h3&gt;Other places you will probably find me during NIWeek:&lt;ul&gt;&lt;li&gt;I plan to visit the &lt;span style="font-weight:bold;"&gt;LabVIEW Experts Panel&lt;/span&gt; in the Technology Theater on Tuesday, Noon-1PM, to hear what "insight and advice" people seek from "NI engineers working on the latest version of LabVIEW" (seeing as how I am one of those).&lt;/li&gt;&lt;li&gt;I won't want to miss the &lt;span style="font-weight:bold;"&gt;Challenge the Champions&lt;/span&gt; event at the Technology Theater on Tuesday from 5PM-6PM.&lt;/li&gt;&lt;li&gt;I'm really looking forward to the &lt;span style="font-weight:bold;"&gt;LAVA/OpenG BBQ at Stubb's&lt;/span&gt;. &lt;a href="http://bit.ly/PCL6d"&gt;Tickets&lt;/a&gt; are still available if you want to join in.&lt;/li&gt;&lt;li&gt;Of course, there are a LOT of sessions I want to see, but NI employees only get in if the rooms don't fill up, so I can't promise which ones I'll actually be at.&lt;/li&gt;&lt;/ul&gt;I hope to see you at NIWeek! As a "thank you" for my blog readers, I'll have a few hand-crafted "Eyes on VIs" buttons to give away. If you see me there, ask for one! :-)&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_BN3_donLgVE/SmTCqtFK1qI/AAAAAAAAANo/-SCgRxAlA1g/s1600-h/EyesOnVIsButton.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 110px; height: 110px;" src="http://3.bp.blogspot.com/_BN3_donLgVE/SmTCqtFK1qI/AAAAAAAAANo/-SCgRxAlA1g/s320/EyesOnVIsButton.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5360623495389304482" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/32599616-8285892839551214044?l=www.eyesonvis.com%2Fblog'/&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/8285892839551214044/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=32599616&amp;postID=8285892839551214044" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/posts/default/8285892839551214044" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/posts/default/8285892839551214044" /><link rel="alternate" type="text/html" href="http://www.eyesonvis.com/blog/2009/07/niweek-2009.html" title="NIWeek 2009" /><author><name>Christina</name><uri>http://www.blogger.com/profile/17288980210854942300</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="08333077494425734606" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/_BN3_donLgVE/SmSkTkJYFRI/AAAAAAAAANg/ioHjpwqFL_U/s72-c/2009-register-for-niweek.jpg" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-32599616.post-1663037399261070857</id><published>2009-07-03T14:05:00.014-05:00</published><updated>2009-07-04T15:53:05.806-05:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Scripting" /><category scheme="http://www.blogger.com/atom/ns#" term="LVSpeak" /><category scheme="http://www.blogger.com/atom/ns#" term="Quick Edit" /><category scheme="http://www.blogger.com/atom/ns#" term="LabVIEW Speak" /><category scheme="http://www.blogger.com/atom/ns#" term="Speech" /><title type="text">LVSpeak: Automating  VI development through speech</title><content type="html">&lt;blockquote&gt;Eyes on VIs is pleased to welcome its first guest blogger, Norm "The Captain" Kirchner! Norm is the first person in history to sacrifice his LabVIEW Champion status for the pleasure of working at National Instruments. (NI Employees cannot be LabVIEW Champions). Norm has been using LabVIEW for over 9 years and he is going to share his "LVSpeak" project, which (I hope you will agree) is pretty darn amazing. Thanks for joining us, Norm!
&lt;br /&gt;
&lt;br /&gt;- Christina&lt;/blockquote&gt;
&lt;br /&gt;&lt;hr /&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;meta equiv="Content-Type" content="text/html; charset=utf-8"&gt;&lt;meta name="ProgId" content="Word.Document"&gt;&lt;meta name="Generator" content="Microsoft Word 12"&gt;&lt;meta name="Originator" content="Microsoft Word 12"&gt;&lt;link rel="File-List" href="file:///C:%5CUsers%5CNKirchne%5CAppData%5CLocal%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_filelist.xml"&gt;&lt;link rel="themeData" href="file:///C:%5CUsers%5CNKirchne%5CAppData%5CLocal%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_themedata.thmx"&gt;&lt;link rel="colorSchemeMapping" href="file:///C:%5CUsers%5CNKirchne%5CAppData%5CLocal%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_colorschememapping.xml"&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;  &lt;w:worddocument&gt;   &lt;w:view&gt;Normal&lt;/w:View&gt;   &lt;w:zoom&gt;0&lt;/w:Zoom&gt;   &lt;w:trackmoves/&gt;   &lt;w:trackformatting/&gt;   &lt;w:punctuationkerning/&gt;   &lt;w:validateagainstschemas/&gt;   &lt;w:saveifxmlinvalid&gt;false&lt;/w:SaveIfXMLInvalid&gt;   &lt;w:ignoremixedcontent&gt;false&lt;/w:IgnoreMixedContent&gt;   &lt;w:alwaysshowplaceholdertext&gt;false&lt;/w:AlwaysShowPlaceholderText&gt;   &lt;w:donotpromoteqf/&gt;   &lt;w:lidthemeother&gt;EN-US&lt;/w:LidThemeOther&gt;   &lt;w:lidthemeasian&gt;X-NONE&lt;/w:LidThemeAsian&gt;   &lt;w:lidthemecomplexscript&gt;X-NONE&lt;/w:LidThemeComplexScript&gt;   &lt;w:compatibility&gt;    &lt;w:breakwrappedtables/&gt;    &lt;w:snaptogridincell/&gt;    &lt;w:wraptextwithpunct/&gt;    &lt;w:useasianbreakrules/&gt;    &lt;w:dontgrowautofit/&gt;    &lt;w:splitpgbreakandparamark/&gt;    &lt;w:dontvertaligncellwithsp/&gt;    &lt;w:dontbreakconstrainedforcedtables/&gt;    &lt;w:dontvertalignintxbx/&gt;    &lt;w:word11kerningpairs/&gt;    &lt;w:cachedcolbalance/&gt;   &lt;/w:Compatibility&gt;   &lt;w:browserlevel&gt;MicrosoftInternetExplorer4&lt;/w:BrowserLevel&gt;   &lt;m:mathpr&gt;    &lt;m:mathfont val="Cambria Math"&gt;    &lt;m:brkbin val="before"&gt;    &lt;m:brkbinsub val="&amp;#45;-"&gt;    &lt;m:smallfrac val="off"&gt;    &lt;m:dispdef/&gt;    &lt;m:lmargin val="0"&gt;    &lt;m:rmargin val="0"&gt;    &lt;m:defjc val="centerGroup"&gt;    &lt;m:wrapindent val="1440"&gt;    &lt;m:intlim val="subSup"&gt;    &lt;m:narylim val="undOvr"&gt;   &lt;/m:mathPr&gt;&lt;/w:WordDocument&gt; &lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;  &lt;w:latentstyles deflockedstate="false" defunhidewhenused="true" defsemihidden="true" defqformat="false" defpriority="99" latentstylecount="267"&gt;   &lt;w:lsdexception locked="false" priority="0" semihidden="false" unhidewhenused="false" qformat="true" name="Normal"&gt;   &lt;w:lsdexception locked="false" priority="9" semihidden="false" unhidewhenused="false" qformat="true" name="heading 1"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 2"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 3"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 4"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 5"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 6"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 7"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 8"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 9"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 1"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 2"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 3"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 4"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 5"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 6"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 7"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 8"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 9"&gt;   &lt;w:lsdexception locked="false" priority="35" qformat="true" name="caption"&gt;   &lt;w:lsdexception locked="false" priority="10" semihidden="false" unhidewhenused="false" qformat="true" name="Title"&gt;   &lt;w:lsdexception locked="false" priority="1" name="Default Paragraph Font"&gt;   &lt;w:lsdexception locked="false" priority="11" semihidden="false" unhidewhenused="false" qformat="true" name="Subtitle"&gt;   &lt;w:lsdexception locked="false" priority="22" semihidden="false" unhidewhenused="false" qformat="true" name="Strong"&gt;   &lt;w:lsdexception locked="false" priority="20" semihidden="false" unhidewhenused="false" qformat="true" name="Emphasis"&gt;   &lt;w:lsdexception locked="false" priority="59" semihidden="false" unhidewhenused="false" name="Table Grid"&gt;   &lt;w:lsdexception locked="false" unhidewhenused="false" name="Placeholder Text"&gt;   &lt;w:lsdexception locked="false" priority="1" semihidden="false" unhidewhenused="false" qformat="true" name="No Spacing"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 1"&gt;   &lt;w:lsdexception locked="false" unhidewhenused="false" name="Revision"&gt;   &lt;w:lsdexception locked="false" priority="34" semihidden="false" unhidewhenused="false" qformat="true" name="List Paragraph"&gt;   &lt;w:lsdexception locked="false" priority="29" semihidden="false" unhidewhenused="false" qformat="true" name="Quote"&gt;   &lt;w:lsdexception locked="false" priority="30" semihidden="false" unhidewhenused="false" qformat="true" name="Intense Quote"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="19" semihidden="false" unhidewhenused="false" qformat="true" name="Subtle Emphasis"&gt;   &lt;w:lsdexception locked="false" priority="21" semihidden="false" unhidewhenused="false" qformat="true" name="Intense Emphasis"&gt;   &lt;w:lsdexception locked="false" priority="31" semihidden="false" unhidewhenused="false" qformat="true" name="Subtle Reference"&gt;   &lt;w:lsdexception locked="false" priority="32" semihidden="false" unhidewhenused="false" qformat="true" name="Intense Reference"&gt;   &lt;w:lsdexception locked="false" priority="33" semihidden="false" unhidewhenused="false" qformat="true" name="Book Title"&gt;   &lt;w:lsdexception locked="false" priority="37" name="Bibliography"&gt;   &lt;w:lsdexception locked="false" priority="39" qformat="true" name="TOC Heading"&gt;  &lt;/w:LatentStyles&gt; &lt;/xml&gt;&lt;![endif]--&gt;&lt;style&gt; &lt;!--  /* Font Definitions */  @font-face 	{font-family:Wingdings; 	panose-1:5 0 0 0 0 0 0 0 0 0; 	mso-font-charset:2; 	mso-generic-font-family:auto; 	mso-font-pitch:variable; 	mso-font-signature:0 268435456 0 0 -2147483648 0;} @font-face 	{font-family:"Cambria Math"; 	panose-1:2 4 5 3 5 4 6 3 2 4; 	mso-font-charset:1; 	mso-generic-font-family:roman; 	mso-font-format:other; 	mso-font-pitch:variable; 	mso-font-signature:0 0 0 0 0 0;} @font-face 	{font-family:Calibri; 	panose-1:2 15 5 2 2 2 4 3 2 4; 	mso-font-charset:0; 	mso-generic-font-family:swiss; 	mso-font-pitch:variable; 	mso-font-signature:-1610611985 1073750139 0 0 159 0;}  /* Style Definitions */  p.MsoNormal, li.MsoNormal, div.MsoNormal 	{mso-style-unhide:no; 	mso-style-qformat:yes; 	mso-style-parent:""; 	margin-top:0in; 	margin-right:0in; 	margin-bottom:10.0pt; 	margin-left:0in; 	line-height:115%; 	mso-pagination:widow-orphan; 	font-size:11.0pt; 	font-family:"Calibri","sans-serif"; 	mso-ascii-font-family:Calibri; 	mso-ascii-theme-font:minor-latin; 	mso-fareast-font-family:Calibri; 	mso-fareast-theme-font:minor-latin; 	mso-hansi-font-family:Calibri; 	mso-hansi-theme-font:minor-latin; 	mso-bidi-font-family:"Times New Roman"; 	mso-bidi-theme-font:minor-bidi;} p.MsoListParagraph, li.MsoListParagraph, div.MsoListParagraph 	{mso-style-priority:34; 	mso-style-unhide:no; 	mso-style-qformat:yes; 	margin-top:0in; 	margin-right:0in; 	margin-bottom:10.0pt; 	margin-left:.5in; 	mso-add-space:auto; 	line-height:115%; 	mso-pagination:widow-orphan; 	font-size:11.0pt; 	font-family:"Calibri","sans-serif"; 	mso-ascii-font-family:Calibri; 	mso-ascii-theme-font:minor-latin; 	mso-fareast-font-family:Calibri; 	mso-fareast-theme-font:minor-latin; 	mso-hansi-font-family:Calibri; 	mso-hansi-theme-font:minor-latin; 	mso-bidi-font-family:"Times New Roman"; 	mso-bidi-theme-font:minor-bidi;} p.MsoListParagraphCxSpFirst, li.MsoListParagraphCxSpFirst, div.MsoListParagraphCxSpFirst 	{mso-style-priority:34; 	mso-style-unhide:no; 	mso-style-qformat:yes; 	mso-style-type:export-only; 	margin-top:0in; 	margin-right:0in; 	margin-bottom:0in; 	margin-left:.5in; 	margin-bottom:.0001pt; 	mso-add-space:auto; 	line-height:115%; 	mso-pagination:widow-orphan; 	font-size:11.0pt; 	font-family:"Calibri","sans-serif"; 	mso-ascii-font-family:Calibri; 	mso-ascii-theme-font:minor-latin; 	mso-fareast-font-family:Calibri; 	mso-fareast-theme-font:minor-latin; 	mso-hansi-font-family:Calibri; 	mso-hansi-theme-font:minor-latin; 	mso-bidi-font-family:"Times New Roman"; 	mso-bidi-theme-font:minor-bidi;} p.MsoListParagraphCxSpMiddle, li.MsoListParagraphCxSpMiddle, div.MsoListParagraphCxSpMiddle 	{mso-style-priority:34; 	mso-style-unhide:no; 	mso-style-qformat:yes; 	mso-style-type:export-only; 	margin-top:0in; 	margin-right:0in; 	margin-bottom:0in; 	margin-left:.5in; 	margin-bottom:.0001pt; 	mso-add-space:auto; 	line-height:115%; 	mso-pagination:widow-orphan; 	font-size:11.0pt; 	font-family:"Calibri","sans-serif"; 	mso-ascii-font-family:Calibri; 	mso-ascii-theme-font:minor-latin; 	mso-fareast-font-family:Calibri; 	mso-fareast-theme-font:minor-latin; 	mso-hansi-font-family:Calibri; 	mso-hansi-theme-font:minor-latin; 	mso-bidi-font-family:"Times New Roman"; 	mso-bidi-theme-font:minor-bidi;} p.MsoListParagraphCxSpLast, li.MsoListParagraphCxSpLast, div.MsoListParagraphCxSpLast 	{mso-style-priority:34; 	mso-style-unhide:no; 	mso-style-qformat:yes; 	mso-style-type:export-only; 	margin-top:0in; 	margin-right:0in; 	margin-bottom:10.0pt; 	margin-left:.5in; 	mso-add-space:auto; 	line-height:115%; 	mso-pagination:widow-orphan; 	font-size:11.0pt; 	font-family:"Calibri","sans-serif"; 	mso-ascii-font-family:Calibri; 	mso-ascii-theme-font:minor-latin; 	mso-fareast-font-family:Calibri; 	mso-fareast-theme-font:minor-latin; 	mso-hansi-font-family:Calibri; 	mso-hansi-theme-font:minor-latin; 	mso-bidi-font-family:"Times New Roman"; 	mso-bidi-theme-font:minor-bidi;} .MsoChpDefault 	{mso-style-type:export-only; 	mso-default-props:yes; 	mso-ascii-font-family:Calibri; 	mso-ascii-theme-font:minor-latin; 	mso-fareast-font-family:Calibri; 	mso-fareast-theme-font:minor-latin; 	mso-hansi-font-family:Calibri; 	mso-hansi-theme-font:minor-latin; 	mso-bidi-font-family:"Times New Roman"; 	mso-bidi-theme-font:minor-bidi;} .MsoPapDefault 	{mso-style-type:export-only; 	margin-bottom:10.0pt; 	line-height:115%;} @page Section1 	{size:8.5in 11.0in; 	margin:1.0in 1.0in 1.0in 1.0in; 	mso-header-margin:.5in; 	mso-footer-margin:.5in; 	mso-paper-source:0;} div.Section1 	{page:Section1;}  /* List Definitions */  @list l0 	{mso-list-id:1276521000; 	mso-list-type:hybrid; 	mso-list-template-ids:105796370 67698703 67698713 67698715 67698703 67698713 67698715 67698703 67698713 67698715;} @list l0:level1 	{mso-level-tab-stop:none; 	mso-level-number-position:left; 	text-indent:-.25in;} @list l1 	{mso-list-id:1566183393; 	mso-list-type:hybrid; 	mso-list-template-ids:-531870232 67698689 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;} @list l1:level1 	{mso-level-number-format:bullet; 	mso-level-text:; 	mso-level-tab-stop:none; 	mso-level-number-position:left; 	text-indent:-.25in; 	font-family:Symbol;} @list l2 	{mso-list-id:1699424645; 	mso-list-type:hybrid; 	mso-list-template-ids:-71791608 67698689 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;} @list l2:level1 	{mso-level-number-format:bullet; 	mso-level-text:; 	mso-level-tab-stop:none; 	mso-level-number-position:left; 	text-indent:-.25in; 	font-family:Symbol;} ol 	{margin-bottom:0in;} ul 	{margin-bottom:0in;} --&gt; &lt;/style&gt;&lt;!--[if gte mso 10]&gt; &lt;style&gt;  /* Style Definitions */  table.MsoNormalTable 	{mso-style-name:"Table Normal"; 	mso-tstyle-rowband-size:0; 	mso-tstyle-colband-size:0; 	mso-style-noshow:yes; 	mso-style-priority:99; 	mso-style-qformat:yes; 	mso-style-parent:""; 	mso-padding-alt:0in 5.4pt 0in 5.4pt; 	mso-para-margin-top:0in; 	mso-para-margin-right:0in; 	mso-para-margin-bottom:10.0pt; 	mso-para-margin-left:0in; 	line-height:115%; 	mso-pagination:widow-orphan; 	font-size:11.0pt; 	font-family:"Calibri","sans-serif"; 	mso-ascii-font-family:Calibri; 	mso-ascii-theme-font:minor-latin; 	mso-hansi-font-family:Calibri; 	mso-hansi-theme-font:minor-latin;} &lt;/style&gt; &lt;![endif]--&gt;    &lt;p class="MsoNormal"&gt;Imagine if LabVIEW was able to read your thoughts and react to them. You just think “edit icon” and *pop* the icon editor is opened for you immediately. Imagine if every time you wanted to drop a property node for a control or group of controls, they just showed up on the diagram. &lt;/p&gt;  &lt;p class="MsoNormal"&gt;Although this ability is not implemented in LabVIEW &lt;u&gt;yet&lt;/u&gt;, we can get darn close by using our voice and a little creative coding.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;LVSpeak (LabVIEW Speak) is a very simple concept with a great deal of possibilities. It utilizes the Microsoft Speech API (SAPI) and provides an open and extendable interface to it within LabVIEW. Currently, two extensions of that architecture exist. They are ‘Quick Edit’ and ‘Speech Enabled Quick Drop’.
&lt;br /&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;These extensions of LVSpeak and the LabVIEW development environment give the coder tools to greatly speed the process of code creation and modification upwards of 70%.&lt;/p&gt;&lt;br&gt;Note: Volume on the videos is very low, turn speakers all the way up&lt;br&gt;  &lt;p class="MsoNormal"&gt;&lt;u&gt;&lt;object width="640" height="480"&gt; &lt;param name="movie" value="http://content.screencast.com/users/NJKirchner/folders/Jing/media/aebdd7ca-0da3-470b-bf59-3243e9183f27/jingswfplayer.swf"&gt; &lt;param name="quality" value="high"&gt; &lt;param name="bgcolor" value="#FFFFFF"&gt; &lt;param name="flashVars" value="thumb=http://content.screencast.com/users/NJKirchner/folders/Jing/media/aebdd7ca-0da3-470b-bf59-3243e9183f27/FirstFrame.jpg&amp;amp;containerwidth=640&amp;amp;containerheight=480&amp;amp;loaderstyle=jing&amp;amp;content=http://content.screencast.com/users/NJKirchner/folders/Jing/media/aebdd7ca-0da3-470b-bf59-3243e9183f27/2009-07-03_1602.swf"&gt; &lt;param name="allowFullScreen" value="true"&gt; &lt;param name="scale" value="showall"&gt; &lt;param name="allowScriptAccess" value="always"&gt; &lt;param name="base" value="http://content.screencast.com/users/NJKirchner/folders/Jing/media/aebdd7ca-0da3-470b-bf59-3243e9183f27/"&gt;  &lt;embed src="http://content.screencast.com/users/NJKirchner/folders/Jing/media/aebdd7ca-0da3-470b-bf59-3243e9183f27/jingswfplayer.swf" quality="high" bgcolor="#FFFFFF" type="application/x-shockwave-flash" allowscriptaccess="always" flashvars="thumb=http://content.screencast.com/users/NJKirchner/folders/Jing/media/aebdd7ca-0da3-470b-bf59-3243e9183f27/FirstFrame.jpg&amp;amp;containerwidth=640&amp;amp;containerheight=480&amp;amp;loaderstyle=jing&amp;amp;content=http://content.screencast.com/users/NJKirchner/folders/Jing/media/aebdd7ca-0da3-470b-bf59-3243e9183f27/2009-07-03_1602.swf" allowfullscreen="true" base="http://content.screencast.com/users/NJKirchner/folders/Jing/media/aebdd7ca-0da3-470b-bf59-3243e9183f27/" scale="showall" width="640" height="480"&gt;&lt;/embed&gt; &lt;/object&gt;
&lt;br /&gt;Video 1: Code creation
&lt;br /&gt;
&lt;br /&gt;&lt;/u&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;u&gt;
&lt;br /&gt;&lt;/u&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;u&gt;WHY&lt;/u&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;LabVIEW is an easy to use and intuitive application development environment and programming language, but there are still some basic actions that require multiple clicks and force the user to navigate through a variety menus and options.
&lt;br /&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;LVSpeak was developed to take those minor but time consuming steps and reduce them to a single voice command. At the root of this entire effort is one simple premise, “A good engineer is a lazy engineer”. And until we can program LabVIEW with our minds, turning a 4 step, 3 second action into a ½ second, 1 step voice command, makes me a happy lazy engineer.
&lt;br /&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;At the end of the day, any action that requires you to remove your hand from the mouse (Ctl+I), or needs more than two mouse clicks and navigation deeper than a top level context menu (Label Visible) is warranted to become a Voice Command&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;u&gt;HISTORY&lt;/u&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;When LabVIEW Scripting was still very new in LabVIEW 7.0 and some of it’s functionality was accidentally exposed by NI, it occurred to me that you could combine this scripting ability to use LabVIEW code to write LabVIEW code along with the free Microsoft speech recognition technology and do some creative things.&lt;span style=""&gt;  &lt;/span&gt;Although an interesting idea, integrating dll’s and ActiveX objects into G was still foreign to me and presented a barrier that caused LVSpeak to sit dormant until NI Week 2008 and the release of Quick Drop.&lt;/p&gt;&lt;p class="MsoNormal"&gt; Almost immediately I recognized a synergy between this great new development tool in LabVIEW and the still undeveloped LVSpeak. This was only confirmed further when I was watching the coding challenge at NI Week 08. During the coding speed challenge, the creator of Quick Drop, Darren Nattinger, was slowed to a crawl when doing simple tasks like creating a constant or typing verbose function names in the Quick Drop window.
&lt;br /&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;At that point I realized that all the components needed, to allow the developer to program as fast as they could imagine the code, were in place.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;u&gt;HOW&lt;/u&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;The how is actually more simple than I would like to admit.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;There are two key components to the Microsoft SAPI that are utilized in LVSpeak&lt;/p&gt;  &lt;ul&gt;&lt;li&gt;&lt;!--[if !supportLists]--&gt;&lt;span style="font-family:Symbol;"&gt;&lt;span style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:7;"  &gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;Grammar List&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;!--[if !supportLists]--&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:Symbol;"&gt;&lt;span style=""&gt;'&lt;/span&gt;&lt;/span&gt;Speech Recognized’ .NET Callback Event&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;br /&gt;&lt;p class="MsoNormal"&gt;Within LabVIEW, two components are required to enable speech recognition in any program.&lt;/p&gt;  &lt;ul&gt;&lt;li&gt;&lt;!--[if !supportLists]--&gt;&lt;span style="font-family:Symbol;"&gt;&lt;span style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:7;"  &gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;Load Command List (Grammar)&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;!--[if !supportLists]--&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:Symbol;"&gt;&lt;span style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:7;"  &gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;Register for speech recognized event&lt;/span&gt;&lt;!--[endif]--&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;br /&gt;&lt;p class="MsoNormal"&gt;The way everything plays together is quite simple&lt;/p&gt;  &lt;p class="MsoNormal"&gt;LVSpeak Core starts and&lt;/p&gt;  &lt;ol&gt;&lt;li&gt;&lt;!--[if !supportLists]--&gt;&lt;span style="font-size:85%;"&gt;&lt;span style=""&gt;&lt;span style=""&gt;&lt;/span&gt;&lt;/span&gt;Initializes the Microsoft SAPI&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;!--[if !supportLists]--&gt;&lt;span style="font-size:85%;"&gt;&lt;span style=""&gt;&lt;span style=""&gt;&lt;/span&gt;&lt;/span&gt;Creates a LV User event&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;!--[if !supportLists]--&gt;&lt;span style="font-size:85%;"&gt;Registers a callback VI to be run when speech is detected and fire the LV User Event with the command
&lt;br /&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;span style="font-size:85%;"&gt;
&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;Programs utilizing LVSpeak&lt;/span&gt;
&lt;br /&gt;&lt;!--[if !supportLists]--&gt;&lt;span style="font-size:85%;"&gt;&lt;/span&gt;&lt;ol&gt;&lt;li&gt;&lt;span style="font-size:85%;"&gt;Register for the Grammar Detected event&lt;/span&gt;
&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:85%;"&gt;Load their command list into the “Grammar” &lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:85%;"&gt;&lt;span style=""&gt;&lt;span style=""&gt;&lt;/span&gt;&lt;/span&gt;Catch the fired event and respond accordingly to the string
&lt;br /&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;span style="font-size:85%;"&gt;
&lt;br /&gt;&lt;/span&gt;&lt;!--[endif]--&gt;&lt;!--[if !supportLists]--&gt;&lt;!--[endif]--&gt;&lt;!--[if !supportLists]--&gt;            &lt;p class="MsoNormal"&gt;&lt;span style=""&gt;For speech enabled Quick Drop, the grammar list is &lt;u&gt;everything&lt;/u&gt; in the function palette, and whenever the LVSpeak event is caught, it takes the detected string and loads it into the text box as if you had just typed it.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;Quick Edit follows that same flow. The grammar list is all created Quick Edit commands pulled from an enumeration. When one of those commands is detected, it runs the corresponding code to execute that &lt;span style="font-size:85%;"&gt;&lt;span style="font-family:verdana;"&gt;command.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;span style="font-size:85%;"&gt;
&lt;br /&gt;&lt;object style="font-family: verdana;" width="640" height="480"&gt; &lt;param name="movie" value="http://content.screencast.com/users/NJKirchner/folders/Jing/media/fcf6c099-5c17-4f31-a6b3-0bc672756399/jingswfplayer.swf"&gt; &lt;param name="quality" value="high"&gt; &lt;param name="bgcolor" value="#FFFFFF"&gt; &lt;param name="flashVars" value="thumb=http://content.screencast.com/users/NJKirchner/folders/Jing/media/fcf6c099-5c17-4f31-a6b3-0bc672756399/FirstFrame.jpg&amp;amp;containerwidth=640&amp;amp;containerheight=480&amp;amp;loaderstyle=jing&amp;amp;content=http://content.screencast.com/users/NJKirchner/folders/Jing/media/fcf6c099-5c17-4f31-a6b3-0bc672756399/2009-07-03_1508.swf"&gt; &lt;param name="allowFullScreen" value="true"&gt; &lt;param name="scale" value="showall"&gt; &lt;param name="allowScriptAccess" value="always"&gt; &lt;param name="base" value="http://content.screencast.com/users/NJKirchner/folders/Jing/media/fcf6c099-5c17-4f31-a6b3-0bc672756399/"&gt;  &lt;embed src="http://content.screencast.com/users/NJKirchner/folders/Jing/media/fcf6c099-5c17-4f31-a6b3-0bc672756399/jingswfplayer.swf" quality="high" bgcolor="#FFFFFF" type="application/x-shockwave-flash" allowscriptaccess="always" flashvars="thumb=http://content.screencast.com/users/NJKirchner/folders/Jing/media/fcf6c099-5c17-4f31-a6b3-0bc672756399/FirstFrame.jpg&amp;amp;containerwidth=640&amp;amp;containerheight=480&amp;amp;loaderstyle=jing&amp;amp;content=http://content.screencast.com/users/NJKirchner/folders/Jing/media/fcf6c099-5c17-4f31-a6b3-0bc672756399/2009-07-03_1508.swf" allowfullscreen="true" base="http://content.screencast.com/users/NJKirchner/folders/Jing/media/fcf6c099-5c17-4f31-a6b3-0bc672756399/" scale="showall" width="640" height="480"&gt;&lt;/embed&gt; &lt;/object&gt;
&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:verdana;font-size:85%;"  &gt;Video 2: Basic detection&lt;/span&gt;&lt;span style="font-size:85%;"&gt;
&lt;br /&gt;&lt;object style="font-family: verdana;" width="600" height="600"&gt; &lt;param name="movie" value="http://content.screencast.com/users/NJKirchner/folders/Jing/media/b586b546-fe50-46a7-8cfa-1e3a6c6ead80/jingswfplayer.swf"&gt; &lt;param name="quality" value="high"&gt; &lt;param name="bgcolor" value="#FFFFFF"&gt; &lt;param name="flashVars" value="thumb=http://content.screencast.com/users/NJKirchner/folders/Jing/media/b586b546-fe50-46a7-8cfa-1e3a6c6ead80/FirstFrame.jpg&amp;amp;containerwidth=600&amp;amp;containerheight=600&amp;amp;loaderstyle=jing&amp;amp;content=http://content.screencast.com/users/NJKirchner/folders/Jing/media/b586b546-fe50-46a7-8cfa-1e3a6c6ead80/2009-07-03_1638.swf"&gt; &lt;param name="allowFullScreen" value="true"&gt; &lt;param name="scale" value="showall"&gt; &lt;param name="allowScriptAccess" value="always"&gt; &lt;param name="base" value="http://content.screencast.com/users/NJKirchner/folders/Jing/media/b586b546-fe50-46a7-8cfa-1e3a6c6ead80/"&gt;  &lt;embed src="http://content.screencast.com/users/NJKirchner/folders/Jing/media/b586b546-fe50-46a7-8cfa-1e3a6c6ead80/jingswfplayer.swf" quality="high" bgcolor="#FFFFFF" type="application/x-shockwave-flash" allowscriptaccess="always" flashvars="thumb=http://content.screencast.com/users/NJKirchner/folders/Jing/media/b586b546-fe50-46a7-8cfa-1e3a6c6ead80/FirstFrame.jpg&amp;amp;containerwidth=600&amp;amp;containerheight=600&amp;amp;loaderstyle=jing&amp;amp;content=http://content.screencast.com/users/NJKirchner/folders/Jing/media/b586b546-fe50-46a7-8cfa-1e3a6c6ead80/2009-07-03_1638.swf" allowfullscreen="true" base="http://content.screencast.com/users/NJKirchner/folders/Jing/media/b586b546-fe50-46a7-8cfa-1e3a6c6ead80/" scale="showall" width="600" height="600"&gt;&lt;/embed&gt; &lt;/object&gt;
&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:verdana;font-size:85%;"  &gt;Video 3: Quick Edit Demo&lt;/span&gt;&lt;span style="font-size:85%;"&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;/span&gt;&lt;span style="font-weight: bold;font-family:verdana;font-size:85%;"  &gt;Getting Started&lt;/span&gt;&lt;span style="font-size:85%;"&gt;
&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:verdana;font-size:85%;"  &gt;
&lt;br /&gt;To start developing LabVIEW with your voice you need to download and install
&lt;br /&gt;&lt;/span&gt;&lt;ul  style="font-family:verdana;"&gt;&lt;li&gt;&lt;span style="font-size:85%;"&gt;&lt;a href="http://jkisoft.com/"&gt;VI Package Manager (JKISoft.com)&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:85%;"&gt;&lt;a href="http://tinyurl.com/lzz3t5"&gt;Microsoft Speech SDK 5.1&lt;/a&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt; (http://tinyurl.com/lzz3t5)&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:85%;"&gt;&lt;a href="http://www.eyesonvis.com/shared/lavag_cr_LVSpeak-0.4.1-1.ogp"&gt;LVSpeak Core&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:85%;"&gt;&lt;a href="http://www.eyesonvis.com/shared/lavag_cr_LVS_QD-0.5.0-1.ogp"&gt;LVS Quick Drop Addon&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;span style="font-size:85%;"&gt;
&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;Once all these parts are installed, you should see a new item in your LabVIEW tools menu "Enable LVSpeak"&lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;Select that option, and you should see two floating windows show up.&lt;/span&gt;
&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;If you microphone is active, manually drop some controls on your front panel, flip over to the block diagram, select all the controls and say "Label Side" in a relatively monotonic voice.&lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span style="font-weight: bold;font-family:verdana;" &gt;Summary&lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:verdana;"&gt;If you program LabVIEW on a regular basis, begin paying attention to how long some tasks&lt;span style="font-family:verdana;"&gt; take and how often you repeat some basic tasks that could be streamlined by a little scripting automation. &lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;Controlling LV with your voice is not just a novel idea. &lt;/span&gt;
&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;It is truly a quantum leap forward in how you develop your code and a HUGE performance booster.&lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;So wipe the dust off of your microphone or headset and get ready to take your development process to the next level.&lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;~,~&lt;/span&gt;
&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;The Captain Was Here&lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;Norm Kirchner
&lt;br /&gt;
&lt;br /&gt;PS Thank you Christina for your patience with me getting this out to you and providing a great resource for the rest of us LabVIEW nuts out in the world.
&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/32599616-1663037399261070857?l=www.eyesonvis.com%2Fblog'/&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/1663037399261070857/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=32599616&amp;postID=1663037399261070857" title="24 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/posts/default/1663037399261070857" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/posts/default/1663037399261070857" /><link rel="alternate" type="text/html" href="http://www.eyesonvis.com/blog/2009/07/lvspeak-automating-vi-development.html" title="LVSpeak: Automating  VI development through speech" /><author><name>Norm Kirchner ~,~</name><uri>http://www.blogger.com/profile/04428414608094683093</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="00828501640257391261" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">24</thr:total></entry><entry><id>tag:blogger.com,1999:blog-32599616.post-4371735708010961324</id><published>2009-06-28T13:19:00.003-05:00</published><updated>2009-06-28T13:40:35.858-05:00</updated><title type="text">VI Makeover Edition - Customizing a Slider</title><content type="html">&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_BN3_donLgVE/Ske3LFSgkoI/AAAAAAAAANY/94cxbMzxqyY/s1600-h/SliderCustom.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 99px; height: 155px;" src="http://2.bp.blogspot.com/_BN3_donLgVE/Ske3LFSgkoI/AAAAAAAAANY/94cxbMzxqyY/s320/SliderCustom.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5352448083179377282" /&gt;&lt;/a&gt;&lt;br /&gt;In a &lt;a href="http://eyesonvis.blogspot.com/2009/03/vi-makeover-edition-part-1.html"&gt;previous post&lt;/a&gt;, I talked about a VI for an NI Week keynote demo.&lt;br /&gt;&lt;br /&gt;Now I'd like to talk about customizing the slider control for that project.&lt;br /&gt;&lt;br /&gt;You can watch the video on &lt;a href="http://www.eyesonvis.com/main/eyes_on_vis_video_podcast/customizing_labview_control.html"&gt;EyesOnVIs.com&lt;/a&gt; or &lt;a href="http://www.youtube.com/watch?v=qvhGH0TlCqs"&gt;YouTube&lt;/a&gt;, or you can read the text version below.&lt;br /&gt;&lt;br /&gt;When customizing a control, I like to start with the simplest control of the right type, which usually means controls from the Classic palette. For this demo, I customized a Classic Vertical Pointer Slide. Note that the control editor lets you change the appearance of a control, but not its functionality.&lt;br /&gt;&lt;br /&gt;You can edit a control either from the &lt;span style="font-weight:bold;"&gt;Edit&gt;&gt;Customize Control&lt;/span&gt; menu or from the &lt;span style="font-weight:bold;"&gt;Advanced&gt;&gt;Customize&lt;/span&gt; right-click menu.&lt;br /&gt;&lt;br /&gt;This will open the control in the Control Editor. From there, you can customize using the normal right-click options (such as setting the Scale style as I did for this demo) or go into "Customize" mode either by clicking the toolbar button to switch to the tweezer icon or by showing the Parts window from the Window menu.&lt;br /&gt;&lt;br /&gt;You can find the slider thumb by cycling through the Parts and then right-click on it to see the options for changing its image. For this demo, I used a graphic that I created myself in a graphics program, but there are lots of sources for nice, professional images that you could use for your projects. You can find the graphics I made in the &lt;a href="http://www.eyesonvis.com/main/gallery/"&gt;Image Archive&lt;/a&gt; on my website, EyesOnVIs.com.&lt;br /&gt;&lt;br /&gt;After customizing the thumb, I added some free labels for + and - scale markers, made the text big and bold so it would be easily visible on the keynote projector screens, and colored the increment and decrement arrows transparent.&lt;br /&gt;&lt;br /&gt;I hope this inspires you to make your own custom controls and take your LabVIEW UIs to the next level!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/32599616-4371735708010961324?l=www.eyesonvis.com%2Fblog'/&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/4371735708010961324/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=32599616&amp;postID=4371735708010961324" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/posts/default/4371735708010961324" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/posts/default/4371735708010961324" /><link rel="alternate" type="text/html" href="http://www.eyesonvis.com/blog/2009/06/vi-makeover-edition-customizing-slider.html" title="VI Makeover Edition - Customizing a Slider" /><author><name>Christina</name><uri>http://www.blogger.com/profile/17288980210854942300</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="08333077494425734606" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/_BN3_donLgVE/Ske3LFSgkoI/AAAAAAAAANY/94cxbMzxqyY/s72-c/SliderCustom.jpg" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-32599616.post-1805536765316839989</id><published>2009-05-29T17:56:00.002-05:00</published><updated>2009-05-29T18:28:44.800-05:00</updated><title type="text">LabVIEW Scripting</title><content type="html">If "VIs dynamically constructing new VIs" doesn't sound like the premise of a bad summer movie to you, then you might be interested in the recent &lt;a href="http://decibel.ni.com/content/docs/DOC-4973"&gt;LabVIEW Scripting&lt;/a&gt; post on NI Communities.&lt;br /&gt;&lt;br /&gt;To quote &lt;a href="http://labviewartisan.blogspot.com/2009/05/writing-vis-with-vis.html"&gt;Darren Nattinger&lt;/a&gt; (who has a lot more experience with Scripting than me), "LabVIEW Scripting is an (until today) internal LabVIEW feature that allows you to write VIs that create, modify, and inspect other VIs."&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Important note&lt;/span&gt;: "As this is an 'NI Labs' product, NI will not be supporting LabVIEW Scripting through Applications Engineering." That means if you have technical questions, you will need to post them to the API Community instead of going through NI's usual support channels.&lt;br /&gt;&lt;br /&gt;In my experience, Scripting is very difficult to work with, but I am really looking forward to seeing what people will do with it.&lt;a href="http://jkisoft.com/"&gt; JKI &lt;/a&gt;has already announced the &lt;a href="http://decibel.ni.com/content/docs/DOC-4678"&gt;JKI Right-click Framework for LabVIEW&lt;/a&gt;, which will allow end-users to add features to the LabVIEW editor itself. Pretty cool.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/32599616-1805536765316839989?l=www.eyesonvis.com%2Fblog'/&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/1805536765316839989/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=32599616&amp;postID=1805536765316839989" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/posts/default/1805536765316839989" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/posts/default/1805536765316839989" /><link rel="alternate" type="text/html" href="http://www.eyesonvis.com/blog/2009/05/labview-scripting.html" title="LabVIEW Scripting" /><author><name>Christina</name><uri>http://www.blogger.com/profile/17288980210854942300</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="08333077494425734606" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-32599616.post-2957124603459322412</id><published>2009-05-07T21:36:00.003-05:00</published><updated>2009-05-07T21:48:29.722-05:00</updated><title type="text">Help Define the New LabVIEW Advanced Course</title><content type="html">Scott Romine and Nancy Hollenback are rewriting the LV Advanced I Course, and they want your help!&lt;br /&gt;&lt;br /&gt;Join the &lt;a href="http://decibel.ni.com/content/groups/designing-drafting-developing-the-lv-advanced-course"&gt;Designing, Drafting, &amp; Developing the LV Advanced Course&lt;/a&gt; group on NI Communities to participate in discussions and polls that will shape the future of the course.&lt;br /&gt;&lt;br /&gt;I've joined the group, and I look forward to hearing everyone's input on what techniques every LabVIEW developer should master!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/32599616-2957124603459322412?l=www.eyesonvis.com%2Fblog'/&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/2957124603459322412/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=32599616&amp;postID=2957124603459322412" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/posts/default/2957124603459322412" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/posts/default/2957124603459322412" /><link rel="alternate" type="text/html" href="http://www.eyesonvis.com/blog/2009/05/help-define-new-labview-advanced-course.html" title="Help Define the New LabVIEW Advanced Course" /><author><name>Christina</name><uri>http://www.blogger.com/profile/17288980210854942300</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="08333077494425734606" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-32599616.post-14071454457140294</id><published>2009-04-03T20:16:00.009-05:00</published><updated>2009-04-05T10:17:52.812-05:00</updated><title type="text">Tree Control Scrollbar Tip</title><content type="html">&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_BN3_donLgVE/Sda_Ro9-kKI/AAAAAAAAAM4/E0ym0wD6xvQ/s1600-h/LabVIEW_tree_control1.jpg"&gt;&lt;img style="margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 280px; height: 189px;" src="http://1.bp.blogspot.com/_BN3_donLgVE/Sda_Ro9-kKI/AAAAAAAAAM4/E0ym0wD6xvQ/s400/LabVIEW_tree_control1.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5320650319560872098" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_BN3_donLgVE/Sda_RnDCa3I/AAAAAAAAANA/K673bXxTDa0/s1600-h/LabVIEW_tree_control2.jpg"&gt;&lt;img style="margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 280px; height: 189px;" src="http://1.bp.blogspot.com/_BN3_donLgVE/Sda_RnDCa3I/AAAAAAAAANA/K673bXxTDa0/s400/LabVIEW_tree_control2.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5320650319045225330" /&gt;&lt;/a&gt;&lt;br /&gt;One of my colleagues recently showed me a VI that automatically shows and hides the scrollbars of the tree control, as well as resizing the columns, depending on the text in the cells. Those of you who are familiar with the tree control are probably aware that it doesn't have this capability built-in.&lt;br /&gt;&lt;br /&gt;The VI isn't in the palettes but is in the &lt;b&gt;tree&lt;/b&gt; folder of vi.lib. It's called &lt;b&gt;Tree_ShowScrollBar.vi&lt;/b&gt;.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_BN3_donLgVE/SdbAAbqDBEI/AAAAAAAAANI/EWbOKIIee64/s1600-h/LabVIEW_tree_control3.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 52px; height: 51px;" src="http://1.bp.blogspot.com/_BN3_donLgVE/SdbAAbqDBEI/AAAAAAAAANI/EWbOKIIee64/s400/LabVIEW_tree_control3.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5320651123441468482" /&gt;&lt;/a&gt;&lt;br /&gt;To see a brief demo of the functionality, check out &lt;a href="http://www.eyesonvis.com/main/topic_archive/movie.html"&gt;this video on my website&lt;/a&gt;. If you have trouble viewing that video, you can try &lt;a href="http://www.youtube.com/watch?v=f0B1Zso4-3I"&gt;the YouTube version.&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/32599616-14071454457140294?l=www.eyesonvis.com%2Fblog'/&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/14071454457140294/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=32599616&amp;postID=14071454457140294" title="3 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/posts/default/14071454457140294" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/posts/default/14071454457140294" /><link rel="alternate" type="text/html" href="http://www.eyesonvis.com/blog/2009/04/tree-control-scrollbar-tip.html" title="Tree Control Scrollbar Tip" /><author><name>Christina</name><uri>http://www.blogger.com/profile/17288980210854942300</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="08333077494425734606" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/_BN3_donLgVE/Sda_Ro9-kKI/AAAAAAAAAM4/E0ym0wD6xvQ/s72-c/LabVIEW_tree_control1.jpg" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-32599616.post-8826598365446800021</id><published>2009-04-02T20:40:00.010-05:00</published><updated>2009-05-26T07:01:16.463-05:00</updated><title type="text">"Large LabVIEW Application Development" and "UI Interest" Groups</title><content type="html">&lt;p&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://decibel.ni.com/content/groups/large-labview-application-development"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 200px; height: 267px;" src="http://decibel.ni.com/content/groups/image/1010/1.png?a=5011" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;One of my colleagues, Elijah Kerry, has a group on NI Communities dedicated to "Large LabVIEW Application Development." His recent &lt;a href="http://decibel.ni.com/content/groups/large-labview-application-development/blog/2009/03/23/professional-user-interfaces-in-labview"&gt;blog post on "Professional User Interfaces in LabVIEW"&lt;/a&gt; has links to numerous examples of "the level of customization and flexibility that LabVIEW controls and indicators provide." Please check it out!&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://decibel.ni.com/content/groups/ui"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 200px; height: 150px;" src="http://decibel.ni.com/content/groups/image/1088/1.png?a=5070" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;Also, be sure not to miss the &lt;a href="http://decibel.ni.com/content/groups/ui"&gt;UI Interest Group&lt;/a&gt;, which has cool info and examples, including the &lt;a href="http://decibel.ni.com/content/docs/DOC-4028"&gt;"ni.com Inspired Custom Control Suite"&lt;/a&gt; (which Jim Kring has kindly created a VI Package for, so you can easily install it  with the &lt;a href="http://jkisoft.com/vipm"&gt;VI Package Manager&lt;/a&gt;).&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Finally, I'd like to send out a personal thank you to Christopher Relf for the &lt;a href="http://decibel.ni.com/content/groups/ui/blog/2009/03/23/an-introduction-to-user-interface-design---creating-an-intuative-ui"&gt;kind comments&lt;/a&gt; about my article in the latest &lt;a href="http://www.ni.com/news/inst_news_q1_09.htm"&gt;Instrumentation Newsletter&lt;/a&gt;, entitled &lt;a ref="http://zone.ni.com/devzone/cda/pub/p/id/686"&gt;&lt;i&gt;Your VIs: Good, Bad, or Ugly?&lt;/i&gt;&lt;/a&gt; The article is available online for anyone who missed it in the mail!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/32599616-8826598365446800021?l=www.eyesonvis.com%2Fblog'/&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/8826598365446800021/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=32599616&amp;postID=8826598365446800021" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/posts/default/8826598365446800021" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/posts/default/8826598365446800021" /><link rel="alternate" type="text/html" href="http://www.eyesonvis.com/blog/2009/04/large-labview-application-development.html" title="&quot;Large LabVIEW Application Development&quot; and &quot;UI Interest&quot; Groups" /><author><name>Christina</name><uri>http://www.blogger.com/profile/17288980210854942300</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="08333077494425734606" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-32599616.post-6623474151551369768</id><published>2009-03-25T20:43:00.008-05:00</published><updated>2009-05-08T16:35:29.395-05:00</updated><title type="text">There Are No Strict Type Definition Constants</title><content type="html">Type definitions (aka typedefs) are very useful. However, they also have some unexpected behaviors that can cause you a lot of trouble.&lt;br /&gt;&lt;br /&gt;As a usability advocate, it pains me every time I have to explain this one, but here it is: There are no strict typedef constants in LabVIEW.&lt;br /&gt;&lt;br /&gt;I am not going to try to defend this as "good" behavior. But it's not a bug when constants linked to strict typedef files only update on type changes.&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Basics of Custom Controls&lt;/h3&gt;&lt;br /&gt;LabVIEW has three kinds of custom controls (.ctl files).&lt;ol&gt;&lt;li&gt;&lt;b&gt;Unlinked custom control&lt;/b&gt;. A "regular" custom control uses a definition (.ctl) file but the instances are not linked to the definition file. Thus, when you edit the .ctl file, instances that were created from it in the past do not update.&lt;/li&gt;&lt;li&gt;&lt;b&gt;Linked by type&lt;/b&gt; (aka typedef or type definition). Whenever the definition (.ctl file) changes &lt;em&gt;type&lt;/em&gt;, all instances need to update. If the instance is set to auto-updating, it will update itself on load. [Note, however, that it will not auto-update while the definition file is open in the control editor.] If not set to auto-updating, you must right click on each instance to update it.&lt;/li&gt;&lt;li&gt;&lt;b&gt;Linked by all attributes&lt;/b&gt; (aka strict typedef). Similar to a typedef, except that any time the definition changes, all instances must update. This is achieved by time stamp comparison between the definition and instances. The intent is to have all instances cosmetically identical to the definition. Since most cosmetic attributes are invalid on the block diagram, there is no such thing as a strict typedef constant. &lt;b&gt;Constants linked to strict typedef definitions act like typedef constants.&lt;/b&gt;&lt;/ol&gt;&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Confusion Over When Typedefs Update&lt;/h3&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_BN3_donLgVE/Scr8Km8BFnI/AAAAAAAAAMo/uWbQpNmyFuE/s1600-h/LabVIEW_ring.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 181px;" src="http://4.bp.blogspot.com/_BN3_donLgVE/Scr8Km8BFnI/AAAAAAAAAMo/uWbQpNmyFuE/s320/LabVIEW_ring.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5317339569245460082" /&gt;&lt;/a&gt;If you have a ring, its type is its numeric representation, e.g. unsigned word. &lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_BN3_donLgVE/Scr8pYpUGsI/AAAAAAAAAMw/VB1XHnpumrs/s1600-h/LabVIEW_enum.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 166px;" src="http://2.bp.blogspot.com/_BN3_donLgVE/Scr8pYpUGsI/AAAAAAAAAMw/VB1XHnpumrs/s400/LabVIEW_enum.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5317340097984862914" /&gt;&lt;/a&gt;If you have an enum (which can look identical on the front panel), its type contains its item names. &lt;br /&gt;&lt;br /&gt;Thus, when you add items to a typedef ring definition file, the instances don't update (because the type didn't change). When you add items to a typedef &lt;b&gt;enum&lt;/b&gt; definition file, the instances &lt;em&gt;do&lt;/em&gt; update. However, if you make a strict typedef ring, then control instances will update when you add items. But since there's no strict typedefs on the diagram, constants that are linked to a strict typedef ring will not update when you add items. This behavior is confusing, but it is working as designed.&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Forcing Updates&lt;/h3&gt;&lt;br /&gt;Even though typedefs only update when types change, instances get cosmetic changes from the definition whenever they update. So one trick to "push" changes to typedef instances is to change the data type, apply changes, and then change the data type back. [edit, March 26 - Note that the typedef instances need to be in memory when you use this trick].&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Unreliability of Data&lt;/h3&gt;&lt;br /&gt;Another potential problem with typedefs is that you shouldn't rely on them keeping their data values when they update. LabVIEW will attempt to preserve data. For example, if you have a typedef numeric constant and change its representation, LabVIEW will convert the value. However, there are many cases where LabVIEW will not preserve the values correctly, especially with clusters, so it's a good policy not to rely on the values being preserved. (Or to visit all the typedef instances when you make changes, in order to verify their values).&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Why Use Typedefs?&lt;/h3&gt;&lt;br /&gt;I would be remiss if I didn't make a case for using typedefs despite the potential problems that I've covered here. Typedefs let you change the type of all the instances with a single edit. This is very useful, for example, when you have a set of VIs operating on a cluster and you later realize you need to add or remove items to it. Without using a typedef, you have a lot of broken wires until you visit every VI that passes the cluster in or out of its connector pane. And strict typedefs are extremely valuable for maintaining consistent user interfaces - you can make controls on any number of VIs have the same appearance. &lt;br /&gt;&lt;br /&gt;One final note - if you're using LabVIEW 8.2 or later, and you want to use a typedef so that you can encapsulate data for passing between VIs, then you should consider using a &lt;a href="http://eyesonvis.blogspot.com/2006/08/class-black-box-cluster-typedef.html"&gt;LVClass&lt;/a&gt; instead. You may still choose to use a typedef, but it's good to evaluate, because LVClasses serve the role well and give you a lot of other benefits as well.&lt;br /&gt;&lt;br /&gt;[Please ignore this edit. I'm trying to see if updating an older post makes it show up on my blog mirror on &lt;a href="http://decibel.ni.com/content/people/ChristinaR?view=blogposts"&gt;NI Communities&lt;/a&gt;, without causing ill effects.]&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/32599616-6623474151551369768?l=www.eyesonvis.com%2Fblog'/&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/6623474151551369768/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=32599616&amp;postID=6623474151551369768" title="6 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/posts/default/6623474151551369768" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/posts/default/6623474151551369768" /><link rel="alternate" type="text/html" href="http://www.eyesonvis.com/blog/2009/03/there-are-no-strict-type-definition.html" title="There Are No Strict Type Definition Constants" /><author><name>Christina</name><uri>http://www.blogger.com/profile/17288980210854942300</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="08333077494425734606" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/_BN3_donLgVE/Scr8Km8BFnI/AAAAAAAAAMo/uWbQpNmyFuE/s72-c/LabVIEW_ring.jpg" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-32599616.post-632786894360537661</id><published>2009-03-03T19:48:00.006-06:00</published><updated>2009-03-03T20:32:18.837-06:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="user_interface" /><title type="text">VI Makeover Edition - Part 1</title><content type="html">For a long time, I've been meaning to do a series of posts I call the "VI Makeover Edition" where we take a VI front panel from "drab" to "fab!" :-)&lt;br /&gt;&lt;br /&gt;I helped "spiffy up" a VI for an NI Week keynote demo last year. It is a graphic equalizer powered by LabVIEW MathScript. You can watch the &lt;a href="http://www.ni.com/niweek/2008/keynote/graphic_equalizer_with_multicore.htm"&gt;demo video on ni.com&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;The goal was simply to make the VI look better on the big screen, and make it easier to see the operation of the controls from the back of the room.&lt;br /&gt;&lt;br /&gt;The original VI looked something like this:&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_BN3_donLgVE/Sa3jr05SzhI/AAAAAAAAAMQ/_CCIzai6lyc/s1600-h/MathScriptEqualizerOriginal.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 318px; height: 320px;" src="http://1.bp.blogspot.com/_BN3_donLgVE/Sa3jr05SzhI/AAAAAAAAAMQ/_CCIzai6lyc/s320/MathScriptEqualizerOriginal.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5309149877812514322" /&gt;&lt;/a&gt;&lt;br /&gt;And the final VI looked something like this:&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_BN3_donLgVE/Sa3iyaKkthI/AAAAAAAAAMI/rIxK4aPslbc/s1600-h/MathScript+Equalizer+Demo.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 306px; height: 320px;" src="http://1.bp.blogspot.com/_BN3_donLgVE/Sa3iyaKkthI/AAAAAAAAAMI/rIxK4aPslbc/s320/MathScript+Equalizer+Demo.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5309148891384690194" /&gt;&lt;/a&gt;&lt;br /&gt;Some of the tips and tricks I plan to cover include:&lt;ul&gt;&lt;li&gt;VI panel wallpaper&lt;/li&gt;&lt;li&gt;Background images and locking&lt;/li&gt;&lt;li&gt;Customizing the parts of a slider control&lt;/li&gt;&lt;li&gt;Adding decorations to controls&lt;/li&gt;&lt;li&gt;Using transparent color&lt;/li&gt;&lt;li&gt;Gradients and graphics&lt;/li&gt;&lt;li&gt;Grouping and alignment&lt;/li&gt;&lt;/ul&gt;If you want me to cover these in a particular order or have questions in advance that I should cover, please let me know!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/32599616-632786894360537661?l=www.eyesonvis.com%2Fblog'/&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/632786894360537661/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=32599616&amp;postID=632786894360537661" title="6 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/posts/default/632786894360537661" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/posts/default/632786894360537661" /><link rel="alternate" type="text/html" href="http://www.eyesonvis.com/blog/2009/03/vi-makeover-edition-part-1.html" title="VI Makeover Edition - Part 1" /><author><name>Christina</name><uri>http://www.blogger.com/profile/17288980210854942300</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="08333077494425734606" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/_BN3_donLgVE/Sa3jr05SzhI/AAAAAAAAAMQ/_CCIzai6lyc/s72-c/MathScriptEqualizerOriginal.jpg" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-32599616.post-4400934643680461036</id><published>2009-02-09T16:46:00.002-06:00</published><updated>2009-02-09T16:59:20.345-06:00</updated><title type="text">You're Invited - LabVIEW Beta Program</title><content type="html">I am pleased to announce that NI is calling for participation in the LabVIEW 2009 Beta program!&lt;br /&gt;&lt;br /&gt;Here is more information from the Beta program coordinators:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;You are invited to register for participation in the LabVIEW 2009 Platform beta program. &lt;br /&gt;&lt;br /&gt;You can register by visiting &lt;a href="http://www.ni.com/beta"&gt;http://www.ni.com/beta&lt;/a&gt; and selecting "LabVIEW 2009 Platform" from the list of beta programs.  Please complete the profile questions that will help us understand your experience and use cases with LabVIEW.  Make sure you agree to the T&amp;C of the beta program so that you can be approved.&lt;br /&gt;&lt;br /&gt;After you register, please be patient for the beta coordinators to process your application.  You will be notified when you have been approved. Registration does not necessarily guarantee you a position in the beta program. Determination of acceptance into the program is up to the sole discretion of National Instruments.&lt;br /&gt;&lt;br /&gt;We will have a private section of the Discussion Forums on NI Developer's Exchange set up for beta users to discuss the beta version of the LabVIEW 2009 Platform.&lt;br /&gt;&lt;br /&gt;We eagerly await your registration.  Thank you for your invaluable help in assisting us design and test LabVIEW.&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/32599616-4400934643680461036?l=www.eyesonvis.com%2Fblog'/&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/4400934643680461036/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=32599616&amp;postID=4400934643680461036" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/posts/default/4400934643680461036" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/posts/default/4400934643680461036" /><link rel="alternate" type="text/html" href="http://www.eyesonvis.com/blog/2009/02/youre-invited-labview-beta-program.html" title="You're Invited - LabVIEW Beta Program" /><author><name>Christina</name><uri>http://www.blogger.com/profile/17288980210854942300</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="08333077494425734606" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-32599616.post-3091425142127826732</id><published>2009-02-08T10:38:00.002-06:00</published><updated>2009-02-08T10:44:12.453-06:00</updated><title type="text">Tip for iPhone Users</title><content type="html">This past week I learned that I can create links to web pages on my iPhone home screen. I love having quick access to my favorite web sites! Here's the description from &lt;a href="http://www.apple.com/webapps/whatarewebapps.html"&gt;Apple.com&lt;/a&gt;:&lt;br /&gt;&lt;blockquote&gt;When you find a web app you like, you can put it front and center on your Home screen. Just open the web app on your iPhone or iPod touch, tap the plus sign, and then tap “Add to Home screen.” A Web Clip will be added to your Home screen automatically for easy, one-tap access.&lt;/blockquote&gt;&lt;br /&gt;If you add a web clip to Eyes on VIs, you'll get to see the custom icon I made for it!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/32599616-3091425142127826732?l=www.eyesonvis.com%2Fblog'/&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/3091425142127826732/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=32599616&amp;postID=3091425142127826732" title="3 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/posts/default/3091425142127826732" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/posts/default/3091425142127826732" /><link rel="alternate" type="text/html" href="http://www.eyesonvis.com/blog/2009/02/tip-for-iphone-users.html" title="Tip for iPhone Users" /><author><name>Christina</name><uri>http://www.blogger.com/profile/17288980210854942300</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="08333077494425734606" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-32599616.post-6317609299615497840</id><published>2009-01-28T20:44:00.008-06:00</published><updated>2009-01-28T21:52:06.437-06:00</updated><title type="text">Captions</title><content type="html">Last week I was fixing a problem with a VI where the wrong text was shown in the Context Help window for some of the controls. Perhaps it's a VI you recognize...&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_BN3_donLgVE/SYEaBFWWVWI/AAAAAAAAALY/SzPN5dMHnhE/s1600-h/Getting+Started+Window.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 264px;" src="http://2.bp.blogspot.com/_BN3_donLgVE/SYEaBFWWVWI/AAAAAAAAALY/SzPN5dMHnhE/s320/Getting+Started+Window.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5296543242682520930" /&gt;&lt;/a&gt;&lt;br /&gt;Yes, embarrassingly enough, it was a bug with my Getting Started window. The small images to the left of some of the links are picture rings. They were showing their decidedly unhelpful labels in the help window:&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_BN3_donLgVE/SYEalu_KJhI/AAAAAAAAALg/Oq7ZY44NI1k/s1600-h/Context+Help.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 142px; height: 148px;" src="http://4.bp.blogspot.com/_BN3_donLgVE/SYEalu_KJhI/AAAAAAAAALg/Oq7ZY44NI1k/s320/Context+Help.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5296543872334833170" /&gt;&lt;/a&gt;&lt;br /&gt;After deciding that the picture rings should simply have the same names and descriptions as the items to their right, I added a property node to set the caption text and description. &lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_BN3_donLgVE/SYEb4Uaa9fI/AAAAAAAAALo/9UUV7DVNdOU/s1600-h/Property+Node.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 113px; height: 56px;" src="http://3.bp.blogspot.com/_BN3_donLgVE/SYEb4Uaa9fI/AAAAAAAAALo/9UUV7DVNdOU/s320/Property+Node.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5296545291130566130" /&gt;&lt;/a&gt;&lt;br /&gt;Then I ran the VI. It didn't work. In fact, it fixed the context help for some, but not all, of the picture rings.&lt;br /&gt;&lt;br /&gt;You might already be able to spot what I did wrong. If not, maybe you'll be able to guess after I explain more about captions.&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;What Are Captions?&lt;/h3&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_BN3_donLgVE/SYEetwaYInI/AAAAAAAAALw/InriUyo3D-g/s1600-h/String.png"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 111px; height: 51px;" src="http://3.bp.blogspot.com/_BN3_donLgVE/SYEetwaYInI/AAAAAAAAALw/InriUyo3D-g/s320/String.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5296548408202895986" /&gt;&lt;/a&gt;When you place a control on a VI's front panel, it has a label where you give it a name. This name is shown in the context help window. It also provides the identifier for programmatic interfaces such as &lt;span style="font-weight:bold;"&gt;Set Control Value&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;When the LabVIEW team added features to support localization of VIs, we needed to be able to change the name of a control. But if we changed the label, calls to interfaces like &lt;span style="font-weight:bold;"&gt;Set Control Value&lt;/span&gt; would break. So we introduced another kind of label, called a caption.&lt;br /&gt;&lt;br /&gt;We also didn't want to make VIs bigger (in memory and on disk) by adding a part to every control and indicator that most wouldn't use, so captions are "lazily created." When you right-click on a control and select &lt;span style="font-weight:bold;"&gt;Visible Items&gt;Caption&lt;/span&gt;, LabVIEW creates a caption for the control. It also hides the label (since you usually use a caption instead of a label, not in addition to it) which leads to the confusing situation where the menu option appears to have no effect (because the caption initially looks exactly like the label and is in the same location).&lt;br /&gt;&lt;br /&gt;You can tell that a control has a caption by looking at the context help window. When the VI is in edit mode, the context help displays the caption and the label, with the label in square brackets. (Note that when the VI is running, the context help displays the caption but not the label).&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_BN3_donLgVE/SYEipvToB1I/AAAAAAAAAL4/e523kecoUHg/s1600-h/Caption+Help.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 190px; height: 147px;" src="http://2.bp.blogspot.com/_BN3_donLgVE/SYEipvToB1I/AAAAAAAAAL4/e523kecoUHg/s320/Caption+Help.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5296552737233176402" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;h3&gt;Fixing the Bug&lt;/h3&gt;Coming back to my original story, when I checked the &lt;span style="font-weight:bold;"&gt;error out&lt;/span&gt; of the property node that was setting the ring caption, I found it was generating error 1320: "In run mode, LabVIEW cannot get or set a property for a control part that has not been created."&lt;br /&gt;&lt;br /&gt;The problem was that some, but not all, of the rings had caption parts. As I mentioned earlier, captions are lazily created - you can't set the text on them if they don't exist, and LabVIEW can't create them on running VIs. The solution was to show (and thus create) the captions for all the rings. Luckily, I was using LabVIEW 8.6 and could use the new multi-select feature. I selected all the rings, right-clicked to show the Properties dialog and showed all their captions in one step. Problem solved.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/32599616-6317609299615497840?l=www.eyesonvis.com%2Fblog'/&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/6317609299615497840/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=32599616&amp;postID=6317609299615497840" title="7 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/posts/default/6317609299615497840" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/posts/default/6317609299615497840" /><link rel="alternate" type="text/html" href="http://www.eyesonvis.com/blog/2009/01/captions.html" title="Captions" /><author><name>Christina</name><uri>http://www.blogger.com/profile/17288980210854942300</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="08333077494425734606" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/_BN3_donLgVE/SYEaBFWWVWI/AAAAAAAAALY/SzPN5dMHnhE/s72-c/Getting+Started+Window.png" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">7</thr:total></entry><entry><id>tag:blogger.com,1999:blog-32599616.post-1318730308069717447</id><published>2009-01-08T08:36:00.004-06:00</published><updated>2009-01-08T08:58:43.061-06:00</updated><title type="text">Learning LabVIEW</title><content type="html">A LabVIEW user who is aspiring to become a CLAD (&lt;a href="http://sine.ni.com/nips/cds/view/p/lang/en/nid/14438"&gt;Certified LabVIEW Associate Developer&lt;/a&gt;) asked me for book recommendations. I didn't know the answer, but I knew who to ask. My colleague Nitin Thomas, one of our LabVIEW Product Support Engineers, helped me out with the following links, which I think would be helpful to anyone trying to learn LabVIEW: &lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.ni.com/academic/lv_training/how_learn_lv.htm"&gt;How Can I Learn LabVIEW&lt;/a&gt; on NI's Academic site. This page is a great compilation of resources, including courses, webcasts, books and more. &lt;br /&gt;&lt;li&gt;&lt;a href="http://wiki.lavag.org/LabVIEW_Books"&gt;LAVA Wiki book list&lt;/a&gt;&lt;br /&gt;&lt;li&gt;Dr. Scott Hannah's &lt;a href="http://hannahsmac.magnet.fsu.edu/labview/basic_labviewbooks.html"&gt;extensive LabVIEW book list.&lt;/a&gt;&lt;br /&gt;&lt;li&gt;"&lt;a href="http://zone.ni.com/devzone/cda/tut/p/id/4261"&gt;How Can I Prepare&lt;/a&gt;  for the Certified LabVIEW Associate Developer (CLAD) Exam?" on ni.com, including preparation guide and webcast.&lt;br /&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/32599616-1318730308069717447?l=www.eyesonvis.com%2Fblog'/&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/1318730308069717447/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=32599616&amp;postID=1318730308069717447" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/posts/default/1318730308069717447" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/posts/default/1318730308069717447" /><link rel="alternate" type="text/html" href="http://www.eyesonvis.com/blog/2009/01/learning-labview.html" title="Learning LabVIEW" /><author><name>Christina</name><uri>http://www.blogger.com/profile/17288980210854942300</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="08333077494425734606" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-32599616.post-1587703997413841274</id><published>2009-01-05T15:30:00.000-06:00</published><updated>2009-01-05T15:30:57.783-06:00</updated><title type="text">New Blog from Darren of LabVIEW R&amp;D</title><content type="html">I'm thrilled that Darren Nattinger (of Darren's Weekly Nugget fame), creator of the Quick Drop feature of LabVIEW, has started his own blog: &lt;a href="http://labviewartisan.blogspot.com/"&gt;LabVIEW Artisan&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Darren is one of the top experts in VI development here at NI, and I am looking forward to reading his development tips and ideas for future features!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/32599616-1587703997413841274?l=www.eyesonvis.com%2Fblog'/&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/1587703997413841274/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=32599616&amp;postID=1587703997413841274" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/posts/default/1587703997413841274" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/posts/default/1587703997413841274" /><link rel="alternate" type="text/html" href="http://www.eyesonvis.com/blog/2009/01/new-blog-from-darren-of-labview-r.html" title="New Blog from Darren of LabVIEW R&amp;D" /><author><name>Christina</name><uri>http://www.blogger.com/profile/17288980210854942300</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="08333077494425734606" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-32599616.post-1379993958412939042</id><published>2008-10-25T20:05:00.003-05:00</published><updated>2008-10-25T20:14:55.840-05:00</updated><title type="text">Maker Faire 2008</title><content type="html">Last weekend I visited the Austin &lt;a href="http://makerfaire.com/"&gt;Maker Faire&lt;/a&gt;, a showcase of arts, crafts, and engineering. I saw robots, contraptions, musical Tesla coils and more. Quite an event! And LabVIEW was there, too - I saw a group of children using LEGO Mindstorms NXT at a hands-on exhibit. If you're interested in seeing more, I put together a short &lt;a href="http://www.youtube.com/watch?v=z4Fd3I5HKG8"&gt;YouTube video&lt;/a&gt; of some highlights, including the life-sized Mousetrap (based on the old board game).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/32599616-1379993958412939042?l=www.eyesonvis.com%2Fblog'/&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/1379993958412939042/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=32599616&amp;postID=1379993958412939042" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/posts/default/1379993958412939042" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/posts/default/1379993958412939042" /><link rel="alternate" type="text/html" href="http://www.eyesonvis.com/blog/2008/10/maker-faire-2008.html" title="Maker Faire 2008" /><author><name>Christina</name><uri>http://www.blogger.com/profile/17288980210854942300</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="08333077494425734606" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-32599616.post-1877869284468563370</id><published>2008-08-27T17:42:00.003-05:00</published><updated>2008-08-27T17:53:12.416-05:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="LabVIEW 8.6" /><title type="text">Quick Drop</title><content type="html">Quick Drop is a new feature of LabVIEW 8.6. I don't think I can describe it as well as Jim Kring did, so I refer you to his blog post &lt;a href="http://thinkinging.com/2008/08/26/labview-86-quick-drop-is-awesome-and-an-unfair-advantage/"&gt;"Quick Drop is Awesome."&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;You can also see a &lt;a href="http://zone.ni.com/devzone/cda/tut/p/id/7423"&gt;video&lt;/a&gt; of Quick Drop in action on ni.com.&lt;br /&gt;&lt;br /&gt;Darren Nattinger (of &lt;a href="http://zone.ni.com/devzone/cda/tut/p/id/5720"&gt;Darren's Weekly Nugget&lt;/a&gt; fame) created Quick Drop and is amazingly fast when using it. He has configured keyboard shortcuts that he can type entirely with his left hand. His right hand never leaves the mouse!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/32599616-1877869284468563370?l=www.eyesonvis.com%2Fblog'/&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/1877869284468563370/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=32599616&amp;postID=1877869284468563370" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/posts/default/1877869284468563370" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/posts/default/1877869284468563370" /><link rel="alternate" type="text/html" href="http://www.eyesonvis.com/blog/2008/08/quick-drop.html" title="Quick Drop" /><author><name>Christina</name><uri>http://www.blogger.com/profile/17288980210854942300</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="08333077494425734606" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-32599616.post-4154969406207465098</id><published>2008-08-11T11:30:00.000-05:00</published><updated>2008-08-11T11:30:00.941-05:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="LabVIEW 8.6" /><title type="text">Linked Tunnels</title><content type="html">&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_BN3_donLgVE/SJb5tM7IMrI/AAAAAAAAAHE/IEK51tz_bTM/s1600-h/linked_tunnels.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://1.bp.blogspot.com/_BN3_donLgVE/SJb5tM7IMrI/AAAAAAAAAHE/IEK51tz_bTM/s400/linked_tunnels.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5230642572196065970" /&gt;&lt;/a&gt;&lt;br /&gt;Linked tunnels are a new feature of LabVIEW 8.6&lt;br /&gt;&lt;br /&gt;Linked tunnels save you from the tedious process of wiring through frames of a case structure when you add new frames or when you add new tunnels to a structure that already has multiple frames. It's easy. Just right-click on an output tunnel and choose an item from the &lt;span style="font-weight:bold;"&gt;Linked Input Tunnel&lt;/span&gt; shortcut menu. You can create the link and wire all the unwired cases, or just create the link. After that, as you create new frames in your case structure, LabVIEW will automatically wire the linked tunnels. This feature also works on event structures.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/32599616-4154969406207465098?l=www.eyesonvis.com%2Fblog'/&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/4154969406207465098/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=32599616&amp;postID=4154969406207465098" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/posts/default/4154969406207465098" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/posts/default/4154969406207465098" /><link rel="alternate" type="text/html" href="http://www.eyesonvis.com/blog/2008/08/linked-tunnels.html" title="Linked Tunnels" /><author><name>Christina</name><uri>http://www.blogger.com/profile/17288980210854942300</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="08333077494425734606" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/_BN3_donLgVE/SJb5tM7IMrI/AAAAAAAAAHE/IEK51tz_bTM/s72-c/linked_tunnels.png" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-32599616.post-1674605608928066459</id><published>2008-08-07T16:05:00.000-05:00</published><updated>2008-08-07T16:06:02.320-05:00</updated><title type="text">NIWeek 2008</title><content type="html">&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_BN3_donLgVE/SJtjR27cuuI/AAAAAAAAAHU/9q5w68Ycghs/s1600-h/NIWeek2008.PNG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://1.bp.blogspot.com/_BN3_donLgVE/SJtjR27cuuI/AAAAAAAAAHU/9q5w68Ycghs/s320/NIWeek2008.PNG" border="0" alt=""id="BLOGGER_PHOTO_ID_5231884550574750434" /&gt;&lt;/a&gt;&lt;br /&gt;NIWeek 2008 is finished and I want to thank everyone who attended. It was a fun and interesting conference. I especially want to thank those of you who told me that you read my blog! It was great to meet you in person! And, yes, I will try to post more often. :-)&lt;br /&gt;&lt;br /&gt;Slightly off-topic... does anyone know of any research in the area of seating fragmentation for large groups of people? I have a hypothesis that we'd get more useful seats in the same space if we left more rows open, even though we'd have fewer chairs. (I can't help pondering this; there's something about the engineering mind that detests inefficiency, even in keynote seating arrangements).&lt;br /&gt;&lt;br /&gt;Speaking of the engineering mind, have you seen the &lt;a href="http://www.youtube.com/user/anengineeringmind"&gt;"An Engineering Mind" videos on YouTube&lt;/a&gt; (that they showed before the NIWeek keynotes). Yeah, I know that guy. :-)&lt;br /&gt;&lt;br /&gt;Safe journey home to all our visiting friends!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/32599616-1674605608928066459?l=www.eyesonvis.com%2Fblog'/&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/1674605608928066459/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=32599616&amp;postID=1674605608928066459" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/posts/default/1674605608928066459" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/32599616/posts/default/1674605608928066459" /><link rel="alternate" type="text/html" href="http://www.eyesonvis.com/blog/2008/08/niweek-2008.html" title="NIWeek 2008" /><author><name>Christina</name><uri>http://www.blogger.com/profile/17288980210854942300</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="08333077494425734606" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/_BN3_donLgVE/SJtjR27cuuI/AAAAAAAAAHU/9q5w68Ycghs/s72-c/NIWeek2008.PNG" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total></entry></feed>
