Add a couple of paragraphs outlining python closure, particularly with regards to the callback functions necessitated by system.tag.readAsync / writeAsync. In many parts of Ignition (e.g. Vision component scripts), variables like event or tagPath are globally accessible, which means you can get callbacks to use these variables. In others, like tag value change events, the closure must be deliberately implemented. see e.g. https://forum.inductiveautomation.com/t/async-callbacks-in-value-change-event-script-cant-use-information-from-the-value-change-event/91456/5 Very useful to know if you are not from a software engineering background, as callback functions are both often necessary and foreign to career PLC engineers.