2023-

This year started with having refactoring of the way masses are computed in massXpert (with code also modified both in libmass and libmassgui). Indeed, I elected to shift away from the old Atom/AtomCount-based chemical entity accounting in massXpert. My aim was to actually go "isotopic" as the basis of all the mass computations. I thus decided to base the chemical foundations in massXpert on isotopic data as collected out of the IsoSpec++ library header file tables. This switch imposed a huge rework of anything mass, ponderable, formula in the software. This huge code change prompted me to change the name of software from massXpert to massXpert2.

2022-

This year has seen the port to Qt6 of both massXpert and mineXpert2. Also, since I plan to make massXpert and mineXpert share runtime data (this is going to be setup later using RPC or IPC or whatever protocol), I decided to modularize these two pieces of software. The idea is to put into two private static libraries (libmass and libmassgui) all the code that is shared between the two programs. The structure of the massXpert and mineXpert2 projects is thus to have these two libraries in the source tree as git submodules. The libraries are published as such in the GitLab repository. This way, massXpert and mineXpert2 share the exact same libmass and libmassgui code.

2016-

After a long period of successful use/maintenance of the code (in particular there has been the port to Qt5), the start of a number of mobility ion mass spectrometry projects in my lab has triggered the need for some new features in massXpert. I first started by writing the initial code of a totally independent new software (mobXpert), a software that was aimed at inspecting/mining mobility mass spectrometry data. But I soon realized that I was duplicating code from the massXpert project. I thus decided to refactor the whole massXpert software code tree so as to make code reuse a general rule.

In starting mobXpert, I also needed to find a proper mass data visualizing library that would be powerful enough to display large amounts of data without showing slowness. I explore the features of the QCustomPlot plotting library by Emanuel Eichhammer [http://qcustomplot.com/index.php/introduction]. I was satisfied with that plotting library and finally decided that I would design a mass spectrum viewer to match the features that are generally available in the various software offerings that come along with instruments. Into that mass spectrum viewer I would put the features required to actually mine drift data obtained from ion mobility mass spectrometry experiment. The fact that the software became more widely usable (not only for mobility mass data) and that the mining idea took the advantage over the simple spectrum viewer idea made me switch the program name from mobXpert to mineXpert.

Finally, I decided that massXpert and mineXpert would be bundled into a single software package called msXpertSuite.

2006-2015

Continuous code maintenance/improvements were done on the code during all these years. In 2015, the massXpert program was considered feature-full and stable. In fact, in 2009, the features that were coded in the software were considered mature and original enough to warrant an article:

Rusconi, F. massXpert 2: a cross-platform software environment for polymer chemistry modelling and simulation/analysis of mass spectrometric data. Bioinformatics 2009, 117e56:2741-2742, doi:10.1093/bioinformatics/btp504 [1].

2001-2006

I decided during fall 1999 that I would stop using Microsoft products for my development. At the beginning of 2000 I started as a CNRS research staff in a new laboratory and decided to start fresh: I switched to GNU/Linux (I never looked back). After some months of learning, I felt mature to start a new development project that would eventually become an official GNU package: GNU polyxmass.

The GNU polyxmass software, much more powerful than massXpert was, was published:

Rusconi, F., GNU polyxmass: a software framework for mass spectrometric simulations of linear(bio-)polymeric analytes. BMC Bioinformatics 2006, 7:226; published 27 April 2006 [3].

Following that publication I got a lot of feedback(very positive, in a way) along the lines: "Hey, your software looks very interesting; it's only a pity we cannot use it because it runs on GNU/Linux, and we only use MS-Windows and MacOSX!".

I decided to make a full rewrite of GNU polyxmass and the software that you are running now is the product of that rewrite. I decided to "recycle" the massXpert name because this soft is written in C++, as was its ancestor. Also, because the first MS-Windows-based massXpert project is not developed anymore, taking that name was kind of a "revival" which I enjoyed. However, the toolkit I used this time is not the Microsoft Foundation Classes(first massXpert version) but the Trolltech Qt framework(this software, see the "About Qt" help menu).

Coding with Qt has one big advantage: it allows the developer to code once and to compile on the three main platforms available today: GNU/Linux, MacOSX, MS-Windows. Another advantage is that Qt is wonderful software(Free Software).

1998-2000

The name massXpert comes from a project I started while I was a post-doctoral fellow of the Ecole Polytechnique at the Institut Européen de Chimie et Biologie, Pessac (Bordeaux), France.

The massXpert program was published:

Rusconi, F. and Belghazi, M. Desktop prediction/analysis of mass spectrometric data in proteomic projects by using massXpert. Bioinformatics 2002 18(4):644-5) [2].

At that time, MS-Windows was at the Windows NT 4.0 version and the next big release was going to be "you'll see what you'll see" : MS-Windows 2000.

When I tried massXpert on that new version(one colleague had it with a new machine), I discovered that my software would not run normally(the editor was broken). The Microsofties would advise to "buy a new version of the compiler environment and rebuild". I did not want to continue paying only for using something I had produced. I put myself in quest of Free Software [http://www.gnu.org/] (that I had heard and read about during years, without ever daring trying it).


Enjoy msXpertSuite !


Filippo Rusconi,

author of msXpertSuite

 

[1] http://bioinformatics.oxfordjournals.org/cgi/reprint/25/20/2741?maxtoshow=&hits=10&RESULTFORMAT=&fulltext=massxpert&searchid=1&FIRSTINDEX=0&resourcetype=HWCIT

[2] http://bioinformatics.oxfordjournals.org/cgi/reprint/18/4/644?maxtoshow=&hits=10&RESULTFORMAT=&fulltext=massxpert&searchid=1&FIRSTINDEX=0&resourcetype=HWCIT

[3] https://www.biomedcentral.com/track/pdf/10.1186/1471-2105-7-226?site=bmcbioinformatics.biomedcentral.com