Tuesday, October 21, 2008

Southwest Fox, Day 1

Friday got an early start because there were still people arriving and several new folks registered. I planned to attend Bo Durban's VFP 9 and SP2 Reporting Component Basics session, but was busy helping with registration and chatting with people. I figured that since he's doing that session again at the German DevCon next month, I can check it out there. In fact, for that reason, I skipped all of his, Tamar's, and Rick Schummer's sessions here so I could take in more of the other sessions. Rob Eisler and Chris Wolf, who both work for me, attended Bo's session and it gave them lots of good ideas for new features to implement in Stonefield Query.

I went to Bo's Moxie Report Objects session in the next time slot. Bo has a very cool tool that extends the VFP reporting engine, providing capabilities such as outputting RTF and HTML content on reports, rendering ActiveX controls on reports, and allowing you to gradient fill columns. I'm planning on implementing Moxie Report Objects in the next release of Stonefield Query.

I then presented my Advantage Database Server for VFP Developers session. Advantage Database Server (ADS) is a high-performance client-server database engine from Sybase iAnywhere. There are several things that make ADS an excellent back-end for VFP applications. One is that ADS concepts are very similar to those in VFP, such as "Advantage optimized filters", which in my opinion are identical to Rushmore, so there isn't as much of a learning curve for VFP developers as there is for other client-server engines. Another reason for using ADS are very cool features such as table encryption, online backup, and lightning-fast full text search (if you missed this session, you can watch my video of full text search). However, the best reason is that ADS can use VFP DBF files as a data store. That's right: your existing tables can be accessed by ADS, giving you the best of both worlds: direct access in VFP or client-server access (and all of the benefits that brings) through ADS. I discussed how an application migration strategy might work: if you want to move your application to a client-server back-end, you can migrate one module at a time (updated modules access the table via ADS while existing modules continue to use the DBF files directly) rather than having to rewrite the entire application before deploying it.

After a delicious lunch, I went to Alan Steven's Ignorance is Bliss session. Alan presented a strategy for storing application data that provides great flexibility to your application. It consists of several layers and uses XML as the transport mechanism between layers. Like many in the audience, I thought MSXML was slow for large XML documents, but Alan pointed out that in fact it was very fast but the VFP XMLTOCURSOR() function is slow. So, he showed how to use XMLAdapter to break the XML into 500-node chunks to great increase performance.

Next up was Christof Wollenhaupt's Creating Owner Drawn Controls in VFP. He discussed the pitfalls of creating your own controls by combining various controls and how the VFPX GDIPlusX project provides the same kind of functionality Microsoft uses internally to draw Windows controls. Although this is a complex subject, Christof did a good job of covering all of the things you need to be aware of when creating attractive, powerful controls.

By this point, I was getting a little tired (I'd been up since 4:00 a.m.) so I skipped the next session and instead hung out outside with Craig Boyd, Andrew Macneill, and Toni and Mike Feltman.

We added a new event at this year's conference: a dinner party Friday night. The food was excellent: steak, salmon, and grilled veggies. After everyone finished eating, we handed out some more raffle prizes, including a couple of MSDN Premium Subscriptions, each worth almost $11,000. Ken Levy also had some prizes to give away: copies of previous versions of VFP, including VFP for the PowerMac, that had been in his office at Microsoft. One of the winners, Boudewijn Lutgerink of the Netherlands, announced that he couldn't take his package home because it was too heavy (that was from the days when software used to come with manuals) and did a not-so-silent auction to raise money for our Worthy Developer Fund (which I haven't blogged about yet because we're going to rename it).

After dinner, we had five simultaneous bonus sessions and developer meetings. I really wanted to attend both the VFPX session (which you can watch on streaming video at http://www.ustream.tv/channel/swfoxtv) and the "Show Us Your Apps" session, but I had a Stonefield Query Developer Meeting to preside. According to all reports, the "Show Us Your Apps" session was a big hit, so we're thinking about expanding it next year (and certainly having it in a larger room).

We wound up the evening in the resort bar, which is the usual meeting place for attendees once the sessions are over. I was a good boy and turned in about midnight because I had an 8:00 a.m. session to present the next day,

No comments: