Ich weiß nicht viel über VisualBasic und ich kenne kein Äquivalent in der Linux-Welt.
Für Pascal gibt es den gpc (GNU Pascal Compiler). Ich habe es nicht benutzt, aber ich bin sicher, dass es für einen Pascal-Programmierer ziemlich einfach ist, den Übergang zu vollziehen. Ähnliche Fälle für viele andere Programmiersprachen wie C, C ++, FORTRAN usw. Obwohl ich einem VisualBasic-Programmierer keine davon vorschlagen würde, gibt es mehrere Optionen für Sprachen, die sich auf mehreren Plattformen befinden. Ich denke, Ihre Wahl der Sprache kann ein wenig von Ihren Unternehmensrichtlinien usw. abhängen.
Python wäre meine Top-Empfehlung. Es ist leicht zu erlernen, zwingt Sie zum Schreiben von Code, der leicht zu lesen ist, und es ist standardmäßig plattformübergreifend. Wenn Sie Closed-Source-Anwendungen bereitstellen möchten, werden Sie feststellen, dass zwischen den Plattformen einige bemerkenswerte Unterschiede bestehen. Im Allgemeinen wird der meiste Code, den Sie schreiben, auf jedem System kompiliert. Der schwierige Teil besteht darin, die Ordnerstruktur beizubehalten (dh C: / Programme / vs / usr / share /). Es gibt jedoch Betriebssystemumgebungsparameter, mit denen Sie plattformspezifische Optionen für die Hardcodierung vermeiden können. Nachteil ist, dass Sie eine neue Sprache lernen müssen. Auf der anderen Seite können Sie denselben Code unter Windows, Linux, MacOSX usw. verwenden.
Um eine GUI für Ihre Anwendungen beizubehalten, gibt es in Python mehrere Optionen. Viele Ubuntu-Entwickler scheinen sich für GTK3 zu entscheiden, das auch für Windows verfügbar ist. Persönlich bevorzuge ich Qt4 (Sie können Qt4 auch für C / C ++ verwenden, das Python-Paket heißt PyQt4 für das offizielle und PySide für ein Community-Projekt). Sie haben keine IDE wie in VisualBasic, aber die Verwendung von Qt Designer zum Erstellen des GUI-Looks erleichtert die Implementierung in eine reine Code-IDE (z. B. Wingware IDE, Eclipse, IPython ...). Sie müssen also zwischen der GUI-Designer-App und der Codierungs-IDE-App wechseln. Gleiches gilt für GTK3, bei dem Sie mit Glade eine GUI erstellen würden.
Python verfügt über ein Standarddatenbankpaket, das SQLite3 implementiert. Diese Datenbank ist ziemlich leistungsfähig, aber es gibt keine GUI, um sie wie bei Access zu erstellen. Es gibt jedoch Pakete für den Zugriff auf die meisten Arten von Datenbanken. Persönlich bleibe ich lieber bei PostgreSQL für all meine Sachen, da es so skalierbar ist. PyQT4 verfügt über Klassen für alle wichtigen Datenbanken im QtSql-Modul, es gibt jedoch viele andere Optionen. Sie können Ihre alten Access-Datenbanken natürlich auch auf einem Windows-Computer mit ODBC einrichten und sie dann aufrufen, ohne die Datenbanksoftware zu wechseln.