Archive for May, 2007


Traditions are important and Advisor was able to keep my streak alive by scheduling me for the first session on the last day. As I have mentioned in this blog before, for some reason (guarantee that I will be sober) the organizers always pick me to present first in the morning. I talked about VFPX in my session “Learn How to Use VFPX Tools and Components for Visual FoxPro.” I felt this session went well and the feedback was very positive. Doug Hennig mentioned it might have been the most attended session of the conference. It is always nice to hear people are interested in your presentation, but more importantly, people are interested in VFPX and the future of Visual FoxPro.

The rest of the morning was consumed with email and following up on customer issues as I listened to Doug’s always good session on Integrating RSS and VFP. It was unfortunate, but I had to skip Tamar’s Solve Common Problems with VFP SQL. I will catch up by doing some homework and reading her white paper.

After lunch I attended Kevin’s session on the “COM Cookbook: Five Tasty Recipes for COM Automation with VFP.” Kevin went through five examples:

  1. Desktop Alerts
  2. Wrapper for VFP Encryption DLL by Craig Boyd
  3. Wrapper for VFP compression DLL by Craig Boyd
  4. VFP mail using Blat.DLL
  5. VFP Application Updater

Kevin showed the feared “Catastrophic failure” error message he had when he demoed the Desktop Alerts at the Detroit Area Fox User Group in the “Why not COM” section. He covered the fundamentals and some of the complicated things like debugging.

My last session (“Expand Your SQL Server Toolkit for the VFP Developer”) kicked off the VFP Track “overtime.” You see the rest of the conference was over after the desert reception, but the VFP track had two extra sessions for the attendees. Not bad since I was getting paid time and a half (1.5 * $0.00) {g}. This session covers a number of different categories of developer tools developers should consider to make their SQL Server experience better. I demo tools like SQL Compare, SQL Doc, MSDE Admin, and SQL Prompt. I have purchased and use these tools on a regular basis to increase my productivity and improve my profitability.

Doug Hennig wrapped up the conference with his really good session “Best Practices for Vertical Market Applications.” I have seen this session at GLGDW and OzFox in the last year, but I listened because Doug tweaks it and attendees participate with their own thoughts on the various topics. This time around I took a couple of notes for a project I am working on right now for another developer.

After the conference wrapped up we went out to dinner at Ruth’s Chris Steak House. Dinner was excellent, conversation was enjoyable and surprise-surprise we were the 1000th customer of the newly opened restaurant. What a hoot, dinner was on the manager! Later, Jeanine (who attended the VFP track) admitted she worked with the manager to set the whole thing up and bought us all dinner. After dinner we headed back to the hotel where we chatted some more.

I got to bed around 1:30 and was up at 3:30 for my early flight home. My flight from LA to Minneapolis was horrible as the guy next to me was sleeping and kept invading my personal space. From the airport I drove directly to the Detroit Area Fox User Group meeting where we held a meeting of open discussion and I ended up not having to present. It is good to be home.

, ,


Tuesday is a busy and very long day here in Anaheim. Lots of news from LA area with the fires, but it is northwest from where we are.

The first session of the day is Kevin Ragsdale’s “Best Practices for Deploying Visual FoxPro Applications.” You should be aware of my passion for the topic since I helped write the book Kevin used as part of his research on the topic. He formally recognized the work Rick Borup and I did on the Deploying Visual FoxPro Solutions book he considers essential reading (I agree {g}). He also recognized the work Rick Borup did at GLGDW 2006 on the same topic. Kevin then went through several best practices and shared his deployment successes and failures. One of the things I like to do is learn from other people’s mistakes so I can avoid them, especially with deployment. Kevin made several excellent points during the session and I thought he did a good job. Several people talked to me about our book after the session. It is nice to get the word out about it.

The next session I attended was suppose to be “Simple SharePoint Solutions”, but it was replaced with “Customized SharePoint Sites with ‘Features’.” The two presenters got together a decided the timing should be switched. I was curious more about the solutions, so I bailed out after a short time and went to get some work done. I have already seen Tamar’s session called “Practical Tips for Working with Existing Visual FoxPro Code” before, but I am going to read her white paper because I am living this with a new customer and their FoxPro DOS code. I hope they will move to VFP and SQL Server some day.

After lunch (which several people did not like, but I enjoyed because there were lots of veggies) I skipped Doug’s session on Inno Setup because I have seen it a couple of times already. It is a great session. You can read some of the material in the last couple issues of Advisor Guide to Microsoft Visual FoxPro. It is a fantastic session. The first time I attended I was making changes to my scripts in the session.

Up next was my session “Microsoft VFP Debugging Essentials.” I was not happy with the delivery of this session at all and it was reflected in a couple of the evals. I did not have the energy I normally like to deliver because I had a headache that made me feel dizzy while I was presenting. I was able to communicate, but as one eval correctly stated: “This was not one of Rick’s best sessions.”

The last session of the regular day was Tamar’s “The Why and How of Test Data.” This was another session I was really looking forward to before the conference and is one we selected for Southwest Fox 2007. Tamar shows you why and how to auto generate test data using third-party tools, and her own framework. I have a real need to generate some test data for a couple of projects I am working on so I can use this session as soon as I return home. Highly recommended session.

Right after Tamar’s session we were picked up and attended the LA Fox meeting out by LAX. This was fun. We listened to an interesting presentation by a couple of guys from GeneXus. GeneXus is a suite of development tools that generate applications from it own IDE into source code in VFP, .NET, Java, and several other platforms I cannot recall. At the same time it generates the application it generates the database in VFP, SQL Server, MySQL, and many other popular database backends. It definitely looks like an interesting product. The thing I like about it is the one source (they call the source code a KnowledgeBase) and many different “buzzword compliant platforms.” I was curious what target platform has the best performance, but they did not have any metrics. I have always been skeptical about code generators, but this one definitely looks like it is mature. The product has been around since 1988 and is very current. I am still skeptical, and the cost is a little steep (US$5000), but looks very powerful at the same time.

We had a good view of the fires in LA from the office where the LA Fox meeting takes place and watched it while we ate pizza during the break.

Following the presentation from GeneXus, Tamar, Doug and I did our 20-minute mini-sessions. Tamar demonstrated an app she is working on and how she is using GDIPlusX from VFPX to capture screens shots and print them on a VFP report. I covered Southwest Fox and the user group offer we are doing, and rapidly went through some of the VFPX projects in a quick overview. Doug followed me with part of his VFP and Vista session. It was a fun night. We got back to the hotel around 11:30 and I rehearsed my morning session before hitting the pillow.

More to come…

, ,


The conference started out with Alan Griver’s keynote. Alan did a great job. He started out by restating the no VFP 10 announcement (Alan is a brave man {g}) in case there were people who had not heard about it. I was surprised by the number of people who did not know about the announcement. There was no loud screaming or angry mob mentality. More importantly, Alan also showed all new material from SP2 and some of the issues fixed for Vista that the Fox Team is working on. One of the cool things he showed is the new toolkit Microsoft released last week to allow developers to build controls in VB.NET that can be used in VFP forms. This really has a lot of potential for VFP developers who want to leverage new controls not available in VFP. Alan demonstrated the VB menu control and coded it to display a .NET messagebox. Nothing fancy, but something very important moving forward. I enjoyed the keynote.

I attended a couple of Sharepoint sessions that were not so good. Mostly because the presenter got into “presentation hell” when their virtual machine was not booting successfully. I felt bad for him and headed to the speaker room where I got some client work done.

The next big session of the day was the session I really anticipated since I heard Doug was working on it: “Develop Microsoft Visual FoxPro Applications for Windows Vista.” It was the session that paid for the conference, okay, it paid for the non-billable time I am spending here. Doug detailed the good and the bad things, and showed us workarounds for many of the issues as we wait for SP2 to ship. For the most part you can read Calvin’s blog and see how Calvin is attacking the Vista issues presented so far. Calvin is directly working on community reported problems. Doug’s session addresses security issues, the User Access Control, Virtualization (advantages and disadvantages), installing applications and where to put the files, user interface problems, how to simply address fonts, customizing the Vista Task dialogs, and other issues he has faced. It was a fantastic session and one I think everyone should see at some point in the near future (hint, hint, it will be at Southwest Fox).

The last session of the day was Kevin Ragsdale’s session “Using InfoPath with Visual FoxPro.” Kevin did a good job and showed how you can use InfoPath as a front end to FoxPro data. He showed a VFP form and an InfoPath form that accessed a Web Service he developed using the express edition of Visual Web Developer. We are talking about a Web service developed by the creation of a ASMX file you could edit in NotePad. Interesting session. I just wish Kevin had the white paper done so I could read it when I return home (one of my pet peeves, in case you were wondering). He promises it will be done soon.

The evening was filled with a long walk and dinner at Buca di Beppo. I also watched part of the Jazz-Warriors game and learned the Pistons kicked the Bulls behinds again. With the Red Wings winning the series against the Sharks it looks like my spring is going to be packed with playoff games to watch. {bg}

Tuesday evening (tonight) we are headed to the LA Fox meeting to listen to the speaker (I hear the topic is going to be interesting). Doug, Tamar, and I might do 20 minute mini-sessions back-to-back after he is done. A VFP smorgasbord.

I do want to clarify something I have read about on ProFox where it was discussed that there are 35 attendees here. Actually there are 35 VFP attendees, but there is not a 1-to-1 ratio of speaker to attendee. The VFP track has 5 speakers so the ratio is 7:1. It should be noted on a slightly positive note the VFP track has the most registrations of all the tracks according to what I have heard through someone who talked to Advisor.

So far it has been a great conference.

, ,


The Hennig Travel Curse (for those not familiar, Doug has a habit of getting delayed during his air travel) was in play today and we learned it can have far reaching effects. Doug and I were on the same flight by pure coincidence from Minneapolis to Orange County. Our flight was delayed by the controllers in Minneapolis as they attempted to route us around some of the nasty storms in the center of the country today. They realized it would take 2300 pounds of additional fuel when they calculated the new flight plan. So they decided to let us take the original flight plan. They think the route is dangerous until they calculate the costs {g}. Fortunately the delay was only 30 minutes. It was some of the worst turbulence I have experienced, but nothing to be concerned with. It did make it tough to code at times though.

When we arrived at the hotel we ran into Alan Griver in the lobby of the Marriott Anaheim. Alan flew in from Seattle today, but his plan had problems as they approached Portland and had to return to Seattle. Now this is the first time we have a hint of the Hennig Travel Curse impacting others, but we will start to keep some statistics to see if it was a fluke or the beginning of a trend.

The hotel is nice, the food at lunch was terrific, as was the company (Alan joined Doug and I for lunch). We talked about some of the recent events in the community, and some projects we are working on.

I am looking forward to a great week. I will try to blog as much as possible, but I am unsure how many sessions I will be attending outside of my own based on the workload I am experiencing. More to come…

, ,


(I apologize for the length of this post in advance)

I want to thank all the people in the Fox Community who took the time to personally try to convince me to sign the MasFoxPro Letter to the Microsoft Executives, and those that respected my alleged decision not too, and those who said it did not matter to them. As I was telling one of my newest development tool customer’s today, my decision was made on Monday and signing the letter was one of the 18 things to do on my list from Monday.

Here is my thinking about my decision process:

MasFoxPro Letter (“petition”)
The MasFoxPro Letter to the Microsoft Executives states three ways VFP could be developed further. I disagree with one of the points, and think the second and third ones are a struggle for Microsoft in the long term. I think understand the reasons Microsoft decided the future of VFP. I am not sure the points in the letter solve the problem.

Open Source VFP:
Microsoft has repeatedly stated they will not give up the Intellectual Property (IP) known as VFP because the technologies are leveraged in other tools, languages, and databases. I fully understand the protection of this IP having been a victim when one individual and one company stole the IP from my company. The competitive loss from a financial and intellectual perspective are significant. Imagine if your competitors just removed part of your revenue stream from under you because someone asked you to release your source code. I think all software developers can all relate to this. If you owned Rushmore and it was integrated in three products you were actively enhancing, would you let your competition get a look at it? I am sure it is more than just Rushmore.

Second, I know there are only a small percentage of developers in the Fox Community who could take the source code from Microsoft and support and enhance it. I am guessing less than 3% of the developers who write VFP applications and tools are capable or even interested in writing a language (XBase and SQL), the IDE, and the supporting XBase tools. Even if it is Open Source with the appropriate license so the developers could sell it for profit I doubt there is enough brain power willing to pull this off. That said, even if we could find 10 people to form a new Fox Team, it would be a long time before they could release VFP 10.0 and I suspect the momentum would be lost. That is not even taking into account the fact some companies want a large company like Microsoft backing the tools they use.

Form a partnership with a third-party to continue development
Interesting possibilities, but I think Microsoft is risking the IP issue again. The tried this with FoxPro for Unix and this was not a strong success story. On the other hand, with this option you would get dedicated resources and could build a profitable business model. I believe the support and partnership with Microsoft could bring credibility to the product that would be lost if the source code was released to an open source project.

Microsoft continuing development of VFP
While I think this is the optimal solution desired by the community, I have my doubts this is possible from a resource perspective. My general thinking on this follows the line of working on the same project for an extended period of time is hard on developers. I have not talked to the developers on the Fox Team about this particular issue, but most developers I know who work in the same code for 3 or 4 years get bored. The core VFP team has done it for longer than this and there are parts of VFP that are more than 20 years old. Having a stable core is an absolute necessity. Remember the instability of VFP 3.0 with all the new code to make Fox “visual” and a new database engine? I don’t have time to fight instability.

I think Microsoft would need to develop a plan to rotate new C++ developers into the team on a regular basis. There are risks in doing this for sure, but it allows developers to move on to bigger and better challenges, which I think all developers look forward to once and a while. The Fox Community has been extremely lucky people like Calvin Hsia, Aleksey Tsinqauz, and Richard Stanton (he is a relative newcomer to the group) have been around for so many releases. The guidance of Randy Brown was not really appreciated until he left. The Tech Support team of Jim Saunders and Trevor Hancock rounds out a rock solid foundation with the team.

So the tough question begs: what C++ developer wants to work on the Fox Team? You have a VFP product that is not strategic in Microsoft, or you could be working on something like SQL Server or the “popular” .NET that have roadmaps with “infinite” lifetimes. Few developers might choose VFP, but from a career growth choice, is this the best move? The good news is VFP apparently takes fewer resources than other development platforms so we only need a few good people to step up.

Summing it up
Even though I disagree with some of the proposed solutions, in spirit I believe in the general consensus about wanting VFP to be continued and enhanced. I am not a solidarity type of person even though I live in a huge union town. I do however get passionate about causes and will get behind one I believe. I normally do things I think will make a difference, and participate in the things I think have a positive impact on our planet.

Do I think this will change the things at Microsoft. Nope. In fact, most of the people who contacted me about MasFoxPro also feel the exact same way. I am not in the minority on this. But I think the important part of this campaign is not to change the minds of Microsoft, rather it is sending them a message about abandoning customers (bad!) and letting them know how much we care about VFP.

The only way I believe this decision can be changed (and I think this is not possible) is to give Microsoft a number of reasons how VFP can be enhanced. I am not talking about removing the 2GB limit on tables and memo files (this has been solved with different backend databases). I am talking about features that matter and will sell the product to VFP developers. I can count on both hands the number of developers who have really answered the question: “Name me five ‘back of the box’ features Microsoft should add to VFP in the next version?” Most developers will mention the 2GB limit (won’t sell Microsoft), some talk about OOP menus (see VFPX), some talk about a modern IDE (I would like some of the IDE features in the .NET UI), but for the most part the wish lists posted have minor things in them that we as a community can add ourselves, or are very obscure and not beneficial to most developers.

So there you have it. I am signing the “petition” after posting this, and then I am back to work all evening long to catch up on the to-do list that seem to be growing.

In closing, I will reinforce my position – we need to direct our energies toward moving VFP forward with or without Microsoft. We should not be splitting the community over a silly “petition”. I stated this before: it does not matter that Microsoft is calling VFP feature complete. The community is powerful and resourceful and can do more as a whole than 10 of the smartest people I know working inside Microsoft (still known as the Fox Team).



(Sorry, I am in a ranting mood this afternoon)

Abandoning customers is bad for business? Duh. I know, this is not rocket science. I know this is one of the fundamentals of running a solid and successful business. So why am I reading and hearing about so many businesses who are and what is the cost?

This question was actually asked of me recently. One of my customers asked me if the decision by Microsoft means I will be abandoning VFP and with it abandoning the customers I have worked with for years. My answer was “Absolutely not!”

I recently wrapped up the work with another customer. In meetings in the last month of the project the customer asked me if they needed support would I be around. They were worried because they had me working on their project for more than two years. We decommissioned a FoxPro for Windows application, but their 2.6 app will run for the near future because some of the functionality is not in the new application and likely will never be in the new application. I told them they could call me anytime. Just because I am not in their offices does not mean they all of a sudden are not my customers.

So why are other businesses abandoning their customers?

Example #1: General Motors. For years we owned Safari vans (yes multiples, I think 4). The reason we owned a van is we are a family of five and need to tow a heavy camper. We liked the Safari because it fit in the garage, yet it had a strong engine and lots room for the kids, the dog, and our gear. GM decided to stop making the vans three or four years ago. The full size vans are ugly, consume too much fuel, and won’t fit in our garage well. We settled on the GMC Envoy XL as our replacement for our van. It is definitely smaller so we take less gear when we travel, but some of the gear we are leaving behind are bicycles which is a huge trade-off. GM has now decided to stop making the XL and the regular Envoy is too small for a family of five with a dog. The replacement for the Envoy XL is not as nice. Abandonment.

Example #2: Hewlett-Packard. Previously HP had stated that they would not be producing any new print drivers for printers that were more than 3 years old. What? I still have an HP 4P Laser printer in the basement that works fine. It is slow, but the electronics work fine. This printer must be 15 years old. Printers were built better back in the 90′s (said in my best cranky old man impression). How can HP think they can get away with thinking every time you update your OS or more naturally introduce a new OS into the computing environment you should get a new printer? Nonsense. Complete nonsense. Fortunately I read this morning where HP has reversed this decision. Could it be their customers were outraged, or did common sense all of a sudden kick in?

Example #3: You knew this one was coming, Microsoft. Vista has some real positives in it, but Microsoft is really missed the boat when it comes to customers. SQL Server 2000 and MSDE – not supported on Vista. SQL Server 2005 patched so it runs on Vista more than a month after Vista was released to consumers and many months after it is released to businesses. SQL Server is strategic in the Microsoft revenue stream. “Just upgrade” is not a simple and straightforward task when businesses run their mission critical apps on the database. Visual Basic was dropped cold years ago and VB6 developers are still trying to get new versions out of Microsoft. J++ gets the ziggy after Microsoft woo’ed Java developers over to their side. VFP is feature complete. FrontPage was recently dropped (some say it was a blessing), but at least Microsoft has their new Expression Web product to replace it. No security patches for Windows 2000 and even XP SP1 is inexcusable in my opinion. Just because Microsoft decides it is out of its support cycle does not mean businesses and home users will automatically upgrade. There are significant costs involved for Microsoft and consumers. Vista is getting compared to Windows ME, and this is definitely not positive. I got a phone call this morning from the Microsoft Partners program because they wanted me to know about the Linux Winback marketing campaign. This campaign is suppose to provide my company with the marketing material to convince my customers and prospective customers to move back to Windows. Seriously. I told them they need to focus on keeping the Windows customers happy instead of trying to win them back. Abandonment of customers is not a good business practice.

Example #4: Coke: The makers of Coca-cola abandoned their customers when they introduced their “new” Coke and later had to come out with Classic Coke so customers would return. I am not sure if this was a premeditated plan or not, but I remember how I felt as a customer. Abandoned.

Companies need to wake up and smell the hot chocolate. Otherwise they won’t be in business very long or spending lots of money trying to regain the customers they lost.


The organizers of Southwest Fox have always supported FoxPro user groups over the years. All three of us have presented at user groups across North America and two of us are directly involved in the day-to-day operations of our local user groups.

So we sat down and tried to figure out a way for Southwest Fox to benefit the FoxPro user groups. Normally you see conferences like Southwest Fox offer attendees a discount off the registration. While this is nice for the attendees, it really does nothing for the user group, and is a pain to deal with administratively.

With this in mind, we came up with a new concept for user groups to make money by getting their members to attend Southwest Fox 2007. Basically, we will help the user groups by giving $25 back to the group for every member who attends our conference. We figure most user groups can use the cash to cover expenses of the organization, or can help cover the costs of travel for outside speakers (we know most groups cover these costs).

All the details are on the Southwest Fox Web site, check out the “User Group Discount” link in the site menu. I think we figured out a painless process to administrate this discount.

This is a really cool way for us to show our support and give back a little to the Fox Community.

Don’t belong to a Fox user group yet? What are you waiting for? Not one in your area? Drop me an email, or give me a call and I will be happy to talk about my experiences in helping set up the Detroit Area Fox User Group and running it for more than a decade.

, ,


Sessions, Speakers, Sponsor, Registration is open, and Scholarship news!

It is my extreme pleasure to announce the sessions and speakers for Southwest Fox 2007 are posted on the conference Web site. Check it out. See how blessed we are to have a great speaker lineup offering great topics during the conference. I am very geeked by the knowledge these individuals are bringing to Southwest Fox in October. The line up is very strong and packed with expertise.

The sessions are top-notch material you will be able to us immediately in your VFP development. The presenters know we require each session to have a white paper you will be able to reference when you return home.

You can review the sessions by speaker, by track or alphabetically. Sliced and diced. We have color coded the tracks so you can see what sessions belong to what track.

I also get to announce our first sponsor – West Wind Technologies. Rick Strahl has been one of the brightest stars in our community and has really stepped up to support our conference as a sponsor, and is hosting a Web Connection 5.0 training session a couple of days before Southwest Fox at the Arizona Golf Resort and Conference Center. You can make it a two-for-one trip with some Web Connection training as the opening act and Southwest Fox as the second act.

Registration is now open. We have a bank of operators waiting in our call center ready to take your call. OK, we have one operator waiting in my office ready to take your call. But seriously, if you are trying to be the first to register, the opportunity might be available. I know you are all a very competitive bunch {g}.

White Light Computing Scholarship – this is not on the Southwest Fox Web site yet (because I forgot to tell Doug to add it)… White Light Computing will be offering a $300 scholarship again this year to one attendee. The name will be drawn from all the attendees who register during the early-bird period (ends July 1, 2007). More details to be posted soon.

So get in early, save US$75 on the registration fees, get one free pre-conference session, and a chance to get more than half of the registration cost covered by my company. Hope to see you in Mesa in October. Only 170 days to go!

(updated to link to the SWF 2007 Web site)

, ,