Yaflight – a Gambas3 success case

It was four months ago when the first source tarball was released. It started just as a game, a way to play around with a powerful toy: Gambas 3. Now yaflight it’s a nice piece of software πŸ™‚Β  UPDATE: yaflight was totally rewritten using C++ and the Qt framework to make it multi-platform. The previous series is now known as fglc

YaFlight + Oxygene theme
YaFlight 0.99.18 running on Mageia 2 with KDE and the Oxygen theme
First official release of yaflight
First official release of yaflight

I always thought – as many other people – that BASIC-like languages were underestimated due to their steep learning curve: yeah, many people think that if something it’s too easy then it’s somehow low quality πŸ™
If you are part of this group of people, feel free to take a look here: as you will see along with simple applications there are a lot of great software applications about domotic, business processing, erp, warehouse management, networking, database mapping and modelling and so on.

I began using Gambas 2 for simple tasks – mainly home tasks – years ago, cause it recalled me the high school times spent using visual basic 6 and kylix (many thanks to Professor Salzano) and then my first job as software developer when I used to work with vb.net stuff.

Then the time of FlightGear comes: after my “battesimo dell’aria” (first flight) aboard a Eurocopter AS355 piloted by Simone De Tomi (Requiescat in pace) I started using FlightGear on my boxes powered by GNU/Linux. It was the time of the 1.9 version and I was using FGRun to launch the simulation: it was immediatly clear to me that FGRun wasn’t fitting my needs: I was a n00b at that times (the guided procedure helped me a lot, however that gui was to heavy for my box). There were alternatives to fgrun but each of them wasn’t the one I was looking for so I started learning how the fgfs executable was called by those interfaces and I learned the meanings of all of these parameters (thank to man fgfs).

Acquired the necessary know-how I began wondering if a custom solution would been a good idea and if development would been possibile in my spare free time: Gambas2 came to my mind immediately! Honestly Gambas3 came to my mind cause I was thinking to develop using a modern environment rather than using a product that would be discontinued after the official release of the new one.

A pencil, some paper and few lines of code convinced me that it was affordable so yaflight 0.1.0 was born (really many months passed after my decision and the first real implementation was delayed due to various personal events).

My choice fell on Gambas3 not only for a legacy of teenage: Gambas3 allow the beginner as much as the veteran, to develop his applications without headaches, beeing able to concentrate and focus on the aim of their program. Moreover Gambas3 IDE/RAD integrates a system to produce packages for many GNU/Linux distributions, easing the application deployment.

Gambas3 running on Mageia 1
Gambas3 running on Mageia 1

So, I started the yaflight development with some fixed reference in my mind:

  • low resources consumptions
  • ease of use
  • ability to setup advanced features if needed
  • ease of expandability (no plugins right now, just a clean implementation using modules, classes and forms providing a clean api)

These points are not yet fully respected but I’m working in this direction and gambas3 helps me providing a wide set of useful components ready to use to build a feature rich application.

YaFlight don’t tries to replace FGRun or other launchers that are surely more advanced and more refined, but it insistently tries to do things in a different way: a better way, maybe πŸ˜›

Interest for YaFlight increases slowly – but increases – and I’m quite happy for this reason πŸ™‚

I’ll try to maintain and improve yaflight for the years to come as long as my job, my studies and my life will allow me to do it. Any contributions will be of help (translations, code and donations last but not least).

YaFlight, FlightGear and Gambas3 are Free Softwareβ€œgive them all a chance!”