AUSTIN, Texas Non-overwriting back-up, simplified distributed computing through better management of shared resource connections and better paths to incorporate user-generated customizations are but three of the improvements to LabView programming language currently swirling around the brain of National Instruments' cofounder and ideas man Jeff Kodosky.
Speaking toward the close of last week's NI Week, Kodosky said that every year he checks to see how much storage capability he can get for $400. "This year I got a 1-Tbyte drive," he said. He doubted that amount of storage would ever be filled with program and data files, so he got to rethinking the whole process of data and project backup.
"We have an un-do feature [in LabView] but it's hard to manage," he said. LabView also has the ability to track source code iterations. However, given the availability of cheap storage, "we should never have to overwrite anything." This, he said, would allow the storage of the entire history of a project, which would allow a team to retrace a path that was leading nowhere by going back to a point in the design where a certain decision was made—such as to go with a certain hardware platform or chip—and instead choose an alternate path. "You can analyze the whole decision process," he said. It would also help in the verification-and-test process. He added that Apple is rumored to be working on such a model as well.
To better manage shared resources, Kodosky and the R&D team led by Tim Dehne are developing a new "wire," in LabView parlance, that would represent or show the shared connection between the "producer" of a given data set and the "consumer" of that data, i.e., a processor. That shared resource connection is currently implemented by calling up a VI within LabView, and even though it works, it's generally buried within the program and hard to get at.
Kodosky's intention is to make that shared resource connection more visible and manageable through a wire that would be a 3D representation of the data connection, and it could be mapped to VI queues, FIFO queues to FPGAs and across platforms In doing so, he hopes to simplify distributed computing. One subset of the resource management is timing, a critical function in distributed computing and shared resources. Kodosky refers to timing as a special case and one that is currently being worked on by Dehne. "We have Jeff's 'wire' and we have Tim's 'wire,'" he said.
While improvements to LabView come through both internal innovation and feedback from clients, Kodosky is pondering ways to simplify the addition and implementation of user-generated customizations and code. Ideas being pondered include the SourceForge model, in which developers can upload and download software at will, and the Mindstorms model it developed with Lego. With Mindstorms, users are equipped with the ability to modify, add to and customize the base platform with a vast array of hardware blocks and code available from the Lego site.
"I'd like to take the Mindstorms model and bring it back into LabView," he said. Other tweaks he'd like to make to accelerate the user feedback loop include a better Web site connection and a better editing technology.