The rise in the number of various Operating Systems (OS), has led to the need for an ‘app’ to be able to have the ability to be ‘ported’ from one OS to another. Software engineers are clocking up several man hours developing ways and means to allow an application program to run on different OS’.
Our Anders Definition of Porting
Let’s start at the beginning (yes, we know you already know this!). An ‘app’ is a computer program or software application designed to run on a desktop, laptop, or mobile device. What are you reading this blog on? Is it your office laptop, if so, you will be running several apps in the background, for security, or your photo and music libraries? If it’s a mobile device, are you checking your fitness or your bank balance?
If so, you are carrying out these actions on apps that have taken software engineers hours, weeks, and potentially years to create and refine. So, working away, behind the screen of the app is the main algorithm designed to meet the exact and specific needs of the user.
OS and Hardware (HW) rapidly evolve. You’ll have faced this scenario yourself, when it’s time to renew and/or upgrade your range of electronic products/devices, you’ll be nudged by the brand owner, the seller, or the OS, to move to the latest version which will require different HW and/or OS. At this point, you, the user, typically sighs as you’ve invested your time to understand the HW/OS and the app, therefore the thought of starting over isn’t one that fills you with joy.
This is why you now have the option to ‘port.’
Porting is the activity to move existing source code from one platform/device, to make it work on a different platform/device, the hardware and/or the software. Sometimes this activity may require a degree of re-configuration and re-compilation, and other times, it may require new SW code lines to be added/amended, but the purpose of porting is to re-use as much of the existing code as possible.
The demand to simplify manual functions is ever increasing, and we at Anders have a front row seat to witness this change. For example, we’ve been in the industrial, instrumentation, and control market, for 70 years, and are seeing industrial controls that were developed decades ago, being upgraded to fit into their current modern world environment. More commonly would be the need for industrial applications to transition from Windows to Linux, or from x86 architecture to ARM.
Both examples require ‘porting’ and therefore the engineering skills required to make the transfer process as seamless and painless as possible.
Android App Developers, Java developers or QT developers will be key figures required in the industry, and are skillsets we’ve invested in at Anders.