Category: Tech Insight

Our Green Credentials

The impact that businesses have on the environment is a issue that’s close to many people’s hearts.

We’ve all see news stories of how we as consumers can make changes to reduce our carbon footprint. Many responsible businesses also take steps to monitor and reduce their carbon footprints too.

Here at MIDAS, we’re committed do the same!

MIDAS’ Carbon Footprint

We’re pleased to report that since 2021, we’ve reduced the carbon footprint of MIDAS by 5%.

Back in 2021, we first discovered the Website Carbon Calculator. This innovative website analyzes five key metrics to estimate the carbon emissions of any website. These factors include the volume of data being transferred when a web page is viewed, the type and amount of energy used at the data center serving the web page, as well as the volume of traffic to the site.

When we analyzed our website using the Carbon Calculator in 2021, it reported that MIDAS was cleaner than 86% of all web pages tested.

Now in 2025, we’re now greener than 91% of all web pages globally.

MIDAS is cleaner than 91% of all web pages globally
MIDAS is cleaner than 91% of all web pages globally

Reducing Carbon Dioxide Production

The Website Carbon Calculator further estimates that only 0.10g of Carbon Dioxide is generated when someone visits our website. This is down from 0.19g in 2021.

Only 0.1g of CO2 is produced per page on our website
Only 0.1g of CO2 is produced per page on our website

Backed by Green Sustainable Energy

Additionally, the Green Web Foundation provides a “Green Web Check” tool, which can provide an indication as to whether a web site (or service) is backed by green sustainable energy.

The Green Web Check affirms that our website/network (including our cloud hosted customer’s booking systems) is backed by green energy.

MIDAS runs on green sustainable energy
MIDAS runs on green sustainable energy

Choosing greener online businesses

MIDAS produces 60 times less carbon than some of our competitors

When focusing on reducing carbon footprints, many businesses look to do this in “visible” ways. One common approach is to replace tungsten bulbs with more efficient low energy LED light bulbs.

But how many consider the software their business uses when looking at ways to reduce their carbon footprint? It’s a less obvious and certainly a less “visible” action.

But when you consider that significant differences that do exist today between different software vendor’s carbon production, choosing a software vendor with a low carbon footprint makes sense! Not only does it help with your own business’ green credentials, but it also – more importantly – it helps our planet.

So for a room booking and resource scheduling system committed to being green, be sure to consider MIDAS.


Cloud Infrastructure Upgrades – December 2024

Cloud Infrastructure

Last week we undertook some upgrades in the three client data centers where our cloud-hosted customer’s MIDAS systems reside.

These data centers are located Atlanta, Georgia (US East Coast Data Center), Seattle, Washington (US West Coast Data Center), and Amsterdam, Netherlands (European Data Center).

When a customer chooses a cloud-hosted edition of MIDAS, they can choose which of these data centers their booking system runs from. (We also offer a self-hosted edition too, for customers wishing to run MIDAS on their own infrastructure)

The upgrades to the sever ‘nodes’ where our cloud-hosted client’s MIDAS systems run include:

  • Increased CPU cores by 50%
  • Increased Memory capacity by 50%
  • Increased port speed by 50%

These upgrades were performed seamlessly without any downtime or impact on customer’s MIDAS operations.

The result of these upgrades is that we can deliver more powerful client nodes, with improved network connections.

In turn, this translates to even more responsive MIDAS booking systems for our customers. It’s all part of the service and commitment we have to our end-users!


Proposal to drop TLS 1.2 support in early 2025

Proposal to deprecate Transport Layer Security TLS 1.2

Transport Layer Security – or “TLS”- is a cryptographic mechanism to facilitate secure connections and communications across the internet. For example, the https network connection between your device and secure websites or applications, like MIDAS.

Several incarnations of the Transport Layer Security protocol have been developed over the years, the most recent being 1.3:

ProtocolReleasedCurrent Status
TLS 1.01999Deprecated
TLS 1.12006Deprecated
TLS 1.22008In use since 2008
TLS 1.32018In use since 2018
TLS Protocol History

TLS 1.0 and 1.1 are now considered “legacy protocols” and “weak” by today’s cryptographic standards. That’s because they’re susceptible to several vulnerabilities. Modern web browsers automatically default to preferring more secure TLS 1.2 and 1.3 connections. In fact, they may even display a warning when connecting to a website that only supports the now obsolete TLS 1.0/1.1 protocols.

As security and cryptographic standards have evolved over the years, we have too! We’ve previously dropped support for TLS 1.0 connections to our network in 2017. We then subsequently dropped support for TLS 1.1 connections in 2020.

As part of our ongoing commitment to security, we’re now proposing to also deprecate support for TLS 1.2 connections to our client servers in early 2025. Going forward, we propose to only support TLS 1.3 (the latest Transport Layer Security protocol version) connections.

But wait.. isn’t TLS 1.2 still considered secure?

In the past few years, researchers have discovered cryptographic weakness in some of the ciphers and algorithms that TLS 1.2 uses.

While TLS 1.2 can still be used, it is no longer considered the most secure option. TLS 1.2 is only considered “safe” when weak ciphers and algorithms are removed.

On the other hand, TLS 1.3 supports the latest modern encryption with stronger encryption algorithms and more robust authentication mechanisms. TLS 1.3 is currently the most secure TLS version. At time of writing, TLS 1.3 currently has no known vulnerabilities, and also offers performance improvements over TLS 1.2.

When will TLS 1.2 be deprecated?

At time of writing, there has been no date announced as to when TLS 1.2 will be officially deprecated.

However, one day TLS 1.2 will become obsolete, just as its predecessors TLS 1.1 and TLS 1.0 have become.

TLS 1.3 is currently the most secure TLS version. We’re keen to aid its adoption and to ensure the most secure connections to our network and servers. This is why we’re proposing to stop supporting older TLS 1.2 connections in 2025.

What impact would disabling TLS 1.2 support have?

Most modern browsers and operating systems support TLS 1.3.

Therefore, the vast majority of users will be unaffected by our proposal to switch off support for TLS 1.2 in early 2025. However, if you’re using an older device or operating system, you may need to take action.

Here’s a list of browsers and devices that will be affected when TLS 1.2 connections are blocked:

  • Internet Explorer: All versions of Internet Explorer do not support TLS 1.3. This should not impact any of our users, as our MIDAS software has not been supported in IE since 2019.
  • Edge Legacy: Versions of Edge Legacy prior to April 2018 do not support TLS 1.3. Users would need to update to a newer version of Edge or a different browser.
  • Safari on macOS 10.12 Sierra or earlier: These older macOS versions do not support TLS 1.3 in Safari. Users would need to upgrade their macOS or use a different browser.
  • Very old versions of other browsers: Browsers that haven’t been updated in several years might not support TLS 1.3.
  • Older Android devices: Devices running Android 9 (and earlier versions) do not support TLS 1.3.
  • Older iOS devices: Devices running iOS 12 (and earlier versions) do not support TLS 1.3.

Web browsers and devices that do support TLS 1.3:

  • Microsoft Edge (current versions): Supported since April 2018 (Edge 79+)
  • Google Chrome: Supported since April 2018 (Chrome 70+)
  • Mozilla Firefox: Supported since October 2017 (Firefox 63+)
  • Apple Safari (on macOS 10.13 High Sierra or later): Supported since September 2018 (Safari 14+)
  • Opera: Supported since April 2018 (Opera 57+)
  • Android: Android 10 (or later)
  • iOS: iOS 13 (or later)

Important Information For Hosted API users:

If you’re a cloud-hosted MIDAS customer utilizing the optional MIDAS API you may need to take action before TLS 1.2 connections to our network are disabled in early 2025.

You’ll need to ensure that your applications and the underlying programming language you develop in can support (and are correctly configured for) TLS 1.2 connections.

For instance Java 7 (1.7) (and lower) and .NET 4.7 (and lower) languages don’t support TLS 1.1/1.2.

If your applications/programming languages do not support TLS 1.3 encryption, your MIDAS API calls will begin to fail in early 2025 once we disable TLS 1.2 support across our network.

Please refer to the vendor of your programming language if you’re unsure whether it supports TLS 1.3, or for assistance enabling such support in your development environment.

Remind me again.. when is this all happening?

Currently, we are proposing to drop support for TLS 1.2 connections to our network in early 2025.

We have not fixed a specific date in 2025 for this as yet (as we want to hear from you – see below).

However, anything can change over the course of a year. Should new vulnerabilities be discovered in TLS 1.2 during 2024, this may prompt us to bring our plans to deprecate 1.2 support forward.

We Want To Hear From You!

We are currently only proposing to deprecate TLS 1.2 connections to our network in early 2025.

However, we’re open to feedback from you our users in the meantime.

If you feel you have a particular usage case that would require continued reliance on TLS 1.2 support, please reach out to us to discuss.


How we’re Optimizing Source Code with AI

Optimizing Software Code using AI

Often in the release notes for our MIDAS room scheduling software, you may see the entry “Code Optimization”.

What is “Code Optimization”?

Code optimization is the process of refining our software’s source code to make it execute more efficiently, consume fewer resources, or improve its overall performance. It involves strategically modifying source code whilst at the same time ensuring the new code still produces the correct results.

Key goals of source code optimization:

  • Enhanced speed: Executing tasks more quickly
  • Reduced resource consumption: Using less memory, CPU cycles, or power
  • Improved scalability: Handling larger workloads effectively
  • Maintainability: Making code easier to understand and modify

Some common source code optimization techniques involve:

  • Algorithm optimization: Choosing more efficient algorithms
  • Loop optimization: Reducing loop iterations or overhead
  • Memory optimization: Minimizing memory usage and allocations
  • Input/output optimization: Streamlining data reading and writing
  • Caching: Storing frequently used data for faster access
  • Compiler optimization: Leveraging compiler features for automatic optimization
  • Profiling: Identifying performance bottlenecks to focus optimization efforts

Code Optimization in MIDAS

Over the years we’ve been developing MIDAS, all our code optimization work has been done manually.

This work has involved attempting to simplify and rewrite parts of the source code to be more efficient.

AI Code Optimizing

In our latest release, MIDAS v4.35, for the very first time, a small section of source code has been optimized with the assistance of AI (or Artificial Intelligence).

We performed this AI code optimization as an experiment to see whether AI could potentially be used to aid our development processes in the future.

We chose a small “subroutine” from our software and asked an AI if it could optimize it for us.

A “subroutine” is essentially a small block of code which can be re-used and “called” repeatedly during a program’s execution.

The subroutine within the MIDAS software code that we asked an AI if it could optimize for us was basically a function which converts dates to “epoch” time.

Epoch time is the number of seconds that have elapsed since January 1, 1970 (midnight UTC/GMT).

How did the AI optimized code perform?

Our original subroutine was 15 lines of code long. Using AI to optimize code, reduced this subroutine down to just 9 lines of code.

However, the initial source code that the AI generated for us did not just work “out of the box”. In fact, it didn’t work at all!

But using this AI generated code as a “template”, our team was able to modify the generated code so that it worked and produced the correct results.

Our team then extensively tested the new subroutine to ensure that it consistently produced the same expected output as the original subroutine.

Once we had a working subroutine that we were confident in, the next step was to “benchmark” the new routine against the old one. After all, there would be no point in using the new routine if there were no performance gains to be had, or indeed if the new code performed worse than the original.

To test this, we ran each subroutine 10,000,000 (10 million times), and analyzed the results:

Our Original Subroutine:
30 wallclock secs (30.28 usr + 0.00 sys = 30.28 CPU) @ 330229.18/s (n=10000000)

AI Optimized Subroutine:
27 wallclock secs (27.09 usr + 0.00 sys = 27.09 CPU) @ 369085.41/s (n=10000000)

To explain the above results, over 10 million iterations of each subroutine, the new AI optimized subroutine was more efficient. It ran (executed) quicker, and consumed less processing (CPU) power to achieve the same results as the original subroutine.

On our test server, the optimized subroutine was able to run 369,085 times in the space of one second, compared with 330,229 times in the space of a second for the original subroutine.

Ok, so the original subroutine was pretty quick and efficient to begin with – but with the assistance of AI, we were able to improve its efficiency by almost 12%.

The future of AI code optimization

Firstly, don’t worry, Artificial Intelligence is not about to take over the development of our MIDAS software!

MIDAS has been – and will remain – coded, developed, and maintained by human programmers.

But our experiment – on a very small part of our code – has demonstrated that AI tools may be able to assist our human developers to write ever more efficient source code.

The result of such carefully applied optimizations is that our software can potentially run faster, use resources more efficiently, and provide a better overall user experience.