This is a list of free/libre open source software (FLOSS) alternatives to Visual Basic (part of Microsoft Visual Studio) computer programming platform. If your school is still teaching VB 6, or if you now use Ubuntu for programming classroom, we strongly suggest you to switch to either one of these alternatives. With these, one can create computer programs visually by drag and drop as well as coding just like what one can do with VB.
Subscribe to UbuntuBuzz Telegram Channel to get article updates.
About Visual Basic
Visual Basic is the full software development kit, BASIC is the programming language, VB 6 is a particular version of the platform, and Visual Studio is the IDE as well as GUI designer.
Visual Basic is a fully proprietary software programming platform, that means, the language, the IDE, the resulting programs, and the OS where it can run, are all proprietary. This makes programs created with VB proprietary and can not run except on Windows.
1. Qt
Qt is the full software development kit, C++ is the language, and Creator is the IDE as well as GUI builder included. This platform includes a complete set of code examples suitable for first learners. With Qt, one can create graphical desktop applications for GNU/Linux, Windows and macOS. Best examples of computer software created with Qt are among others Kubuntu, KDE, Telegram and VirtualBox. We recommend Qt as the number one for everyone who want to fully switch from VB.
(Qt Creator showing its code on left while form designer on right)2. GTK
GTK platform is the full software development kit, C is the language, Glade is the GUI designer, and Anjuta is the IDE. Best examples of computer software created with GTK are Ubuntu and elementary (OS), GNOME, Gimp and Inkscape. Programs created with GTK can run on GNU, Windows and MacOS.
3. Gambas
Gambas is a name of the platform, BASIC is the language, Gambas is also the IDE and the GUI designer of Gambas programming platform. It is the one created as a complete replacement to Microsoft Visual Basic for GNU/Linux. Programs created with Gambas can run mainly on GNU/Linux.
(Gambas 3 window with its form designer and a running program)
4. Lazarus
Lazarus is the name of the IDE and the GUI designer, Pascal is the language, and Free Pascal is the compiler. Lazarus is often viewed as a replacement to Delphi, a visual language other than VB on Windows, however it is very capable to replace VB as well. Programs created with Lazarus can run on GNU, Windows and MacOS.
5. Java
Java is the programming language as well as name of the platform, with Eclipse and Netbeans as the most powerful IDEs with GUI designer. Java's slogan is Write once, run anywhere, thus programs created with Java can run on Windows, GNU and MacOS. However, Netbeans includes designer by default while Eclipse needs additional plugin called WindowBuilder to be installed first.
(Netbeans with its Java source code listed (right), form designer showing (center), and buttons palette (right))
6. MonoDevelop
Mono is programming platform, C# is the language, and MonoDevelop is the IDE as well as GUI designer. More precisely, Mono is the free software version of .NET Framework. This programming platform can produce applications for Windows, GNU and MacOS.
7. wxWidgets
wxWidgets is one of popular GUI toolkits, CPP is the language, with CodeBlocks as the IDE that includes GUI designer. This designer is a plugin called wxSmith that is licensed under GNU GPL and is available on Ubuntu repository too. As a whole (CodeBlocks + Cpp language + wxWidgets library + wxSmith), this is well documented and very good for graphical apps development.
Worth Mentioning
List of other highly potential alternatives and deployment tools is mentioned below.
FreeBASIC
AppImageKit
Glossary
- Language: the programming language one write code with.
- Compiler: a special program to translate a written code in a language to machine code. C, C++, C# are languages that require compilers.
- Interpreter:
similar to compiler, but doing the translation in a very different
approach instead. BASIC, Python are languages that require
interpreters.
- Runtime: a special program required to run on target operating systems to run another program.
- IDE: integrated development environment, the whole window of the programming application where one writes code and do everything related.
- GUI builder: graphical user interface builder (also called 'form editor', ), the part of IDE where one does drag and drop to build a window of his/her program.
- GUI toolkit: a special kind of software libraries that is used by programmers to develop graphical programs with windows, buttons, mouse interactions, etc. Qt, GTK and wxWidgets are examples of toolkits.
Happy hacking!
This article is licensed under CC BY-SA 3.0.