Nancy Folsom
  Nancy Folsom has been developing business information applications for both the private and government sectors for 18 years. As owner of Pixel Dust Industries, est. 1998, she provides software development, project management, and software mentoring services to clients in wide-variety of business. Nancy Folsom has been developing business information applications for both the private and government sectors for 18 years. As owner of Pixel Dust Industries, est. 1998, she provides software development, project management, and software mentoring services to clients in wide-variety of business.

She is the author of the book Debugging Visual FoxPro Applications (Hentzenwerke Publishing), and has written articles for Visual Studio Magazine, FoxTalk, CoDe Magazine (EPS Publishing) and the Virtual Fox User Group Newsletter. Nancy was a Microsoft MVP from 1998-2002. She can be reached at: nfolsom@pixeldustindustries.com

 
  Refactoring à la Carte

Refactoring is a term that means to rewrite software to change its design while leaving its external functionality the same. Far from being a generic term for any rewrite, refactoring is a methodical approach to improving existing code. The goal of refactoring is code that is easier to maintain, enhance, and understand.

This session will use real code to demonstrate the following:
1. How to identify the bad patterns in code
2. How to determine what refactoring pattern or patterns to apply to bad patterns
3. How to apply the steps in the most common and useful patterns using real-life examples
4. The business case for refactoring

Skill Level/Prerequisites Beginner to advanced/None


  From Procedure Towards Component

Many FoxPro developers own legacy applications that have grown up around an initial business need that may still serve the original customer adequately. However, they have become unwieldy and difficult to adapt to new technologies, such as the web, or to new clients requirements. We know that n-tier design is a flexible design for changing requirements, but how do we practically and effectively extract the pearls of business logic from forms and procedural code? How can we incorporate such a fundamental design change within tight or even non-existent budgets? This session shows how to use refactoring techniques to move from procedural and form-based logic into separate components.

This session will...
1. Show you tips on identifying business logic in production procedures and forms
2. Demonstrate how to build a refactoring plan and identify logical phases so as to minimize the impact to a live system
3. Apply the refactoring plan to extract code from procedures and forms into business classes
4. Further identify and apply refactoring patterns to business classes for eventual use a distributed service.

Skill Level/Prerequisites Intermediate to advanced/Refactoring à la Carte or experience with refactoring patterns