I’m watching Derek Trepanier present, “Making UIs that don’t Suck Using Panel Manager” and I’m impressed by the sheer amount of useful tidbits he’s sharing – to the point that I felt compelled to promote his session and the MGI Panel Manager.
I walked into the room and was immediately greeted by Chris Cilino, who adamantly proclaimed, “this is my biggest pain point!” The topic at the time revolved around creating programmatically scalable tab controls with arbitrary numbers of tabs, which Derek has elegantly solved with a framework that calls into a .NET assembly for generating tabs, which he combines with the use of a Subpanel.
Derek’s Panel Manager framework is based on the Actor Framework, and he’s showcasing how to use an object-oriented approach to build scalable user interfaces using his framework. To illustrate, he showed how to build a generic UI for an instrument that can showcase more specific device information for an arbitrary instantiation of a child, like a DMM.
For anyone that cares about building modular, scalable and flexible UIs that maximize the leverage and reuse of common UI elements, I strongly recommend checking out the Panel Manager framework, which you can download here.
This is a great illustrate of the uniquely valuable insights and expertise showcased each year at the CLA Summit.
I always look forward to seeing everyone at the annual CLA Summit, which just kicked off a few hours ago at NI headquarters in Austin. The topic for the first day is security, which is a pressing topic for anyone in software, but it’s also important to note that this year’s chairs have made some very deliberate changes to the format.
This year’s chairs, Jim Kring, Jon McBee and Stephen Loftus-Mercer, have an explicit goal to return to the more engaging group-discussion-oriented format of the original summits.
To that end, the chairs have come bearing tools to make people to talk, including throwable microphones and signed certificates that force us to meet new people.
Continuous Integration (CI) is increasingly common among LabVIEW users and all software developers. For anyone not familiar, CI aims to automate the previously laborious task of building your software for distribution, either as a reuse library or a final product.
In case the benefits aren’t clear, automating this task is beneficial because:
- It ensures it’s done early and often throughout development – many people otherwise wait until the end, only to discover new problems in the last mile
- It can be used to automate regression and integration testing prior to build, which helps find bugs early and often
- It offloads build processes from a development machine and can be used to parallelize several large build processes
One of the most popular and ubiquitous tools for this task is Jenkins, and I’m increasingly seeing a lot of our users employ a server that has Jenkins and LabVIEW for the sake of nightly build processes.
While many of you have figured this approach out on your own, I did want to share a tool from our Systems Engineering group that you can evaluate if you’re thinking about propping up your own Jenkins server.
This free tool provides a web service API that can be integrated with Jenkins for the sake of CI.
Enjoy: LabVIEW CI Project