All about Visual FoxPro (and switching to a modern alternative)

14
Nov 2022

What is Visual FoxPro?

Visual FoxPro is one of the easiest to use, most versatile programming languages of its time. Unfortunately, that time has now passed. Many businesses that rely on their Visual FoxPro (VFP) software are desperate for a suitable alternative. Ideally an alternative that’s easy to deploy with minimal disruption – and that’s priced realistically.

The Visual FoxPro story started at the height of the microcomputer boom, during the early 1980s. Created by Fox Software in 1984, its original incarnation was FoxBASE, a relational database application. FoxBASE was similar to other popular database management software like dBase II (which ran on CP/M and eventually DOS). While dBase II was popular at the time with programmers, FoxBASE quickly surpassed rivals by being easy to use and comparatively fast. In addition, FoxBASE could run on MS-DOS, Windows, and Mac which were becoming more popular with mainstream users than CP/M operating systems.

By 1989, FoxBASE had evolved into FoxPro. This was released under several versions, including FoxPro 2.x versions for MS-DOS, Windows 3.1, Macintosh, UNIX and Linux.

FoxPro developers and users

At its height of popularity, an estimated half a million developers used VFP to build software for a wide variety of clients and end users. FoxPro was among the first Rapid Application Development (RAD) tools, making it easy to create working apps with simple syntax and lightweight code. Although Visual FoxPro was built using C++, it didn’t require the use (or learning) of C++ to create remarkably complex functions with only the VFP syntax.

Like many of the fourth-generation programming languages (4GLs), VFP uses the open object protocol (OOP) based programming. This will be a familiar paradigm for developers who use Java, C#, Python, or VB.NET, with features like Classes, Objects, Variables, modular programming, procedures (and subroutines), and conditionals.

FoxPro and Microsoft

In 1992, Fox Software became part of the Microsoft family. When this happened, FoxPro’s name changed to include the word ‘Visual.’ This made it recognizably related to the Microsoft brand (which also owned Visual Basic). From version 3.0 onwards, FoxPro became known as ‘Visual FoxPro’ (or VFP to its friends).

After becoming part of the Microsoft family of products many assumed that it was now guaranteed a bright future and immortality, through the support of a IT heavyweight. However, this was not to be.

 

The rapid adoption of Visual FoxPro by business, industry and institutions

As a popular and easy-to-use programming language Visual FoxPro became widely used throughout the computer boom. It found its way into numerous key roles in business, government, and academic institutions. Despite its shrinking market share, Visual FoxPro is still relied on by numerous businesses and institutions today. It’s most common in the USA, due to the earlier adoption of microcomputers across multiple sectors and fields. Many countries that were slower to start adopting IT have effectively leap-frogged this stage, and gone straight to more advanced software based on Java or the .NET core, and cloud-based apps that use APIs.

Development of Visual FoxPro

Although developers are no longer actively developing new VFP software, many extant Visual FoxPro applications are still relied on for niche purposes in the Financial Services sector, in IT/software, Higher Education, and Local Government. It’s quite commonly used by many businesses that operate in complex sectors, especially where the raw data remains relatively stable and doesn’t need frequent updating. Construction, heavy industry, manufacturing, and retail are all areas of business where VFP is still used to perform core business functions, for example.

Visual FoxPro has many potential applications, due to the customizability of the language and relative ease-of-use. Many businesses have become reliant on their VFP-based programs. They’re a very cheap, yet reliable way to process basic information into meaningful business processes such as invoices, estimates, or orders.

 

End of life

Microsoft made its final update to Visual FoxPro in 2007 with Version 9, so this is the final version. Extended support for VFP has ended, and machines that can run the 32-bit software will become increasingly scarce.

Many might wonder why Microsoft no longer supports such a useful and versatile programming language, or why they didn’t port it to a modern .NET version. The reason, as with so many things in business, is money. Microsoft made a sound business decision to change their model from a purchase/license model to a subscription-based one.

Visual FoxPro Life cycle

It’s a more sustainable business model that hinges on a ‘fixed lifecycle policy’. According to this policy, all support for ‘bought’ and ‘volume-based’ license software is phased out over a minimum of five years. Extended support can be made available for a limited time for some products with large numbers of dependent users (including Visual FoxPro). However, this support ended for Visual FoxPro on Jan 13th, 2015.

Many business users find that the alternatives to Visual FoxPro just don’t offer the same flexibility, are prohibitively expensive. In the case of custom software development, a long development period to build is another layer of inconvenience and expense.

Current FoxPro users

Anyone still using VFP for mission-critical processes is on borrowed time. In many cases, they’re using an air-gapped Windows XP laptop to run the 32-bit VFP application on-premises.

The number of businesses and institutions still using VFP is comparatively small. Once a market leader, VFP currently takes a 0.18% share of the market, while ‘relative newcomer’ PHP (made in 1995) corners 78.7% of the market. For this reason, developers are not keen to learn VFP, and there is little appetite for them to build a replacement using a .NET core or C#.

So, Visual FoxPro has reached its end-of-life phase. For many, this means their VFP programs are on ‘life support,’ and the clock is ticking until that point when a difficult decision must be made.

Back to feature overview