Ignition is a set of tools written in Java that makes it easy and fast to build applications. What kind of applications? The Inductive Automation website says it is software for creating systems.
However I think it is more general purpose. It is certainly great for and geared for SCADA systems, but all kinds of applications can be built using Ignition. If you are not familiar with SCADA,: Computer systems that monitor and control industrial, infrastructure, or facility-based processes. I have used Ignition to implement or improve inventory systems, plant data logging systems, process tracking systems, plant monitoring systems, Customer Relationship Management (CRM) systems and Human Machine Interface (HMI) systems. HMIs are GUIs that are used to control machinery on the plant floor.
I think a lot of web applications could instead be Ignition applications. Project management, time tracking, email, CRMs, ERP -- data rich applications that you want users to log in to. A huge benefit to web applications is that they employ a client-server model. There's one server that deploys an application to many clients, the web browsers. This allows changes to the software to be very easy. Just change the code on the server and the clients are automatically updated. And since a web server deploys its application over a network the users can access the application from many physical locations.
![Inductive Automation Ignition Manual Inductive Automation Ignition Manual](https://www.inductiveautomation.com/static/images/banners/resources-banner-IgnitionSecurityHardeningGuide.jpg)
Ignition is unlimited, so for the low cost of one server license you can seamlessly connect all your data, design any kind of industrial application with ease, and instantly web-deploy unlimited industrial and mobile clients to anyone, anywhere — all from one universal platform for industrial automation.
Of course the Internet enables users to access applications from many places in the world. Ignition employs this same model. But instead of deploying a client over the network to a web browser Ignition deploys a client over the network to a Java Runtime Environment (JRE) using Java Web Start. Here's a great description of Java Web Start: The Java Web Start software allows you to download and run Java applications from the web. The Java Web Start software: • Provides an easy, one-click activation of applications • Guarantees that you are always running the latest version of the application • Eliminates complicated installation or upgrade procedures So a user goes to an Ignition webpage and clicks on a launch button which causes Java Web Start to download a Java application from the Ignition server. When the application is downloaded the application starts automatically and the user is in business.
The Java application running on the user's desktop will communicate to the Ignition server on the network as needed to get data from databases, to update itself when changes are made on the server, etc. After developing applications with Ignition for the last three years I can tell you that this works very well. The control and interactivity in web applications is getting better and better but it still isn't as good as the control and interactivity in desktop applications. When developing with Ignition you are making a desktop application but you get network benefits of web applications. Another big benefit that web applications have is that web browsers are ubiquitous on computers and devices and different operating systems. I don't think Java is as ubiquitous but it is still pretty common. Ignition includes support for running Ignition applications on cell phones and tablets.
The Ignition server and applications run on Windows and Linux well. For the last couple of years I did all of my Ignition development on Linux, using Ubuntu. That made me happy. For a long time a problem in web development has been browser consistency, and it still is a problem particularly with Internet Explorer 8 and below not supporting much of CSS3 and HTML5. When developing Ignition applications I didn't have to worry about what might be supported or not. I just focused on developing my applications. If users are using Sun/Oracle's Java 6 or 7, which the large majority of people are, then everything is supported.