So Where Does VFP Fit in Today?
It's Still the Choice of Professionals Who Need to Get the Job Done
Especially if that person's primary job isn't writing software.
In the words of Lt. John Harvey:
"My day job is that of a lieutenant for the Shelby County Sheriff's Office in Memphis, TN where I am the bureau commander for Information Systems. I have developed systems that are currently in use by our agency, the Memphis Police, all local law enforcement agencies, and most federal agencies such as the FBI, ATF, Marshals, and the Secret Service. My latest "big project" is a laptop-based system for our Fugitive Bureau where the officers access data via wireless modems and WiFi. They are able to pull up mugshots, arrest reports, etc, as well as print the arrest tickets from the field. The middleware is Webconnection (a VFP Web Product) and we pull data from VFP, SQL Server, and the Tandem Mainframe."
I asked him if he thought he could have done what he's done in .NET. His response was "I have three .NET developers here that I run rings around.
This is not because the applications are better suited to run in Fox than in .NET. It's because a sheriff's officer was able to start using a tool interactively, automate his work, migrate his programs into an application, expand the application to integrate with other systems, and ultimately create a suite of invaluable tools.
It's Still the Choice of Developers with a Significant Investment in Existing Code
|Why should you care about Visual FoxPro? Because it's everywhere, it's powerful, it's quick to learn, it's cheap, and the guy who wants your job knows what it can do...|
Chris Jeffries is a vice president of development at Human Resources MicroSystems. Their suite of HR applications rivals the power and functionality of SAP and PeopleSoft systems. The core of the application was written in Visual FoxPro and .NET and they have products that target small to medium sized organizations, as well as large enterprises.
"... there are, by my guess, billions of data records stored in FoxPro worldwide and the FoxPro DML is the best way to manage those records. The language is the most approachable language in the programming world and is easily understood by those with minimal skill."
On migrating to .NET:
"We are spending more time developing new solutions in .NET than we are in VFP, but our core business is still in VFP. The desktop application will most likely remain in VFP because it's just too big to re-write in .NET due to resource constrictions. .NET forms, reports, and other aspects of the VFP desktop app would have to be re-written from scratch to provide the same kind of end-user flexibility."
It's Still the Choice of Managers with Constrained Resources
Visual FoxPro can run on hardware that is over eight years old, and it's still fairly snappy. This may seem like a ridiculous fact, but if you have ever worked in Third World markets, or with military or government agencies, you know that being able to run on older hardware is a non-negotiable requirement. The ability to distribute and scale applications written in FoxPro without worrying about licensing is often a big part of the buying decision as well.
It's in these same environments that IT resources are at a premium, and rarely available for maintenance of old systems. But because of FoxPro's high discoverability, it is fairly easy for someone to figure out what it takes to maintain or even extend the application.
Garrett Fitzgerald, a VFP MVP says it this way:
"FoxPro has long been the bread and butter for companies that don't want to (or can't) spend the money to chase the latest technology. Mom and Pop stores don't tend to need a .NET/SQL Server solution to run their businesses, and can't justify spending the money to do it correctly. FoxPro is peppy, even on lesser hardwarecompare the requirements for both. However, when properly written, Fox apps can (and have) handled data sets up into the 100s of gigs."
On why he continues to choose VFP: "Because I can be highly productive and deliver excellent value to my customers using VFP. "
It's the Swiss Army Knife of Data-centric Applications
I find that having delivered applications in VFP, I have a grasp of the entire software development process. I understand issues from design to development to maintenance and migration. I understand the ins and outs of database design, object-oriented design, user interface design, business object design, data access layers, COM and Web services, and enterprise design patterns.
Why should you care about Visual FoxPro? Because it's everywhere, it's powerful, it's quick to learn, it's cheap, and the guy who wants your job knows what it can doand because certain kinds of programming jobs lend themselves to quick and dirty ad-hoc data manipulation.
In other words, I like being a .NET developer who understands this tool, rather than one who doesn't. Even if I were to never write another FoxPro app again, it will always be installed on my machine.