9.21.2006

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: , , ,

9.19.2006

Southwest Fox 2006 is only a month away

SET EXCITEMENT ON!

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: ,

9.16.2006

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.

Tags:

9.11.2006

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: , , ,

9.09.2006

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.




9.07.2006

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: , , ,

8.31.2006

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

8.28.2006

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.

8.21.2006

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: , ,

8.01.2006

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: , ,

7.18.2006

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: , ,

7.12.2006

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.

7.11.2006

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: , , ,

6.12.2006

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: , , , ,

5.12.2006

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: ,

5.09.2006

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.

Tags:

5.03.2006

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: ,

5.01.2006

"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.)