Aardvark for Firefox 2.0

Aardvark, a nifty Firefox extension for Web developers and designers, has now been updated to work with Firefox 2.0. Available from the author's website at karmatics.com/aardvark/.

Tags: ,


Styling FinalBuilder HTML Build Logs

FinalBuilder generates a log as it processes each step in your build process. The Export Log action enables you to export the build log to a file. The default format for this file is HTML, which generates a nicely formatted report including expandable sections to view the detail for steps that generated console output during the build process.

I noticed today, however, that the date in the header portion of the HTML log was rendered as 14/12/2006 rather than month/day/year format of 12/14/2006 we are accustomed to in the United States. As it turns out, this is easily changed.

The format and appearance of the HTML output is determined by an XSL stylesheet. The default stylesheet is named ConvertLogToHTML.xsl located in the StyleSheets sub-folder where FinalBuilder is installed. To change the format of the date, simply edit the 'extractdatetime' template element and reverse the order in which the month and day parts of the datetime string are extracted.

The FinalBuilder export log options enable you to specify the default export format (XML, HTML, or Text) as well as the default XSL stylesheets for HTML and Text output. While changing the format of a date is a trivial example, the ability to edit the default stylesheets or even replace them with entirely different ones gives you complete control over the format and appearance of your build logs.

Footnote: The FinalBuilder website today is featuring a 20% discount off FinalBuilder or Automise through December 30th.



Save Ten Bucks at NewsGator

Nick Bradbury blogs today that you can save ten bucks on any of NewsGator's products this month. This includes FeedDemon, IMO the best desktop feed reader there is. Get the official word and the promo code from Nick's blog at nick.typepad.com/blog/2006/12/save_ten_bucks_.html.

Tags: , ,


Great One-day Deal on Automise

News today from VSoft Technologies, publishers of FinalBuilder, that their companion product Automise is featured on Bits du Jour today at a whopping 90% discount. Bits du Jour is a "One deal a day" website that features software products. Today's deal is Automise for $19.50 against a regular price of $195.00.

VSoft Technologies describes Automise as "very similar to FinalBuilder but aimed at Sys Admin, Network Admins and other IT professionals. It's got the power and ease of use of FinalBuilder, but is cheaper and lacks the developer specific stuff (like compilers, version control systems, etc)."

FinalBuilder is a powerful tool for software developers to automate the process of building their software release packages. I've been using FinalBuilder for several months now and it's become one of those indispensable products you wonder how you ever got along without. Looks like Automise could be equally useful, and you certainly can't beat today's price.

Tags: , , ,

Footnote: Bits du Jour has an RSS feed at http://bitsdujour.com/blog2/wordpress/?feed=rss2.


Powermarks for Firefox 2.0

When I blogged recently about my favorite extensions for Firefox, I mentioned four that were not compatible with Firefox 2.0. One has now been updated: Powermarks 3.5 Build 387 is available for download and is working fine with Firefox 2.0.

Tags: ,

QuickBooks Pro 2007 Update Problem & Solution

Today when I launched QuickBooks Pro 2007, it prompted me to install an update it had automatically downloaded. The update ran normally for a while, but then at a point where it was running something in a visible command window, the command window showed that three items failed to run because they were "not recognized as in internal or external command." The three items are Components\QBAgent\QBMsgMgr.exe, Components\QBAgent\qbdagent2002.exe, and axlbridge.exe.

This was followed immediately by a File Copy Failure dialog containing the message QuickBooks failed to update all files because some of these files are being used by QuickBooks and its related components. Please re-start your computer and run "postpatch.bat" in the QuickBooks application directory.

Don't you love it when this kind of stuff happens?

Nothing related to QuickBooks was running at the time, save for the update itself and the QB automatic update detection process, which always runs. Hard to believe that would interfere with an update, but at this point that was my only guess.

After re-starting the machine I killed the QB automatic update detection process, ran postpatch.bat and encountered the same error. So contrary to the original error message, the problem is evidently not related to files being in use by QuickBooks.

I inspected the batch file and found that it registers several components, then tries to register the three files mentioned above. Fortunately, these three are grouped together in a section of the batch file commented as Needed for Payroll feature, which provided the clue to the reason for the failure: I don't have the payroll feature installed. A quick check of the QuickBooks application directory confirmed that these three files are not present on my machine, which of course explains the error.

While this turned out to be relatively minor annoyance, it cost me some time and is something Intuit should have caught in testing before releasing the update. Fortunately, it appears the rest of the update installed correctly.



HowTo: Remove Outlook 2007 Instant Search Prompt

If you've installed Outlook 2007 but declined to install the optional Instant Search feature, Outlook continues to prompt you to enable Instant Search by displaying a clickable banner beneath the currently open folder name. You can remove this banner by unchecking the "Show prompts to enable Instant Search" checkbox under Tools ¦ Options ¦ Other ¦ Advanced Options.

Tags: ,


Developer Resources for Office 2007

Jensen Harris has published some Developer Resources for Office 2007 RTM. Harris notes these resources will eventually be available on MSDN but you can get them now via his blog. The first post has links for the Control ID list (in Excel format) and the CustomUI schema. Thanks to TheServerSide.NET for the link.

Harris is Group Program Manager of the Microsoft Office User Experience Team. Another valuable resource I noted on his site is The Office 2007 UI Bible, an organized list of links to his various posts on the why's and wherefore's of the Office 2007 user interface. Looks like good reading.

Tags: , ,


Installed Office 2007

I took a deep breath and installed Office 2007 as an upgrade on top of Office 2003 this afternoon. Since I rely on Outlook for a lot of things I hedged a little and backed up up my .pst files first, but other than that I decided to just fire up the installer and see how it went.

Answer: it went very smoothly. And unlike Craig Berntson's experience, no reboot was required (although Craig had a beta previously installed and I didn't, which might be the difference).

The only glitch with a 3rd party product I've seen so far occurred when I first fired up Outlook. Outlook advised me the avast! Outlook/Exchange plugin had a problem and asked if I wanted to disable it. I said yes and Outlook came up normally, after which I was able to start the Outlook/Exchange provider from the avast! menu. Looks like a trip to the avast! support forum is in order for this one.

On the other hand, my Qurb spam blocker continues to work in Outlook 2007 with no problems, which was a big relief because Qurb was absorbed by CA some time ago and is no longer supported under that name.

The new ribbon control in Word, Excel, etc. is going to take some getting used to, but probably not as much as I'd initially thought. And although I like blue as much as the next person, the default blue color scheme was immediately too much for me. Changing it to silver was easy, though, which put it more in line with my XP color scheme and made me a happy camper again.

I'm sure there's a lot to learn here, but so far so good. Next step: testing Office 2007 automation from VFP.

Tags: ,


FeedDemon 2.1 released

FeedDemon 2.1 has been released. Like most of Nick Bradbury's software, this version has been through several betas and release candidates, so it should be really solid. There are about four printed pages of new features, changes, and fixes to explore and enjoy. The release notes and download link are at www.bradsoft.com/feeddemon/readme/.



Sysinternals Suite

Over on his blog this morning, Garrett Fitzgerald notes that the entire suite of Sysinternals utilities is now available as a single download from Microsoft. Let me echo Garrett's comment here: "Grab them whether you think you'll need them or not: sooner or later, you will."

Update: The new home of Windows® Sysinternals is on Microsoft TechNet at www.microsoft.com/technet/sysinternals/default.mspx

Tags: ,

Extensions for Firefox 2.0

One of the great things about the Firefox Web browser is the wealth of 3rd party extensions available. I've grown to rely on several that make using Firefox easier and more convenient for me. The screenshot below is a list of my personal favorites; if you're interested, click the image for a more readable size.

One of the downsides of relying on 3rd party extensions, though, has become apparent after the recent release of Firefox 2.0. Although FF2 has been available for a couple of weeks now, some of my favorite extensions have yet to be updated to work with it. Of course, there was never any guarantee they would be, and given that they're all free to begin with there's really no room for complaint here, but while I enjoy the improvements in FF2 I miss the convenience these extensions provide.

As of this morning the list of laggards includes the following: Copy URL +, Paste and Go, Aardvark, and Powermarks. I hope they'll be updated to work with FF2 in the near future.

Tags: , , , ,


Weird tab bug in Firefox 2.0

In Firefox 2.0, with two or more tabs open, roll the mouse pointer over a tab caption and up into the Bookmarks Toolbar. Sometimes the icons and text from the Bookmarks Toolbar will overlay the tab caption (see image below). Doesn't always happen, but has happened several times. Looks like a bug?

Update: Another example, this one after Alt+Tab switching from another app back to Firefox.


FeedDemon 2.1 Beta

With my Southwest Fox conference presentations behind me, my laptop machine is once again fair game for fun new stuff including beta releases. At least, for beta releases of software I've grown to trust, which includes FeedDemon. Tonight I installed FeedDemon 2.1 Beta 3a, replacing the latest release version on this machine. My immediate first impression is that it's a lot faster, both at downloading feeds and at moving among them in the reader once the feed cache has been updated. Browsing feeds on this machine has always been a bit sluggish, which I've always attributed to a relatively slow processor (800 MHz) and a relatively large number of feeds (480, with a cache size somewhere north of 135MB). If the speed difference is real and not just a difference in my perception it'll be a welcome improvement. Release notes for v2.1 Beta 3 are here.



Southwest Fox 2006 Wrap-up

It's Monday morning and I'm back in the office again, a bit bleary-eyed after yesterday's return trip from the Southwest Fox conference in Phoenix. Getting up this morning to face 35° and overcast here in Illinois after leaving 85° and sunny in Phoenix was not easy, but living in the Midwest this time of year builds character (or at least that's what we tell ourselves).

Southwest Fox 2006 was a great conference. Organizer Bob Kocher put together a top-drawer lineup of speakers and sessions, and I got to see many of them when not doing one my own presentations. In addition to the speakers whom I always look forward to seeing at VFP conferences, this year saw the return of Jim Booth to the speakers circuit after a long hiatus, Mike and Toni Feltman were both there as speakers, and Christof Wollenhaupt came all the way from Germany to give two sessions. Unfortunately the schedule had me speaking during the same time slots as Christof for both of his Security Cookbook sessions, which I had really wanted to attend. I did get to see his session on Crashing VFP and Preventing Crashes, and Christof certainly lived up to his reputation as the "Foxpert". It's amazing what he's figured out about FoxPro internals. I also enjoyed the opportunity to meet and get to know Christof in person for the first time. I hope he will come back to the U.S. and speak at a VFP conference again in the future.

Doug Hennig's sessions are always well attended, for good reasons, and this conference was no exception. I went first to his session on Inno Setup. I've been using Inno Setup for years, and have written and given presentations on using it with VFP myself, but I know I'll always learn something new from Doug and that was true here, too. His session on adding IntelliSense to an application was also full of cool ideas. Doug's point in that session was that we developers love the benefits of IntelliSense as we work in VFP, so why not deliver some of the same benefits to our customers in our own apps?

As already noted by many Fox bloggers, Ken Levy presented Doug with the FoxPro Community Lifetime Achievement Award at the opening session on Thursday evening. The quantity and quality of Doug's contributions to the FoxPro community over the years is truly astonishing -- there's a summary on the FoxPro Wiki -- and I think everyone agreed this is a well deserved award. Congratulations, Doug!

Rick Schummer did his usual excellent job in his sessions, too. I attended Fishing With a Project Hook, which explored how to -- and more importantly, why you would want to -- hook into the VFP project builder and access the project file. I've used Rick's Project Builder tool for a long time because it makes building the VFP EXE simpler and easier. His Project Builder is now part of the more comprehensive White Light Computing (WLC) Project Builder and ProjectHook tool, available (and still free) on his web site.

The way the speakers' schedule worked out, I got to sit in on both of Mike Feltman's sessions. In Where Do You Want to Go Today (Mike's comment: I want to go back to bed!) he discussed the pros and cons of several software development tools and presented some interesting statistics on the relative size of the job market for each one. Mike also mentioned some of the lesser known and newer development tools that bear watching, particularly in the area of Web development, such as Ruby and the Rails framework. Mike's other session on VFP and AJAX was also of considerable interest to me since I do a fair amount of Web development in conjunction with my VFP work. Judging by the overflow attendance in a very small room, so do a lot of other VFP developers.

The other session I was able to attend was Toni Feltman's Using Version Control with Visual FoxPro. Toni's been using version control software a lot longer than I have, so I was really interested in her take on ways to use it effectively with VFP. I took more than a page of notes in this session and came away with a lot of ideas and resources to follow up on.

As for the sessions I couldn't attend, I'm anxious to view the slides and read the papers. There's a ton of good material there.

The closing session featured the usual round of heartfelt thanks to all involved, some great prize drawings, and the presentation of a special gift from the FoxPro community to Mike and Toni Feltman, who are expecting to instantiate another little Feltman in the near future (whether it will be a sub-class of Mike or Toni was not revealed). Many speakers and others contributed to the gift basket of baby items and gift certificates, and I think Mike and Toni were truly surprised. Thanks to Cathy Pountney for her efforts in putting it all together.

An important benefit of any good conference like this is the chance to meet new friends or make face-to-face acquaintance with people you may have only known online. I enjoyed meeting Mike Lewis from the U.K. and Esparta Palma from Mexico, as well as seeing again several other friends and colleagues I've met before at other conferences.

As always, it's back to work now with renewed energy and appreciation for all the many ways VFP makes it possible for us to write great apps and deliver excellent solutions to our customers.

Tags: , ,


Installing IE7 Release Version over RC1

I've been running IE7 RC1 since it was released, and have had no issues with it. In fact, it was stable enough that I felt confident basing a significant portion of a conference presentation about RSS on it ("RSS: Catch the Wave", presented at Southwest Fox 2006 in Phoenix over the weekend).

Naturally, I was anxious to see and show the final version of IE7, but in a case of ironic timing, the final version was released the day before the conference began. I always follow the rule never to install anything new on a presentation machine within a week of the conference, so I had to force myself to wait and do the presentation based on RC1 as planned, hoping that what I showed in RC1 would be substantially similar to what people would see in the final release version. Looks like it was.

Back from the conference today, I decided to install the IE7 release version on my presentation laptop machine. The release notes/FAQs for IE7 indicate it will automatically uninstall a pre-release version, so I simply downloaded the setup package and fired it off. As expected, it uninstalled IE7 RC1, and then asked for a reboot.

After the restart, the machine began automatically downloading "required updates for IE7". Huh? Didn't I just download the latest installer for IE7? This machine is running a fully patched version of Windows XP Pro SP2, so I'm not sure what updates it needed, but of course I let it continue. Eventually it finished downloading whatever it was (I'll have to investigate that later) and began installing IE7. This was followed by another reboot, after which the machine came up apparently as usual.

Upon first launch, IE7 wants to take you to a URL at go.microsoft.com. This page timed out, which wasn't entirely unexpected given the likely huge number of IE7 updates being done today, although to be fair I suspect I'm having DNS and firewall issues on this machine that are unrelated to IE7. I bookmarked the URL so I can go back later and see what it is. Probably just a welcome screen, but likely with some additional information and links that might be useful. [Update: After the IE7 install is complete, the browser opens a run-once page where you can customize your settings. Closing that page takes you to a welcome page with links for a tour of IE7, a page of add-ons, or your home page.]

The next site I tried is one of the localhost sites on my own machine from yesterday's conference presentation. A bit of a surprise here: IE7 popped up a phishing filter warning and asked if I want to turn it on before visiting this site. RC1 didn't do that. I guess localhost is an unknown site and therefore suspicious as far as the phishing filter is concerned. Hmmm... thanks for protecting me from my own machine, I guess.

I bring up my sample autodiscovery page in IE7. The RSS feed icon lights up as expected, so nothing's changed there. Clicking on the feed icon brings up the feed in IE7, also as expected. This particular sample feed (available online here) is a list of sessions at the Southwest Fox conference. It demonstrates the Simple List Extensions (SLE) extension to RSS, which is implemented in IE7. I find the feed looks and behaves the same in the IE7 release version as it did in RC1, so we're good there, too.

I'm not going to post any "first impressions of IE7" here because I already formed my first impressions based on RC1 a couple of months ago, and they're largely positive. IE7 of course comes with tabbed browsing, which is almost indispensable IMO and a big reason I use Firefox, so it's good to finally have it in Internet Explorer too. At first glance the IE7 release version interface looks just like RC1. If there are any significant visual changes I haven't spotted them yet.

The news here is that IE7 release version installed successfully over IE7 RC1, the interface looks the same as RC1, RSS and SLE work as they did in RC1, and you won't lose your favorites folder in the uninstall/reinstall process.

Tags: , , ,


SLE-enhanced session feed for Southwest Fox 2006

Only three days to go... Southwest Fox 2006 kicks off on Thursday! But you don't have to wait: if you're running IE7 RC1, you can get a sneak preview today of something I'll be talking about in my session on RSS, namely Simple List Extensions. SLE is a set of extensions to RSS created by Microsoft to provide sorting and grouping functionality for feeds that are intended to be used as lists. By way of example, I put together a list of all the Southwest Fox 2006 sessions in SLE-enhanced feed format. The feed is available online at www.ita-software.com/SWFox2006/Sessions.xml.

You'll need IE7 RC1 to see this feed the way it's intended, with sorting and filtering capabilities as shown in the screenshot below. Other browsers won't recognize the SLE extensions and will render the feed either as unformatted XML or as a regular RSS feed, depending on how you view it. FeedDemon and other feed readers should see it as a regular RSS feed, too, but the fun stuff is only available in IE7.

SLE is only one of many things I'll be talking about in my session on RSS. If you're coming to Southwest Fox, I hope you'll drop in.


Inno Setup updated

Inno Setup gets an update to v5.1.8 with some enhancements for Windows Vista and (at last!) an HTML Help file to replace the old-school Help file. Read all about what's new in this version or go straight to the download link.



Keyword search feeds in FeedDemon

I've been using FeedDemon since its pre-release days, but only recently learned of its ability to create keyword search feeds. A keyword search feed is a subscription to a search engine feed that informs you when references a specified phrase or keyword show up.

For example, I created a keyword search feed to check Technorati for references to FoxPro. Presumably, whenever anybody tags something on Technorati as pertaining to FoxPro, it shows up in this feed. This is a very efficient way to keep up with what's being said about topics of interest.

Side note... Today my FoxPro search feed came up with the following: Request Error, no posts match "FoxPro". I guess knowing nothing was said is a form of information, too. < s >

Tags: , ,


On the importance of trying

Seymour Cray, founder of Cray Research and architect of the Cray line of supercomputers, died ten years ago today on October 5, 1996. His was a well known name in computer science throughout the second half of the 20th century, and many industry publications noted his passing. Among them was Computerworld, whose article contained a quote from Cray that I clipped out and have had on my office wall ever since.

"You have to be prepared to fail, and I have failed about half the time, I guess. But you simply have to pick yourself up and go at it again with whatever insights you've gained from failure. If you do keep trying, you will occasionally do something worthwhile."

Good words to live by.

Tags: ,


Mary Jo Foley is All About Microsoft

Ed Bott posts the feed URL for Mary Jo Foley's new blog All About Microsoft. Glad to see Mary Jo back online so soon. Both her blog and Ed Bott's Windows Expertise are on my required reading list.

One request, Mary Jo: please publish the full text of your articles in the feed. Judging by your first two posts, the feed has only summary descriptions. Those of us who read news feeds in a feed reader usually don't want to switch to a browser to get the full article.

Tags: , , ,


Southwest Fox 2006 is only a month away


The Southwest Fox 2006 conference in Phoenix, Arizona is only a month away. Conference organizer Bob Kocher says the hotel is filling up fast, but there's still time to sign up and attend what promises to be another outstanding event. I'm a speaker again this year, but I'm also an attendee and I'm not exaggerating when I say I'm really pumped about the sessions I'll be able to attend when I'm not doing one of my own. The depth and breadth of technical content at this conference looks to be outstanding.

If you need incentives to attend -- besides the benefits of getting together with other VFP developers, immersing yourself in high-level technical information for three days, hanging out with friends and colleagues in after-hours bull sessions, etc. -- there are some great prizes to be given away. Bob announced earlier today that Craig Boyd, head honcho at SweetPotato Software, Inc., will give away a Visual Studio 2005 Team Suite with MSDN Premium Subscription during the Keynote Address on Thursday evening, Oct. 19th. And in connection with my session on Automating the Build, VSoft Technologies has donated a copy of FinalBuilder 4 Professional, a $499 value, to be given away during the conference. I don't know for sure, but I wouldn't be a bit surprised if there are going to be other goodies, too.

If I'm reading the registration form correctly, you can still save $25 on the cost of registration if three or more members of your FoxPro Users Group are attending. If you have a user group meeting between now and October 19th, be sure to let your members know about this.

In case you can't tell, I'm really looking forward to Southwest Fox 2006! Hope to see you there.

Tags: , , ,

Truncated descriptions in feed

I discovered yesterday that the descriptions in my last seven posts were truncated in the feed. This means if you were viewing the posts in a feed reader you saw only about the first 255 characters of the post. If you were viewing the blog as a web page you saw the full post.

This isn't the first time Blogger.com has done this to me, and I'm not the only one it's done it to. I rechecked my settings, which haven't changed (Settings | Site Feed | Description | Full). I have no idea what's causing this to happen, but it's annoying.

This morning I republished the truncated posts and confirmed the feed now has full descriptions. They were reposted with the same date, time, and title as the originals, so this shouldn't cause duplicates in your reader.

If anybody knows why this happens, please leave a comment.

Tags: ,


Inno Setup #include directive

I just discovered the #include directive in Inno Setup is case sensitive. If you use #INCLUDE you get an error that says, in part:
To be able to use directives other than '#include'
you need to install the Inno Setup Preprocessor (ISPP)
As a VFP developer I'm accustomed to case insensitive syntax, so I had to read the error message a couple of times and double check my script before I understood that #INCLUDE is not the same as #include. The #include directive is a native part of Inno Setup and does not require the ISPP.

I checked a couple of other directives in Inno Setup and found they are not case sensitive. For example, the compiler accepts APPID and SOURCEDIR in the Setup section as well as the more conventional AppID and SourceDir, and in the Files section parameters such as Source and DestDir are not case sensitive either. I'm not sure why #include should be different, but it is.



IIS Admin service - problem and solution

I ran into a problem with the IIS Admin service on my Windows XP SP2 laptop PC yesterday. After some digging, I found the solution. If you run into the same problem, maybe this information will be helpful.

The first sign of a problem was localhost not responding. I checked to see if the web publishing service was running, which it wasn't. When I tried to start it I got
Error 1068, dependency service or group failed to start.
I checked the IIS Admin service and found it wasn't running, either. When I tried to start that service I got:
Error 13, the data is invalid.
I checked the system event log and found IIS Admin has been failing to start for several reboots. I don't access localhost on this machine very often so I'm not surprised I didn't notice this sooner.

Running sc query iisadmin from the command prompt showed the service stopped with an exit code of 0x8007000d.
SERVICE_EXIT_CODE: -2147024883 (0x8007000d)
A search of the Web for some reference to that exit code turned up a suggestion the problem might be related to the metabase file in windows\system32\inetsrv. I found two files on my machine: MetaBase.bin.beforexmlupg, at about 225KB, and MetaBase.bin at over 2.5MB. A clue was the date stamp on MetaBase.bin was about the same as the date the event log showed the IIS Admin service began failing to run. The other file, MetaBase.bin.beforexmlupg, had an earlier date.

I don't know what MetaBase.bin.beforexmlupg is. I checked another Win XP SP2 machine and it didn't have that file. From its name and date stamp I figured it might be related to a security update I applied on or about that date, but that's pure speculation on my part. A search for that file name on MSDN and TechNet turns up no hits.

I'm no IIS expert, but assuming MetaBase.bin was invalid I moved it to a temporary directory (in case I needed it again) and copied MetaBase.bin.beforexmlupg back to MetaBase.bin. I figured this was risky, but I didn't have a lot to lose at that point. I then started the IIS Admin service: success. I started the web publishing service: success. And of course, localhost was back in business, too.

I certainly can't guarantee this solution will work on other machines or in other situations, but it did work in this case. I'm still searching for more information to find out what caused this problem in the first place.

Tags: , , ,


Fox Sighting

[set humor on]

What's the most recommended database development tool from Microsoft? According to the Recommended Downloads that showed up at the bottom of the page when I downloaded Internet Explorer 7 RC1 a couple of days ago, it's Visual FoxPro! VFP comes in at number 2 on the list, just edging out SQL Server 2005.

[set humor off]

The image below is split for size considerations. The highlighting is mine, but the image is real.

I don't know how Microsoft generates that list but I have to believe it's dynamic. I wonder if anyone who doesn't already have VFP installed would ever get this same list? But anyway it's always nice to see the Fox show up in unexpected places.


It's all about imagination

Rod Paddock hits the nail on the head in his Axes and Imagination editorial for the Sept/Oct issue of CoDe Magazine. Writing about software development and the need to stay sharp, he reminds us that "...the main ingredient in [our] profession is imagination." Absolutely right, Rod.

Without question, software development is a creative process. Sure, there are mechanical and technical aspects to it as well, but at its core being able to design and develop good software depends on being able to imagine it first. Solutions flow from our minds to our keyboards. As I've often said, "You've got to create it here (pointing to head) before you can create it there (pointing to computer)."

I liked this editorial because I think it's important to be reminded about the creative aspect of our profession from time to time. Software development requires a good deal of mental energy and sustained concentration, and sometimes it's easy to get overwhelmed by the details. Being reminded that it's a fundamentally creative process helps us recognize and avoid burnout. When the creative energy isn't flowing, Rod says it's probably time for an "imagination refill." Translation: take a break, do something different for a little while, go have some fun!

If you don't subscribe to CoDe Magazine, you can read Rod's editorial online at www.code-magazine.com/Article.aspx?quickid=0609011. Be sure to check out the cool photo of Rod with his "imaginary" friends from Family Guy, too. Looks like fun. < s >

Tags: , , ,


Universal Thread lowers its prices

Good news from Michel Fournier of Level Extreme Inc., who announced a reduction in the price of the Universal Thread subscription, aka the Premier Universal Thread Membership or PUTM. The price of a monthly subscription drops to CAD$9.95 after the first month, while an annual subscription is reduced to CAD$99.95 (about USD$90.05 at today's exchange rates). The official announcement is at www.universalthread.com/news/subscription.asp.

This should be welcome news for everyone who subscribes to the UT, as well as for those who may have been thinking about subscribing but were put off by the price. For my part, I have always considered a PUTM subscription to be well worth the price, and now even more so. I literally can't count the number of times I've quickly found a solution to a problem or a valuable reference for an issue on the UT. It's a real time saver.

Evidently Canadian GST tax still applies to all subscriptions including international (i.e., not Canadian) residents. This has long been a source of contention but is outside Level Extreme's control. Michel said today that the appeal of this ruling is still in progress.

The only thing I'd question here is why the first month should cost more (CAD$14.95) than the standard monthly rate. It seems to me one good way to attract new subscribers would be to offer the first month for free instead of charging more for it. OTOH I suppose some people might take advantage of this, so maybe that's why it's the way it is.

Tags: Universal Thread, Visual FoxPro, VFP


Beyond Compare Update

Version 2.4.2 of Beyond Compare, the great little file and folder comparison utility, was released last Thursday. Readers of this blog know I consider Beyond Compare an indispensable part of my developer's toolkit, so I'm always alert for a new version.

In addition to a number of new enhancements, version 2.4.2 introduced a minor bug that caused zip files within zip files to compare incorrectly - they were displayed as different on each side of the comparison even though they were in fact identical and showed the same size and date-time stamp. Knowing how responsive Scooter Software is, I knew it wouldn't take long for a fix to be posted, and sure enough version 2.4.3 appeared this morning with the fix for the zip-in-zip bug and a couple of other things as well.

If you use Beyond Compare, go get version 2.4.3. The best keeps getting better.


Presentation Fears and Fiascos

As I work to put the finishing touches on my presentations for Southwest Fox 2006, I had a good laugh at this post on Scott Guthrie's blog this morning. Scott posts a link to The ten worst presentation moments from the Microsoft UK site along with the story of one of his own "interesting" conference presentation experiences. Anybody who's made a presentation to a group of any size can probably identify with these moments, or at least has had the fear of something similar happening to them. On the list of ten, my personal favorite is #4. What's yours?

Tags: , ,


Southwest Fox 2006

Southwest Fox 2006 is less than three months away! Join your friends and colleagues October 19-22 at the Fiesta Inn Resort in Tempe, AZ for this outstanding event. Southwest Fox has earned a well-deserved reputation for excellence in past years and promises to deliver top-notch content and value again this year. Register via the conference website, where you'll also find a full listing of speakers and topics, hotel information, and more.

Tags: , ,


Comments on Microsoft acquisition of Winternals

Several bloggers are commenting today about Microsoft's acquisition of Winternals and Sysinternals. Ed Bott and a post on Slashdot, among others, both suggest downloading the latest versions of Sysinternals' free utilities while you can, 'cause it's not certain how long they'll remain available. The Sysinternals.com website is, predictably, jammed this afternoon with traffic I assume is from people heeding this advice.

Mark Minasi, author of several books in the Mastering(TM) series from Sybex, comments on this acquisition in his monthly newsletter. Minasi, who discloses that he's been a friend of Winternals' Mark Russinovich for years, says of Russinovich: "This is a good move for him and, I think, in the long run for us all. His presence in Redmond has to be a force for sound architecture, openness and innovation."

Tags: , , , , ,

Microsoft acquires Winternals and Sysinternals

Mark Russinovich blogs this morning that Microsoft has acquired Sysinterals and Winternals. Sysinternals is known for a wide variety of popular system utilities such as FileMon, RegMon, Process Explorer, and Rootkit Revealer. Winternals focuses on system recovery and management tools, including the Administrators' Pak. See the press release for more information.

Tags: , ,


No guts, no glory

... and in this case, no glory. In yesterday's post about Execute Selection in VFP, I got a bit carried away and tried to achieve a specific layout involving three images and several paragraphs of text. Two of the images were supposed to be side by side, with text above and below but not next to them.

Unfortunately, I failed to anticipate how blogger.com would treat the HTML when it published the post. The result was that the paragraph following the first two images didn't start below the images as intended, but instead flowed inline to the right. How much (if any) of the first part of that paragraph you could see depended on the width of your browser window. It was, to say the least, not very readable.

This morning I fixed the layout and republished the post. To avoid creating a duplicate, the republished post has the same publication date/time and item ID as the original, meaning that if your feed reader already retrieved the original it won't detect the updated one as being new. In some feed readers, such as FeedDemon, you can delete the original item and the reader will pick up the updated version when you refresh the feed.


Execute Selection in VFP

If you're a VFP developer, you probably already know you can run a line or lines of code in the Command window by selecting them and choosing Execute Selection from the shortcut menu. But did you know you can do this in a VFP editing window, too?

This can be useful for testing selected chunks of code during development, but it also gives you a VFP equivalent to the SQL Server Query Analyzer. In SQL Server, you can store several batches of T-SQL statements in a single query file and run them independently of one another using the Query Analyzer. In VFP, you can store several groups of SQL statements in a single program file and run them independently of one another using the Execute Selection command in a VFP editing window.

As in the Query Analyzer, you can revise the code in the VFP editing window and execute it without having to save the file. Unlike the Query Analyzer, though, the F5 key does not execute the selection in a VFP editing window. Neither does VFP recognize the GO command that signals the end of a batch in the Query Analyzer (GO has a different meaning in VFP); if you need a way of ending a batch of statements in VFP, use RETURN.

SQL Server 2000 Query Analyzer VFP 9.0 SP1 Editing Window

VFP's Execute Selection feature can be useful during development and testing of almost any kind of VFP code, but it's particularly handy when you're working with lengthy SQL statements. While you could use the VFP Command window for the same purpose, an editing window is much more usable when individual statements run into several lines of code, which is typically the case with SQL statements. A program file is of course also more useful than the command window when you want to save your work and return to it later.

VFP 9.0 Editing Window

07/12/2006 - Republished this post with corrected image and text layout.

Tags: , , ,


Cool Web Research Tools

Some terrific Web research tools have surfaced recently. One's an old favorite, now available for Firefox as well as for Internet Explorer. Another's an extension for Firefox itself, while the third is a new offering from Google. All of these tools help you gather, organize, and search information about stuff you find on the Web in a far more useful way than browser bookmarks alone can do.

The first is Powermarks from Kaylon Technologies. I can't remember how many years ago I first discovered Powermarks, but it immediately became a favorite for its ease of use and lightning-fast search capability. Powermarks is essentially a bookmark manager with a built-in search mechanism. Add the Powermarks toolbar to your browser and you can insert a Web page's URL and description into your Powermarks database with two quick clicks of the mouse. You can add your own keywords for each page you catalog, which makes it easy to personalize your searches later on. To search, simply start typing a keyword; as you type each keystroke, the list of entries displayed by Powermarks shrinks to show only those that match. I currently have 876 entries in my Powermarks database, each with multiple keywords, and the search mechansim responds to my keystrokes as fast as I can type. In other words, finding a reference is quick and easy. Double-clicking any link in the Powermarks list opens that page in your browser.

AFAIK Powermarks was originally available only for Internet Explorer, but it now supports a variety of browsers and a beta version is available for Firefox 1.5.x. I'd regretted losing the browser integration with Powermarks when I switched to Firefox as my everyday browser some time ago, but with the new Powermarks toolbar for Firefox it's great to have it back again. And unlike browser-specific bookmarks, Powermarks uses a its own database with all browsers, meaning anything you add to it from one browser is also available when you run Powermarks from any other browser. Kaylon also offers a free 'NetSync' account that enables you to backup and synchronize your Powermarks bookmarks over the Internet.

The second tool is a relatively new extension for Firefox called Scrapbook. I've only begun playing with this one, but at first glance it looks really useful. Scrapbook enables you to save a Web page or fragment of a Web page to a collection on your local machine. Scrapbook is integrated with Firefox via an item on the main Firefox menu and also via additions to the Firefox right-click menu, which enable you to easily capture a page or a snippet from a page you're looking at in your browser. You can organize your Scrapbook entries into folders and view them using a treeview. The Scrapbook treeview is integrated into Firefox and opens in the left-hand panel, just like bookmarks and history do. Scapbook has its own search capability, allows you to add freehand notes, and offers other features as well. If you're a Firefox user, this one is worth checking out.

The third tool I want to mention here is Google Notebook, which I've also only recently started using. Like the other tools, Google Notebook facilitates collecting and organizing information from Web pages. It adds an item to your browser's context menu that you can use to add Web page clippings to your Notebook. Google Notebook works with both IE 6 and Firefox 1.5. It stores the information you gather on Google's servers instead of on your local machine, meaning a Google account (e.g., Gmail) is required, but because of this you can access your Google Notebook(s) from any machine. This is really useful if you consistently work on two or more computers. Your Google Notebook(s) can be public or private. To get a quick sense of what Google Notebook can do, spend a couple of minutes on the overview page - a couple of pictures are worth a thousand words.

When you're doing Web research, the problem isn't finding enough information, it's organizing and remembering the information you do find. Tools like these are making the job a whole lot easier.

Tags: , , , ,


Tao of the Windows Installer, Part 2

The Windows Installer team has posted part 2 in their series on best practices for the Windows Installer. Tao of the Windows Installer, Part 2 offers twenty-three rules on the subject of Packaging. This series is definitely recommended reading for anyone involved in creating MSI setups.

Tags: ,


Library Thing

Ted Roche blogged over the weekend about LibraryThing, a web-based way to catalog your books online and share the information with others. Ted mentioned that I'd already cataloged some of my FoxPro books there, which reminded me it had been a while since I posted anything and prompted me to log in again and add some more recent acquisitions and old favorites. Ted's posted some of his books there now, too, and has gone a step further than I have by adding a sidebar to his blog to display some of the titles from his catalog.

LibraryThing is easy to use, and its integration with amazon.com makes adding new entries a breeze. Editing and tagging existing catalog entries is intuitive, thanks to a well designed and flexible user interface. I discovered today you can export your catalog as a delimited text file, which makes it easy to import it into Excel or a database, should you want to do that. Nice.



Best Practices for Windows Installer

Fresh on the heels of my "Best Practices for Deployment" session at GLGDW 2006 comes some more great information on a related topic, this time directly from the source. The Windows Installer team at Microsoft has just published the first in a series on best practices for Windows Installer.

The Tao of Windows Installer, Part 1 was posted on the Windows Installer team's blog on Monday. This first part focuses on Fundamentals, enumerating six rules (best practices) to go by. The other parts -- Packaging, Deployment, Patching, Testing and Support, and Security Considerations -- are expected to follow approximately one per week.

In addition to simply providing these guidelines, the author(s) are looking for feedback from readers in order to help turn this series of blog posts into an eventual whitepaper. Regardless of whether or not you want to provide feedback, it looks like this will be excellent reading.

Tags: ,


"You are not inadequate" [humor]

Feeling overwhelmed? Awash in new technology? Unable to keep up? The secretGeek has good news: You are NOT inadequate. Ahh, thank you. I feel much better now. (This is largely humorous, but it makes a very good point, too.)

WiX Video on Channel 9

Robert Scoble blogs: "What's possibly the most used piece of software developed at Microsoft? The WiX [Windows Installer XML] toolset."

Some readers know I've been talking and writing about WiX within the Visual FoxPro community for a couple of years now, most recently in a conference presentation at Southwest Fox last fall. WiX builds Windows Installer setup file (MSI) from XML source code. It's unique for several reasons, including the fact that it was the first open-source product released by Microsoft. Scoble filmed a 57-minute video featuring Rob Mensching and the rest of the all-volunteer WiX 'virtual team', which is now available on Channel 9.

In the video, Rob talks about the evolution of Wix and demonstrates its use and integration with Visual Studio. He also shows the Orca MSI editor, a nifty little tool for poking around inside MSI files. Around minutes 30:00 to 33:00, Rob and others talk about the importance of integrating setup authoring into the software development process, a theme I touched on in my Best Practices for Deployment session at last weekend's Great Lakes Great Database Workshop (GLGDW) in Milwaukee.

If you're interested in WiX, this video is required viewing. If you're not, this is a good way to start getting familiar with WiX and the team that created it. For more information, read Rob Mensching's blog and visit the WiX home on the Web at wix.sourceforge.net. The tutorial there is particularly helpful. For VFP developers, there is also a WiX page on the FoxPro Wiki.

Tags: , ,


GLGDW 2006 Conference Notes and Photos

The 2006 edition of the Great Lakes Great Database Workshop (GLGDW, aka Whilfest) wrapped up last Monday in Milwaukee. Others who were there, including Doug Hennig and Rick Schummer, have already posted excellent conference wrap-ups on their blogs that include individual conference session summaries, so I'll just add a couple of general comments here.

GLGDW has a well-deserved reputation for being an excellent conference, and this year was certainly no exception. After a 2 1/2 year hiatus since the last one in October 2003, Whil brought the conference back in a somewhat different format this year. For one thing, it was essentially just a weekend conference, running from Friday evening to Monday noon instead of stretching over four of five days. For another, there was only one track this year, meaning each session was presented only once and everybody attended the same session at the same time. Also, the entire conference was focused on the single theme of "Best Practices for Visual FoxPro", which gave a certain continuity to the sessions.

The one-track format allowed everyone, including speakers, to attend all the sessions. This worked out pretty well for everyone, particularly so for the speakers because we don't ordinarily get to see the whole show. The smaller size of this conference also facilitated more than the usual amount of dialog between the speakers and the audience during the sessions, which added to the informal feeling of this event. Larger, multi-track conference formats are good because they can accommodate a wider variety of topics and a greater number of speakers and attendees, but the intense "weekend jam session" nature of this year's GLGDW was a nice change of pace.

Kudos to all the other speakers, who did a uniformly excellent job with their sessions, and thanks to everyone who attended and helped make the weekend happen. As always, Whil Hentzen deserves a ton of credit for putting it all together, and his daughter Aleix earns special recognition for helping to keep things running smoothly throughout the entire weekend.

I took a few snapshots at the conference. You can see them at www.ita-software.com/GLGDW2006_Photos/index.html.

Tags: , , ,


FeedDemon 2.0 Wins PC Magazine Editors' Choice Award

PC Magazine agrees with what I've been saying for a long time: "FeedDemon 2.0 is the best desktop RSS aggregator money can buy." Snapshot review at www.pcmag.com/article2/0,1895,1948579,00.asp, full review here.


Chainsaw unusable after being attacked by crocodile [off topic]

Sometimes you see a headline and you just have to read the story. This one caught my attention on MSNBC this morning. According to the report, neither animal nor man were injured, but the chainsaw didn't fare so well.

"Crocodile comes out on top after fight with saw -
"Chainsaw unusable after being attacked by 14.5-foot saltwater crocodile".
Story at www.msnbc.msn.com/id/12526001/.


Chicago FUDG Meeting Tonight

If you're a Visual FoxPro developer in the Chicago area, come on over to the FoxPro Users and Developers Group (Chicago FUDG) meeting this evening. I'll be giving a sneak preview of my Best Practices for Deployment session, which will be presented at the Great Lakes Great Database Workshop (GLGDW) in Milwaukee later this month. Tonight's meeting is at 5:30 PM; see the Chicago FUDG website for location and details. In addition to the talk, I'll be giving away copies of Deploying Visual FoxPro Solutions and What's New in Nine: Visual FoxPro's Latest Hits as door prizes.

Technorati Tags: , ,

"The 10 worst ways to communicate with end users"

Great article by Becky Roberts over on TechRepublic this morning. "The 10 worst ways to communicate with end users" is a short but valuable read for anybody who deals with end users (and who doesn't?). Originally spotted on the TechRepublic Downloads feed.

Technorati Tags:


The Future of Programming [Humor]

Charles Petzold, author of "Programming Windows" (Microsoft Press) and many other books, shows us the future of programming with his article on the C# Application Markup Language (CSAML). Note the publication date of April 1, 2006.

FeedDemon 2.0

The newest version of FeedDemon is finally out of beta. FeedDemon 2.0 was released last week and is available for download from NewsGator.

Anyone who's been reading this blog or listening to me speak at user groups and conferences knows I've been a fan of FeedDemon ("Insanely Great Software: FeedDemon") and the other products developed by Nick Bradbury (TopStyle, also now from NewsGator, and HomeSite, now from Macromedia) for a long time. I had some initial concerns about the future of FeedDemon following NewsGator's acquisition of Bradbury Software back in May of 2005 ("Newsgator acquires FeedDemon"), but at least one of those concerns was soon alleviated when it was announced in July that FeedDemon would retain it's stand-alone capabilities and not require a NewsGator subscription ("NewsGator acquires FeedDemon Redux").

My other concerns were (a) how much involvement with and influence over FeedDemon would Nick Bradbury really continue to have, and (b) would NewsGator prove to be as responsive to the FeedDemon and TopStyle user community as Bradbury Software had always been. From what I've observed, the answers are: a lot, and yes.

During the FeedDemon 2.0 development cycle, NewsGator maintained a beta support forum. Those of us who were using the betas got a lot of releases to play with along the way, and needless to say the beta forum was very active. In spite of the daily flood of ideas (and sometimes complaints) flowing their way via the support forum, the company was very responsive to problem reports and suggestions. In particular, Jack Brewster of NewsGator technical support and Nick Bradbury himself deserve a lot of credit for their willingness to listen to and interact personally with the community.

FeedDemon 2.0 features a long list -- ten pages! -- of changes and improvements over the previous release version, v1.5. (Version 1.6 was around for a while but was never released other than as a Beta.) The most noticeable change in 2.0 is that feeds are organized and presented as nodes in a treeview, replacing the separate folders in a drop-down list used in previous versions. Also, synchronization of feeds with NewsGator Online is an option but is not required.

IMO FeedDemon 2.0 is a worthwhile upgrade for anyone still using 1.5 or 1.6, and continues to be an attractive choice for anyone who's looking for a good feed reader. There are still some things I'd like to see added or changed, but it's time to let Nick catch his breath and relax for a while. Meanwhile, FeedDemon 2.0 is ready to rock and roll, and the Technical Support forum and Feature Requests forum are up and active.

Technorati Tags:

Blog Comment Notification Issues

Blogger evidently isn't sending me e-mail notification of blog comments until I log in to Blogger again. Either I'm misunderstanding how it's supposed to work (expected behavior: someone posts a comment, I get e-mail notification right away) or I have something configured incorrectly. Maybe it's because I'm hosting the blog on my own server. I'll have to dig into this some more...

WiX turns 2

WiX, the Windows Installer XML toolset, is two years old today. Creator Rob Mensching looks back over the history of the project and talks about its future direction on his blog.

Technorati Tags:


Visual FoxPro: How to call back to a form from a popup menu

Popup menus are a useful way to provide users with context-based shortcuts to frequently used actions. In Visual FoxPro, popup menus are commonly invoked from the right-click event code of a control on a form, while the code you want to execute from a bar on the menu may be contained in a custom method of the form.

The challenge is, how do you get a popup menu to run a method of the form that invoked it? You can't reference 'thisform' within the menu, because 'thisform' is out of scope when the menu is active. And it's bad design to reference the calling form with a specific object name, because then the menu is tightly coupled to a particular named instance of the form.

The solution is to pass an object reference to the form as a parameter to the menu. This enables the menu to call back to the form using the parameter as the object reference.

For example, say you have a form with a grid to display rows of data, and another form to edit the data for any given row. The main form has a method named Edit() that does whatever's necessary to launch the editing form, perhaps passing it the primary key of the record for the currently selected grid row. You want the user to be able to right-click on the grid and choose 'Edit' from the popup menu, which in turn should call the form's Edit() method. Here's how to do this:

In the right-click method of a control(s) in the grid, put

DO myPopup.mpr WITH thisform

This passes an object reference to the form as a parameter to the popup menu. In the Setup code of myPopup menu, put


Use PARAMETERS instead of LPARAMETERS so oCaller is PRIVATE rather than LOCAL. As a private variable, oCaller is visible to and can be referenced by any other code in myPopup.mpr. So in the code for the Edit bar of myPopup, you can write


This runs the Edit() method of the calling form, regardless of what the calling form's object name is.

You can extend this concept even further by passing an object reference to the individual control as a second parameter. For example, put

DO myPopup.mpr WITH thisform, this

in the right-click method, and put the corresponding

PARAMETERS oCaller, oControl

in the menu's Setup code. Within the menu, you now have fine-grained access both to the calling form and to the specific control from which the menu was launched.

Technorati Tags: ,


New videocast on Inno Setup 5.0 with VFP

I've just posted a new videocast on using Inno Setup 5.0 with VFP apps. This videocast describes how to customize an Inno Setup script so you can install your database files to a location that's independent of where the EXE and other workstation files are installed.

The videocast is available from a link on my FoxPro developers page at www.ita-software.com/foxpage.aspx. To launch the video, click on the 'Video' link under the title Deploying Multi-User VFP Apps with Inno Setup 5.0. The video should start playing automatically. Total running time is 16:31.

Technorati Tags: , ,


Southwest Fox 2005 papers published

The white papers from my two presentations at the Southwest Fox conference in Phoenix, Arizona last October are now available on my website. Integrating RSS with Visual FoxPro Applications explores ideas for leveraging RSS in VFP apps, while Roll Your Own Windows Installer Setups is a primer on using the Windows Installer XML toolset (WiX) to deploy VFP apps.

Both papers are available in PDF and HTML. Tip: choose the PDF version if you can. The HTML version is what you get when you save a Word document as HTML, which looks pretty good at 600x800 but degrades rather badly in larger browser windows because there is no width constraint.

Southwest Fox conference organizer Bob Kocher didn't place any restrictions on publishing the papers from his conference, but as a courtesy I feel it's appropriate to wait about three months before doing this so as not to diminish the value of the content for those who paid to attend the conference. And speaking of Southwest Fox, be sure you don't miss the 2006 edition coming up on October 19-22.

Technorati Tags: , , , ,


"A New Look for IE"

From Max Stevens over at the Microsoft IEBlog, several screen shots and accompanying commentary on what's new in the IE 7 user interface.

Blogger Spell Checker

Blogger's spell checker doesn't recognize the word 'blog'. Gee, you'd think it would know that one.

SnagIt 8.0 Installer Options

In my blog post last Monday I commented that the installer for SnagIt 8.0 installs the plugins for Microsoft Office applications without asking if you want them. This is true if you run a 'typical' install, which most people probably will do. I haven't gone back to verify this, but I'm pretty sure the installer for SnagIt 7.0 presented this choice as part of the typical install. In any case, it turns out these choices are still available for SnagIt 8.0 but you have to choose a 'custom' install to see them.

Technorati Tags:


SnagIt 8.0

Techsmith has released version 8.0 of its SnagIt screen capture tool. The SnagIt user interface has been overhauled and some new features have been added, including the ability to output to PDF.

My first impressions of this new version are positive, although the installer seemed a bit more aggressive than 7.0 in that it installed the SnagIt plugins for all my Microsoft Office apps (Word, Excel, Outlook, etc.) without asking -- or at least, if there was an option to not install these, I missed it. Another change from 7.0 is that the SnagIt Editor tool now includes several of the features that used to be available only in SnagIt Studio. As a result, SnagIt Studio no longer installs with SnagIt, but it is still available for download.

SnagIt has long been a favorite for screen capture duties, and it's good to see a new version come along even if it will take a bit of getting used to.

Technorati Tags:


FeedDemon 2.0 Beta 1

FeedDemon 2.0 Beta 1 has been released and is available for public download. Read Nick Bradbury's blog post for complete information and a link to the download.

Note that FeedDemon v2.0 uses the same feed cache as v1.6, which itself is still in beta but has now been superseded by v2.0. The current release version of FeedDemon remains 1.5, which I believe uses a different cache location than 1.6 and 2.0.

Nick recommends you install 2.0 to a different folder than 1.5/1.6. I have v1.6 installed in the default location C:\Program Files\Bradbury\FeedDemon and v2.0 installed in C:\Program Files\Bradbury\FeedDemon2, and can now run either one.

Based on the stability of the beta releases throughout FeedDemon's history, I've been comfortable using 1.6 since its first pre-release version and am now using 2.0 Beta 1 with no discernible problems. Version 2.0 does have some major differences from 1.6, notably the use of a treeview instead of separate folders to organize and view your subscriptions. Although 2.0 Beta 1 appears to be stable, the beta forum is active with feedback and suggestions and I'm anxious to see Beta 2.

Technorati tags:


User Interface Localization in WiX

The latest version of the WiX toolset makes a change that could affect your current compile and link steps. The WiX user interface (WiXUI) files that come with WiX v2.0.3719.0 -- wixui_featuretree.wixlib, wixui_minimal.wixlib, and wixui_mondo.wixlib -- require a localization file to be referenced in at link time. The WiX download includes a U.S. English localization file named WiXUI_en-us.wxl. This is a standard XML file you can edit for other languages.

Using a project named wixdemo as an example, your compile and link steps prior to v2.0.3719.0 might have been:
candle wixdemo.wxs
light -out wixdemo.msi wixdemo.wixobj wixui_mondo.wixlib
Under v2.0.3719.0 the compile (candle) step remains the same but the link must incorporate the localization file using the -loc parameter, like this:
light -out wixdemo.msi wixdemo.wixobj wixui_mondo.wixlib -loc wixui_en-us.wxl
As before, you need to include the <UIRef Id="WixUI" /> element in your WiX source file (which would be wixdemo.wxs in this example) in order to incorporate the WiX user interface into your setup.

Freezing Fog

Freezing FogAs if Monday mornings weren't bad enough already. You gotta love living in the Midwest in January.


XSource for Visual FoxPro 9.0 SP1 - Follow Up

Yesterday I posted about the release of XSource for Visual FoxPro 9.0 SP1 and said I was off to explore what's in the download. The download is an executable file (VFP9SP1_XSource.exe), so I was expecting an installer of some kind. Turns out it's simply a self-extracting archive that prompts you to accept the license agreement and then extracts the single file xsource.zip to a location of your choice. The expected location is HOME() + Tools\XSource, which is where the copy of xsource.zip from the original release of VFP 9.0 is located.

The SP1 version of xsource.zip contains the same 2459 files as its pre-SP1 counterpart, although most now have an updated date and time stamp. So the good news is, everything we're used to seeing in xsource.zip is still there and is now available under the new permissive license.


Microsoft releases fix for WMF vulnerability

Microsoft released a fix for the so-called WMF (Windows Metafile) vulnerability this afternoon. This comes in advance of the customary monthly rollout of security updates expected next Tuesday. See Microsoft Security Bulletin MS06-001: Vulnerability in Graphics Rendering Engine Could Allow Remote Code Execution (912919) at www.microsoft.com/technet/security/bulletin/ms06-001.mspx
for details and downloads.

XSource for Visual FoxPro 9.0 SP1

Microsoft has released XSource for Visual FoxPro 9.0 SP1. This download comes with its own license agreement, dubbed the Microsoft Permissive License (Ms-PL), which overrides the VFP 9.0 SP1 license agreement with respect to the XBase source files contained in the XSource download. In his January Letter, Microsoft Visual Studio Data Products Manager Ken Levy states "Our goal is to encourage VFP developers to enhance and redistribute any of the VFP 9.0 Xbase components in XSource to share with the VFP community including via the SednaX community project."

A quick glance at the license shows that Microsoft is granting us the rights to reproduce, prepare derivative works, and distribute this stuff royalty-free worldwide (this is my interpretation - I am not a lawyer, so read the complete license and get your own legal advice). There's no question this is going to stimulate a lot of good and creative things to come. Right now I'm off to read the license more thoroughly and to explore what's in the download.


Craig Boyd's RegEx Library for VFP

Craig Boyd has written and published a regular expressions (RegEx) library for Visual FoxPro. Check out his blog post for full information, VFP code examples, and a link to download the FLL. Looks like I'm going to have to dust off my copy of "Teach Yourself Regular Expressions in 10 Minutes" and finally get serious about learning this stuff. Nice work, Craig.

Print+Print Preview - Firefox Extension

Another great little extension for Firefox is now available. The Print+Print Preview extension turns the default Print button on the Firefox toolbar into a Print/Print Preview drop-down button. I've often wished Firefox had a Print Preview button, but with this extension you don't need one 'cause the Print button now does double duty.


Web Developer Extension reaches 1.0

After spending several months at version 0.9x, Chris Pederick's excellent Web Developer Extension for Firefox has reached version 1.0. If you do any Web design and development work, this is a really useful tool to have in your toolbox. Check out the features page for an overview, and read the list of enhancements for details about what's new in this release.