Visual FoxPro Stack

Software components comprising the Visual FoxPro platform and ecosystem

Ken Levy

The evolution and next phase of Visual FoxPro has essentially been transferred from Microsoft to the FoxPro community. Visual FoxPro will evolve, but the results of its evolution depend on the efforts within the FoxPro community. VFPS (Visual FoxPro Stack) can become an important part in the future and perception of Visual FoxPro starting in 2009 and into the next decade.

VFP Community Goals

To maintain a positive perception of FoxPro as a development platform, it would seem there are four key areas of the efforts: awareness, education, adoption, and support. The VFP community includes websites, blogs, MVPs, vendors, content, events, and free software such as what is included in VFPX. Some key areas for the FoxPro community goals might include creating momentum around the usage of free VFP tools, an increase in the ease of installation and updates of free VFP tools, and the creation of tools to help VFP integrate with new technologies. There exists a stack of components that comprise the VFP platform and ecosystem going forward. There are benefits to formally naming and defining that overall set of software.

LAMP Stack

In an article the April 1998 edition of the German computing magazine c't, Michael Kunze authored an article where he coined the acronym LAMP. The goal of the article was to describe how a free software bundle could be a viable alternative within a market of commercial packages, with LAMP being a marketing-like term to increase the popularity and awareness of free open source software.

LAMP Overview

LAMP refers to a solution stack of software: Linux, Apache, MySQL, and PHP (also, PHP can often be replaced with Perl, Python, or Ruby). The acronym LAMP is used to define a web server infrastructure, define a programming paradigm of developing software, and to establish a software distribution package. They represent a solution stack of technologies when used in combination. There is no requirement to have all components on LAMP installed, they can be used independently. Additional examples of software stacks include Apple Inc.'s WebObjects, Java/Java EE, Grails, and Microsoft's .NET architecture.

VFPS: Visual FoxPro Stack

VFPS is a Visual FoxPro Stack, an acronym used to define the key software components making up the Visual FoxPro platform and ecosystem. As a starting point, below is a list of components that comprise VFPS:Visual FoxPro 9.0, Sedna and XSource, VFPX, VFPY. Also included are VFP 3rd Party products including tools related to .NET for Visual FoxPro such as VFP Studio, Guineu, .NET Extender for VFP, VFPCompiler for .NET, and VFPConversion.

Visual FoxPro 9.0

Visual FoxPro 9.0 will probably no longer be available for sale after 2009 as a stand-alone shrink wrapped product. VFP 9.0 will remain available via MSDN Subscriptions, and possibly through Select volume licensing. VFP 9.0 standard support ends January 2010 and extended support ends January 2015. While SP2 is probably the last service pack for VFP 9.0, there are continued hotfixes for security and Windows compatibility support. It is likely that a hotfix would be released by Microsoft if one is required for Windows 7 when it is released.

Sedna and XSource

Sedna is a free add-on package provided by Microsoft and includes productivity and interoperability tools. The key components are: My dot IntelliSense, Upsizing Wizard, Data Explorer, NET4COM, Vista Toolkit, and DBi Tech Controls. XSource is all the source code to components included in Visual FoxPro 9.0 that are written in VFP. Both Sedna and XSource licensing allows modification and redistribution of changes and enhancements, and VFPX is the ideal umbrella project as a home for sharing updates.

VFPX

VFPX is a Visual FoxPro community effort to create open source add-ons for Visual FoxPro 9.0. The code, classes, and libraries are the result of a community-based effort to support and extend Visual FoxPro. Anyone can participate in existing and new VFPX projects for possible inclusion in the community effort.

.NET for Visual FoxPro

There are various resources and products focusing on VFP developers learning .NET, VFP integrating with .NET, and VFP applications migrating to .NET. Some of the key efforts in this area included, VFP Studio, Guineu, .NET Extender for VFP, and VFPCompiler for .NET, and VFPConversion. This is obviously an optional component of VFPS.

VFPS Home Page

I created a new wiki page online for VFPS, refer to the URL below. This wiki page hosts the definitions and resources for VFPS, as defined by the VFP community (thus a wiki page), and links to the various components, products, and projects mentioned in this article. Consider this wiki page the home for VFPS:. http://fox.wikis.com/wc.dll?Wiki~VFPS

History of VFPS

VFPS is an idea inspired by a long conversation I had with Rainer Becker one evening during the VFP DevCon 2008 event in Frankfurt. Rainer and I shared time presenting the main keynote session. In my part of the keynote, I included the state of the VFP product and community, future trends, and how the community is in the driver's seat with respect to the future of VFP. I also mentioned how VFPX and various .NET for VFP products are key to the overall platform and ecosystem for VFP going into the next decade. Rainer related the overall messaging and points from my presentation to what was done with LAMP as a name and brand. Rainer asked me to write this editorial article, and it is my formalization of the results from my presentation and my conversations with community members there.

Benefits of VFPS

Having an umbrella stack for evolving VFP community components adds awareness and enhanced branding. Historically, PHP was not updated for years and version 5 was not all well adopted. LAMP as a bundle and the latest version of the stack is what people mostly focus on now, so the latest version of PHP benefited from the branding and awareness of LAMP. While there will not be a VFP 10.0, there is great benefit from enhancing the mindset and perception by referring to VFPS as the latest bundle of VFP related components. This branding will often target businesses and decision makers of VFP based application development. For example, "I look forward to the version of VFPS in 2010." And, "I expect the version of VFPS in 2011 to allow VFP development to be much more integrated the other products and technologies."

Calls to Action for VFPS

The VFPS wiki home page can be the continuation of this editorial article kick-starting the Visual FoxPro Stack. The primary calls to action is for VFP developers to review the VFPS wiki page as it evolves, provide feedback and discussion around the evolving components of VFPS, and contribution to the VFP ecosystem including downloading VFPX components, contributing to VFPX, and helping in the awareness branding of VFPS.