Ich widme dieses Buch meinen Eltern (Erna und Franz Egger)
sowie meinen Großeltern (Anna und Franz Wimmer, Hildegard und Josef Egger).



Over a year ago, I started to discuss with Whil Hentzen the possibility of writing a book exclusively about object-oriented programming in Visual FoxPro. I knew Whil was planning a series of books about Visual FoxPro 6.0, and to me, the series just wouldn't have been complete without something on object-oriented development. After all, Visual FoxPro has an excellent object model, and it will be a shame if people don't start using it more than they do now. Luckily, Whil saw it the same way and we decided to do this book. So the first "thank you" goes to Whil Hentzen for letting me do this in the first place.

When I started work on this book, I knew it was going to be a large task. Boy, was I wrong! This task wasn't large—it was enormously huge! When you write about advanced object-oriented programming, there is a large amount of research involved. Also, there is a lot of text and few pictures (unless one draws pictures, but I'm a lousy artist…), so the pages filled up very slowly. Also, the task of writing a book in a foreign language turned out to be not so simple. But again, I was lucky: I had Mac Rubel as a technical editor, who gave lots of helpful input and was of great assistance every time I stumbled over hurdles in the English language. Thanks, Mac, I couldn't have done it without you! The same is also true for Jeana Randell, our copy editor, so also "thanks" to you, Jeana!

I'm not a professional author. My job is to design and write object-oriented applications, mainly as a consultant. I do a good amount of writing, and I also like to speak at conferences and other events, but all of this is more personal pleasure than business. For this reason, writing this book cut deep into my spare time, which wasn't only at my expense, but also at the expense of my best friend and fiancée Martina. I want to use this opportunity to thank her for sticking with me during this time, and even helping me out as much as possible. Thanks, Martina, and I promise to have more spare time from now on!

The initial outline of this book was slightly different from what you hold in your hands now. We decided to make some changes as we went along, mainly due to the fact that I discovered things that weren't obvious before. The chapter that deals with the Fox Foundation Classes is a good example. When I came up with an outline, I knew that there would be new foundation classes, but nobody (not even Microsoft, I think) really knew what they would include. Once I saw them, I realized how powerful and important this set of classes was, so I decided to write much more about them than initially intended. However, this also required a lot of input from Microsoft. Thanks to the entire Microsoft Visual FoxPro team for their help!

Obviously, it took me a while to even get to a point where I could write a book, and I didn't get there all by myself. I want to thank my parents for supporting a crazy teenager who had some wild ideas about writing software for customers all around the world who would be serviced over the Internet. To many of us, this is part of our daily lives now, but then it was science fiction, especially to the bankers. Without having my parents (and the rest of the family) supporting me, I would have given up a long time ago. Thanks for this support!

Once I started my own business, I realized how hard it was to get a foot on the floor without stumbling too much. At this time, people such as Jürgen "wOOdy" Wondzinski, Steven Black, Andrew Ross MacNeill, the German FoxPro Users Group and basically the entire FoxGang were extremely helpful. Thanks to all of you!

—Markus Egger