November 4th, 2011
I joined the Jalmus project in September 2011, after spending a lot of time trying to improve it.
When I first started looking at it, I found out that almost the whole source code was written in french, which
made me think "Hey, this is not really open source !". So I started to translate it in english, to allow
other people to contribute to a project that claims to be "open".
I gave my contribution and I was happy to do it.
After a while though, I stumbled into divergences with the Jalmus author.
My point of view, as a developer, is to write functionalities suitable for everyone, and for any
scenario of the program. Probably not the same view of the author.
In the end I've been "warmly" invited to leave the project and do my own "fork" of Jalmus, moreover, saying "thank you" for this.
Actually....that is exactly what I did !
For 20 days I started working from scratch on ScoreDate. I wrote the code from a blank page,
and now it has almost nothing to do with Jalmus. (I only kept some parts for you guys to recognize the functions !)
ScoreDate is really open source, it's completely written in english and, when I could, I commented the code to explain what it does.
In the end, 3 months ago I knew nothing about Java. Now I do and this time I really have
to say "thank you" to Jalmus for that !
Following a list that highlights ScoreDate features compared to Jalmus.
ScoreDate | Jalmus | |
---|---|---|
Look & Feel | Uses latest Java technology to render a colorful and easy-to-use interface | Uses the old Java "metal" theme |
Latency | Latency is not needed anymore ! It is present in the MIDI setting menu in case a very slow computer needs it | Jalmus needs this option to compensate the bad software design. It consumes a lot of CPU and renders the whole score+notes+answers every 10ms, which causes a delay between a note keypress and the answer rendering |
Game preferences | Saves almost all game preferences so when the program is opened is ready to be used | Users have to set game preferences every time |
Localization | Autodetects system language. If supported auto set it, otherwise the user can manually select language | User has to set language manually |
Clefs number | Supports up to 4 clefs. 2 at the same time on any game | 2 Clefs maximum. Double clef supported only in inline game |
Clefs types | Supports Alto and Tenor clefs | No support for such clefs |
Notes range | User can set a range for each clef. Up to 3 rows above or below the score | Limited ranges of notes. Can't exercise on notes out of the staff on score game |
Game speed | Can select any speed from 40 to 200 BPM | Timing is pre-fixed. Can't exercise on precise times |
Chords | Random chords are generated accordingly to clef ranges and accidentals. User can select on which tonality to train | Chords are generated randomly indipendant from the tonality. This results in a difficult exercise that might not be accessed by beginners musicians |
Game score | Gives you a score when playing a game. This can be funny and can encourage the users to improve themselves | There is no score |
Game precision | Shows the precision when playing a game. This can encourage the users to improve themselves | There is no precision |