« July 2005 | Main | September 2005 »

August 30, 2005

Good Riddance to Browser-Based Apps?

Here's a link to an article with the above name.  It's a guest editorial in the July issue of Visual Studio magazine.  You should be able to access the article from the above link, but if not, a free registration will get you in.

The author, Billy Hollis is located in Nashville, TN.  He co-authored the first book ever published on VB.NET, has written many articles and is a frequent conference speaker.  Mr. Hollis is regional director of developer relations in Nashville for Microsoft, and runs a consulting company focusing on Microsoft .NET.  So he is eminently more qualified on the subject than I am.

What's so interesting about the article?  To me, quotes like this:  "Decision makers are starting to realize that the browser sucks as an application platform."

Seems like this debate has come full circle.  VFP developers have traditionally touted the advantages of what is now referred to as a "smart client".  I personally have frequently railed at how poor browser-based interfaces are compared to what I can develop for the desktop in an environment like VFP.

Don't get me wrong – there are clearly many applications that are great as browser-based apps.  Like e-Commerce storefronts, airline reservation systems, etc.  But I've not seen a fulfillment of the promises to make browser-based UIs handle complex tasks you can manage relatively easily in desktop apps.  There certainly hasn't been a single commercial (VFP) app I've worked on in the last several years that could possibly have been implemented as a browser-based app, because the UI is much, much too complicated.

In addition to the requirement for a simple UI, browser-based apps are falling victim to the overall browser/Internet security concerns of late.  In more and more corporate environments, employees are severely restricted (if not prohibited altogether) from free/any access to the Internet.  That reduces the effect of the use of browser-/Internet-based apps that promise easier deployment.  Not to mention the problem of existing desktop apps that have been "updated" to be browser-based, when many of the folks who are supposed to use these apps don't/can't have a 24-7 Internet connection.

It seems to me that a significant part of the problem is the marketing that accompanies new technology.  That technology is typically hailed as the "Next Big Thing", and marketed as such, the implication that whatever you were doing before is no longer valid.  Poppycock.  So now, if Mr. Hollis is right, what has been fashionable and trendy for the last few years is now "not so Big Thing", and what we were pretty much all doing before that has now come (back) into vogue.  Is he right?  I don't pretend to be smart enough to know, but I do know that the desktop app that has fallen into disfavor over the last few years sure doesn't deserve that bad (marketing) rap.

Is it just possible that the "right" kind of application "depends"?  I don't see it as rocket science to recognize that some apps are well-suited and even more desirable as web/browser-based apps, while others are definitely not.  Why not market "the best tool for the job" or "the best implementation for the app", rather than spouting the marketing babble that there's only one kind of app at the end of the rainbow?

Posted by Drew Speedie on August 30, 2005 | Permalink | Comments (1) | TrackBack

August 28, 2005

Another VFP->Orcas sighting

Here's a link to yet another reference to the incorporation of VFP features into Orcas.  We'll hear a lot more of the details once Microsoft goes public/official at the Professional Developers Conference in September.

Posted by Drew Speedie on August 28, 2005 | Permalink | Comments (1) | TrackBack

WinMerge Plugin (update)

(In a previous post I talked about a WinMerge plugin for VFP files. You can read that at http://blog.visionpace.com/2005/08/winmerge.html.)

I have updated the WinMerge Plugin for VFP to handle errors better and have posted the source ZIP. The plugin is available at http://client.visionpace.com/gtaylor.

Posted by Glenn Taylor on August 28, 2005 | Permalink | Comments (3) | TrackBack

August 14, 2005

Exchange and IHateSpam error with Internet Explorer version

Personally I perfer a hardware device for spam blocking , but as a consultant you have to move and shake with what the customer has or is willing to purchase. The issue was when we had to re-install IHateSpam and it gave an error that we needed version 5.5 or higher for Internet Explorer to install and it would not. The server was on version 6.1 of IE. After trying all the basics, updates, etc.  We found a key in the registry that was causing the problem.

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Ole]
"DefaultLaunchPermission"

Problem description: You received Windows Installer Error 2731 or an Error 1720. There is a problem with this Windows Installer package.

In both cases, there were references to "A script required for this install to complete could not be run."You also noticed that RSOP.MSC and drag and drop of files did not work correctly.Copy and paste of files worked fine.

CAUSE: BackupExec requires a user level account be added to Default DCOM Security.Creating this account causes the "DefaultAccessPermission" value to be created.Removing the BackupExec DCOM entry does not seem to alter the "DefaultAccessPermission" in any way.

RESOLUTION: We removed the "DefaultAccessPermission" registry value (which does not exist by default) from the HKey_Local_Machine\Software\Microsoft\Ole Registry branch.Removing this entry also resolved the RSOP.MSC and Drag&Drop issue

The tech at Sunbelt said that BackupExec is known to register that key.  Since BackupExec is not installed on this server, it must be something else.  The only thing other than Exchange is McAffeeGroupShield for Exchange and an HP array diag utility.  I checked some other servers and the key was there and it is also on my XP workstation. After deleting the key IHateSpam installed with no errors.

I think the error is completely misleading, but - I am THRILLED that it's fixed. 

Posted by Travis Davies on August 14, 2005 | Permalink | Comments (0) | TrackBack

The Perfect Network

I have been doing network consulting for over 10 years now and I keep hearing from clients and network admins of the “Perfect” network. Where all the servers are name brand, fault tolerant, and run smoothly. I hear that the purse strings of the CFO are wide open, training is provided and bonuses for everyone. The users are also trained and a maintenance schedule is enforced. I have yet to find it, but I keep hearing about it. It is mostly at someone’s ex-employer that was getting close. I have yet to find two networks that are even the same, much less ones that need no tweaking or re-configuration in some way. I hear a lot of “We need real servers for this, can you believe that it is running on a whitebox?”. I spend a considerable amount of time trying to fit the customer's needs to what they have in hardware and software. Most times it works quite well even with the ever-changing requirements of most companies and the ever-changing purse strings of the CFO. If anyone sees this perfect network let me know!

Posted by Travis Davies on August 14, 2005 | Permalink | Comments (0) | TrackBack

August 12, 2005

WinMerge plugin for VFP files

I have the plugin done for WinMerge to compare VCX, SCX, FRX, LBX, and MNX files. You can get it and instructions for use at http://client.visionpace.com/gtaylor/.

There's only one scenario that can't be handled when using this under SOS. If you compare one of those files by selecting the single file from the SOS file pane and do "Differences", SOS only retrieves the actual file selected and not the companion file (.VCT, SCT, etc). This is probably more of a limitation of using VFP in source control than WinMerge or the plugin. There may be ways to get around that but not now.

The only way to get around that now is to compare the whole folder (VSS calls them projects). If you select the folder, SOS downloads all changed (edited, old, renegade) files to a temp folder and then copies the local files to another temp folder and invokes the comparison utility on those two temp folders. (No, I'm not sure why it copies the local files.) Doing this allows WinMerge to use the plugin to compare all the files. Very nice to see the changes so you can write a nice checkin message explaining everything you did.

Of course you can just invoke WinMerge on your system and compare folders and files there with no problems.

This means is presented for those who are not using the Source Control integration in VFP where you put the project into Source Control and VFP uses SCCTEXT to build the VCA, SCA and etc files.

Posted by Glenn Taylor on August 12, 2005 | Permalink | Comments (6) | TrackBack

August 11, 2005

Finding the Perfect Coach

Have you ever sat through a great training class, learned quite a bit of useful information and then were ready to apply it, only to get back and not be able to apply within a reasonable period of time? 

Maybe what you need instead is a coach.

In a recent interview, I discussed how our PerfectCoaching offering can assist a team with becoming productive on new technologies or best practices faster than with more traditional training techniques.

You can listen to it here.

For more information about PerfectCoaching check out the FAQ.

For a free white paper that uncovers what's wrong with traditional software development training and what to do about it, click here.

Posted by John Alexander on August 11, 2005 | Permalink | Comments (0) | TrackBack

August 09, 2005

Debugging a collection in VFP

Have you ever been stepping through some VFP code that uses a collection and been frustrated that you can't "see" into the collection? Well if you have, here's a program that I found somewhere in Microsoft's information (but don't remember where, could have been a website or blog).

Basically this adds an array property to the collection that contains the items in the collection. It even handles a collection that contains other collections.

To use it just drop out to the command window and invoke it with DebugCollection(loCollection) and then go back to the Locals or Watch window of the debugger and look through the Items array using the normal + that shows up for an array.

Name the PRG DebugCollection.prg.

*PROCEDURE DebugCollection(oCollection)
LPARAMETERS oCollection
IF oCollection.COUNT=0
  RETURN
ENDIF
oCollection.ADDPROPERTY("Items[1]")
DIMENSION oCollection.Items[oCollection.Count]
FOR i = 1 TO oCollection.COUNT
  oCollection.Items[m.i]=oCollection.ITEM[m.i]
  IF VARTYPE(oCollection.ITEM[m.i])="O" ;
      AND VARTYPE(oCollection.ITEM[m.i].BASECLASS)="C" ;
      AND oCollection.ITEM[m.i].BASECLASS="Collection"
    IF oCollection=oCollection.ITEM[m.i]
      LOOP
    ENDIF
    DebugCollection(oCollection.ITEM[m.i])
  ENDIF
ENDFOR
*ENDPROC

Posted by Glenn Taylor on August 9, 2005 | Permalink | Comments (1) | TrackBack

August 05, 2005

Microsoft or Disneyland?

Last week I registered for the Microsoft Global MVP Summit hosted by Microsoft in Redmond near the end of September.  Microsoft puts on this event annually for MVPs from all over the world, and this is the first year I've been an MVP in quite a while.  It's an honor to be an MVP, of course, and the Summit is an opportunity to learn more about the future of VFP and Microsoft software in general, so I'm looking forward to it.

But I just have to disagree with Arfa Karim Randhawa, the youngest Microsoft Certified Professional in the world.  In this Seattle newspaper article, Arfa is reported to have put Microsoft first on her personal wish list of places to visit in the US, ahead of Disneyland.  Arfa's father brought here all the way from India to the US for a visit recently, but while her tour of Microsoft made the news, there wasn't time for a stop at Disneyland.

I've been to both.  Like I said, I'm looking forward to the upcoming MVP Summit, but I still have Disneyland ahead of Redmond on my list of places to go.

Posted by Drew Speedie on August 5, 2005 | Permalink | Comments (1) | TrackBack

August 04, 2005

WinMerge

WinMerge is a file/directory comparison utility I’ve been using for a while (as opposed to WinDiff). If you have bucked up for Beyond Compare then ignore this message.

I find this tool pretty handy but a couple of days ago I started using it in SOS. If you only use SourceGear Vault then you can disregard this part of the message (but you might want WinMerge for other things anyway).

To use it in SOS, go to Tools/Options and then the External Programs page. Put “C:\Program Files\WinMerge\WinMerge.exe /ub /wl /wr” (without the quotes) into the two “Application for comparing’ boxes. Now when you do differences it uses WinMerge to display. Much cooler.

You can get WinMerge at http://winmerge.sourceforge.net/. It’s an open source project.

Posted by Glenn Taylor on August 4, 2005 | Permalink | Comments (2) | TrackBack