TUNING HMG: THE SAMPLES HELL :)

Once upon a time… HMG samples were all together in an unique folder called SAMPLES.

Each sample had its own sub-folder. The name of each sub-folder was related to the main concept that the sample is aimed to show.

Simple… extremely simple…

One fine day, was decided that the samples should be grouped on categories… not a bad ideaIS A VERY GOOD IDEA INDEED, the problem is that, it was WRONGLY EXECUTED.

I’ll explain some few of the errors here (it is important to note that, this is not a subjective matter, this is about facts):

  • \SAMPLES\HFCL\SQL\RDD_SQL:
    RDD_SQL example was adapted by me, from a Harbour contribution. It is not related with HFCL.
  • \SAMPLES\HFCL\SQL:
    There is, in this folder, a file called HMGSQLite.zip, that appears to have the HMGSQLite example that already is on its own folder at the same location.
  • \SAMPLES\HFCL\MYSQL:
    At this folder, there is three MySql samples called MYSQL_1,MYSQL,2 and MYSQL_3 that (as the others mentioned) are not related with HFCL. They were created years prior to HFCL.
  • \SAMPLES\HFCL\POSTGRESQL_1:
    Again… not related with HFCL.
  • \SAMPLES\FUNCTIONS\SYSTEM_OBJECT’:
    sample is located there… but, there is no reason for that, since it is about system object, not HMG functions
  • \SAMPLES\CONTROLS\CURSOR:
    ‘Cursor’ IS NOT A CONTROL (but a Window property). It is that little thing on the screen that moves when you move the mouse 🙂
  • \SAMPLES\CONTROLS\DLL:
    CallDll’ is a function NOT A CONTROL!
  • \SAMPLES\CONTROLS\GRAPH:
    These samples are about GRAPH commands/functions. These are NOT CONTROLS!
  • \SAMPLES\CONTROLS\OLE:
    NOT A CONTROL!!! (This is handled via the CreateObject() function)
  • \SAMPLES\CONTROLS\PRINT:
    NO NO NO!!!!  Print system is based on commands!!!! (I’m calm… don’t worry 🙂 )
  • ‘VIRTUALDIM’, ‘THIS’ and ‘RESOURCE’
    samples are wrongly categorized too.

I’m really tired to continue 🙂

THE SOLUTION

  1. If you already knows how HMG works and the differences between Controls, Commands and Functions, you can simply ignore the current categorization.
  1. If you are new to HMG and are trying to learn about it, please IGNORE THE CURRENT CATEGORIZATION and move each sample sub-folder to the main SAMPLES one. Moreover, as you learn, you can create your own categories and put the samples belonging to each one in its correct place.

IMPORTANT NOTE (Déjà vu):

Many of you should be thinking: “Not a big problem… I’m able to find any sample as they are organized now…“.

Please, consider that I’m thinking (specially) on new users arriving to HMG and the difficulties that could frustrate them.  New users should have the best experience possible.

ANOTHER NOTE:

Some of the problems described here, were already posted to HMG developers and they will be fixed in the next versions (at the time of this writing version is 3.4.3).

THE END:

If you want to discuss about this (even to disagree with me🙂 ) you ca do it here (you need a SourceForge account to be able to post).

Advertisements
This entry was posted in Uncategorized. Bookmark the permalink.