The problem today is that web based services are still operating as form-based applications. Whilst there’s nothing wrong with this, it prevents any sort of immersion from being achieved. A much better way is to use object oriented development to craft an experience which both embraces the modern web, but also ensures that consumers are able to indulge in solutions that work for them.
In the programming world, there are two types of format.
The first is what I call “form based” (it has other names) – which essentially means that every time a user interacts with an application, they do so by filling in, or editing, some sort of form. Think of an accounting application, where each invoice you input into the system is done via a form with many boxes.
The second is what’s known as “object oriented programming” (OOP for short). This is where “forms” are loaded as objects – which retain state and can be manipulated by way of using “actions” and “methods”. Whilst these objects work in exactly the same way to “forms”, the core difference is that many of them can be loaded at once, providing the illusion of immersion.
In a nutshell, you’ll find the core difference between form-based and OOP design is the experience the developer is hoping to provide the end user.
The majority of games use OOP, which means they work by invoking a single instance of an application, and having the user determine which “objects” (enemies & destructive scenery) show on the screen.
By shooting an enemy or other object, it will trigger the object to react in a particular way. For example, if the enemy is to “die”, it will invoke a particular animation ascribed to that change in “state” for the object, making the user think that the enemy has indeed perished.
The key thing to remember is that people think in images, computers in numbers. This means that if you’re looking to create any sort of application – you’re basically trying to identify the underlying functionality it is meant to have. If you’re able to create functionality that works well, you’ll be able to use the OOP programming techniques to get the system working as effectively as possible.
This is something that happened in the 90’s when PC’s moved from 2D to 3D. However, the web is now beginning to experience a similar shift. Faster processors, more memory and higher graphics fidelity for the likes of smartphone screens have pushed users towards an expectation of wanting to be able to engage with truly immersive application experiences.
Whilst they can get these through the “native” deployment methods – including the likes of iOS, Android & Windows apps, people are now looking for “web centric” deployments which allow for a central “web service” to be ported to different systems. This is what VPSDeploy has been working towards with its underlying system.
Without going into too much detail, VPSDeploy basically gives web service developers & users the opportunity to deploy their applications to “cloud” VPS servers. Whilst this may seem relatively mundane, its real claim to fame is its ability to do this within a completely object oriented environment, where you’re basically able to visualize your entire server stack without the need to refresh the page etc.
On top of giving users an immersive experience, it does something substantive – it allows for extensibility in the design of the solution. In other words, it means that you’re able to integrate a large number of other features into the system which may not be directly related to its core functionality.
In the case of VPSDeploy, this means that you have the ability to add a large number of tools to look at the different features of your servers. Such integrations as a database management application, email manager and performance upgrades give you the ability to completely immerse yourself in the underlying way the system works.