I have been in the Uniface business for longer than twenty years. I have experienced the GUI baby steps of Uniface 6 at around the same time Windows 95 saw the light. I could keep up with the new features that were presented with each new version of Uniface that was released. So, with regards to Uniface, I can proudly say that although I may look like a monkey, I am an old monkey. I know a lot of tricks.
The world is changing at a fast pace and it is necessary to keep my bag of tricks up to date. With Uniface moving into the direction of supporting cloud features, I feel that it is necessary to do a bit of homework to prepare myself for this mind shift.
As a first step, I joined a few colleagues at the Red Hat Openshift Roadshow that was held in Amsterdam. With many similar cloud-technology related events currently taking place and with Uniface being so strong in supporting multiple platforms, it seemed like a good idea to search for the silver lining at the Red Hat event.
Why Red Hat?
Red Hat is just one of multiple platforms that Uniface supports. It is a leading enterprise Linux platform. It is supported on both Amazon Web Services and Microsoft Azure. These two providers are currently the preferred providers for Uniface cloud support. In addition, it is also open, reliable, secure and flexible for customers who have business-critical systems.
How does Red Hat align with the goal of supporting multiple platforms for Uniface?
At Uniface we are not in the business of putting one platform in front of the other. We want the client to make the decisions around the technologies that are going to be used and we want to fit into it. Red Hat is just one of the platforms that we as well as the cloud providers do support. What makes us strong, is the fact that we can confirm that Red Hat is one of the many platforms that are on our list that we can tick off.
What benefits does this bring?
As a result of our work, we now have the infrastructure in place to verify and test Uniface on cloud platforms, therefore enabling us to tick the box that Uniface is supported. This means customers do not need to make changes to their application source code, because, we can deploy to Red Hat as well as other platforms in the cloud in the same way as if they were deploying to on premise operating systems.
What is OpenShift?
Before we understand what OpenShift is, we first need to understand a few other terms (in short of course).
- Infrastructure as a Service (IaaS)
When a provider runs computers on demand with specified configurations. This is alternative to rack and stack hardware. You specify the amount of RAM, CPU, disk space and operating system and the provider starts up a machine that meets these specifications within minutes.
- Software as a Service (SaaS)
Requires zero or very little maintenance or setup. You just sign up for a cloud based service and it is available for you to use. A simple example of SaaS is Gmail.
- Platform as a Service (PaaS)
This falls between IaaS and SaaS. Currently it is targeted at application developers. With PaaS, all the necessary pieces of your application are spinned on a server up from either the command line or a web interface. These pieces can be applications and databases.
This is where OpenShift starts to play a role. OpenShift provides the command line/web interface for the developer to spin up everything. From one command, all the necessary networking and server installs are done and a Git repository is created. OpenShift administrators will update the operating system, manage the network and do other admin work so that the developer can focus on writing code. The interface also allows the user to scale his application and do some performance tuning.
What does this mean for Uniface?
The strategy of Uniface has always been to support multiple platforms/databases etc. Internally, we are currently using Ansible as part of our build processes rather than OpenShift, but we are always investigating new ways to improve our processes and we try not to focus on specific technologies or tools. Therefore, from a DevOps point of view, I do see that OpenShift could play a part for us.
By making use of Infrastructure as Code, we can spin up multiple processes in the cloud to assist us in our build and verification processes. In our case, our application(s) are our tests, and we can now run them in parallel. We are also able to research new platforms without making investments in new physical infrastructure. This is a micro services approach which is the magic of the cloud.
I see OpenShift as a possible tool that can be used by our users. It is very powerful and useful and could be used to deploy applications into cloud environments, and to scale or contract as required.
Every cloud has a silver lining. The new silver lining is the fact that the cloud opens up so many restrictions. With new tools released every day, it is important to stay informed so that we can also be as open minded as the cloud.