Problem: Nobody uses xBase because "there are no success stories."

936 views
Skip to first unread message

alex;

unread,
Jul 13, 2025, 3:47:39 AMJul 13
to Harbour Users
We can make xBase most popular again!

alex;

unread,
Jul 13, 2025, 3:51:24 AMJul 13
to Harbour Users
I think it's necessary to ask the right questions and create a new language development plan.

воскресенье, 13 июля 2025 г. в 10:47:39 UTC+3, alex;:

alex;

unread,
Jul 13, 2025, 3:52:50 AMJul 13
to Harbour Users
JSON, Web, Integration with new  technologies?

воскресенье, 13 июля 2025 г. в 10:51:24 UTC+3, alex;:

alex;

unread,
Jul 13, 2025, 4:03:08 AMJul 13
to Harbour Users
Create a Harbour package registry (like npm/pip)

воскресенье, 13 июля 2025 г. в 10:52:50 UTC+3, alex;:

Francesco Perillo

unread,
Jul 13, 2025, 7:37:25 AMJul 13
to harbou...@googlegroups.com
Hi Alex, this is a mailing list and not twitter....  :-)

Anyway as I recenlty and privately wrote to a friend, Harbour has very few programmers, and we are divided in "silos".  Think about Minigui, HMG3, Minigui Extended, OOHG, but also hwgui, hbQt (actually there are at least other 2 library interfaces to Qt)... 6 different gui libraries and everyone using one of them will never switch to the other.
We can use DBF, but also SQL.... in different forms, ODBC, directly using client libraries, via ORMs.
There are at least 3 different libraries to create XLS files (5 if you consider that one is a fork of a previous lib and that I then forked that)...

How many different combinations can we have ?

And since Harbour is used to create LoB applications, Line of Business, the applications that create money for the companies using it, and almost everytime are strictly tailored to the company, I suppose NOBODY will ever spend time, money, missing income to rewrite time-proven working code to adopt a new GUI library that may introduce errors or different UI experience.




--
You received this message because you are subscribed to the Google Groups "Harbour Users" group.
Unsubscribe: harbour-user...@googlegroups.com
Web: https://groups.google.com/group/harbour-users
---
You received this message because you are subscribed to the Google Groups "Harbour Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to harbour-user...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/harbour-users/aaf07572-6c60-4d7d-b5d9-379312b4ebe4n%40googlegroups.com.

alex;

unread,
Jul 13, 2025, 11:30:38 AMJul 13
to Harbour Users
Hello Francesco. You're right. I'm just overwhelmed with emotions after I found out that Python code can be called from Excel.

This is the way of samurai like Antonio. WBR, alex;
воскресенье, 13 июля 2025 г. в 14:37:25 UTC+3, Francesco Perillo:

Aleksander Czajczyński

unread,
Jul 13, 2025, 12:18:22 PMJul 13
to Harbour Users
Hello Alex!
It's funny that actually today i've started some Git-based repo tracker. I need that to bonus my experimental lib to use git submodules. So that a brave user could see a minimal "package manager" based on git, and update/test specific submodule revision on wish. Or to do some more automatic testing.
Also Excel vibes, you can create a COM/OLE server in Harbour, I guess it's not far from calling code.
The main problem is, everyone potentially has their own set of ideas, of what should be implemented in Harbour, but like Francesco pointed out, time is a value barely anybody wants to spend.
If there are more "dreamers" around with a spark of doing something, we can roll a Harbour-dreams oriented Discord channel or IRC channel may be more adequate for birthdate of average ;-)
Best regards, Aleksander
notpkg.jpg
Message has been deleted

hmpaquito

unread,
Jul 13, 2025, 3:54:44 PMJul 13
to Harbour Users
Hi  Aleksander Czajczyński

Sorry, but which gui do you use ?

Thks

Ash

unread,
Jul 13, 2025, 5:23:34 PMJul 13
to Harbour Users
Hello  Francesco,

While Harbour evolved into a multi-OS compiler, it never acquired an official GUI library. Although various open-source GUI libraries appeared, the absence of a native Windows library specifically designed to ease the migration from Clipper was a significant gap.

Harbour attracts many seeking Clipper's strength for business applications, but replicating that robustness in Harbour is often a long and difficult road.

Regards,
Ashfaq Sial

Aleksander Czajczyński

unread,
Jul 14, 2025, 2:36:22 AMJul 14
to Harbour Users
Hello!

niedziela, 13 lipca 2025 o 21:54:44 UTC+2 hmpaquito napisał(a):

Sorry, but which gui do you use ?


In essence, very much different to other popular GUI's, but whatever you do on top of it, may be as declarative as you wish.


Best regards, Aleksander

Francesco Perillo

unread,
Jul 14, 2025, 2:59:21 AMJul 14
to harbou...@googlegroups.com
Anyway as I recenlty and privately wrote to a friend, Harbour has very few programmers, and we are divided in "silos".  Think about Minigui, HMG3, Minigui Extended, OOHG, but also hwgui, hbQt (actually there are at least other 2 library interfaces to Qt)... 6 different gui libraries and everyone using one of them will never switch to the other.

Add IMGUI... 7....

And add at least a couple of projects to use html ...

And at least another project to use WASM...

We don't even have a central repository for listing projects and repositories... :-)

--
You received this message because you are subscribed to the Google Groups "Harbour Users" group.
Unsubscribe: harbour-user...@googlegroups.com
Web: https://groups.google.com/group/harbour-users
---
You received this message because you are subscribed to the Google Groups "Harbour Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to harbour-user...@googlegroups.com.

Aleksander Czajczyński

unread,
Jul 14, 2025, 3:09:15 AMJul 14
to Harbour Users
niedziela, 13 lipca 2025 o 23:23:34 UTC+2 Ash napisał(a):

While Harbour evolved into a multi-OS compiler, it never acquired an official GUI library. Although various open-source GUI libraries appeared, the absence of a native Windows library specifically designed to ease the migration from Clipper was a significant gap.

How to do as much as possible with down to the point program code and very little external dependecies? Otherwise what's wrong with hbQT?
I'd say it got everything you could wish.

It is once again what Francesco pointed out, who has time to explore another solution?
NAppGUI also seems like a nice pair with Harbour because of emphasis on ANSI C.

Best regards, Aleksander

Aleksander Czajczyński

unread,
Jul 14, 2025, 3:13:57 AMJul 14
to Harbour Users
poniedziałek, 14 lipca 2025 o 08:59:21 UTC+2 Francesco Perillo napisał(a):

Add IMGUI... 7....

And add at least a couple of projects to use html ...

And at least another project to use WASM...

We don't even have a central repository for listing projects and repositories... :-)

That should change, but IMHO the approach should be to extend Continuous Integration based on such "listing". SQLRDD is first candidate, but not an easy one, considering right from the start you have to track C SQL client drivers.

Best regards, Aleksander

Francesco Perillo

unread,
Jul 14, 2025, 3:32:07 AMJul 14
to harbou...@googlegroups.com
Hi Aleksander
we may add a new file in github to list all the external libraries witha a couple of lines describing the status and what they do.

harbour addons directory was created to handle all the external libraries but then how many harbour users will be willing to compile ... ?

If I understand correctly you are writing something similar to npm... it would be great !

Aleksander Czajczyński

unread,
Jul 14, 2025, 3:52:21 AMJul 14
to Harbour Users
Actually I try to make a thin layer over git (and git submodules) offerings. That should be fine, maybe the dependency tracking will not destroy the idea. Following your words, most Harbour code now sits in separate silos, so won't depend on each other. I think plain git usage is also some kind of obstacle to many.

Francesco Perillo

unread,
Jul 14, 2025, 5:42:26 AMJul 14
to harbou...@googlegroups.com
Good idea, git is a dangerous beast that can eat your source code :-))) if you don't pay attention. I use mercurial instead of git.

A layer on top can help a lot.

I don't see this project in your github.

Since all these libraries are developed in silos, using addons directory will allow to just add lib-name.hbc to our hbp files to have it linked and files included. Otherwise you need to add the hbp full path.
Both solutions have pros and cons.

Francesco


--
You received this message because you are subscribed to the Google Groups "Harbour Users" group.
Unsubscribe: harbour-user...@googlegroups.com
Web: https://groups.google.com/group/harbour-users
---
You received this message because you are subscribed to the Google Groups "Harbour Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to harbour-user...@googlegroups.com.

Ash

unread,
Jul 14, 2025, 6:32:46 AMJul 14
to Harbour Users
On Monday, July 14, 2025 at 3:09:15 AM UTC-4 Aleksander Czajczyński wrote:

How to do as much as possible with down to the point program code and very little external dependecies? Otherwise what's wrong with hbQT?
I'd say it got everything you could wish.
 
Code below says what I mean; no .DLLs needed at run time. Keeping  most of the original code.

WVWCLIP library depends on GTWVW, and was witten to modernize a large business application written using Clipper in the early 80s. This application is still being used today.Source code is avilable.

#include "inkey.ch"
#include "wvwclip.ch"

PROCEDURE main()
   LOCAL cName     := 'Fred Bloggs Jr.'
   LOCAL dDOB      := Date() - 20000
   LOCAL cStatus   := 'Single'
   LOCAL nSalary   := 95000
   LOCAL lEmployed := .T.
   LOCAL lOK       := ' '
   LOCAL lCancel   := ' '

   SET CENTURY ON
   SET EVENTMASK TO INKEY_ALL - INKEY_MOVE
   SetMode( 10, 32 )

   WSetup( .T., , 'Edit Employee Details' 

   // @ 00, 01 SAY 'Employee Details'
   @ 00, 01 LABEL 'Employee Details' FONT HeadFont()


   @ 02, 12 GET cName      CAPTION 'Name:'         PICTURE '@K'
   @ 03, 12 GET dDOB       CAPTION 'Birth Date:'   PICTURE '@D'
   @ 04, 12, 08, 21 GET cStatus LISTBOX { 'Unknown', 'Married', 'Single' } ;
      DROPDOWN CAPTION 'Status:'
   @ 05, 12 GET nSalary    CAPTION 'Salary:'       PICTURE '999,999'
   @ 06, 12 GET lEmployed  CHECKBOX CAPTION 'Employed?'

   @ 08, 12 GET lOK      PUSHBUTTON  CAPTION 'OK' ;
      STATE {|| hb_keyPut( K_CTRL_W ) }

   @ 08, 20 GET lCancel      PUSHBUTTON  CAPTION 'Cancel' ;
      STATE {|| hb_keyPut( K_ESC ) }

   READ

   IF LastKey() <> K_ESC
      // Alert( cName + ';' + ;
      WAlert( cName + ';' + ;

         DToC( dDOB ) + ';' + ;
         cStatus + ';' + ;
         Str( nSalary ) + ';' + ;

         iif( lEmployed, 'Y', 'N' ) )
   ENDIF

  // CLS
   WClear()


   RETURN

p2.png

Regards,
Ashfaq Sial

Francesco Perillo

unread,
Jul 14, 2025, 7:34:52 AMJul 14
to harbou...@googlegroups.com


Add IMGUI... 7....


I forgot FiveWin and GTWVW and I'm sure there are others ...

Looking for GTWVW source codes (I didn't find them) I also read about Harbour 3.4... completely forgot about that version and now the options should be multiplied by at least 1,5...

Aleksander Czajczyński

unread,
Jul 14, 2025, 8:17:41 AMJul 14
to Harbour Users
poniedziałek, 14 lipca 2025 o 12:32:46 UTC+2 Ash napisał(a):
WVWCLIP library depends on GTWVW, and was witten to modernize a large business application written using Clipper in the early 80s. This application is still being used today.Source code is avilable.

Ah yes! Thank you for reminding about WVWCLIP, it's a great model of simplicity. Also GTWVW that is HB3.4 only.

Best regards, Aleksander
 

diego...@gmail.com

unread,
Jul 14, 2025, 8:21:07 AMJul 14
to Harbour Users

Cotswold GB

unread,
Jul 19, 2025, 6:34:56 AMJul 19
to Harbour Users
I've tried to compile this WCLIP.prg and variations of it to hopefully give me a slight GUI appearance  but it always fails. 
The following screen is typical when they fall over. Can anyone tell me why? As I haven't a clue :{

wclip-Fails.pnguse I haven't a clue! :{

The hbp file is :
------------------
wvwclip.hbc
hbxpp.hbc
hbct.hbc
hbwin.hbc
gtwvw.hbc

wclip.prg
------------------
using  Win11 & harbour 3.2

marcos...@gmail.com

unread,
Jul 19, 2025, 1:54:03 PMJul 19
to Harbour Users

Harbour is not used for programming like other languages because there are no complete projects or frameworks that enable efficient development.

For example, it lacks:

  • A framework like PHP’s Laravel.

  • An ORM to easily connect to different databases (from DBF/CDX to MySQL, MariaDB, PostgreSQL, Oracle, etc.). SqlRDD allows connections to multiple databases, but it’s not an ORM like Eloquent (https://laravel.com/docs/4.2/eloquent).

  • Unit Testing support.

  • Libraries or frameworks for web development.

           mod Harbour exists, but few people know about or use it.
           mod Harbour V2 (https://github.com/mod-harbour) is an open-source Apache module that lets you run Harbour programs on the web.

  • Libraries or frameworks for smartphone development.

  • Native functionality to handle APIs and integrate with JavaScript libraries like Angular, React, or Vue.

  • A complete open-source program (like ODOO https://github.com/odoo/odoo ) to showcase Harbour’s potential.  

  • No easy way to use AI API.

            There are some usage examples, but they lack visibility. For instance:

These are some of the features Harbour currently lacks.

marcos...@gmail.com

unread,
Jul 19, 2025, 2:06:31 PMJul 19
to Harbour Users
There is an excellent ORM:

However, it only supports DBF/CDX. It needs to be expanded to support SQL.

alex;

unread,
Jul 19, 2025, 2:11:03 PMJul 19
to Harbour Users
Hi. Add in wclip.hbp path to wvwclip.lib
f.e.
-L..\

суббота, 19 июля 2025 г. в 13:34:56 UTC+3, Cotswold GB:

M., Ronaldo

unread,
Jul 19, 2025, 6:29:20 PMJul 19
to Harbour Users
https://www.totvs.com/
AdvPL (Advanced Protheus Language, used to buid ERP Protheus).
*Clipper clone

Charly 9000

unread,
Aug 12, 2025, 2:10:23 AMAug 12
to Harbour Users

Hi, 

Putting aside the Harbour repository and a possible redefinition of the roadmap, i think nowadays, having a centralized package manager—something like Packagist, npm, etc.—would really help popularize the platform among developers. It would standardize how everyone uses libraries, making it easier to manage different versions and dependencies. Basically, a site with a centralized index of all these libraries, while the actual packages stay in their authors' own repos.

A simple publishing system and a standardized approach would speed things up. I don’t know if anyone’s already working on this, but I’m sure we could quickly gather hundreds of contributions this way.

Right now, many of us use Git or others..., but we should take the next step—unifying everything and figuring out the best approach.

Every developer contributes their own "package."
Every developer can use any "package."

Any thoughts on this topic I would love to hear :-)

Regards.
C.

alex;

unread,
Aug 12, 2025, 2:34:20 AMAug 12
to Harbour Users
Hi.

I'll tell you a little story.
The VFPX project for Foxpro have a visual package manager  Thor. As far as I understand, it is managed by Doug Henning. I wrote a message on the Thor forum that I implemented the Foxpro IDE extension and posted a link to my github repository.
forum Thor

But no one contributed this implementation to the packages. And in the end, I am the only one, and maybe man who put a star on my repository uses this feature. I do not have time to join the VFPX team yet. But I plan to do so in the future. I hope this discussion will continue.
Successful projects to all.

WBR, alex;



вторник, 12 августа 2025 г. в 09:10:23 UTC+3, Charly 9000:
Thor.PackageManager.jpg

alex;

unread,
Aug 28, 2025, 6:49:52 AM (8 days ago) Aug 28
to Harbour Users
I think if one of the gurus makes an interface similar to Foxpro Thor, then this will be enough to start.
Or on different graphics libraries at once. I'll think about it.
And what further functionality - suggest.

Let's ask Grigory, Pritpal, Alexander.

WBR, alex;

вторник, 12 августа 2025 г. в 09:34:20 UTC+3, alex;:

alex;

unread,
Aug 28, 2025, 7:01:40 AM (8 days ago) Aug 28
to Harbour Users
And NetBens also has files with a list of the latest package and plugins updates, for example
http://updates.netbeans.org/netbeans/updates/8.2/uc/final/distribution/catalog.xml.gz

четверг, 28 августа 2025 г. в 13:49:52 UTC+3, alex;:

Charly 9000

unread,
Sep 1, 2025, 1:30:10 AM (4 days ago) Sep 1
to Harbour Users
Libraries, interfaces  or GUIs shouldn't be the focus, but rather their functionality. The main objective should be sought and it should be manageable via the command line. Once this objective is clear, the GUI implementation can be done in a thousand ways...

What type of repository to use, public or private, how to access, publish, etc. And how to run it from the console as you do with Git, Composer, etc.

The GUIs... will come :-)

C.

alex;

unread,
Sep 1, 2025, 12:16:11 PM (4 days ago) Sep 1
to Harbour Users
Hi,  Charly.

You're right. After the rest, I thought about what really needed. I'll test the GitHub CI and tell you about the results later. I've got a couple of ideas. 

WBR, alex; 
понедельник, 1 сентября 2025 г. в 08:30:10 UTC+3, Charly 9000:
Reply all
Reply to author
Forward
0 new messages