Archive for May, 2007

Flamebird. Rising from ashes (again)

May 2, 2007

Flamebird is one of the longer programming projects in which I’ve taken part. It is a powerfull integrated development environment for the Fenix language. It’s open source and it’s developed in the ~#@@#| (but “easy”) Visual Basic.

The history of Flamebird starts between year 2003 and 2004. JaViS, a well-known member of the Fenix Spanish comunity started a project called “Firebird 2” encouraged by the popularity of its previous IDE and the willing of making a more stable IDE (Firebird 1 had some bugs which made it quite unstable). One day, JaViS offered me the possibility to cooperate in its development and I accepted with pleasure :). The project moved it’s name to Flamebird due to some name conflict with another opensource project.

The first official release of Flamebird was made public in December of 2004. The Flamebird 0.11 beta (sometimes known as Flamebird 2.11 beta, but since there is no Flamebird 1, this makes no sense) came up with powerfull editing tools and, from my pont of view, more intuitive and modern interface that other Fenix IDEs. However, it had some bugs, things to pulish up and also some lacks, which made Flamebird an IDE on the good path but not still good enough.

After the first release, development was soon freezed. As usual, lack of time was the main reason. Although there were four the members of the “Flamebird Team” at that moment, actually JaViS and I carried the most important part, and we found impossible to continue developing Flamebird for a long time.

During that period, we decided to abandon the project, but this wasn’t officially anounced ever cause I wanted to prepare Flamebird for a final release. But I actually didn’t do it, so time gone by.

One day (May 2006), reading the Spanish Fenix forum I found this post with news from JaViS: he was making some changes to the IDE. I couldn’t resist the temptation and I decided to retake the project again. So development continued for about two months, but after that, the project was again freezed.

However, this time I had no plans to abandon the project. After my period of exams, I re-retake the project and continue adding features and fixing some bugs, this time on my own. I had to restructure a big part of the code so as it wasn’t so difficult to add new features. Since that, development has continued, quite slowly, but continued anyway. At the begining of this year, some people offered its help: Imanol (Eledthamion) joined the project and he has already contributed by adding some interesting features, others (Quiest and Coptroner) are contributing by betatesting FB (this is indeed for me a great help) and some others (GINO) contributed by handing some code on to us.

So, what is the current state? Lot of work has been done. New features have been and are being added: an fpg editor, and improved palette editor, code autoindentation, possibility to configure editor, a full screen mode or a song module player, to mention some. Nevertheless, as I see it, most important changes are those related to interface improvements. Now you will not get stuck with the environment: behaviour is just the expected behaviour. This is for me a very difficult-to-explain idea, but you’ll notice when using it. New versions will be called Flamebird MX.

For the moment there is not a release date, cause I’m working on FB from time to time and there are some things that need to be finished:

  • Some things related to the MAP and FPG editor
  • The control point editor
  • The Program Inspector is being rewritten, and this is going to take some time
  • Incorporate new Fenix sintax

I promise to post some screenshots. I had some prepared but they have become outdated. This is a good thing though :).

And for the future of FBMX, as the current project lead, I only plan two more releases. The first one containing all the already described features and the last one (final release) with bug fixes, a better integrated help system, and some secondary features.

I do not plan to add support for FGC, FBM, FPL or FNT files in Flamebird. This would require too many time and I have actually other projects which will cover this. The reason is that I’m actually a bit tired, not enough to abandon the project, but enough to have defined the goals of Flamebird MX to a reasonable reacheable ones. Anyway, I’m pretty sure that the new version, when it comes up, will satisfy a wide public of Fenix developers :).