These tools help system administrators keep their MIDAS systems running efficiently.
The “Cleanup” tools allow for the quick removal of obsolete data within a MIDAS booking system.
Separate tools are provided for removing outdated bookings, invoices, clients, and users respectively.
There’s also an “Optimize Database” tool which runs a series of commands on the underlaying MySQL / MariaDB database to help it run more efficiently.
For v4.36, we’ve added a new “One-Stop Cleanup” tool to the list of cleanup tools. This new tool provides a fast way to collectively run several other cleanup tools.
The actions the new One-Stop Cleanup tool performs are:
Performing a “One-Stop Cleanup” will, in a single action:
Remove bookings that occurred more 5 years ago.
Remove invoices that were paid more than 5 years ago.
Remove clients with no bookings in the past 2 years.
Remove users who have not logged in for more than 1 year.
Optimize the database.
Whilst there are no limits imposed in our software for how long data should persist, without using the Database Cleanup tools, data will persist indefinitely.
An organization may have a requirement for client and invoice data to be kept for a specific period of time, but it’s unlikely that most organizations will need to keep such information indefinitely.
This is where the cleanup tools in MIDAS become useful.
Performing routine cleanups of very old and obsolete data in your MIDAS help keep your system running efficiently.
Filed Under: Development by midas — Comments Off on Get Notified On Invoice Payments
April 22, 2024
The powerful “Watch Notification” features of MIDAS allow users to configure automatic notifications whenever certain activity occurs within their MIDAS.
Examples uses of Watch Notifications include:
Staff members could be notified whenever they’re added to a booking
Catering staff could receive notifications whenever refreshments are added to bookings
A purchasing department could receive notifications when consumables are running low and need re-ordering
A user could be notified should an unavailable venue/time slot becomes available again
For MIDAS v4.36 we’ve added an additional Watch notification option. This provides the ability for a user to be notified whenever a payment is made against a MIDAS generated invoice.
Now, MIDAS can automatically update invoices in its system when payments are made against them, however this new notification option allows a user to be notified whenever such updates occur.
The “Invoice Payment” Watch notification option is available to users who have been granted invoicing permissions within their MIDAS system.
When enabled, a new Watch Notification is generated for the user whenever an invoice has been paid in full, or when a partial payment is received against an invoice.
Administrators can select one of these themes to change the appearance of their MIDAS system. Additionally, administrators may optionally allow users to select their preferred theme upon login.
One of the included themes is the imaginatively titled “Default” theme. Unsurprisingly, it’s the visual theme that each MIDAS system uses initially by default.
As the “Default” theme is exactly that, many system administrators simply leave their MIDAS software set to use this theme.
In fact, from a random sample of our cloud-hosted customers, 72% of MIDAS systems are currently set to use the “Default” theme.
It’s black and white!
Interestingly though, the next most popular theme in our random sample of customer’s MIDAS systems is the “HiContrast” theme. Nearly 13% of our customers currently have this set as their default theme.
Now the primary goal when we designed the “HiContrast” theme was accessibility. In other words, we wanted to better cater to users who may have visual impairments.
The “HiContrast” theme is less colorful than our other themes. It primarily utilizes a simple “black on white” concept throughout, ensuring maximum contrast on screen.
Whilst a surprising number of our customers choose this theme, we don’t believe the vast majority opt for this particular theme primarily because of accessibility needs.
It’s all too Blue-tiful(!)
Rather, we believe that many who opt for the “HiContrast” theme do so because they feel that the “Default” theme is a bit “too blue” for their liking.
We get it! That’s one of the reasons why over the years, we’ve introduced additional visual themes where blue isn’t the main color.
But going forward, we wanted to see if we develop a new default theme that was “less blue” than the existing default theme, while also at the same time being less “bland” than the basic black and white “HiContrast” theme.
Introducing the new default theme…
The most significant UI update for MIDAS v4.36 comes with a brand new “Default” visual theme:
If you prefer the previous default theme, don’t worry – it’s still available, but is now called “MIDAS (Blue)”.
We’ve also made a number of other improvements to the user interface, as well as minor tweaks to other included themes. Some text and headings are now larger than before, dialogs are clearer, there’s increased spacing between certain elements, and some interactive buttons are now larger and more prominent.
You can try the brand new “Default” theme, or any other included theme, right now by heading over to our online demo.
Filed Under: Development, Tech Insight by midas — Comments Off on Optimizing Source Code with AI
January 10, 2024
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
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 do?
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:
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%.
Where do we go from here?
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.