When I agreed to write articles for FoxTalk again, after a very long absence, I did so with mixed feelings. David Stevenson made a persuasive case and provided a welcoming platform for both C and me to discuss certain areas of our work on VFP 9 that, we knew, would never make the documentation. Chief among those areas, for me, was the thorny subject of PDF creation within Visual FoxPro, so that was naturally the first article I published.
The PDF article and its sister piece, which is about many obscure techniques needed to control printing in VFP, were also the first pieces I re-published here on Spacefold. These two IMHO constitute the contribution that is most uniquely-mine to make, outside the in-the-box bits, to the VFP 9 canon. I want people to have access to this information.
I am very sad about what has happened to FoxTalk, by the way. I wish these articles were properly available without my re-purposing the content. (Those were the conditions under which I published them, and David enthusiastically agreed.) On alternate Thursdays I also wish I had never come back, after so many years, to watch the journal die a painful death.
The Log4Fox piece I've just posted to our Spacefold article cache remains, nevertheless, my favorite among my this-century FoxTalk contributions. And this is a curious thing –because in some ways it's the least original work I've ever done. It's more like a gloss, or an explication de texte from my lit-crit days, than an original short story.
What I mean to say: Log4Fox is an abbreviated Visual FoxPro code implementation of log4j, an instrumentation API that I came to know, and to love, during the years C and I spent working in Java.
It's the right tool for the job. And log4j is one of those designs that make you remember why you thought being a programmer was an art, and a joy, in the first place.
It's not my design. Neither is it the anointed design of any vendor, even though vendors provide their own logging APIs (I discuss this a bit in the article). It's just a really great design.
I hope you enjoy my introduction to it, whether you work in Fox or Java or Perl or… anything.