Mar
10

FoxPro Popping Corks

Looks like more positive press about Visual FoxPro and specifically Sedna in the news. Check out the FoxPro Popping Corks in Redmond Magazine. Thanks to Ken for pointing this out to me.

The only issue I have with the article is the insinuation you have to be in the FoxPro inner circle to get the bits for the Sedna Community Technology Preview (CTP). Nada, everyone can get the bits. It is all part of the new Microsoft approach to the alpha/beta cycle and their transparency in approaching the release for the next release of VFP.

Mar
07

Is it just me… AT&T?

Is it just me or are things out of control again?

When I was in college (1984) AT&T; was considered a monopoly by the United States government. For the youngsters or folks outside of the USA in the reading audience: AT&T; was the phone company and often was referred to as Ma Bell. The government took action and busted up AT&T; for our benefit into the “baby bells”. Huge amounts of cash was spent on this event.

Fast forward to 2005 and SBC Communications (a combination of Ameritech and several of the original baby bells) buys its former parent company AT&T; for US$16 Billion . Fast forward to 2006 and AT&T; is now prepared to buy BellSouth for US$67 Billion. Sixty-seven BILLION dollars? When the merger is complete it will mean almost half of the 24 baby bells will be back under the AT&T; umbrella.

To add salt to the wound AT&T; sold AT&T; Wireless to Cingular Wireless, which happens to be owned by SBC Communications, which later bought AT&T.; The other owner of Cingular Wireless is BellSouth soon to be part of AT&T.; Another case of company cannibalism?

Where does all this money go??? Does this make them half of a monopoly again?

Is it just me…?

Mar
06

Yesterday I experienced some nostalgia with Visual FoxPro. A few months ago Rick Borup asked me if I would write a short article about discovering something new in Visual FoxPro for the Advisor Discovery column he tech edits in the Advisor Guide to Microsoft Visual FoxPro.

Yesterday I wrote this short article and had to do a little fact research for the piece. I pulled off the shelf my binder for the 1995 Microsoft FoxPro International Developer Conference (DevCon). This is the DevCon where Microsoft revealed Visual FoxPro 3.0 publicly. I went through the binder and read the topics and descriptions and the speaker list. Wow.

Interesting statistics:

  1. 80 people from the Microsoft VFP team are listed as special guests (Calvin Hsia and Cameron Slade are the only two remaining on the team today, and several are high up corporate ladder in Microsoft and other companies).
  2. Only 9 CompuServe MVPs (Beane, Booth, Freeman, Granor, Pollack, Ruple, Sexton, Shultz, and Slater), two are still officially MVPs and several more are active in the Fox Community. There are 33 VFP MVPs today.
  3. 50 sessions
  4. 50 speakers
  5. Up to 13 sessions going on at one time
  6. 14 session slots plus keynotes.

A lot has changed in 11 years, but some things still remain the same. For instance, the approach I take to picking sessions I attend during the conference. I looked at my session choices for the 1995 conference and questioned some of my selections. Looking back I missed Savannah Brenthall’s Overview of the Visual FoxPro Object Model and Alan Griver’s FoxPro and Client-Server – A Path to Reengineering. In reality the choices were tough because I could only see a third of the sessions. I had to make choices that not only benefited me, but benefited the company I worked for (EDS) and the team I was a part of at the time.

In this binder I still have the 28 page “Trip Report” I did for my team. I detailed all the sessions I attended, all the benefits of moving the development of our organization to VFP and SQL Server from FoxPro 2.6 for DOS and Windows. It looks like the arguments I made then would still work today.

It was a great conference and it was fun reliving some fond memories I probably should have used the time to work on the sessions I will be giving at the conferences this year, but I think the perspective of the 1995 conference will better prepare me for the 2006 season.

Anyway, if you recall a moment in time when you discovered something about Visual FoxPro and have a spare hour or two, write it up and send it off the Rick Borup. I have enjoyed reading the few articles published in this new column and look forward to reading your discoveries.

Mar
03

Treo 700 and ActiveSync

Quite a frustrating week with my new Treo 700 cell phone. As I noted in a prior post, ActiveSync is not doing its job when it comes to synchronizing tasks, contacts, and calendar entries. It is something I expected to be simple. Outlook, ActiveSync, and Windows Mobile 5.0 are all owned by Microsoft so I expected this to be a no-brainer. It has been more than a little frustrating, but the end of the story has a happy ending.

This week I spent too much time (which is a premium of late) researching error 85010014 on the Web and in some Windows Mobile forums. Lots of ideas, but most point to Exchange Server trouble or not running the latest ActiveSync (which I am). Not fun.

So I broke down and headed to my local Verizon to the tech support desk (the same desk who told me I was out of touch when it comes to technology last summer {g}). They asked me one question and handed me the phone number to the Verizon Data Tech Support line. I called them the next morning and after two simple questions they forwarded me to the Palm Tech Support line. Guess Verizon cannot keep up with technology {g}.

The guy at Palm was nice and promised to get this problem resolved. I provided the error code and he said, he had seen this before. Finally, a fix at hand.

We went through my entire system tray and stopped the apps he felt could conflict (strange how SQL Server and SnagIt could be trouble, but the Palm HotSync is not). No luck. Next he had me hard reset the phone. A bit harsh from my perspective, and it made no difference other than for me to lose all the settings I made setting this phone up. No problem, just another half hour of my time to reload the programs I have installed and the settings I made. Next step, Outlook must be broke. At least this time he had me back up my PST file before attempting to the Detect and Repair option. Still no luck. The next step suggested is to uninstall and reinstall Outlook. This is where I drew the line. No possible way am I taking this drastic step. Why not just recommend I reformat the drive? Sheesh. I rely on Outlook as much as I rely on Visual FoxPro to make a living.

This morning I decided to research alternative sync tools. I came across two: PocketMirror for Windows Mobile and Intellisync. I have been a big fan of PocketMirror with my PalmOS PDAs. It rocks and is exactly what I expect out of a sync tool. Simple decision. I checked out the Web site and it is only US$50. I called Chapura and unfortunately they have not released it yet and don’t have a beta program. It is expected to be released in a month. Too bad, because I cannot wait that long because the phone has to go back in 19 days if I cannot get this to work. I am a big fan of brand loyalty so this hurts.

I downloaded the trial of Intellisync and within 30 minutes I have all my contacts (nearly 500 of them which surprised me), all 800 calendar entries, and 200 tasks all synced to the phone. Oh, and it syncs subfolders! Swwweeeet! Subfolders is something ActiveSync does not have a clue about. Guess I have some new brand loyalty. Intellisync not only synchronizes Outlook, it syncs with a bunch of PIM apps. It also syncs to a PalmOS device. It seems like a great deal at US$70.

So I have 30 days to evaluate this software and I am planning to make a decision much sooner than the deadline. My advise to you if you are thinking about PocketPC is to skip ActiveSync for everything other than transferring files and loading software. Save yourself hours trying to solve this dumb problem.

By the way, I really like the phone and now that all my contacts are sync’d, life is good. Like I said, a happy ending.

Feb
28

Light Reaches Sedna

Just in case you were heads down yesterday like I was and did not see Milind sneak the March letter to the community out a couple of days early: the first Community Technology Preview (CTP) of Sedna was released yesterday and available to download.

The only word of caution to note is this is pre-beta software. It as been tested internally, but as you know with any pre-production software, it might not be ready for prime time or production applications. I still recommend downloading and testing out the NET4COM component if you are interested in the functionality provided in the specification.

There is more good news from Milind: the announcement of the initial list of seven ActiveX controls available for free from DBi for Sedna customers. I have used DBi controls in the past and have been extremely happy with the results. This is great news and a huge contribution from the folks over at DBi.

Feb
25

Treo 700w

This week I upgraded my cell phone to the Treo 700 Smartphone as part of a technology update and plan update with Verizon Wireless. I read a number of reviews and talked to a couple of people who already own one and everyone was very positive. For the most part I have been impressed, but I have two huge problems I have not been able to resolved yet.

The Treo is a PocketPC running Windows Mobile 5 and a phone. I decided I wanted to integrate these two technologies together. I have a number of friends who have done this and have been very happy. I have been using a Palm Pilot (first the III, and then the m515) running the Palm OS. Everything on the Palm platform is seamless. Both of these have been real good machines and have saved me a lot of time managing my schedule and tasks. The two killer apps on this platform for me have been the To-Do List and a password database. I have been using PDASafe ID from Handmark for years and it works great and literally is the reason I stuck with Palm for so long. But the handwriting is on the wall with Palm moving the Treo to PocketPC.

Fortunately, I recently discovered PDASafe ID was updated and is now called SplashID available from SplashData. I upgraded today for $10, downloaded, installed, and quickly ported my data (over 300 password entries). The port to the Treo was pretty easy once I figured ActiveSync does not automatically sync the data between the app on the PC and the app on the PocketPC. This was the easy part.

The problem I am having is syncing my Outlook calendar, contacts and tasks. I figured this would be the simplest part. After all, ActiveSync is from Microsoft and Outlook is from Microsoft. The Outlook notes are syncing fine. ActiveSync is reporting support code 0×85010014. I have only found one site that discusses this problem most of the solutions tell you to upgrade to ActiveSync v4.1. I am already running this version. Should be fun figuring this out. I’ll keep you posted. Maybe there is a Windows Mobile MVP out there with the answer.

The other problem I have is going to take Microsoft updating ActiveSync. Apparently no one at Microsoft thought anyone would have multiple contact folders as subfolders under the Contacts folder. I happen to have more than a dozen and no one in the main contacts folder has an email address. This is all part of a strategy developed years ago when viruses started sending out emails to everyone in the contact list. If I ever get attacked there is no one to send to. The Palm in conjunction with Chapura has been dealing with this setup for many years. So I am looking for a solution for this problem in my limited spare time. If you have a solution up your sleeve please pass it along. I am definitely not opposed to paying for software that will solve this if it is reasonable.

Feb
21

Some developers are surprised to find out that the Project Manager is a drag-n-drop client and server. This means that files can be dragged to the Project Manager from many sources including other projects and from outside of Visual FoxPro. If you drag files from the Windows Explorer all the files will be added to the project.

Dragging from one project to another
Dragging files between two different projects creates a reference in the second project for that file. If there is a description for the file, this description is also added to the second project, even for files that don’’t store the description in the file itself. If the file is a program set as the main program of the originating project, VFP will prompt you with a question that asks if you want to make the file the main program in the second project. You do not need to be on the same page in each project. The file is naturally added to the correct category based on the file extension.

Drag objects from a project to a designer
Dragging files from the project to a form or class designer can save time during development. Many project objects can be dragged to the Form or Class Designer. The dropped objects are instantiated in the designer.

Dragging a field from a database contained table, view, or free table to a form or class will instantiate the associated class for the data type. The advantage of this feature is that it creates a bound object in the class without the use of a dataenvironment. Many developers I have mentored over the years feel they need to first drop on a class and then set the ControlSource.

While the manual setting of the ControlSource works, it requires developers to perform an extra step. The other advantage of this technique is that it incorporates the IntelliDrop capability seen when you perform this operation from the dataenvironment. This way the classes specified in advance are used instead of the VFP base classes. Tables dragged to a form or class will instantiate a grid. If you right-click and drag, you are presented with the option of the grid class (or other class you have set for the Multiple setting in the Field Mapping in the Tool|Options or via the Task Pane Environment Manager).

If you want a specific class dropped on another container class, you can select it in the Project Manager and drag it to the container class. This does not bind the object like the drag operation of a table field. This allows you to override the IntelliDrop settings that are premapped. I expected that an icon dropped on a form might set the form Icon property and that dropping a graphic would generate an image object. They don’’t. Other objects not mentioned in this section cannot be dropped onto a form or container class.

Dragging from project to program code
In the same spirit described in the preceding section, you can drag and drop different project objects to code editors. The name of the object is displayed in the code window. For instance, if you drop a field name in the Command Window, you get the field name. Unfortunately you do not get the table.fieldname syntax. This works for every object type in the project except the stored procedure names. The only objects that carry over the file extension are the files in the “other” category.

Feb
17

One Year and counting

I was reviewing some of my past posts on this blog this morning looking to see what I have posted on user groups and noticed today is the first anniversary of this blog. Pretty cool. I know I was a late adopter to the blogging craze, but it is never too late to get started. If you want help in starting one just send me an email. I will extend the same help to you that I was given by several of the Fox bloggers when I got started last year.

Some interesting statistics:

  1. 135 posts
  2. At least one new client project
  3. Many new friends
  4. Several new critics {g}
  5. 6 requests for reposts and/or translations

I have really enjoyed writing the posts and hope you have enjoyed reading them.