Session E-BUS1

Creating a Successful

FoxPro Product

Chick Bornheim
Micromega Systems, Inc. S.F. CA.


If you're a developer, it's likely that you think of good ideas faster than you can do anything with them. It's also likely that you've had at least one idea for a "million dollar" product during your career. Maybe it was a clever utility you wrote to help your client with some problem, or perhaps it was a new vertical market application that you thought of while talking to a prospect. The temptation to create a product is strong and inbred to programmers. And from personal experience, I promise that if you decide to go ahead, it will be one the most exciting, frightening, educational, and rewarding experiences you've ever had -- even if you go broke in the end.

This discussion will cover some important points for turning your idea into a product, including potential and actual problems, traps, tricks, and rewards of doing so. We will begin by briefly reviewing my experience which includes some failed attempts at creating a product (this history illustrates not just to how easy it is to fail but also provides insight about my current point of view.

The last case study will be the inside story of Foxfire! Report Writer, my first really successful FoxPro add-on product. We will study some important lessons that I’ve learned from my efforts, and I will make observations and recommendations that may help you avoid some problems. Finally I’ll answer individual questions and you are most welcome to contact me during the conference (I’ll be in the Foxfire! booth) or by email later at

I want to caution you about the two biggest pitfalls a programmer faces when trying to create a product:

  1. Out-thinking your potential customer (we call it overly-intuitive thinking) which leads you to false conclusions and wrong-headed thinking, and
  2. getting distracted by other ideas.

These two factors come from inside you and are at the core of most of the unsuccessful products I’ve studied. By the way, I’m not immune to them. See if you can identify them as we proceed.

Personal History

In his book, Secrets of Consulting, Gerald Weinberg shares an important "secret ...

"Things are the way they are because they GOT that way".

The know-how for creating a successful product does not come by magic. It is acquired from experience (we call it "paying your dues"). The typical progression is for a product developer is ...

Fact: Most commercial products start out as a custom application

Entrepreneurial Seizure (n) - a sudden, extremely strong urge to start your own business. If ignored it quickly passes, but repeat episodes will typically occur throughout your life. The tendency to have such urges cannot be cured, but the seizures can be controlled by learning to ignore them.

My first Entrepreneurial Seizure was starting my own part-time, after-hours (moonlighting), programming business while I was still a civil servant. Eventually I incorporated it as Micromega Systems. In 1982, I became the first full-timeemployee.

Tip: Choosing a name for a service business, pick a trade name that describes the service. Originally Micromega was supposed to mean "We can work with both big computers and small ones (because the Apple computer was starting to become popular)". Now we say it means "We do big things with small computers".

For a product business, pick a clever "trademark" which is combined with the product. Foxfire! was chosen because of its association with FoxPro (Fox), and the fact that it was fast and hot (Fire). But the proper name for the product is Foxfire! Report Writer.

Problem: Independent consulting generally does not give you more free time than employment . You only have a limited number of hours to sell, so when you stop working, you stop making money. To make more (the " real money"), you have to sell something that has a more abundant supply.

Logical solution: invest time to create a product (it can be recreated in a few minutes).

Product Idea #1. As an independent consultant for Micromega, I was engaged by a client to create a vertical market product in dBASE II. I agreed to accept a lower fee in return for a percentage of sales (royalties). But the unethical client never signed an agreement. I proceeded to do the work and later, they refused to pay me the royalties. In fact they replaced me with an employee, claiming I was taking too long (the system was finished and they were asking for an estimate for version #2.

Tip: Put understandings in writing before the deal. Afterwards is too late.

A "... uh ... Banking Application" (we weren’t clear on what kind).

In 1991, from our own experience we decided a FoxPro add-on query / report writing tool would sell well.

Creating a product is risky and expensive. After you start, at some point it becomes impossible to stop. Before you proceed, you must research several issues carefully because they can cost you a lot more than simply money. You must to be able to keep focused and defer gratification far longer than you think. If you want to proceed, what do you do?

Unless you have an unlimited budget, where and how you advertise depends primarily upon the characteristics of the specific product -- for example who its customers and ultimate users are, it’s industry and purpose, it’s retail price -- almost every factor affects the advertising.

Listed in order of overall effectiveness in reaching the largest number of FoxPro developers and convincing them to try your product.