Friday, October 26, 2007

Southwest Fox 2007 Day 4

Last day. In a way, I'm relieved; this has been a ton of work and an exhausting several days. On the other hand, people I like and respect and only see a couple of times a year or less will be heading home today or tomorrow, so I'm kind of bummed too.

Once again, I missed a session. Bo Durban and I inadvertently did some pair programming. He started showing me some really cool things his product, Moxie Report Objects, does, then mentioned another cool feature he was thinking of adding: a find function in the Report Designer that would find any text in a report expression, group expression, print when expression, etc. He started working on it, I made some suggestions, he tweaked something, and before you knew it, we were pair programming. It was a lot of fun and Bo ended up creating a working version of the code in no time. Once again, it's the networking that's the best part of conferences.

After presenting the second instance of my vertical app development session, I squeezed myself into what little space was left in Cathy Pountney's Outfox the VFP Report Writer session. I'd heard great comments from other attendees and Cathy didn't disappoint. Her session gets my vote for best in show. She showed how to take control of the printing process, giving you the ability to create books (with their out-of-order pagination), offset the top and left edges of a print job, printing N-up pages per sheet, accessing the properties dialog for a printer, and many other things. The best part is that all of the code is on the conference CD, so I can start implementing her ideas right away.

After a quick break to rearrange the four break-out rooms into one large one, we started the closing session. We reminded everyone to turn in their evaluation forms; those that did were entered into a drawing for a free registration to next year's conference. That's how important evals are to us and the speakers. Rick thanked speakers, sponsors and exhibitors, Arizona Golf Resort staff, Rick Borup (for creating the RSS feed for; we somehow missed thanking him in the keynote), and attendees. We then gave out thousands of dollars in software, books, and other goodies donated by sponsors. We announced the dates for Southwest Fox 2008: October 16 - 19, at a location to be announced later (although it's fairly likely we'll be back at the Arizona Golf Resort). Dave Aring created a cool animated logo just for this (for some reason, it's not animated here):

We listing some resources, such as the Universal Thread, Foxite, Foxforum, user groups, the Fox Wiki, blogs, VFPX, and FoxCentral. We finished up asking for photos and testimonials and wishing everyone a safe trip home.

Rick, Tamar, and I had a lot of people come up to us during and after the conference thanking us for taking up the reins of Southwest Fox and for putting on such a great conference. The buzz at the conference was amazing. Everyone was so jazzed about VFP that they were almost bouncing off the walls. I personally felt totally energized and full of new ideas for my applications, and I'm sure almost everyone else felt the same way.

After cleaning up the conference area and packing up the few things we had to take home, about thirty of us went to the hotel restaurant for lunch. My last meal at the hotel didn't disappoint either; the burger was one of the best I've ever had.

Tamar, Rick, Marshal, Therese, and I then met with the hotel staff for a post-conference debriefing. We told them about the few complaints we had and those we heard from attendees, but they were very picky things; nothing was even close to being a major issue. The hotel staff, especially those in the conference and catering areas, were incredible. When we asked for something, it was cheerfully done in minutes. Mark, Brett, Mari, Sharon, and their staff bent over backwards for us and were always pleasant and fun to work with. We let them know how pleased we were with the facilities and service.

We then had a post-conference meeting of our own, going over things we need to ensure we do next year (such as signage for the registration table and providing coffee and beverages during breaks). We even started planning next year's conference, so save the date!

Rick and Therese headed to Sedona for a few days of much-deserved R & R. About twenty of those still around went to My Big Fat Greek Restaurant for dinner and had some really good Greek food. wOOdy and Christof ordered a Meat Lover's Platter for two that looked like it was really for four; I wanted to see those guys eat that much food, but they were done after less than half the plate.

Thanks again to everyone who helped make this a great conference. We'll see you again next year!

Southwest Fox 2007 Day 3

I went to Alan Steven's Integrating Windows Forms UI Elements session. It was nice to see so many people (the room was almost full) at an 8:00 session, especially given the intensity of the day before, and the pre-con day for those who attended, and the West Wind Web Connection training the two days before that. Alan stressed several times that .NET is not a competitor to VFP; it should be part of every developer's toolkit. He showed how the Windows Forms Interop Toolkit from Microsoft can be used to easily create a .NET Windows form that's exposed as a COM object that can be called from VFP applications. However, not many developers will do that because it's a completely stand alone form. He then showed the new Interop User Control that can be used to easily create ActiveX controls you can drop on VFP forms. He showed how easy it is to raise events in the control so you can put code into the event in your VFP form. Now we can easily take advantage of the really cool UI objects .NET has to offer in our VFP forms. He didn't present this as a means of migrating your apps to .NET but as a way of making your VFP forms look better and have more functionality.

I skipped the next session to catch up on email and forum and blog reading (gotta love free wireless access in the conference area!). I then did the second instance of my VFP Vista session. Once again the room was full, so that means that more than half of the attendees saw this session.

Lunch was again served outside in the courtyard. It was Italian day, so we had antipasto and canneloni. Once again, the food was great. I sat outside and had a lively discussion of health care in Canada vs. the US. The attendee who asked about Canadian health care wished he hadn't; it's one of my hot buttons, and I guess I got a little zealous -- sorry about that! It was pretty warm and I started sweating, so I headed back into the air conditioned comfort of the conference center.

I missed the first post-lunch session because I was chatting with some other attendees. As many people will tell you, networking is one of the best things about going to a conference. I also chatted with several of the vendors. Chick Bornheim from Micromega told me that he had a better response at Southwest Fox 2007 than all of the previous three years combined. Although I really wanted to see Toni Feltman's DBI controls session, I ended up missing that too while talking to folks.

The last session of the day was our vendor session for Stonefield Query and we once again had a lot of people show up, this time without any free beer. I love showing this product and watching the smiles on the faces of developers when they realize how much it'll help their users and themselves in providing a customized reporting solution for their application.

The speakers headed to Rustler's Rooste for a dinner to show our appreciation for all the effort they put into creating sessions and white papers, practicing their sessions, and presenting them to the attendees. The restaurant is massive and has a great view from its location on the side of one of the many mountains in Phoenix. I was a little disappointed in the food, but the company was great. A magician showed off some pretty cool tricks after dinner; we talked about one of them for quite a while afterward.

Those interested in indoor kart racing went to the F1 Race Factory to reprise the races we had at last year's conference. Cathy Pountney narrowed edged out Rick Schummer last year (I was a close third), so there was some serious trash talking in the days preceding Saturday night. Cathy even stooped so low as to bring last year's score card to show off. Unfortunately, we hadn't made a reservation, so when we got there, we were told it would be 11:30 p.m. at the earliest before we could race, so we headed back to the hotel. I hung out in the lobby for a while, but a week of getting up at 5:00 a.m. was taking its toll, so I headed to bed.

Here's a picture of attendees (Steve Sawyer, Sue Cunningham, and Brenda Erickson in the foreground) chatting in one of the courtyards between sessions:

Southwest Fox 2007 Day 2

Friday ended up being an even longer day than Thursday. We once again opened registration before 7:00 a.m., expecting a few people who hadn't made it to the keynote. Surprisingly, three people showed up who hadn't previously registered, so that boosted our counts nicely. I wanted to go to Craig Boyd's ClickOnce Deployment session but it ended up being busier than expected at registration plus I chatted with some folks. We also decided that it was a mistake not having coffee for a morning refreshment break (none of the organizers drink coffee so we somehow missed that), so we asked the hotel staff to put some out and they quickly complied. I joked with one of the new registrants that his conference fee paid for the coffee for everyone else, so they all owed him thanks.
Here's a picture of Rick and Tamar at the registration table:

I then did my Best Practices for Vertical Application Development session. The room was jammed and I got lots of great feedback from attendees. This is a different kind of session for me; it's a business track session so I discuss facets of vertical development such as activation and licensing, support policies, update mechanisms, and so on rather than the usually code-intensive sessions I do. In fact, I didn't show any code at all because for some reason, although my laptop worked on the projector the night before in the keynote, for some reason it couldn't see the projector at all in this session. Fortunately, Scott Malinowski had downloaded the conference materials before the conference started and kindly offered to let me use his system. Restarting my computer fixed the problem for my next session, so it wasn't a problem again. By the way, this was "the other" Scott Malinowski. It's really interesting that there are two Scott Malinowskis (the other one is from Phoenix but was out of town during the conference) in a community as small as ours.

I attended Craig's Power of Regular Expressions session. Power is right. Although I've played with regular expressions a bit, Craig did a great job of going over the various symbols and their meanings (he claimed the language was invented by aliens, given the arcane syntax). He had tons of examples, and even gave pop quizzes to the audience, showing an expression and some text and asking what the matches would be. I saw a lot of light bulbs come on for people in this great session.

Lunch was served in the courtyard. Like almost every day we were in Phoenix, the weather was gorgeous, so many people ate at the tables outside. Lunch was build-your-own sandwiches and very tasty.

After lunch, I attended Steve Sawyer's Marketing for Custom Software Services session. It was great seeing Steve again, who sort of dropped out of the community for a few years. He talked about why he felt his former business didn't succeed and what he'd do different if he could do it over again. Although the first half of the session seemed a little theoretical, Steve made some great practical suggestions about meeting new clients. He finished early, so a general discussion on marketing ideas broke out, with me, Steve Bodnar, Jeff Zinnert, and Russ Swall all contributing our viewpoints.

I then went to Christof Wollenhaupt's On the Dark Side of FoxPro session. Christof once again amazed with his incredibly deep knowledge of VFP internals, discussing how variables and objects are stored, how cache memory is used, and how Rushmore does its magic. Although this isn't a session where you walk out with ideas to implement, it does give a glimpse under the hood and lets you understand why some limitations in VFP are the way they are.

I next presented my Developing VFP Applications for Windows Vista session. This is a fun session to do, because I show all of the potential gotchas Vista has for VFP developers and workarounds for all of them. I also show how to take advantage of some of the new features in Vista, including Windows Desktop Search (which is available as an OLE DB provider, making it easy to use a CursorAdapter to query your system), new dialogs (using the Vista Toolkit in Sedna, created by Craig Boyd -- there, I mentioned your name one last time for good measure, Craig), XPS documents, and more. It was obvious from some of the questions that several people had struggled with some of these issues, so it was timely. Tracy Pearson also contributed with a couple of tips.

The last session ended at 5:30 and vendor sessions started at 7:00, so there wasn't a lot of time for dinner. We had told the conference staff on Wednesday that since there was only an hour and a half, most people would likely eat at the hotel restaurant so they'd better prepare for 180 people. They came up with a great plan: a prime rib buffet for only $16.50. It was laid out very nicely and they had enough staff available that everyone had a great meal and were back at the conference center on time.

I was pleasantly surprised at how many people showed up for vendor sessions. Although some rooms were a little light, most of the sessions had about 20 people, meaning almost half of the attendees stayed late into the night seeing what features the vendor's products had. Stonefield had a Stonefield Query developer meeting rather than a vendor session (our vendor session was scheduled for Saturday afternoon). I'm not sure if it was the free beer or our product, but we had about 30 people in attendance, which was great. We went over the new features we added in our latest release, wowing the audience with things such as drilldown reports and charting. We then went over our proposed new features for our next release and asked for feedback about which they really wanted. We also got some great suggestions for things we hadn't thought of. It was also nice that I could introduce Jeff Zinnert, Trevor Mansuy, and Chris Wolf from our company so they and customers could finally meet in person.

Since there was some wine left from our meeting, we took the extra bottles and headed to the hotel bar. We were hassled a couple of times about bringing in outside liquor until we told them that we'd purchased it from them. After a couple of hours blabbing, I was ready to collapse so I called it a night.

Here's a picture of the trade show area in the hallway outside the session rooms:

Southwest Fox 2007 Day 1

Tamar Granor and her husband Marshal, Rick Schummer and his wife Therese, and I arrived in Phoenix on Tuesday, October 16, to finish the final preparations for Southwest Fox 2007.

The hotel and conference buildings are beautiful. Since it's laid out in a resort style, every hotel room has an outside entrance, meaning we get to spend more time outdoors instead of never leaving the hotel building. The hotel intertwines with the golf course, so some of the room buildings are a bit of a hike from the main building and the conference center (mine was about a five minute walk) but a little exercise, especially after sitting all day in sessions, is a good thing. For those who didn't feel like walking, the hotel staff would provide "limo" service using golf carts. The conference buildings are nicely sized for a conference like Southwest Fox, with a couple of courtyards right outside, the perfect place to congregate between sessions for networking. Meals and snacks were served outside, although you could also eat in one of the buildings if it was too hot or windy.

Wednesday was the big day: meeting with Arizona Golf Resort staff, assembling conference binders and bags, helping staff set up the session rooms, setting up the wireless routers, moving everything to the conference center, and so on.

Here are Marshal (left) and Rick after we assembled the binders:

Here are Therese (left) and Tamar surrounded by binders:

Thursday was registration and pre-con day. We manned the registration table starting just before 7 a.m. because attendees taking Andy Kramek's pre-conference session needed to register before his session started at 8. Since we're anal-retentive geeks, we pretty quickly worked out a mechanism to optimize registration (and even documented the process!) so lineups were a minimum. The conference bag was jammed full of goodies: binder, conference T-shirt, drink koozie (courtesy of Servoy, who also provided enough bags for most of the attendees), demo CDs, brochures, wireless Internet information, note pad, pen (courtesy of Tech Smith), CodePlex T-shirt (while they lasted, courtesy Alan Griver), and squishy fun ball. Although we had created a schedule of who would be at the table when, we pretty much all hung around there all day because it was the best place to greet attendees, meet old friends, and be introduced to new people.

Based on the comments I heard from attendees, the pre-cons went very well. We provided lunch to those who registered for two pre-cons. Alan Stevens, one of our talented new speakers, pointed out that we didn't have any coffee put out for the pre-cons, and in fact told his attendees to remind us, which they did several times. I personally delivered a cup of coffee to Alan in the middle of his session, but he took it as a kind gesture rather than the prank that was intended.

Late afternoon, vendors started setting up their tables and booths. We had nine exhibitors this year, three times as many as last year. Right after the last pre-con session ended, we held a short meeting to go over logistics with all the speakers.

Just before the keynote presentation started, Ken Levy surprised us by popping in. He was in town visiting family and decided to stay for the keynote.

The keynote started at 7:00. Rick thanked all the attendees for coming and mentioned these statistics:
  • Attendees came from 7 countries and 35 U.S. states (when he pointed out that he'd forgotten to count the number of Canadian provinces, I said there were attendees from at least 15 provinces).
  • There were 148 attendees, not counting speakers and vendors. (We actually got three more registrations the next day, for a total of 151, more than double last year's attendance.)
  • With 16 speakers, 12 exhibitors, and 2 staff (Marshal and Therese), there were 178 people at the conference in total (181 by the next morning).

Rick went on to thank other people who helped us, including Bob Kocher (who previously ran the conference and graciously helped us with ideas and suppliers), Dave Aring (who created the logos and Kokopelli application), Mike and Toni Feltman (for their VFE offer to all attendees), other conference organizers (Whil Hentzen, Rainer Becker, Kevin Cully, Igor Vit, and others), DBI (for creating the conference CDs), Craig Boyd (who hosts, bloggers and podcasters (who helped get the word out), speakers (who were all introduced by name), Andy Kramek and Marcia Akins (for creating a "how to speak good" video), Southwest Fox staff (Marshal and Therese), and our sponsors.

Tamar went over conference logistics: what's in the binder, where the session rooms are, using Kokopelli, where meals are, and so on. I then discussed the trade show, going over the hours and urging attendees to visit the booths and talk to the vendors about their wares, and the two developer meeting at the conference, once for Visual MaxFrame Professional and one for Stonefield Query.

Rick spent a few minutes discussing VFP 9 SP2, including what's in it and the fact that there are two releases of it (which he called SP2 and SP2A for fun). He then talked about Sedna: what it is, what components are in it, and when it may be released.

I then had the honor of announcing the recipient of the 2007 FoxPro Community Lifetime Achievement Award. During all of the conference planning, Rick and I told Tamar that the award was for someone else. I did up PowerPoint slides with that person's biography, Rick (who designed the physical award) created a design with that person's name, and we even practiced the keynote earlier that day with the other person as the recipient. So, when I announced that Tamar was the recipient, she jumped liked she'd touched a 20,000 volt power line. I went over the things Tamar has done in her career and why she so rightly deserved the award. I was especially pleased that her husband Marshal could be in the room to watch the announcement. Rick presented her with the award and then, to my surprise, also presented awards to the previous recipients--Whil Hentzen, Rick Strahl, and I--who hadn't actually received anything physical before. It was great that all of the recipients were actually at the conference.

While Christof Wollenhaupt was setting up for the next part of the keynote, we did some drawings for raffle prizes, including several Hentzenwerke books. Christof then amazed the audience with his demo of Guineu, a .NET runtime for VFP applications. He started by telling is that FoxPro was dead and it was really a shame that you can't run VFP applications on Windows Mobile devices while he proceded to do exactly that. He then showed the same VFP app running as a .NET WinForm application and a browser application, all the while saying it was too bad that it wasn't possible to do that. It was a great presentation that really fired up the crowd!

We gave our some more prizes while Toni Feltman set up for her presentation on .NET Extender for VFP and VFP Compiler for .NET from Although it has a similar purpose as Guineu (running VFP applications in .NET), it has a completely different technology. Toni demoed some of the current capabilities of these products and mentioned that there are new releases every month with additional features added. She also suggested that at just $120, it was worth buying just to see where it's going to go.

We gave away a few more prizes while Craig Boyd and Alan Stevens prepared to show their "super secret project". They're using extensibility in Visual Studio to create something they call VFP Studio, which gives Visual Studio the ability to compile and generate VFP DLLs when you build a .NET solution. This saves jumping back and forth between different IDEs.

I then wound up the keynote with a call to action: download SP2 and Sedna, join VFPX, start your own blog, join (or start, as Cathy Pountney pointed out) a user group, and tell the world about VFP.

We then adjourned to the courtyard and trade show area for a welcome reception. It was supposed to only last until 9:30 but attendees were still talking to vendors as late as 10:30, and it appeared that everyone had a great time.

Whew! Thursday was a great kickoff for Southwest Fox!

Thursday, October 25, 2007

New Stonefield Query Blog

We've created a new blog specifically for Stonefield Query: That's not to say that I won't talk about Stonefield Query in this blog, but more business- and product-related things will go there, while this blog is more development focused.

Monday, October 15, 2007

New Blog Series by Lisa

If ever there was a reason to read Lisa Slater Nicholls' blog (and there are plenty), she just added a new one: writing "the missing manual" (oops, not supposed to use that term {g}) for the reporting system enhancements in VFP 9 SP2.

Saturday, October 13, 2007

DEMOgala 2007

My business partner Mickey Kupchyk, sales guys Jeff Zinnert and Chris Hodgins, and I were in Denver this week for a trade mission organized by Industry Canada, Saskatchewan Trade and Export, and the Canadian Consulate in Denver. I did a brief presentation on Stonefield Query to approximately 100 guests at a reception at the Canadian Consulate Tuesday evening. On Wednesday, we met for several hours with Bob Ogdon and his staff at SwiftPage to discuss how to integrate our products and were very excited about the possibilities for both integration and cross-marketing.

Thursday was DEMOgala 2007, Colorado's premier IT event. We had a booth and showed Stonefield Query to a lot of very interested people. At lunch, I was honored to be part of a roundtable of C-level executives moderated by Jon Nordmark, CEO of Jon let me talk about Stonefield Query in front of the audience of about 600 CEOs and CIOs, plus we had a great discussion about problems caused by the falling US dollar/rising Canadian dollar and the challenges of recruiting staff in the red-hot Canadian economy.

What a great trip! Not much in the way of sleep but we made a lot of very important contacts, got tons of leads, and a new business partner with some cool products.

Leaving for Phoenix

Early (6:00 a.m.) Tuesday, I leave for Phoenix and Southwest Fox 2007. It doesn't start until Thursday, but organizers Rick Schummer, Tamar Granor, and I, plus our "staff" of Rick's wife Therese and Tamar's husband Marshal, have several days of last-minute details to finish, such as assembling the conference binders and bags, coordinating meals and rooms with the hotel, and so on.

I'm really excited about Southwest Fox: the lineup of speakers and sessions is fantastic, there are some cool products to see in the trade show, and there are about double the number of attendees we were expecting, including a great mix of new folks, people I haven't see at a conference in a while, and the usual but always appreciated gang. I'm also glad the conference is almost here; it was a lot of work! Some days, emails from Rick and Tamar were 75% of my total inbox (and no, that doesn't mean I got three from them ; my normal load is about 50 - 60 legitimate messages a day). I have a new appreciation for the work Whil Hentzen (Great Lakes Great Database Workshop), Igor Vit (DevCon Praha), Rainer Becker (German DevCon), Craig Bailey (OzFox), Kevin Cully (Fox Forward), Bob Kocher (Southwest Fox until this year), and others have done over the years.

See you next week!

VFP 9 SP 2

As you've likely heard by now, Visual FoxPro 9 Service Pack 2 was released this week. Like Rick Schummer, I never install updates for anything just before a conference, so with Southwest Fox 2007 starting next week, I'm not going to install it on my laptop. However, I did install it on my home system. I followed the advice Colin Nicholls posted on Rick's blog and the Universal Thread and completely uninstalled VFP 9 first, then installed VFP 9 RTM (i.e. not SP1), then installed SP2; this ensures that all FFC classes are properly patched.

One other thing I did was to delete the Microsoft Visual FoxPro 9 folder from my Windows Vista Virtual Store (C:\Users\\AppData\Local\VirtualStore\Program Files\Microsoft Visual FoxPro 9). Thanks to virtualization, anytime you write to a file in a protected folder, Windows writes it to the Virtual Store instead. The next time you open that file, you get the virtualized copy rather than the original. So, if you opened a class in the FFC folder of the VFP home directory (assuming you installed it under the default Program Files), it's likely the VCX file was virtualized. That means any references to it will see the older, pre-SP2, virtualized copy rather than the new SP2 version. Nuking that folder takes care of that problem.

Wednesday, October 03, 2007

Stonefield Query Developer Meeting

We're holding a Stonefield Query Developer Meeting at the Southwest Fox 2007 conference. It's scheduled for Friday, October 19, from 8:30 to 9:45 p.m. in the Fairway 4 conference room. We plan on going over new features added in Stonefield Query 3.1, including charting and drilldowns, and go over planned features for the next version. Bring your ideas for new features you'd like to see. This meeting is open to everyone, not just those currently using Stonefield Query.

If you'd like to learn more about Stonefield Query and will be at Southwest Fox, we also have a vendor session planned for Saturday, October 20, from 4:15 to 5:30 p.m. in the Fairway 1 room. We'll show how easy yet powerful Stonefield Query is and how you can create a customized version of Stonefield Query for your application so you can stop writing every single custom report every one of your users would ever want.

Tuesday, October 02, 2007

Southwest Fox 2007 Keynote

A couple of very cool demos will be shown at the Southwest Fox 2007 Keynote presentation, Thursday, October 18, at 7:00 p.m. Toni Feltman will show .NET Extender for VFP and VFP Compiler for .NET from and Christof Wollenhaupt will demonstrate Guineu. Both of these are gaining a lot of attention in the VFP community. Although they're similar in concept--they allow you to run VFP code in .NET--they are very different in implementation. Be sure to attend this exciting session to see how these products may affect your future development efforts.

MVP Award

I am honored to be given the Microsoft Most Valuable Professional (MVP) award for 2007-2008. This is the thirteenth consecutive time I've been awarded, and it never gets old! Congratulations to other award recipients; see for a complete list of VFP MVPs.