Vision Vs Perspective Debate

I have been getting to grips with Ignition for a while now and have developed some User Interfaces for Data Collection and Analysis. I am leaning heavily towards Perspective but Vision has been in use at my company for a couple of years in a different department, where they work with machine data largely.

I will be the first person in my department to use Ignition, I work with a mixture of numerical and categorical data from users. I prefer everything about Perspective (usability, visibility etc) but when I have mentioned Perspective to the Vision users at my company I have been shut down with 'we don't need mobile phone access', I think there's way more to Perspective than different screen sizes and so my question is:

What are some selling points of Perspective over Vision that I could use to argue my case?

1 Like

The big one for me is Perspective's zero-install for users. Just send a link and anyone can view the application. Vision requires the application to be installed.


@Transistor I hadn't considered that, that's a good one. Thank you

Everyone hates change, we recently had a new starter at work who was learning Perspective and was complaining it took ages to get anything done that in FactoryTalk she could get it done fast. Fast forward a month, she was working on a FT HMI swearing about how slow, inefficient and backwards it was and how hard it was to manipulate data.
Next new starter had Perspective experience already, put to work on a Vision system and 4 weeks in is still complaining about how many features are missing and how clumsy it feels compared to Perspective.
The biggest win in Perspective for me is how easy it is to do advanced functions and add bindings and scripts to pretty much anything on screen, limited mostly by the bounds of the Web technologies underlying. If it's possible in CSS,Python or Jython, theres probably someone out there who has figured out how to make it work in Perspective.
Vision is very much limited in the "If we didn't expressly design that feature in, its not going to work that way" much like the HMI/Scada of the last 10/20 years.


@David_Stone That's it exactly. I'm starting new projects and haven't fully realised their scope yet, there's a lot more customization available in Perspective than in Vision. Using Python with Perspective has been a big plus for me. Thank you so much for your reply

I recommend that you create a Perspective app to display some of your already existing data. Make sure you do a good flex layout, theme it properly (use the built-in themes) and get some user feedback from someone you trust. When ready, slip the URL into some emails when referencing the data, etc. Then see who uses it and what feedback you get.

If you haven't got a Perspective licence then you'll be limited to the 2-hour trial licence.

1 Like

This is the problem with Perspective. If you need production machine control, or direct interactions with the client OS, Vision is the better choice.

This is true for Vision as well and perhaps more so since Vision has the ability to manipulate things that aren't on the screen at all, and extend classes to directly customize the way components work.


Also, consider reading through this topic

1 Like

Perspective is an excellent choice for this. Vision is arguably overkill for simple data entry needs.

1 Like

I prefer Vision for purely on-machine user interfaces, for a number of reasons, all well-described in the linked post.

I prefer Vision when I need a quick testing UI, as the designer is much more stable and responsive for Vision than for Perspective.

I only use Vision when I have a need to chart hundreds of thousands of data points at a time, perhaps from high-speed, high-resolution recordings, as this absolutely crushes Perspective.

I recommend Vision when the gateway(s) in a project are light-duty, as Perspective produces dramatically more gateway workload per user than Vision.

Perspective is very, very user-friendly, and obviously the right (only) choice for anything mobile.


It's actually really not, as pretty much anything you can think of can be done through code, whereas perspective will always be constrained to what a browser is allowed to do. It's just not as obvious/simple as with perspective. With great power comes great complexity. Or something like that.
And I say this as someone with barely any experience with vision.


One of the big things is the overall talent pool available to you to maintain your platform, you aren't limited to the traditional 'automation engineer'. Because of how perspective works you can go and grab people with a CS background and point them at it and it just clicks for them. At the company I work for its made recruiting much easier. It also enables our clients IT groups to be more involved since their skillsets translate better to using it. It aids with the whole concept of OT/IT convergence.


However the IT skills are expensive and more difficult to retain just for configuring the perspective screens whereas a non-IT professional can configure vision screens without having to acquire the dynamic and ever-changing knowledge of IT. Just knowledge of python scripts is enough IT skills required.


I'd argue you'd better know some Java for vision... and some css for perspective. That's pretty much all you need, language-wise.


I don't mean to say Vision is better than Perspective or vise versa, perspective is on the right track and direction, it's just got a learning curve in the beginning and people quickly become comfortable with it.

Coming from a Wonderware/Legacy Intouch history I prefer Vision.


Not sure why people who play(ed) Counter Strike have an advantage :grin:

But how long have you used Perspective for? When I first started using it, I tried my hardest to like it, but I wasn't convinced. Now that I have experience with it, I struggle to go back to vision; it feels clunky and outdated


When I first started using it, I tried my hardest to like it, but I wasn't convinced.

I'm fairly certain the first thing I tried to do in perspective was draw a circle and I was confused.


Whereas now, it's obvious that you would use a label with borders and a border radius :slight_smile: Duh, how did we not know that??


First, I don't consider myself a programmer. My employer would call me an HMI developer but I think a more honest description would be a code aggregator.

I've been using stand alone InTouch for 30 years. I've been involved in 3 or 4 Ignition projects developed in Vision including the project I am currently working on. This project has been going about 9 months but a few months into it I was told it needed to be Perspective.

There seem to be a number of things you either can't do in Perspective or they are not very intuitive to a non-programmer.