Archive for October, 2005


I had a ton of fun today being a geek.

My day started with a trip across Michigan to rehearse my Data Explorer session at the Grand Rapids Area Fox User Group. The drive is actually a nice three hour ride. I used my laptop the entire trip for the first time as a device to enhance the travel experience in a geeky way. Nice to know my battery lasts exactly long enough to cross the state of Michigan, but not much longer.

I purchased Microsoft Streets and Trips 2005 while I was in Redmond for the MVP Summit (thanks to Rick Bean for pointing this out on our visit to the Microsoft company store). The software comes with a GPS unit. I loaded the driver last week on the way home from the MVP Summit so I was not breaking my new software before a conference policy. I plugged this in to see how it operates with Microsoft MapPoint without loading the Streets and Trips package. Way cool! The real time feedback is impressive and the accuracy of the maps is amazing. I have seen other more expensive GPS technology in hand held units and dashboard units show the position just off the road. Heck, this package is only US$80 and includes mapping software and the GPS hardware device (plugs into a USB port). The bad news is I purchased the 2005 version and I see the 2006 version was just released. The new version of Streets and Trips has voice and text prompted directions on Windows XP. This feature would have helped today because I was traveling alone. Steve Bodnar told me (and I have since read more) that the Streets package has more GPS features built in than the more expensive MapPoint software. Hopefully this is just a leap frogging problem and the next version of MapPoint will get the cooler GPS features so I don’t have to suck up hard drive space with both tools.

Even more geekness: while I was traveling I caught up on 5 different FoxShows I had downloaded, but have not had time to listen. Andrew: love the format and you are getting some excellent interviews. Each of the interviews provided me a little humor, insight and information. They all got me more geeked for the Southwest Fox conference next week and made the trip go a little faster which is always a good thing.

The trees are just starting to turn color in southern Michigan so the scenic part of the drive was very nice. It is almost a shame I will probably miss the peak season because Therese and I are heading the Arizona next week. Hopefully the weather will hold and we will get a beautiful view and the ultimate color tour out the airplane window on our return flight.

It was good visiting with friends on the west side of Michigan and appreciate the time each gave to come listen to a presentation I have only presented once before. It went better than expected because I have not had time to really practice the sessions before I have presented them to the two groups. As Sharon noted at the meeting today, there is always the plane ride out to Arizona. I am not sure the passengers outside of the Fox developers traveling on our early flight next Thursday really will want to listen {g}.


I have a business policy to never load new software on my development machine right before a conference where I am presenting. The policy was created years ago when I did this and it triggered a panic attack during a rehearsal days before I was headed to GLGDW in Milwaukee. Demonstrations I had run a dozen times all of a sudden stopped working. Burned once and hopefully never to happen again… Well until yesterday.

Yesterday my client set me up for access to their Citrix box so I can do remote support. I have loaded the Citrix client on other computers without incident so I never gave it a thought when we went to set this up. The Citrix client installed just fine. Life is good.

Then I started VFP 9 (with the SP1 beta installed) which I have been using for more than a week now. The VFP window is displayed, the Stonefield Database Toolkit splash screen is display, a couple more of my startup program items are processed and then the Windows Installer kicks in and asks me for the VFP 9 install CD. What the heck?

I don’t have the CD with me (a freak of nature by itself) so I cancel the install and quit VFP 9. I start up VFP 9 without the SP applied and it does the same thing. Argh! What the heck did Citrix install that could possibly mess up the VFP files? The frustrating thing about this is I probably will never know, but I suspect it is one of the ActiveX controls. I supplied the Windows Installer with the CD when I returned back to my office and all is well again. All I could think of is how bad my sessions would go this Saturday at the Grand Rapids Area Fox User Group and next week in Tempe at the Southwest Fox conference. Life is too short to have to worry about this kind of stuff happening to my machine.

So back to the business policy. I am going to add language like “never, ever” (in bold) to the “do not load any software two weeks before a conference” policy, and make this an offence punishable by termination. How hard is it to fire yourself?


I have been reading several blog posts sending crongratulations to Craig Boyd on becoming a Microsoft MVP (definitely well deserved). It seems obvious to most of us how Craig became an MVP since he has been creating examples and posting blog entries as if there were three or four of him cloned and working hard in his office in Minnesota.

That is not the full story. Head over to Tek-Tips and read any of the thousands of posts he has made over the years. His posts are some of the best forum post reading you can find. This is where I first met Craig and where I was initially impressed by his willingness to share his knowledge with the Fox Community.


Today in his blog, Andrew MacNeill asks when the MenuDesigner Professional beta will be starting. The answer is simple, when it is ready and not a day sooner. I worked on it a bit at the MVP Summit and a little this afternoon when I needed a break from all the catching up I have to do after being out of the office for the last week. There is a fair amount of work to do on it, but I am definitely in the stretch run now.

The problem solved at the MVP Summit was something very simple once you have 20/20 hindsight. When I first sat down and designed the MenuDesigner I listed the features I felt were necessary to make the product sell. I then prioritized them based on difficulty and started working on the list with the most difficult first. The reason I took this approach is fairly obvious. If I hit a technical showstopper, I would have invested less time before scrapping the product. One of the last features on the list is adding a record. At first glance this may sound easy. I mean, how hard can it be to APPEND BLANK to the MNX file, which is nothing more than a DBF? It is not hard, except for the act that GenMenu depends on the sequence of records in the MNX. To retain full compatibility with VFP and the MNX structure, I have to maintain this record sequence. To accomplish this I was depending on the old FoxPro INSERT record command. Not the SQL Insert, the old Xbase INSERT, which inserts a record physically between two other records. When I first tested this out it failed miserably.

So at dinner at the summit someone (I think it was Ken Levy) asked me about the MenuDesigner and when it was going to ship. I brought up the latest technical hurdle and David Stevenson mentions he is tech editing an article for FoxTalk which uses this command. This leads to discussion and then Doug Hennig has me search the new VFP 9 ReportBuilder project for the command. Sure enough it is in the code so it must be working. More discussion. I tried a couple of things and then we came across the one little piece of information missing from my original scenario: turning off buffering. You see, one of the base features of the MenuDesigner and the native VFP Menu Designer is the option of not saving your changes. Simple to implement with buffering. So now I have to implement my own buffering with a cursor separate from the MNX cursor I was using up to this point. This is not a super big deal. I have to change some code in the menu opening method and some more in the saving menu method and I should be good to move on to the actual code to add an item to the menu.

Back to this 20/20 hindsight, it makes perfect sense that VFP would need exclusive use to physically insert a record. I had that part. It also makes perfect sense that VFP would not allow buffering on the table to physically insert a record. I just wish I would have thought about this more, or the MVP Summit would have been months ago. {g}

So now you know…. the rest of the story.