Virtual Fox Fest 2021

An online conference presenting the latest in Microsoft Visual FoxPro development techniques

Thursday, May 6, 2021

Sessions

"Level" shows the expected level for attendees for a session. Click a speaker's name to see their bio.

I See What You Mean: Data Visualization for the Database Developer

Presenter: Rick Borup
Level: All levels


Data visualization is a powerful tool for turning raw data into useful information. Because vision is the dominant human perception, an effective visual presentation of data can quickly convey meaning that might otherwise be obscured or difficult to ferret out. Data visualization is much more than just pie charts and bar graphs, and is just as relevant for small data as it is for big data. Come to this session to learn tools and techniques for turning the data from your applications into meaningful information for your users.

You will learn:

  • About human perception and why vision trumps the other senses
  • Why visual data is more effective than raw numbers
  • About the importance of seeing data from the user's point of view
  • How to move beyond simple charts and graphs
  • About tools and techniques for presenting data visually
  • How to lie with graphics, and how to tell when you're being lied to

Prerequisites: None

Inspiring Everyday Practical IntelliSense

Presenter: Rick Schummer
Level: All levels


IntelliSense at DevCon and recall the chills it sent up my spine because I knew this new feature would instantly make me more productive. This single VFP feature has been heralded as "the greatest thing since sliced bread" and is, at least in my mind, the single biggest productivity boost to developers. Yet to this day I feel I under-use it and wish I would take the time to make things better for myself.

This session reveals how IntelliSense works using scripts and settings, and how it can be implemented, using real world examples authored by numerous Visual FoxPro developers. The implementation will be demonstrated and analyzed with the number one goal of inspiring you to boost your own productivity in the VFP IDE, and later to share those items that might help other developers in the FoxPro community.

Discover the details needed to take advantage of Quick Info, Member Lists, Command and Keyword expansion, Types, and MRU Lists. Techniques include leveraging the FoxCode object, text merge, and more. If time allows, we will explore other IntelliSense implementations and extensions like MY, IntellisenseX, and ISX.

You will learn:

  • About IntelliSense scripts you can use everyday
  • How to build time-saving Command/Keyword expansion and syntax completion techniques
  • How to make coding easier using Quick Info, Member Lists, and Types.
  • How to leverage and manage Most Recently Used (MRU) lists.
  • How to avoid the duplicate typing that comes naturally with SET commands.
  • How to reap the benefits of the C operators.
  • How Property Editors play in the IntelliSense sandbox.
  • Ideas to improve the IntelliSense Manager.
  • About Runtime IntelliSense, and how to take advantage of it in your custom apps.

Prerequisites: Desire to be more productive in the VFP IDE, and basic understanding of IntelliSense inside VFP.

Introducing Project Explorer

Presenter: Doug Hennig
Level: All levels


The Project Manager is one of the oldest tools built into VFP, and it's been showing its age for a long time. For example, it doesn't provide integration with modern distributed version control systems (DVCS) such as Mercurial and Git, it doesn't have a way to filter or organize the list of items, and it can only work with one project at a time.

Project Explorer is a VFPX project that replaces the Project Manager with a modern interface and modern capabilities. It has all of the features of the Project Manager but adds integration with DVCS (including built-in support for FoxBin2PRG and optional auto-commit after changes), supports multiple projects within a "solution", allows you to organize your items by keyword or other criteria, and has support for easy "auto-registering" addins that can customize the appearance and behavior of the tool.

This session introduces Project Explorer and shows how it can make you more productive than working with the Project Manager. This session starts by going through the interface and functionality of Project Explorer, then looks at its internals to see how it's designed, and finally shows how to write addins that extend the functionality or customize the user interface.

You will learn:

  • How to use Project Explorer
  • How its integration with DVCS increases productivity
  • How to organize and filter your project items
  • How Project Explorer was designed
  • How to write Project Explorer addins to customize its behavior and appearance

Prerequisites: Experience using the VFP Project Manager

SQL Server Execution Plans 101

Presenter: Jody L. Meyer
Level: Beginner


I am a VFP developer through and through. But... times are changing and I have found myself writing VFP front-ends to SQL Server back-ends. There have been times where the passed-through T-SQL code runs extremely fast and other times... not so much. Why?

Well, there are tools such as the SQL Server Execution Plan to help you resolve questions like speed issues. SQL Server creates and saves these Execution Plans for future use. SQL Server Management Studio gives us a way to look at these Execution Plans graphically and save them so we can share with other developers. In doing so, we can then work together to come up with the best solution for faster speed.

So, do you want to answer questions like:

  • Why is my T-SQL query running slow?
  • Is SQL Server using the indexes?
  • Why isn't SQL Server using an index?
  • Are there tools out there to help me determine this?

Most SQL Server developers and administrators will tell you, “It depends”. Execution Plans show you what's going on behind the scenes in SQL Server. The plans can provide you with a wealth of information on how SQL Server is executing your queries, including: which indexes are getting used or not used, how the data is being retrieved and joined, how aggregations in GROUP BY queries are put together, anticipated load, and the estimated cost of all the operations.

Execution Plans are a great addition to the tool belt of a developer. Understanding what they are telling you goes a long way to answering many of those why questions and leads you to better performance.

You will learn:

  • How SQL Server uses Estimated and Actual Execution Plans
  • How to read these Execution Plans
  • How to tweak your indexes and T-SQL for better performance
  • How to export an Execution Plan
  • About tools other than SSMS to explore Execution Plans

Prerequisites: Some SQL Server experience

The Thin View: VFP and RDP

Presenter: Tuvia Vinitsky
Level: All levels


Remote Desktop Protocol (RDP) / Terminal Services has become a popular option for moving VFP applications to the "cloud". RDP's very thin client and Windows standardization make it an excellent platform, but running VFP applications over RDP requires some tweaks to the server and to the VFP application. In this session, we will review server side issues such as licensing and printing, and then VFP issues such as deployment, memory management, UI issues, security, and OLE access of outside programs such as MS Word.

You will learn:

  • History of RDP
  • Licensing RDP on a server
  • Printing on an RDP server
  • VFP memory management
  • Data security
  • UI issues
  • VFP printing commands
  • Accessing third party applications such as Word and Excel via OLE
  • Deployment recommendations

Prerequisites: Basic VFP knowledge

Turning Data Sideways: Crosstabs and Pivot Tables

Presenter: Tamar E. Granor
Level: Intermediate


In many applications, you need to take nice, normalized data and turn it "sideways," using the values in one or more columns to specify columns in the result. Most often, the process also involves aggregating data for each of those values. In Visual FoxPro, the result is called a cross-tab; SQL Server calls it a pivot. Once you've created a cross-tab or pivot, reporting can be difficult because the result may have many, many columns.

In this session, we'll see how to generate cross-tabs and pivots, as well as how to report on them, including exporting to Excel and creating graphs of the results.

You will learn:

  • What a cross-tab or pivot is
  • How to create cross-tabs in VFP
  • Why FastTab is better than VFPXTab
  • How to perform pivots in SQL Server
  • How to report on cross-tabbed or pivoted data

Prerequisites: Some familiarity with SQL queries

Platinum Sponsors
Diamond Sponsors
Gold Sponsors