# Does Python scripting knowledge is essential to work in Ignition?

**URL:** <https://forum.inductiveautomation.com/t/does-python-scripting-knowledge-is-essential-to-work-in-ignition/25281>\
**Category:** General Discussion\
**Tags:** python, scripting\
**Created:** [May 24, 2019, 7:45am UTC](https://forum.inductiveautomation.com/t/does-python-scripting-knowledge-is-essential-to-work-in-ignition/25281 "2019-05-24T07:45:58Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![karthikeyan](https://avatars.discourse-cdn.com/v4/letter/k/898d66/32.png) [@karthikeyan](https://forum.inductiveautomation.com/u/karthikeyan)\
**Post date:** [May 24, 2019, 7:45am UTC](https://forum.inductiveautomation.com/t/does-python-scripting-knowledge-is-essential-to-work-in-ignition/25281/1 "2019-05-24T07:45:58Z")

</div>

this question is kind of stupid but still i would like to know. I am just curious, is it possible to work on Ignition without doing any Python scripting? I am more like a Ladder Logic oriented guy. Even mostly I step away from even ST programming. I am not a good fan of C, C++, Java, Python blah blah… So my concern, is there any possible way to fulfill all requirement in Ignition without scripting. Thanks in Advance…

---

<div class="post-metadata">

**Author:** ![zxcslo](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/zxcslo/32/61610_2.png) [@zxcslo](https://forum.inductiveautomation.com/u/zxcslo)\
**Post date:** [May 24, 2019, 8:03am UTC](https://forum.inductiveautomation.com/t/does-python-scripting-knowledge-is-essential-to-work-in-ignition/25281/2 "2019-05-24T08:03:10Z")

</div>

I think that all depends on the complexity of the project. I personally have not yet encountered a project that I could do everything without scripting …

---

<div class="post-metadata">

**Author:** ![c.bertulli](https://avatars.discourse-cdn.com/v4/letter/c/f19dbf/32.png) [@c.bertulli](https://forum.inductiveautomation.com/u/c.bertulli)\
**Post date:** [May 24, 2019, 8:27am UTC](https://forum.inductiveautomation.com/t/does-python-scripting-knowledge-is-essential-to-work-in-ignition/25281/3 "2019-05-24T08:27:44Z")

</div>

If you want a button to set 2 or more tags, you’ll have to script it. Very very very very basic scripting level ( basically copy - paste ), but you’ll have to do it.

So,

IMHO it depends on the meaning of “without scripting”:

- if you don’t want to script AT ALL: well, it is possible but you’ll have limited feature
- if you want to keep the scripting level at minimum: you can do almost whatever you want

For example, I just finished an aluminium extrusion plant (15k tags) with low scripting level ( obviously only HMI )

---

<div class="post-metadata">

**Author:** ![JordanCClark](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/jordancclark/32/83362_2.png) [@JordanCClark](https://forum.inductiveautomation.com/u/JordanCClark)\
**Post date:** [May 24, 2019, 8:50am UTC](https://forum.inductiveautomation.com/t/does-python-scripting-knowledge-is-essential-to-work-in-ignition/25281/4 "2019-05-24T08:50:00Z")

</div>

> [@karthikeyan](#):
>
> I am not a good fan of C, C++, Java, Python blah blah…

IMO, this is a great opportunity for you. You even have two advantages:

- Python is a relatively easy language to learn.
- You have an excellent support group here for Ignition-specific things.

---

<div class="post-metadata">

**Author:** ![Sanderd17](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/sanderd17/32/8735_2.png) [@Sanderd17](https://forum.inductiveautomation.com/u/Sanderd17)\
**Post date:** [May 24, 2019, 9:24am UTC](https://forum.inductiveautomation.com/t/does-python-scripting-knowledge-is-essential-to-work-in-ignition/25281/5 "2019-05-24T09:24:16Z")

</div>

On a simple project, it’s possible to do without Python programming. There are many workarounds that can be made over the PLC and via bindings to hide/show UI elements.

F.e. if you need to set two tags via one button (as the example given above): just fix that in the PLC and react on one tag to set the two final values.

On the other hand, the Python scripting does add a lot of value to Ignition in how easy it becomes to do non-standard stuff. So in the end, it pays off to learn a minimum of scripting.

---

<div class="post-metadata">

**Author:** ![karthikeyan](https://avatars.discourse-cdn.com/v4/letter/k/898d66/32.png) [@karthikeyan](https://forum.inductiveautomation.com/u/karthikeyan)\
**Post date:** [May 24, 2019, 9:34am UTC](https://forum.inductiveautomation.com/t/does-python-scripting-knowledge-is-essential-to-work-in-ignition/25281/6 "2019-05-24T09:34:13Z")

</div>

Thank you all for your valuable reply. I appreciate it… So I’ll start learning python scripting.

---

<div class="post-metadata">

**Author:** ![Sanderd17](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/sanderd17/32/8735_2.png) [@Sanderd17](https://forum.inductiveautomation.com/u/Sanderd17)\
**Post date:** [May 24, 2019, 9:36am UTC](https://forum.inductiveautomation.com/t/does-python-scripting-knowledge-is-essential-to-work-in-ignition/25281/7 "2019-05-24T09:36:18Z")

</div>

Most of what you need to know are actually the Ignition-specific system functions: [https://docs.inductiveautomation.com/display/DOC79/Scripting+Functions](https://docs.inductiveautomation.com/display/DOC79/Scripting+Functions)

And off course, the simple stuff like if-else clauses, for loops, how a list looks, …

---

<div class="post-metadata">

**Author:** ![SillyBear](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/sillybear/32/9290_2.png) [@SillyBear](https://forum.inductiveautomation.com/u/SillyBear)\
**Post date:** [May 29, 2019, 2:21pm UTC](https://forum.inductiveautomation.com/t/does-python-scripting-knowledge-is-essential-to-work-in-ignition/25281/8 "2019-05-29T14:21:10Z")

</div>

![hqdefault](https://us1.discourse-cdn.com/inductiveautomation/original/2X/e/e5f03855712a2f7cfc3bb6bb1d07c9fbeba57037.jpeg)
