Archive

Archive for the ‘Uncategorized’ Category

Mar
04

Looks like the first issue of FoxRockX is about to hit the streets (I first blogged about it here: Fox Rocks with FoxRockX). More details can be found here:
Visual FoxPro Wiki – FoxRockX Introduction.

I think it is very exciting how Rainer negotiated to get the past issues and source code samples of FoxTalk from Eli. These will be available to all subscribers of FoxRockX. While the demise of FoxTalk is well documented, the information in the back issues will live on, which I personally appreciate. I refer to this archive quite frequently. I have all the issues on my development machine index for optimal searching.

I will be writing regularly in FoxRockX too. My initial series of articles will focus on VFPX. It looks like you will see many of the regular authors who have been sharing with the community for years, plus some fresh faces. Bold new beginnings for our community. We live in exciting times.

I hope you take the opportunity to support FoxRockX and subscribe.

,

Mar
04

Just in case for some reason you don’t have your favorite blog reader pointing to Bo Durban’s Moxie Data Weblog, you might be interested in his posts on VFP 9 SP2 issues, bugs, and workarounds. Excellent posts with insightful details on one of the reporting issues. I look forward to reading more as this series continues.

Mar
04

White Light Computing is relocating…temporarily.

Our home is 13 years old and needs a makeover in many ways. We have done a little here and there, but starting three businesses got way of the cash flow over the years and we kept putting it off. Over the holidays I convinced my wife we need to make some changes to the family room furniture which is a mismatch of hand me downs and some couches we bought 15 years ago. This means we need to paint too, and when we moved the old furniture out we decided new carpet has to be ordered. One little change like this always snowballs.

The White Light Computing world headquarters is right next to the family room, so the carpet decision impacts the business. My office is jammed with stuff, computers everywhere and enough wire to probably circle the globe once. The last time the office was torn apart was when I started White Light Computing four years ago and it was painful.

We ordered the furniture in January, and I started working on the drywall repairs in spare time normally when I am thinking through a design or need to work out a bug. This slowed the progress and we decided to hire a painter so I could keep focused on the clients. Yesterday the painter called us and said he can show up *now* so I had to tear apart the office. I figured it was going to take two weekend days to tear apart the office and relocate it to the dining room (an acquisition not easily negotiated with Therese {g}). So instead of a month long project, this will all be done by Wednesday next week (paint, carpet, and furniture delivery). This pleases the project manager (Therese) because she now has hired workers who are not sluffing off pretending to write code all day.

I was seriously dreading tearing apart the office, but now that it is done I feel better because it gives me a chance to better organize the layout of the furniture and discard some stuff I no longer need in my life. Still, this is a nightmare come true. Time to get back to work.

Mar
01

I have talked to a lot of Visual FoxPro developers since VFP 9 SP2 was released in October 2007. I have read many of the posts on the forums. In my unscientific poll I can safely say that less than 20 percent of the developers have even loaded SP2 and there are a number of reasons for this:

  1. Developers are comfortable with the stability of SP1 and don’t need any of the fixed bugs deployed in SP2.
  2. Some developers do not have the resources to system test all of their applications and cannot adopt the new service pack until the resources can be allocated to their projects.
  3. The first release of VFP 9 SP2 eroded the confidence of VFP developers because of the missing fixes, and the “beta” splash screen.
  4. The reputation of SP2 is further eroded because of the number of serious regression bugs discovered since the release of “SP2a” (however, most developers are going on the experiences of a few who have blazed the SP2 trail, and have not loaded it themselves).
  5. Developers do not understand you can have VFP 9 no service pack, VFP 9 SP1 and VFP 9 SP2 loaded on the same development machine.
  6. Anger at Microsoft over the decision the product is feature complete, and the sloppiness of the release cycle for VFP 9 SP2.
  7. Something else?

I believe the biggest reasons are the confidence eroding regression bugs posted by the trail blazers, and the fact many developers have not considered the possibility you can host more than one version of VFP 9 on the same machine.

There is a big problem with this situation, and one really concerning me. The problem is that too few people have installed, tried, and tested the release of VFP 9 SP2. This means the brave few who have installed it possibly have revealed only a subset of the problems with SP2. I am confident that the most serious and obvious problems have been revealed. But more developers running their code through the release will better establish the complete list of issues we might have to work around for years to come.

You can see the current list on the Visual FoxPro Wiki’s VFP9Sp2BugList page. You can also see some of the workarounds for the bugs on the SolutionsToVFP9SP2Bugs page. I would like these two pages and other pages added if necessary to this important knowledgebase so the Fox Community has a centralized list of the best practices in dealing with VFP 9 SP2 issues. These pages are referenced over and over as developers come online with VFP 9 SP2 and hit the same problems others have already solved. It also allows developers supporting each other a place to refer developers who are new to SP2 where to go to get key information.

As to the new regression bugs without workarounds, the sooner we can identify these the better. The identification of the problems has a potential four-fold advantage:

  1. Developers who are making the business decision to adopt or not adopt VFP 9 SP2 will have the best information when testing and certifying their decision.
  2. A centralized set of best practice workarounds for core VFP9.EXE problems is continually refined. Bugs in the VFP XSource components can be identified and a plan to make corrections by the Fox Community can be put into motion through VFPX.
  3. If more developers adopt SP2 the Fox Community as a whole have an easier time supporting each other on the online forums.
  4. A business case to have Microsoft consider fixing some of the serious regression bugs without reasonable workarounds can be developed and presented to Microsoft. The sooner we can do this, the better the chance it will be considered. And please, never say never.

I know by myself I cannot turn the tide with respect to the eroded confidence, but if more developers give SP2 a try we can take advantage of the benefits I have outlined in this blog post. Those developers with a positive SP2 experience need to post their successes too. Too often humans focus on problems than the positive experiences, and the positives get overshadowed.

I definitely want to see the best practices flushed out and fixes applied to the XSource code. Several have already been identified to ease the adoption. If we can identify the VFP 9 core EXE show-stopper bugs to Microsoft and get those fixed, big bonus!

To help those who have not loaded VFP 9 SP2 on their development machine I have written a short white paper detailing the steps I have taken to load VFP 9 original (a.k.a. RTM – released to manufacturing), Service Pack 1 (SP1), and Service Pack 2 (SP2) on my primary development machine. This white paper is available for you to review and help guide you to install more than one of the VFP 9 versions. This process has been refined over the years and others have stepped through it, so it is tested by more than one developer.

If you are interested, you can find the white paper here:

  1. PDF file (584K)
  2. ZIP file with Word document (747K)

I am open to any feedback about the white paper and the process for the installs. I have identified the feedback mechanism in the white paper. I am sure people will see different things they want to do to make it work better. As I have noted, this process works for me and is being provided as a guide to get you through the challenge and give you some food for thought on the process.

If you are one of the those important language translators in the community (and you know who you are) and you want to translate this document to your native language, please do and let me know so I can also host it on my Web site too. I have granted general permission to everyone who has ever requested permission to translate blog posts over the years. This information should not have artificial barriers because people cannot read my writing (and no comments from the peanut gallery on my English {g}).

Special thanks to Pamela Thalacker, Mary Pilon, Tamar Granor, and Cathy Pountney who kindly responded to my request to review this document. They helped me think thorough many of the steps and offered gentle advice on improving it. This document is better because of their help, but any bugs or confusing details you may find in it are all mine.

Call To Action!

It is my hope you will install VFP 9 SP2, and will post your VFP 9 SP2 issues on the Visual FoxPro Wiki so we can identify the best practices and workarounds discussed. I also hope you will post some discussions on the various community forums. I cannot promise to engage in all the discussions because I am only one person and having an expanding customer base to serve in my day job, but this is what the FoxPro Community is all about, masses of people helping each other out.

Enjoy!

, , , , , , ,

Mar
01

I am sure anyone who reads my blog looking for VFP advice and insight already reads Craig Boyd’s blog, but since this is an important discovery and set of instructions I thought I would mention it here.

Last week a friend asked me about installing the Sedna component DDEX for VFP in Visual Studio so he could work with VFP data in Visual Studio.NET. These instructions are a byproduct of the initial inquiry.

Check out Craig’s detailed research and corrections/enhancements to this component here.

Thanks Craig, once again your contributions to our community are huge! I love his statement at the end of his post, and maybe will become our new mantra: “That’s one of the things I love about VFP… the VFP Community can provide for themselves.”

, , ,

Feb
29

Years ago when I was a corporate coder I came to the sad realization that I always work an extra day every four years. I mentioned this to my boss at the time and he tried to correct me by telling me I was finally catching up for the quarter of a day I was stealing from the company the prior four years.

I am assembling an employee handbook here at White Light Computing in anticipation of hiring someone soon (no resumes please, I have interviewed some excellent candidates and have to battle myself to make the right choice). I was thinking about doing a cool holiday that is extra from the accepted normal holidays in the corporate environment. If I am remembering correctly Hentzenwerke use to have Bill Gates Birthday geek holiday (how ironic is that {g}).

Should I throw in February 29th as a holiday? Or will potential employees think I am taking advantage of them by only giving them a bonus day off every 4 years? Maybe I can use Leap Day as the special holiday every four years and change it up on the other three. Or maybe I should just be a hard nose boss and make them work it like I am today! {g}

, ,

Feb
25

I see J.D. Mullin from the Sybase iAnywhere Advantage Database Server (ADS) team is blogging about installing and using the ADS components with Visual FoxPro. I first learned about the Advantage Database at Southwest Fox, more at German DevCon, and have learned a lot more about this product since the conference. They are bringing some serious benefits to the FoxPro Community with the components they are releasing with version 9 of their product currently in beta.

Andy Kramek blogged about his experience with Advantage several weeks back: Advantage Database Server V9.0 released as Beta

If you read Andy’s post you will see there are several things Visual FoxPro developers can leverage from this package. The component I think will really excite VFP developers is the ODBC driver which is compatible with VFP 9 database containers. This is something developers have screamed for since VFP 7 hit beta. Microsoft effectively orphaned VFP developers who used ODBC to access VFP data through products not compatible with OLE DB. The Sybase iAnywhere team is solving this problem. I also think the server product they are testing now will solve a serious security problem with DBF files without the need to upsize your database to a backend server.

I was discussing the features with some developers this past weekend and the issue of pricing came up. I checked today with the Advantage team about the cost of the ODBC driver since we talked about it. I have some good news: The ODBC driver is going to be absolutely free. All clients (including ODBC and OLE DB) come with the free Advantage Local Server (ALS) product.

If you want to see the driver installation and setup, J.D. Mullin (from the Advantage Database team) is blogging and has a short screencast about the product. Check it out here:

Getting Started with Visual Foxpro

J.D. shows how you can easily set up a remote view to access the database through a connection via a DSN. You can also use SQL Passthrough and CursorAdapters too. Simple and clean. I am looking forward to using this product soon.

, ,

Feb
22

Christof Wollenhaupt presented a marathon session this evening at the Detroit Area Fox User Group, and what a session it was. For those who saw Christof present this session at Southwest Fox and/or German DevCon, you saw a terrific session. But DAFUG listened to Christof discuss some really interesting observations he has made with respect to the behavior of VFP for more than three hours – a true director’s cut.

Christof started the session and told us (maybe warned us {g}) we are in a democracy he will talk until 50% of the people in the room left. He ended by running out of material to cover. Only one person left. I think he would have gone on to a second session, but the group was getting hungry for dinner and it was 9:30.

I personally learned numerous things and I saw part of his session in Mesa. One particular aspect was the discussion on memory, variables, and garbage collection. Christof discussed how VFP uses the idle loop to take time to purge unused memory variables. This loop is entered when VFP is waiting (READ EVENTS, INKEY(), a WAIT WINDOW, or even while tracing code in the debugger). Christof also noted something important to me in particular when he pointed out the SYS(1104) function (documented since VFP 7.0 and in the product since FoxPro 2.6) gives the developer a way to initiate garbage collection. I think this is perfect for a project I am working on where I am converting data and one of the routines is taking 11-12 hours scanning through records. The loop gets slower the more records it processes. Using the SYS(1104) function may improve performance.

Thanks Christof for taking time out of your vacation to stop in Detroit and give us a real treat! This was a terrific session! I can’t wait to hear your session proposals for Southwest Fox 2008.

, , ,