I started building a chess problem database in the 1990s. At that time it was only meant to be for my use and so I made design decisions based on what I wanted. I decided to include #3, #4, #5 and S#3, which are all genres I enjoy, and I decided not to include twins because of the restraints imposed by Chessbase, the first software I used. In those days Chessbase didn't even have the best database design for its stated purpose of recording chess games and related data, but for chess problems it was an even worse fit. However, nothing else was available and I had no time then to design and write something myself.
At some stage I realised that I could use the database to keep track of problems used in solving tourneys to stop me re-using them by accident. The first effect of this realisation was that I just had to include #2s in the database, and this, somewhat late in the day, is what I did. The second effect was that I had to start recording where and when problems were quoted. This latter decision forced me to think beyond Chessbase and I decided that I might just as well implement everything in the then Borland database package Paradox, which I was already using for other purposes. This was the first of two migrations my Meson database was to undergo.
A few years later, I wished to make some enhancements that Paradox made difficult. In the meantime, during the final seven years of my working life, my employer had taught me how to use Java, a modern, object-oriented programming language that I got to like very quickly, especially when I realised that I could acquire it for free and use it at home! Another piece of free software that I got to know at that time was MySQL, a relational database system that was quite a way ahead of the version of Paradox I had. MySQL was programmable using many different languages, including Java and Perl, another free language that I had found a use for. Given that a later version of Paradox was going to cost me well over £100 and that the other software approach would be free (though subject to more work), I didn't really have a decision to make, especially as I would enjoy the migration work. So, Meson migrated again, and this time the target was MySQL with front-end programming being provided by a mixture of Java and Perl. This is where Meson is today and I am not planning a further migration.
Due to the size restraints on databases imposed by my web-host I decided recently to include only directmates in 2, 3, 4, and 5 moves. Accordingly, all problems with other stipulations have now been deleted from MESON.
Developed and maintained by Brian Stephenson.