Rants, rambles, news and notes from another geek

Using FolderShare With PasswordMinder

If you aren’t using Keith Brown’s Password Minder to keep track of all the passwords you use on the ‘net, you are crazy. It is the only way to go. Especially when you combine it with a keyboard shortcut tool like Hot Key Plus.

But when you have two computers and you want to keep your password minder files in sync, it can get a tad confusing.

Not so if you use FolderShare to keep them in sync. FolderShare is a killer p2p app recently acquired by Microsoft. Here’s how I use it with Password Minder:

  1. Install FolderShare on both of your computers
  2. Move your pwm.xml file into a dedicated folder. I used a folder under My Documents called Password Minder.
  3. Launch Password Minder and tell it to use that pwm.xml file.
  4. Setup FolderShare to sync that folder between your two computers.
  5. Sync to the seconed computer and then tell that Password Minder to use the newly sync’ed file.

Now anytime you make a change to your Password Minder file, on either computer, it will be synced across both machines (assuming they are both on and logged in–otherwise they will sync the next time both machines are up).

BTW, this is also an excellent way to keep your Internet Explorer Favorites folders synced.

Monad Script: Download-file

Have you ever found a something on the web and wanted to download it but there isn’t a link? If you have the URL but don’t have a link that you can right-click to save, you can use this little MSH script:

Put the following into a file called download-file.msh:

.csharpcode { font-size: 0.85em; color: black; font-family: Courier New , Courier, Monospace; background-color: #ffffff; /white-space: pre;/ } .csharpcode pre { margin: 0em; } .csharpcode .rem { color: #008000; } .csharpcode .kwrd { color: #0000ff; } .csharpcode .str { color: #006080; } .csharpcode .op { color: #0000c0; } .csharpcode .preproc { color: #cc6633; } .csharpcode .asp { background-color: #ffff00; } .csharpcode .html { color: #800000; } .csharpcode .attr { color: #ff0000; } .csharpcode .alt { background-color: #f4f4f4; width: 100%; margin: 0em; } .csharpcode .lnum { color: #606060; }

$webclient = new-object System.Net.WebClient
$start = $args[0].LastIndexOf("/") + 1
$len = $args[0].LastIndexOf("?") - $start
if( $len -lt 0 ) { $len = $args[0].Length - $start  }
$target = [System.IO.Path]::Combine( $(get-location), $args[0].Substring( $start, $len ) )
$webclient.DownloadFile($args[0], $target)

Now from a MSH prompt you can type…

MSH:1> download-file “http://www.peterprovost.org/Skins/peter2/Images/Title.png”

…and it will download the header image from my blog to your current directory. You can use it with just about anything.


Geek Notes 2005-10-30

This week I have become the WiX MVP in p&p&nbsp_place_holder;. You see, I decided to completely rewrite the WiX installer we’ve been using for CAB, trying to make a more general purpose installer that can be used by all of our projects moving forward. I’ve learned more than I ever wanted about MSI and WiX, but I’ve almost got something that does what I want.

  • WiX Tutorial - If you’re gonna do WiX, you have to start here. This is an excellent introduction to building a nice MSI using WiX. Another good reason to bookmark this page is his Takeoff Checklist that you should run through before shipping your MSI.
  • List of Fictional Expletives - This is a great page on wikipedia. Fake swearwords from across the fiction universe.
  • Guided Tour of MSH - ars technica has resently published a nice walkthru of the Microsoft Command Shell (aka Monad aka MSH).
  • OpenOffice Bloated? - This is an interesting analysis that compares OpenOffice to Microsoft Office. “It doesn’t matter how fast the CPU isΓǪ OpenOffice is simply bloated.”
  • Begone Boolean Parameters! - I’ve been saying this for a long time nowΓǪ boolean parameters are confusing and should be replaced with easy to understand enumerations. Now Mr. Abrams has said it, so perhaps more people will listen.
  • Photoshop-ish Keyboard Shortcuts for The Gimp 2.2 - I’ve used The Gimp for years as a free replacement for Photoshop. Works pretty well, and you can’t beat the price. But I always hated the keyboard shortcuts. These will make it feel much more like Photoshop.

ShellNew Extension for Visual Studio Solutions

I really like creating Solution files before I start adding projects. I like to control where everything goes. But sometimes Visual Studio gets in my way. For example, when you create a new Empty Solution, VS creates a folder for it. Nothing you can do about it.

So I created a ShellNew extenstion to do it for me. Here’s how do do the same thing yourself:

  1. Download this ZIP file.
  2. Extract the file “Visual Studio Solution.sln” and put it in your \Windows\ShellNew folder.
  3. Extract the .reg file to your desktop and double click on it.

That should be all you have to do. Now you can right click anywhere and say “New Microsoft Visual Studio Solution”. Enjoy!

Development Jobs at Patterns & Practices

On Friday, my boss Darrell Snow posted an opening we have here in p&p. Here’s an excerpt from the official job posting on the MS careers site:

Do you want to help create the application blocks, tools, and reference implementations that help Microsoft’s enterprise customers more successfully build their business applications? Are you passionate about understanding enterprise customers and the proven best practices in using the Microsoft platform to develop their solutions? See http://msdn.microsoft.com/practices for more information on the patterns & practices (p&p) group.

An SDE in the p&p group requires in-depth experience developing enterprise business applications and products. The deliverables include reference architecture implementations, application building blocks, and pattern implementations. When we are successful, we help customers use the existing platform and also provide feedback to the product groups for future versions of the platform. The SDE will work in project teams, and often is responsible for leading the development efforts including managing external vendor developers. Each project to create a p&p deliverable typically lasts 4-9 months.


Slides and Code From Code Camp

Yesterday at Seattle Code Camp, I did four presentations, two with Brad Wilson and two by myself. During our talks, we promised to share the slides and code from our demos, so here you go.

  • Monad - The New Microsoft Command Shell
  • Dependency Injection - What, Why and How
    • Powerpoint&nbsp_place_holder;(58 KB)
    • Sorry, but the code from this one isn’t available.
  • TDD GUI Using MVP (and the pair programming game)
  • Composite User Interface Application Block

I have lots of thank-yous that I want to share. Many thanks to the attendees. The talks were a lot of fun and I love it when the attendees involve themselves and ask lots of questions. Thanks to Ed Jezierski for providing some of the slides I used in the CAB talk and thanks to Adam Barr for sharing his Monad slides with me. Thanks to Chris Kinsman and Jason Mauer for putting on a great event. Finally thanks again to Brad for being a great co-presenter.

Dalai Lama on Science and Religion

Just saw this today on eSkeptic:

My confidence in venturing into science lies in my basic belief that as in science so in Buddhism, understanding the nature of reality is pursued by means of critical investigation: if scientific analysis were conclusively to demonstrate certain claims in Buddhism to be false, then we must accept the findings of science and abandon those claims.

  • His Holiness the Dalai Lama from his book The Universe in a Single Atom

Gotta love that quote. I have great respect for that man.

Seattle Code Camp

Probably a little late for most of my readers, but…

I’m presenting (or co-presenting) four talks* at Code Camp Seattle this weekend. All four talks are on Sunday:

The TDD talk should be fun. Brad and I are basically gonna go up there and play the TDD Game in front of an audience. Should be fun.

* - Yeah. Four. You see, I’ve never done Code Camp before and I’m used to submitting 3 or 4 presentation ideas to a conference, expecting them to pick 1 or 2. Well, apparently at Code Camp, if they have room, they take ‘em all. Lesson learned.

Geek Notes 2005-10-17

I’ve been sick all weekend, but was feeling a bit better today and went to work. I got to participate in another of the planning sessions we’re doing for our new workspace. Man it is gonna be cool. I can’t wait to show you all the pics when it is done. Meanwhile, a few tidbits I had laying aroundΓǪ