5 ms·
Quote: "The programmers used some pretty interesting strategies to overcome not remembering how the original code worked: they'd excessively use undo/redo to f
by unnouinceput 5y ago
Quote:
"The programmers used some pretty interesting strategies to overcome not remembering how the original code worked: they'd excessively use undo/redo to flip back and forth between the current state and the original state of the code (other researchers have found that Java developers do this backtracking behavior too! A lot.), they'd copy and paste the code block prior to modifying it, or they'd screenshot the code to use as a reference!
I also asked 9 other engineers if I could come sit behind them as they were coding. Oddly enough they agreed, and even seemed eager to have someone witness their coding frustrations. It revealed many small reasons why modifying code is tedious (e.g., it is easy to mistakenly swap two inputs and not realize it). They also taught me some more strategies, such as duplicating their entire code project before making a change so that they could compare the runtime behavior of the original version and the changed version. I again saw them screenshotting code and a few of them would make notes on paper prior to making changes."
I am sorry, I don't use LABView, so this might be a noob question, but!: Can't you use a repository and just commit/checkout changes with different instances of LABView opened for each? This way you can compare that at the tip of your fingers multiple situations?
- AndrewDucker 5y agoI use "Compare to last checked in version" regularly - but I'm not sure how that would work with a visual system.
- Explorer99 5y agoLabVIEW has a Diff tool that can be used with GIT/SVN.
- betwixthewires 5y agoI have used LabVIEW (and other NI tools) in the past, I was even advised by a mentor to learn LabVIEW extensively because it is very lucrative. I didn't, to be honest his strategy was to become indispensable and mine is always to solve problems. These workarounds cited in the article are almost personal to me, I would see very senior and competent engineers doing things like screenshots and duplicating code and things like that. I even engaged in it a bit, there are other ways in theory but in practice LabVIEW almost always results in incomprehensible spaghetti. In the end I was part of a change to the department away from NI and proprietary tools and towards python and standardized hardware. It seriously reduced the difficulty in building our tools. LabVIEW is IMO a dumpster fire and I would probably never use it for anything ever again. It is one of those concepts that sounded good in a pitch and then became a huge mess once implemented.