As I sit here at Chicago Midway airport putting my nephew on a plane back home, I am pondering my future as a VFP programmer.
Microsoft has recently announced that they will not be releasing new versions of Visual Foxpro and will release their upcoming Sedna release, in addition to other non-core extensions, to the open-source community via CodePlex. They will be releasing a final service pack (SP2) sometime later this year which will address Vista compatibility issues as well as some .NET interop improvements and other miscellaneous fixes and enhancements. However, Microsoft support for Visual Foxpro 9 will officially end in 2015.
I've been reading a lot of articles and blogs trying to get a feel for how most are taking this news. As expected, there is quite a mix of emotions and opinions. Quite surprisingly, a lot of people who are highly regarded in the VFP and software development community are looking at this as generally positive news. Myself, I'm a bit dubious. Working for a software shop that uses several various technologies (VFP, Java, .NET, PHP, BEA, Oracle, SQL Server, etc.) there is an expectation that we look to "future proof" our work as much as possible. Overall, the decision to use VFP on many, many successful projects has been a very good thing. But now what do I recommend? Of course we who use VFP every day can attest to it's technical and RAD capabilities, etc., but many of our corporate clients want to know that if we go away, or I get hit by a bus, etc. that they can find someone to support their apps. Last time I checked, there was not a whole lot of VFP talent in South Bend, Indiana.
Yes, VFP 9 is still a great tool for developing desktop, distributed and web applications and I’m sure will continue to work well beyond the 2015 support date. I still have a client that is running Foxpro 2.6 for DOS under Windows XP and, although there are some occasional compatibility issues to deal with whenever he gets a new PC (like no parallel ports!), the software continues to do the job very well.
I, like many others, am not surprised at all by this announcement. However, it still leaves me feeling a bit sad and disillusioned. I have been updating my skills the past several years, and will continue to do so, but it’s still sad. It’s sad because as a software engineer, even when I know VFP may be the perfect fit for a new project, I'm also a consultant and I have to be pragmatic and may not recommend new projects use VFP. Maybe it’s because I’m just getting tired of constantly fighting the negative spin and this news might make the fights harder to win.
In my opinion (and many others in the community), the main problem with VFP has not been the tool itself but rather Microsoft’s apparent lack of marketing since they purchased Fox Software in 1992. I’ve also encountered negative PR regarding VFP from Microsoft employees at user groups, etc. I truly believe there has been a concerted effort by some to try and kill VFP by spreading false rumors and misinformation. Many declared Foxpro dead since 1995 when Microsoft released their first 32 bit operating system: Windows 95. This has left the impression in the technical and non-technical world that VFP is, at best, a legacy database management system and this has definitely made it a tough sell, especially in the corporate environments. And yet, time after time, the Fox Team at Microsoft delivered one great version after the next. And time after time, we’ve delivered ENTERPRISE solutions on time and on budget and continue to meet customers’ expectations using VFP. And time after time, the VFP community has continued to be there for teaching, mentoring and great camaraderie.
There’s nothing worse than implementing a successful project only to have the decision of the development tool questioned over and over, sometimes several years later, every time a new person (or manager) gets involved with the project. Fortunately, I have clients that actually look at the results and know when to dismiss the undeserved negative remarks about VFP, but who knows about the next potential client….
All I can say to anyone that has been secretly (or not so secretly) hoping for this day is “I hope you’re happy now” and I sure hope that you’re ready for some REAL competition now that there will be possibly many VFP developers switching to other tools. Bring it on.
In the meantime, I plan to continue maintaining and enhancing my existing clients’ VFP applications, possibly introducing .NET components over time where it makes sense. I have already deployed ASP.NET Web Services, a socket server/listener using C# running as a multi-threaded service calling a VFP COM object, prototyping with StrataFrame , etc. and have also been using SQL Server and other truly client server back-end databases for several years now.
So, no, it's not that I'm afraid of change or learning something new; it's just that I know VFP is a very good, stable and mature tool – I'm really not sure the same can be said about all this other "stuff".
Other links of interest and articles related to this announcement:
Note: I question the validity of some of the comments in the above article. I've heard a lot of people referring to this article with enthusiasm thinking the core of VFP will be open-sourced. As far as I know, this is not true.