Milestones

At last, I've just added the 600th composer to my music collection. The composer in question is Cipriano Potter, whose grim visage you see at the left. Despite his first name, he was born and bred in London, UK (in 1791, in fact, dying some 80 years later, in 1871). His music is not especially well-known, though he was on first name terms with Beethoven (who thought him 'a good fellow') and Wagner called him an 'amiable contrapuntist'. His obscurity owes much to his decision to stop composing completely around his 45th year so that he could concentrate on his administration duties at the Royal Academy of Music, of which he was then principal. He was thus influential on English music, without necessarily having composed a lot of it (though he still managed to write nine symphonies, three piano concertos and a bazillion solo piano pieces).

I mention the new addition only because I remember being ticked off by a good friend of mine in Sydney, back in around 2005, that the fact that my music collection consisted mostly of Britten and Handel was "a bit sad". A pursuit of musical diversity on my part thus ensued, and I think my friend would be pleased today with the sexta-centennial results of his gentle nagging!

Another milestone was also reached this week:

That's an early alpha version of Giocoso 3 running on my Raspberry Pi 4 (i.e., on Raspberry Pi OS, but with KDE Plasma installed as the desktop), which is my production music PC. In other words, though it's only in alpha state, it's actually being 'dog-fooded', which should hopefully shake out bugs and annoyances before I get closer to being prepared to release it to the world at large! Today is, in fact, the first full day of its use as my primary music machine (though I haven't quite dared to re-purpose the previous machine: that can wait a day or two, I think, just in case 🙂 ). In the spirit of shaking out bugs, I have already noticed that Beethoven got played twice within an hour this morning (16th August 2023), which shouldn't happen given that I'm using a 48 hour "time bar". In other words, if I play Mozart on 1st September, he shouldn't get randomly-selected for play again until the 3rd September: 48 hours must elapse between plays by the same composer. So it would seem I've mucked up the time bar code in the transition to Version 3... which is why dogfooding this for the next couple of weeks at a minimum is going to be important!

Some development decisions I've already made might be worth mentioning now, though:

  • The menu interface is front-and-centre. About 50 run-time parameters have been abolished. You control the program through its interface, not a bunch of obscure API-like calls from the command-line
  • Support for "scrobbling" to Last.fm has been removed. I no longer think Last.fm is a worthwhile store of playing data for classical music listeners (and gave it up myself nearly a year ago) and Giocoso's own database is a better store of data about what's in your collection and what you've played from your collection anyway.
  • The program now uses 'dialog' to produce a quasi-graphical tool for performing administrative tasks (such as scanning for music and importing plays from another database). The program look-and-feel is thus less 'home brew'.
  • General simplification of non-essential options. For example, Giocoso version 2 had three, user-selectable ways to colour the caption bar displayed underneath the album art associated with music currently playing. Giocoso version 3 has abolished two of them, leaving you with no choice at all!

Anyway: when we get near a working beta, I'll let you know. If you have any feature requests in the meantime, be sure to drop me a line.