Why Use Available Software Updates?

It often happens that programmers have their hands tied in the long-term development of an application. Sometimes this is due to outdated technologies and versions. When choosing the options to incorporate a new required functionality, they have little choice then. Worst case scenario, they cannot even implement the request because the system or some library does not allow/support it. The solution? Update!

In our projects, we’ve recently worked on several updates of servers and software components that are necessary for the operation of individual applications and for providing functions for their further operation. Such a step can bring new possibilities to development and take the services provided to the next level. Therefore, owners of e-shops and websites should not underestimate updates.

Expensive and unnecessary? Absolutely not!

Most people don’t like such a comprehensive system update. Rather, it’s perceived as an unwanted expense and futility. Often, however, the opposite is true – it’s by updating the system and libraries that the development and quality of services shifts significantly for the better. We know from experience that it’s often counterproductive to create different shortcuts to bring new functions into an older system through an unofficial route or by creating your own substitutes. On the contrary, after an update, it’s sometimes even possible to notice that the time estimate for incorporating new functionalities is lower than in the older version, also because of the possibility of implementing a simpler code. Updating is therefore also economically advantageous in the long run.

Here are some examples that we’ve recently encountered:

Example 1

Case: The customer wants to expand their service portfolio to other foreign markets.

Impact: Increasing the amount of content and thus increasing queries to the page, the server itself and the database.

Step one: Check for options to update and optimize the server, program libraries and apps for the near future.

Why?: An update can, for example, make it easier to handle memory, innovate how requests are processed or manage internal processes better. All this will ultimately lead to a faster execution of the code and thus to the possibility of increasing the amount of processed queries within a certain time horizon.

Example 2

Case: The customer wants to incorporate webp format support.

Impact: It’s necessary to have a server and libraries that support such processing and image format.

First step: Check if the server supports this option.

Why?: In the case of PHP 5.6, there’s no such option – it can only be solved with an additionally created “patch”, without updating, but also without long-term support. Conversely, PHP version 7.4 and above already automatically contain libraries that support the functionality of webp formats. So if we want to implement the support of the webp format, sometimes it’s enough to “just” update the PHP.

Some tests, such as https://kinsta.com/blog/php-benchmarks/, confirm that newer PHP versions are faster than older versions and can therefore handle many more requests. The same applies to database systems.

Another important advantage is the support of new functions, i.e. increasing the possibilities for the client and their developer to incorporate the required properties. This opens up more space for us to improve services for website visitors.

The above-mentioned advantages are also complemented by the fact that the system update also increases its security and the security of applications running on it.

How do we do a comprehensive update?

If a comprehensive update is necessary or required, we work on updating:

  • the core of the operating system used and its components,
  • the programming language or other language used (PHP, NodeJS, etc.),
  • databases (MariaDb, MySQL, MongoDb and others),
  • library manager (for PHP Composer, for Node NPM and others),
  • a tool for automating tasks in the web development gulp,
  • and other components.

We do some updates automatically. For example, if we have a project stored in the cloud, it updates what’s needed the most as part of the service windows. Likewise, we undertake updates in the event of termination of support for any component (so-called forced update) or the existence of demonstrable errors and security risks.

Finally, you should bear in mind that an update is not always necessary, and in some cases not even needed. A literally forced, unnecessary update can cause damage rather than benefit. Specifically, it’s a waste of resources (time and money) in relation to expectations. Therefore, we always recommend consulting with your developer on how to make the most efficient use of possibilities of updating in the current period, taking into account future goals of a website, application or e-shop.