Monday, November 01, 2010

TortoiseSVN Log Messages Filtering–Oh Duh!

I suppose it’s because I work in small teams or alone that I never realized how useful TortoiseSVN’s Log Messages filtering is.  The highlighted regular expression shows just those revisions with either or both of these two files:

  • SubField.cs
  • SubFieldElement.cs



is the regular expression and RegexBuddy explains it well.


ESET Smart Security

I use ESET Smart Security 4 for antivirus (AV) and firewall on 3 computers.  This was the 3rd AV / AntiSpam (AS) / Firewall program I tried in Windows 7 and didn’t see a need to try another.  The NOD32 AV/AS seems to work well – no problems so far – but the firewall was what convinced me to flex the credit card.  It is configured to let me decide internet access for each individual program.


It also alerts to changed programs.



I run in Advanced mode, as circled below.


Personal firewall is setup to use Interactive filtering.


“Configure rules and zones…” highlighted above brings up an editable list of programs and permissions.


There may be better programs out there but I doubt I’ll ever find out.

Monday, May 31, 2010

Testing Code Formatting Two

Code4Blog (VS 2010)

 <Window x:Class="FirstTwitterApp.MainWindow" 

Testing Code Formatting

Code4Blog (VS 2010)

 <Window x:Class="FirstTwitterApp.MainWindow" 

Code Snippet plugin for Windows Live Writer

   1: <Window x:Class="FirstTwitterApp.MainWindow"
   2:         xmlns=""
   3:         xmlns:x=""
   4:         xmlns:vm="clr-namespace:FirstTwitterApp.ViewModels"
   5:         xmlns:local="clr-namespace:FirstTwitterApp"

Sunday, May 30, 2010

Readable XAML in VS 2010

Follow Up.  I discovered ReSharper can format XAML too.  Details at the end.

This post describes how to set up Visual Studio 2010 to format “Attribute Hide & Seek” XAML like this
into the one-attribute-per-line format I prefer.

Adding the two formatting commands to the XAML editor context menu makes reformatting easy and convenient.

First, setup VS’s XAML format per this blog post (found via stackoverflow).  Then reformat all or just the selected XAML from the Edit | Advanced submenu:
Notice that the menu commands are Format Document and Format Selection.  The word “Format” is first in both.

Adding these commands to the XAML editor context menu was more of a hassle than it should have been, IMO.  I looked for “Format Document” and “Format Selection” without success in all the Categories in the Add Command dialog.  I found the commands quickly using the searchable Options / Keyboard dialog box.  Note they are “Edit.Format*”.

However, in the UNsearchable, UNfilterable Add Command dialog they are inconveniently listed as “Document Format” and “Selection Format”.

Here is my updated popup menu shown on some XAML whose top line is about 3 monitors long.  (I put Format Selection first because I think it will get used most often.)

I like the formatted XAML better.

Outlining helps too.

ReSharper formats XAML with its (duh!) XML Formatting Style.

A keyboard shortcut to ReSharper _Silent Cleanup Code works well.

Saturday, April 24, 2010

Live Writer Code Formatter Plugin

I briefly tried one code formatter back in January & it didn’t work very well.  I found this update blog post & will try again sometime.

Using VS 2008 & 2010 On The Same Code

A StackOverflow thread indicates incompatibilities in VS 2008/2010 solutions, projects, app.config’s & WCF Service References.  Links to a tool to switch back & forth between 08/10.

More related threads:

Thursday, April 22, 2010

URL Rewriting

From Joannes Vermorel's blog:

Do not break URLs: When migrating your web pages, it's important to include the proper redirections. I have been using UrlRewritingNet, a nice open-source URL rewriting tool. UrlRewritingNet is very convenient to migrate ASP.NET pages because ISS does not intercept the requests even before they hit the ASP.NET machine.

From Scott Guthrie’s blog:

The most common scenarios where developers want greater flexibility with URLs are:

1) Handling cases where you want to restructure the pages within your web application, and you want to ensure that people who have bookmarked old URLs don't break when you move pages around.  Url-rewriting enables you to transparently forward requests to the new page location without breaking browsers.

2) Improving the search relevancy of pages on your site with search engines like Google, Yahoo and Live.  Specifically, URL Rewriting can often make it easier to embed common keywords into the URLs of the pages on your sites, which can often increase the chance of someone clicking your link.  Moving from using querystring arguments to instead use fully qualified URL's can also in some cases increase your priority in search engine results.  Using techniques that force referring links to use the same case and URL entrypoint (for example: instead of can also avoid diluting your pagerank across multiple URLs, and increase your search results.

Wednesday, April 21, 2010

MSDN: Design Guidelines for Developing Class Libraries

Design Guidelines for Developing Class Libraries

The design guidelines for developing class libraries are for library development that extends and interacts with the .NET Framework. The goal of the .NET Framework design guidelines is to help library designers ensure that their users reap the benefits of API consistency and ease of use by providing a unified programming model that is independent of the programming language used for development. It is strongly recommended that you follow these design guidelines when developing classes and components that extend the .NET Framework. Inconsistent library design adversely affects developer productivity and discourages adoption.

These guidelines are intended to help class library designers understand the trade-offs between different solutions. There might be situations where good library design requires that you violate these design guidelines. Such cases should be rare, and it is important that you have a clear and compelling reason for your decision.

Extensibility, Exceptions, Asynchronous Design Patterns, etc.


About Scratch

Scratch is a programming language that makes it easy to create your own interactive stories, animations, games, music, and art -- and share your creations on the web.

As young people create and share Scratch projects, they learn important mathematical and computational ideas, while also learning to think creatively, reason systematically, and work collaboratively.


Initial article:  Kid-friendly programming app an unfortunate casualty of Apple’s new app policies  :-(

How to Use altChunk for Document Assembly

From Eric White’s BlogThe link.

Merging multiple word processing documents into a single document is something that many people want to do.  An application built for attorneys might assemble selected standard clauses into a contract.  An application built for book publishers can assemble chapters of a book into a single document.  This post explains the semantics of the altChunk element, and provides some code using the Open XML SDK that shows how to use altChunk.

Instead of using altChunk, you could write a program to merge the Open XML markup for documents.  You would need to deal with a number of issues, including merging style sheets and resolving conflicting styles, merging the comments from all of the documents, merging bookmarks, and more.  This is doable, but it’s a lot of work.  You can use altChunk to let Word 2007 do the heavy lifting for you.

Coding Horror: So You'd Like to Send Some Email (Through Code)

Jeff Atwood is in fine form today.  ;-)

Despite my misgivings, email is the cockroach of communication mediums: you just can't kill it. Email is the one method of online contact that almost everyone -- at least for that subset of "everyone" which includes people who can bear to touch a computer at all -- is guaranteed to have, and use. Yes, you can make a fairly compelling case that email is for old stupid people, but let's table that discussion for now.

From So You'd Like to Send Some Email (Through Code)

P.S. Good solutions in the comments.

Tuesday, April 20, 2010

Sketchflow in 90 seconds

You are pressed for time, but you are dying to know what SketchFlow is? The thought of watching an hour of demo video, like presented here, makes you look frantically at your watch?

The solutions is here: Jon Harris presents SketchFlow in just 90 seconds in this video, and does so with a friendly British accent to boot. It does not get any shorter (or better) than that.

Missing a Meeting Due to Volcanic Ash? Check Out These Tools

Snipped from

While in some cases a face-to-face meeting is an absolute necessity, sometimes you can get by using technology. If you’re grounded this week, give these apps a try — they’re all available for very low cost (and some of them are free).

  • Skype For a quick teleconference with a few participants, VoIP service Skype is great. You can use a webcam for video calling, and the latest versions of the software enable screen sharing. The basic Skype service is free, and the client software is available for Windows, Mac, Linux and many mobile devices.
  • Dimdim — For larger meetings, you’ll need a more robust web conferencing tool than Skype. My personal favorite is Dimdim, as it’s got a great feature set for a good price. Other tools available include WebEx and GoToMeeting.
  • SocialText — Corporate social networking tools are useful for communicating with colleagues and keeping them up-to-date with what you’re working on. SocialText is very full-featured (it’s kind of like Facebook for businesses), but there are other, simpler tools, such as Yammer and
  • 5pm — A good project management tool can go a long way toward keeping stakeholders informed about the progress of a project, reducing the need for update meetings. I like 5pm as it’s well-designed, but other good options include Basecamp and Wrike.
  • OffiSync — The latest version of OffiSync (a nifty little program that allows you to sync Office documents using a Google Docs account) allows for document co-authoring — which means that two or more people can work simultaneously on the same document. While it’s never going to be as good as being in the same room with your co-workers, if you need to collaborate on a document remotely, it’s worth trying. Free.
  • Tungle — Need to reschedule your meeting? Free app Tungle will help you find a time that’s convenient for everyone.

Tuesday, April 13, 2010

Nearby Welding Instruction

Maybes via 



    ”This one on one training is done at an hourly rate of $35 plus materials used.  This training is available Tuesdays and Thursdays by appointment, subject to available booth space. Please contact Don Hodges at 410 687-8400 or email at for scheduling.”

Saturday, March 27, 2010

RadWindow Multimonitor Issue

I just purchased, downloaded and installed Telerik’s RadControls for WPF.  When installation finished it offered to run a demo program and I agreed. 


I noticed an issue with RadWindow on this 4-monitor Win7-64 computer.  RadWindow does not display on monitors 3 and 4.  (Display Settings dialogs from UltraMon.)


I moved monitor 4 but RadWindow still doesn’t show up on it.


However, RadWindow does display on monitor 4 in this arrangement.


RadWindow shows up on all 4 monitors when they are arranged like this.


It appears that RadWindow does not like negative-number display positions.

Monday, February 01, 2010

H&M Merged Cells Alignment Strangeness (& Fix)

Update: Unchecking the Preferred Width fixed the issue.  H&M’s support forums are great!


imageI merged the 3 cells in the top row of a table and want to center text in the single merged cell.  It isn’t working as expected.


Left Justified - Ok


Centered – Not Ok in .chm


Right Justified – Not Ok in .chm


Thursday, January 28, 2010

StExBar Regular Expression File Renamer

I use the free utility StExBar on all my computers.  It is a toolbar that adds useful utilities to Windows Explorer.  This is a sample of its regular expression file renaming capability.


Another variation.


Note:  On some computers StExBar was not available to Windows Explorer until I added it to the Windows Taskbar and/or Internet Explorer.

Wednesday, January 27, 2010

Help & Manual Publishing Detail

My documentation partner discovered a detail worth knowing about Help & Manual Topic IDs and their corresponding names in HTML Help.  He wrote about it here.

Tuesday, January 26, 2010

Easier Dr. Explain to Help & Manual #1 of ?

The default Dr. Explain “Generate HTML” and Help & Manual “Import” settings leave each imported topic in a bordered table.  The table looks fine as Dr. Explain output, but it does not look good inside the Help & Manual generated pages with their navigation system.

The easy way to get rid of the table border is to get rid of the table on import.  It is a single-column table so this import option works great.


Monday, January 25, 2010

Using ESET Smart Security 4

If Interactive Mode is on and a new program requests to use the internet this dialog will appear.


Select the desired checkboxes if the program is expected and click Allow.  If Administrator rights are needed and you are not running with them a dialog will appear.  Enter the appropriate administrator info and continue.


Win7 Install on a Dell Latitude E5400

A Custom install (not Upgrade) from WinXP.  Installing Win7-64 Home Premium.  Initial install and updates went fine.  I used an admin user for install to save work later.  Next steps.

  • Created & tested the User account.
  • Radmin for working on the laptop from my desktop.  Not only is it a better screen and keyboard, I can take screenshots and blog them here.
  • Fences.  I drag the install programs into their own fence for ease of deleting later, without the risks of deleting a wanted shortcut.
  • Activated Windows.
  • Firefox.
  • ESET Smart Security.  As expected it shut down Radmin remote access.  Setting the UI to Advanced and turning on the Firewall’s Interactive Filtering Mode brought up a dialog to let Radmin work.
  • Opera.
  • Chrome.  No shortcut for the User account.  Installed also in User account.
  • SnagIt
  • TortoiseSVN
  • Office
  • Acrobat

How Fences Installation Handles the .NET Framework


Using Live Writer with Posterous provides an easy way to post to a blog: email.  I am trying to figure out how to use Windows Live Writer with posterous since I already use it for blog posting.  Googling brought up some links. 

But I don’t see mention of which Blog Provider to choose.  Posting this for emailing the link to posterous help.


User Name for VMware Easy Install

I used the default user “Mark” for the “Easy” VMware installs of Win7-x86 and Win7-64On the install that worked this led to extra steps:  Creating “Admin” as an Administrator and converting “Mark” to a Standard User. 

In the future use user name “Admin” for the Easy Install.  Don’t use “Administrator” because it may conflict with the built-in Administrator account, if that still exists in Win7.

Sunday, January 24, 2010

Win7 32 Bit VMware Install



Using key:  VVXYB-xxxxx-…


Installed fine, and the Downloads box never did anything.


After Shutdown & Snapshot, Updates.


… just one issue.  Apparently after the VMware “Easy Install” is still trying to log on to account Mark every boot.  After creating Admin and User accounts, and giving user Mark a password, this shows up on boot.





After the Admin logon “Log off” shows the expected screen.  Going to ignore this for now.


Win7 64 Bit VMware Install


Using this key: VTQB4-xxxxx-…


This never did anything…  Killing it.  (ESET didn’t block it.)




Can’t find anything in vmware kb or communities.