VIWeek
Events - VIWeek
Discussions during presentations happened here: https://discord.gg/a4WA8Bm |
---|
History
DSH Workshops had planned to hold a number of workshops at and around NIWeek 2020. Due to the COVID-19 situation, and seeing as NI had also cancelled all live, in-person events, the workshops had to be cancelled, too. In order to entertain the community and keep in touch with their friends, the team (Fabiola De la Cueva, Steve Watts, Joerg Hampel and Brian Powell) decided to hold a series of live, virtual sessions during the week formerly know as NIWeek.
Conversation about these sessions led other LabVIEW Champions and Community leaders to throw around the idea of a new community-led virtual event. When Steve Watts went on to advertise this idea on his blog, VI Week was born. There are many community members to thank, see the #Special Thanks section below.
Timeline
The speed and simplicity of how this event came together is a testament to the LabVIEW community. It took only about a week to get from the first thoughts to a finalised agenda and an understanding of how to execute the whole event:
- Mid-April: DSH Workshops decides to hold a series of virtual sessions.
- April 30: DSH Workshops publishes their events under the #Virtual NIWeek hashtag.
- May 2: Chris Stryker coins the term #VIWeek, based on the original #Virtual NIWeek.
- May 3: Steve Watts publishes his blog post.
- May 7: Enough presentations to fill all 5 originally planned days of NIWeek.[1]
By May 17, the first day of the event, the community has not only come up with now 6 days worth of content, but also agreed on both a plan and tools for organising, advertising, holding, streaming and recording the presentations.
Introduction to VIWeek from Chris Cilino
Presentations (video)
Note: Click the topics below to watch the videos.
Sunday, 17th May 2020
- GCentral: State of the Union and Rolling Up Your Sleeves by Chris Cilino and Danielle Jobe
- GCentral is a non profit organization founded in late 2019. The vision: a LabVIEW community empowered to make the best version of itself. The mission: reduce/remove barriers to collaboration. In this presentation, we'll introduce you to GCentral and give a progress update. And we'll show you how we can all work together to make GCentral a reality.
- LabVIEW FPGA for high throughput applications by Terry Stratoudakis
- Functional programming inspired object-oriented template in LabVIEW + SOLID by Piotr Kruczkowski (LinkedIn Article)
Monday, 18th May 2020
- DSH #VIWeek Pragmatic SW Engineering by DSH Gang: Fabiola De la Cueva, Steve Watts, Joerg Hampel, & Brian Powell
- Join us and fight the NIWeek blues. In this one-hour event, we (the whole DSH gang: Fab, Steve, Joerg and Brian) will be:
- talking about who we are and what we do
- asking you about your needs and pain points
- answering any questions you might have
- Join us and fight the NIWeek blues. In this one-hour event, we (the whole DSH gang: Fab, Steve, Joerg and Brian) will be:
- Philosophy of Coding - How to be a CraftsPerson by Sam Taggart
- A discussion of how what we value and the way we think about the process of developing software affects the end result. No LabVIEW code, just a high level discussion of software engineering. I've got a short presentation on our values at SAS and how we approach software development. I'll give that and I'd like to get some feedback. Then I'd like to have a discussion and ask the audience some questions like, what software qualities are important to you? What processes do you think are critical to ensuring software quality? What quality is most important in a junior engineer? How can we do a better job of training junior engineers?
- Confessions of a Retired Superhero by Matt Pollock
- Crazy projects demand crazy solutions. Crazy solutions create crazy bugs. Come learn from spectacular failures (or near failures) that have threatened to torpedo other projects so yours will be safe from heroics.
Tuesday, 19th May 2020
- Proper way to communicate over serial by Tim Robinson
- Too many users look to the Simple Serial Write Read example in LabVIEW and then struggle to achieve solid, robust communication with their instrument. This is because the example does not properly discuss or handle any of the real-world communication schemes instruments use. At this session, explore these schemes and learn how to handle each case.
- Raspberry Pi / LABVIEW CE and Sensors by Sam Sharp
- Sam will demonstrate/show how to get started programming the Raspberry Pi using the LabVIEW 2020 Community Edition with a live/practical demo. He'll then expand this to show off his open-source library of drivers for a range of off-the-shelf sensors/hats so you can connect your Raspberry Pi to the physical world.
- Linx Toolkit for Intermediate Robotics with Raspberry Pi by Derrick Bommarito
- I'll be demonstrating how I've used the updated Linx Toolkit for LabVIEW Community Edition to develop remote control and autonomous rovers using the Raspberry Pi along with a handful of sensors. We'll take a look at the high level architecture of the software along with the open source libraries I'm developing that target autonomous robotics projects. We'll also discuss how you can accomplish better performance for more demanding projects by developing custom firmware for arduino clones instead of using the Linx toolkit to interface to microcontrollers.
- FPGA Advanced Sessions to create a versatile FPGA-based acquisition system by Cyril Gambini
- Creating an FPGA-based acquisition and control system is challenging if the hardware target changes and the bitfiles to load are completely different from one target to the next. Learn how you can handle completely different FPGA personalities within the same application using LabVIEW FPGA Advanced Session Resources. At this session, explore a VeriStand distributed DAQ system featuring multiple CompactRIO devices configured differently based on the test to perform (analyzing the electrical and mechanical behaviors of alternators) and the test's measurement requirements (currently more than 20 different configurations across four target references).
- 8 Reasons for encapsulating your next device driver inside a DQMH module by Christopher Farmer
- Do you hate it when software throws an awful error if a device is not connected, and it just stops or crashes as a result? Do you have multiple instances of the same device that you need to manage? Do you find that your applications get so cluttered with code specific to managing devices? Do you like to see what a device is up to “under the hood” whilst you run an automated sequence? If you’re facing any of these challenges, then we’re confident this presentation will help you! Using a DQMH module to encapsulate your next device driver will eliminate these issues. Register below to learn how.
Wednesday, 20th May 2020
- DSH DQMH 5.0 Introduction by DSH - Fabiola De la Cueva & Joerg Hampel
- Hear it directly from the horse's mouth! Learn what's new in DQMH 5.0. In this one-hour event, we (Fabiola and Joerg) will walk you through the new features of DQMH 5.0. We'll also give insights into how these features actually help with our daily work.
- Efficient Programming in LabVIEW by Tom McQuillan
- In this session, I'm going to showcase Project Templates. After choosing to go down a DQMH route for a project (after being a hardcore Actor Framework user), I realized there were certain aspects of AF I missed. Namely, the ability to reuse messages between modules. In this session, I will showcase a solution to this using Project Templates and how templates could be used for your modular applications. I'll also showcase some scripting tools that were possible using templates.
- Using a Message Broker with DQMH Actors for High Speed/Throughput Data logging by Chris Roebuck and Becky Linton
- Tasked with creating a hardware agnostic, highly configurable, high-throughput data logger for ADAS applications we implemented the Mediator pattern using multiple modified-DQMH actors with a message broker. In this session we will review the requirements, high level design objectives and review the solution and take a deeper dive in to some of the specific technologies used such as malleable VIs, eDVRs and Message Brokers.
- Graphical programming beyond G - Use case of LabVIEW integration with Node-RED by Michal Radziwon
- Dataflow programming is not only about G and LabVIEW! There is more and more of other platforms that uses graphical programming and one of them is Node-RED. Node-RED is a programming tool build to ease connecting and automating IoT enabled devices, APIs, and web-services. I will show a use case of integrating LabVIEW with Node-RED using MQTT server - all running on a Raspberry Pi.
Thursday, 21st May 2020
- CEF (configuration editor framework) by Sreejith Sreenivasan & Vikas Koujalagi
- Configuration files are commonly used to specify application settings and hardware configuration. Manual editing of some of the complex configuration files of hardware systems or applications are often error prone. Shipping a configuration editor can ease the pain but development overheads may outweigh the benefits. Configuration Editor Framework (CEF) from NI Systems Engineering is a versatile framework allowing rapid development of such editors. Development generally take hours instead of days or weeks. This presentation delves in to the features and walks through an example which saves the files in JSON format.
- Using the new TLS/SSL functions in LabVIEW 2020 by Sam Sharp
- Sam will go through the newly added SSL/TLS functions in LabVIEW 2020 which enables secure TCP/IP communications in LabVIEW. This session should provide enough information to be able to implement secure TCP/IP communications in your own applications and learn why you should. He'll also demonstrate an update to his WebSockets library that enables secure WebSockets (wss://) support - a highly requested feature now possible with LabVIEW 2020.
- DSH Soft Skills for Software Engineers Discussion by DSH Gang: Fabiola De la Cueva, Steve Watts, Joerg Hampel, & Brian Powell
- Bit of a chat
Friday, 22nd May 2020
- #VIWeek – Open Your Instruments With A G Interfaces HAL In LV2020 (No Lever Tool Required!!) by Jonathan Hird (Jono)
- The recent release of LV2020 Community edition has opened up the new capability of “Interfaces” into the LVOOP world. I for one am incredibly excited about what this means specifically for Hardware Abstraction Layers. After some initial trudging through the mud and not quite seeing the value in interfaces for my specific needs for a HAL, I decided to scrap what I had, start from scratch and work logically to put together an example of a “Real World” HAL application. In this session we will briefly cover the Why, What and How of HALs and how interfaces may help along with some sample code which will be uploaded for community use as a good starting point.
- The Core Framework by Denis Stavila
- It's something that I built on top of the Actor Framework and aims at solving several shortcomings that I believe AF has ... plus a lot of tweaks and built-in functionality to make the life of a developer much easier: - Internal broadcast system - Debugging/Monitoring tools - UI structuring and configuration - User Access tools .... etc.
- Mock Object Framework by Sam Taggart
- I will present an open source tool for creating Mock objects and show how to use them in tests. It will be an informal kind of code review thing. I might put together a few slides on what Mock Objects are so we are all on the same page. After that I will just start with defining the problem and then how I came up with the solution. We will spend a lot of time just looking at the code.
Saturday, 23rd May 2020
- Fast and Simple Unit Testing with Caraya 1.0 by Francois Normandin and Jim Kring
- Almost everyone writes code to test their code. Caraya, a unit test framework for LabVIEW, makes it simple to turn those test VIs into unit tests that can be reused throughout the life of the project. With a focus on ease of use and lightning fast execution time, Caraya allows you to write and run tests without adding much overhead to your development work. Come see how you can create and run a test in under a minute, run all the tests in your project with a simple QuickDrop shortcut, and integrate your tests into a fully-automated build and deploy process. You’ll also learn about advanced features like running tests on real-time targets, creating custom test report formats, and more!
Special Thanks
- Chris Stryker for the name.
- Steve Watts for the organization.
- Derrick Bommarito for the web portal.
- Michal Radziwon for the Discord chat server.
- Quentin "Q" Alldredge for the Logo.
- Michael Avaliotis of VIShots for the video recording.
- All of the presenters
- And many more who will hopefully be added to this list.
References
- ↑ LinkedIn Post, Joerg Hampel, May 7th 2020