Benoit         zurück zu Gambas       


2005-02-14 - Benoit Minisini

Gambas

An interview conducted by FOSDEM & the LinuxFR readers

FOSDEM - First and traditional question: please present yourself !

Benoît Minisini - My name is Benoît Minisini. I am a thirty-two years old french man living in the suburbs of Paris. I am unemployed since last week!

Programming is one of my passions since I was twelve, and is now my job for years. This passion started with the Basic language on a CPC Amstrad 464, and later on an Atari 520 STE. Of course, now, I am using many other languages, but I never forgot that I have learned and done a lot with Basic.

I was always fond of writing languages, compilers, assemblers, and interpreters. I wrote a Z80 assembler on Amstrad and an interpreted language that consumed all its memory.

Later, during my studies at the E.P.I.T.A., I wrote a Lisp interpreter under Windows 3.1. During six months, I discovered Windows, its stupid memory model, the Microsoft C compiler, and its numerous bugs.

Today, I keep on raging with the Gambas language, contributing with my own experience to the free software world.

But I have other passions too, that burn a lot of time. There is music - I'm playing flute for a long time - and theatre now... I started to study acting at the "Cours Simon" in Paris since September 2002, and it takes me more than 16 hours a week.

I hope I will be able to continue all these activities in the future!

FOSDEM - How did you start working on Gambas ?

Benoît Minisini - I started working on Gambas by taking a pen and a paper and by throwing ideas on it :-)

FOSDEM - There are many scripting languages available today, why create a new one for Gambas instead of reusing an existing one?

Benoît Minisini - For the same reasons a music composer writes its own symphony, whereas others already did the same things, but differently.

First, writing its own language is very funny, very exciting.

Second, I wanted to have something visual, easy, basic, and something that is BASIC, mainly for my own needs.

Last, Gambas is not just a scripting language. I want to make it a complete development environment like Java or .NET.

FOSDEM - Will there be a version of gambas that will enable developer to create application for personal digital assistant (p.d.a.) ?

Benoît Minisini - Gambas mainly depends on Posix and QT (or GTK in the future). So if you have Linux on a PDA, and a port of the GUI component, you will be able to run Gambas application without problems.

FOSDEM - How would you compare gambas and other programming environments like eclipse or kdevelop. Is Gambas an easier or faster IDE ?

Benoît Minisini - One can say that Eclipse is mainly dedicated to Java, and KDevelop to C/C++/KDE. But you can use them to develop applications for other languages and environments.

On the contrary, Gambas IDE is tied to Gambas, and allows you to develop Gambas applications only, even if you can use Gambas utilities like the compiler directly - they are command-line tools.

FOSDEM - Is Gambas BASIC easier to learn than C or Java or Perl pr Ruby or ...

Benoît Minisini - Yes. It is one of its main goals.

Even if the language is a BASIC, it is object-oriented, and its syntax tries to be as coherent and logical as possible.

Moreover, I am very careful with the interfaces of the components (i.e. the name of the methods, parameters, properties and events), so that the user has less things to learn for using them.

FOSDEM - Are there already some projects built with Gambas ? What is your favorite example ?

Benoît Minisini - My favorites ones are of course the Gambas development environment and the database manager :-)

Here are some examples some users told me:

A desktop environment, some sort of "Gambas Linux Workstation". The version 0.2 has the following features: shortcuts (windows-like), mime support, background picture generator, "message of the day", autostart tool, simple image viewer, simple filesystem browser (with support of custom-folder icons and shortcut icons) and other supporting utils...

A GUI for printing DVD covers. See http://developer.berlios.de/projects/dcover/

A communication system for a government department. The application provides the user interface for a system that is running 24 hours a day, 7 days a week. The app is responsible for showing a continuously updated audit logging window, setting up comms parameters, starting and stopping the background comms programs (which are written in C), and allowing the users to view individual messages, message queues, log files and for general access to the system, e.g. backups/restores, config changes, file loads etc.

A project for a private language school to recode two programs which are running under VB. One of them is a database for the students which includes financial features and its own printing system. Making layout of the printing forms for it easier is the task of the second program, a form editor with WYSIWYG preview. The database has 12000+ codelines in VB, the form editor is much smaller. And I started with the form editor because without it, all printing in the database won't be possible.

An image processing application for interlacing lenticular graphics using Gambas.The project (LILi) is hosted on Sourceforge and is currently at version 0.34. Most image processing is handled by ImageMagick functions, called from LILi, while Gambas provides an easy to use GUI and all the program logic. It's already very functional and can handle any type of lenticular lens panel for vertical or horizontal interlacing. It can output images for 3D effects or animations. LILi features single image and bulk loading, inline editing (still to be completed), animated previewing, very fine pitch adjustment, job logging, error logging (still to be completed), single or batch mode processing, output in various image formats and will also support output straight to print.

...and so on.

FOSDEM - What do you expect from your FOSDEM talk ?

Benoît Minisini - I want to clear up many misunderstanding about Gambas, and I want to talk about the features I want to implement (like storing object automagically, designing reports and web development) that will make Gambas more original than it is at the moment.

And I want to get autographs