Nancy Folsom
Senior Software Developer
Nancy Folsom has been developing line-of-business applications since 1989. She has developed software for many different businesses including these domains: legal time and billing; facilities inventory management; apprenticeship education; and talent payroll services. These systems have been a mixture of online and desktop applications. She has worked with clients on all phases of projects from writing business requirements through to designing, programming, deploying, and training. She has designed and developed databases, business logic; user interface; and report products. She believes passionately in creating business software that is tightly focused on the objectives of the business.
Many clients need to run legacy systems even while functionality is replaced or enhanced. Nancy enjoys the challenge of managing this type of development environment, and, as such, is a passionate practitioner of refactoring. While another passion is designing and modeling databases and business entities, she is most passionate about creating software that is tightly focused on the objectives of a business.
Nancy was a Microsoft Most Valuable Professional for Visual FoxPro from 1998 to 2002.
Detailed Biography
Nancy Folsom has been developing line-of-business applications since 1989. She has developed software for many different business domains: legal time and billing; facilities inventory management; apprenticeship education; talent payroll services; environmental oversight management; and VFP-to-.NET projects. These systems have been a mixture of online and desktop applications. She has worked with clients on all phases of projects from writing business requirements through to designing, programming, deploying, and training. She has designed and developed databases; business logic and requirements gathering; user interface design; and report products. She believes passionately in creating business software that is tightly focused on the objectives of the business.
Many clients need to run legacy systems even while functionality is replaced or enhanced. Nancy enjoys the challenge of helping customers maintain their legacy system while developing a modern application. Her primary objective is creating software that is tightly focused on clients’ business needs.
Nancy was a Microsoft Most Valuable Professional for Visual FoxPro from 1998 to 2002.
Examples of recent projects:
- Environmental inspection and reporting system.
- VFP conversion to C#/.NET services for a manufacturer of construction equipment.
- Talent employer-of-record software: maintain, update, extend, and incrementally replace legacy Visual FoxPro software programming that is used to manage an entertainment industry payroll services company. On-going project addressing data, business logic development and coding, data entry forms, and reporting.
- Union apprenticeship school management software (U.S.): extend legacy Visual FoxPro application that manages the classes, people, supplies, grades, registrations, for example. The legacy system was wrapped to add online functionality for students to register and pay for classes, manage job dispatches, and so on. Project included data design, business logic design and coding, data entry reporting, analysis (executive) queries, and training.
- Apprenticeship school management software: project began as a new Visual FoxPro application that was replaced in two stages. The first phase moved the data to a SQL Server 2008 (then 2012) database. The second phase redesigned the Microsoft SQL Database to draw some data from a legacy PostgreSQL database with Microsoft SQL Server extended data. The project included new development, or redevelopment of, data, data entry forms, analysis queries, reports, and webservice reporting to external agencies.
- Mentored Visual FoxPro developer in object-oriented design principles and business logic.
Articles Authored
-
Customers vs. Code: Maintaining Relationships
Last updated: Friday, December 26, 2025
Published in: CODE Magazine: 2001 - Issue 2
Nancy Folsom argues that successful software projects hinge on disciplined requirements gathering that centers the customer and the domain, not just code. By illustrating common scenarios and advocating active stakeholder engagement, use-case thinking, and interim validation, she shows how to uncover real needs, challenge assumptions, and align design with business realities. The piece champions a flexible, process-driven approach within the unified process, emphasizing that software is ultimately about people, and that sustained customer involvement yields clearer specifications, better alignment, and more deliverable value.
-
Customers vs. Code: Analysis
Last updated: Friday, December 26, 2025
Published in: CODE Magazine: 2001 - Issue 1
Nancy Folsom and Barbara Peisch argue that successful software analysis hinges on understanding the customer’s business, not just the code. Through practical guidance on listening, translating user needs into clear requirements, and managing a cast of stakeholder personalities (The Corporate Oracle, The New Kid, The Hermit, The Know‑it‑all, The Mole, The Staller, The Quiet One, and others), they show how to uncover true needs, resolve conflicting information, and secure cooperative engagement. The piece emphasizes flexible, user‑centered interviewing, early problem framing, and collaborative decision making to steer projects toward meaningful, actionable specifications.
-
Customers vs. Code: Negotiating Contracts
Last updated: Friday, December 26, 2025
Published in: CODE Magazine: 2000 - Fall
Nancy Folsom argues that contract negotiation is a critical, mutually beneficial phase in software projects. She emphasizes that negotiators must establish clear terms on scope, costs, deliverables, and risk, and that a well-structured contract helps prevent surprises and protects both parties. Folsom advises contractors to set nonnegotiable minimums, be prepared to walk away, and keep two documents—general contract and project-specific specifications. She also highlights copyright and employment-status nuances, and suggests practical tactics for initiating negotiations with prepared templates and explicit change-management language.
-
Customers vs. Code: The Initial Contact
Last updated: Friday, December 26, 2025
Published in: CODE Magazine: 2000 - Summer
Nancy Folsom (with Barbara Peisch) argues that the initial customer contact is critical for setting expectations and winning the project. The column offers practical guidance on presenting the right image, identifying the audience and players, and aligning goals with client needs, while quietly gathering reconnaissance to tailor the pitch. It advocates a soft-sell, competence-based approach, honest handling of gaps in knowledge, and clear education about development processes, deliverables, and collaboration. Proper preparation and stakeholder awareness in the first meeting lay the groundwork for successful negotiations and contracts.
-
Customers vs. Code: Customer Relationships
Last updated: Friday, December 26, 2025
Published in: CODE Magazine: 2000 - Spring
Nancy Folsom argues that successful software projects hinge on strong customer relationships, not technical prowess alone. She reframes “customers” as anyone who funds or will use the system—bosses, colleagues, clients, and end users—and offers practical rules to improve satisfaction: keep ego in check, prioritize the customer’s goals over personal attachment to the project, treat everyone with respect, focus on the real business problem, and maintain open, proactive communication. The column previews concrete approaches for each development phase to align delivery with customer needs and expectations.

