Saturday, November 25, 2006

Fiddler2 (Fiddler + HTTPS) Alpha Released

Fiddler - Fiddler2

"Fiddler v2 is a Alpha version of Fiddler which supports HTTPS.

This experimental edition of Fiddler is currently called "Fiddler2" and it should install side-by-side with the public version of Fiddler. ..."

Fiddler2 - Frequently asked questions

"...

Q: Why release Fiddler2?

A: Fiddler2 was released to help web developers discover and correct performance, functionality, and security bugs within their HTTPS sites.  Fiddler2 brings Fiddler v1.x's ease-of-use to debugging HTTPS sites.

... "

The very cool (and pretty much standard utility belt item) Fiddler is being updated to support HTTPS...

Open XML/Word 2007 - Content Control Toolkit

Open XML Developer.org - Content Control Toolkit

Content Control Toolkit screenshot

"If you're working on Open XML solutions that use Word 2007 content controls and bind them to nodes in your custom XML data part, then you need this tool. It provides a simple graphical view of the content controls and custom XML nodes in a document, and you can bind a node to a control by simple drag&drop operations. Click on the screen shot here to see how it works.

It's a great way to manually create a data-bound document, and it's also a good developer tool for learning about the markup you need for binding controls to data. You can generate well-formed data-binding markup with a few clicks, then look at how it works and use the same markup in your custom solution as needed.

..."

I've got a feeling that I'm going to be doing a lot of Open XML related development in the future, so I'll be keeping my eyes open for cool sites, tools and info...

(via Certifications and Software Development - An Absolute Must Have Tool for Word 2007 Content Control Solutions)

Friday, November 24, 2006

Related Post Windows Live Writer Plugin v1.0.0.1 Released (Web Proxy Release)

The Related Post WLW Plugin has been updated and released to better support web proxies.

Also updated was the branched My.Blogs library, updating it to implement limit web proxy support.

Related Past Post XRef:
WLW Related Post Plugin v1.0 Now Available on CodePlex
WLW Related Post Plugin - Preview Part 3
WLW Related Post Plugin - Preview Part 2
Windows Live Writer - Related Post Plugin Preview

Picture Post Windows Liver Writer Plugin v1.0.0.4 Released (Web Proxy Release)

The Picture Post WLW Plugin has been updated and released to better support web proxies.

The cool FlickrNet library already supported proxies, so all I had to do was feed it the web proxy settings from WLW (see related post).

Now on to the Related Post Plugin, which is going to take a little longer as the My.Blogs library doesn't support proxies. (yet  ;)

Related Past Post XRef:
bLaugh Windows Live Writer Plugin v1.0.0.1 Released (Web Proxy Release)
Windows Live Writer Picture Post Plugin v1.0.0.1 Beta Released

bLaugh Windows Live Writer Plugin v1.0.0.1 Released (Web Proxy Release)

The bLaugh WLW Plugin has been updated and released to better support web proxies.

The very cool XML-RPC.Net library already exposed a Proxy setting, so all I needed to do was get the configured Windows Liver Writer Proxy.

Flickr4Writer led the way with Tim showing how he's supporting web proxies.

The magic is in "WindowsLive.Writer.Api.PluginHttpRequest.GetWriterProxy()" function which returns a System.Net.WebProxy object. That can then be passed through to supporting libraries (like FlickrNet, XML-RPC.Net, etc).

FYI, I'm now moving onto updating my other web accessing WLW Plugins (Related Post and Picture Post) with web proxy support too...

Related Past Post XRef:
bLaugh Windows Live Writer Plugin v1.0.0.0 Released
WLW bLaugh Plugin Preview
bLaugh WLW Plugin?

CPU Temperature Monitor System Tray Utility

INauseous() - CPU Temperature Monitor

"Given the issues with Toshiba laptops running very hot with Vista Glass Aero enabled, and just in general with XP as well ( Hot enough to burnout motherboards that require replacements from the manufacturer)  I wrote this utility to give me system tray status on the current CPU temperature.  I'm currently adding GPU temperature but that requires distribution of licensed components (dynamic libraries).

...

Basically, it just sits in your system tray showing the current CPU temperature with the following color schemes:

  • Green - Running at below 50% of critical temperature
  • Yellow - Running at > 50% but < 75% of critical temperature
  • Red - Running >= 75% of critical temperature.

...

The WMI namespace and object is root\WMIMSAcpi_ThermalZoneTemperature

..."

Great timing...

I just had a HD issue related to heat (it's officially bad when your notebook HD is too hot to handle and makes a loud "clunking" sound...  :|  ) so I'm "heat aware" right now.

This is a cool little utility which sits in your system tray that monitors CPU heat. The C# 2 source is also available...

.Net Validation Framework (Domain Object Validation via Attributes)

CodePlex - .net Validation Framework

"Use .NET attributes to provide validation for your strongly typed business objects.

...

[RequiredStringValidator]
[LengthStringValidator(50)]
public string FirstName...

[RequiredStringValidator]
[RegexValidator("Invalid email format.", @"\w+([-+.]\w+) *@\w+([-.]\w+)*\. \w+([-.]\w+)*")]
[LengthStringValidator(50)]
public string EmailAddress...

[RequiredIntValidator]
[CompareIntValidator(18, ValidationCompareOperator.GreaterThanEqual)]
public int Age..."

Visual Studio Magazine - Validate Business Objects Declaratively

"... I’ll show you how to construct the Declarative Validation framework to validate business objects by decorating class properties with attributes. The framework consists of six built-in validator attributes: RequiredValidator, LengthValidator, RegexValidator, RangeValidator, CompareValidator, and CustomValidator. You can plug the framework into any architecture. It comes with two abstract base classes that you can use to make implementation trivial by querying the IsValid property. ..."

I really like the idea of using attributes to validate my strongly typed domain/business objects...

(via Steve Michelotti - Validation framework on CodePlex)

Thursday, November 23, 2006

Blogger Backup v1.0.0.2 Alpha Release

Blogger Backup v1.0.0.2 has just been released...

Highlights:

Web proxy support added (accessed via the Tools/Options menu)

Better handling of long paths (i.e. > MAX_PATH)

 

Related Past Post XRef:
Blogger Backup v1.0.0.1 Alpha Release
Blogger Backup Utility v1.0.0.0 Alpha Released
Blogger Backup using the C# GData Client Library...

Wednesday, November 22, 2006

Blogger Backup v1.0.0.1 Alpha Release

Just released is v1.0.0.1 of the the Blogger Backup Utility.

My primary to do's before beta are incremental/just new stuff/get stuff since last run/etc backups and BlogML support...

Here are the v1.0.0.1 release notes:

Fixed Blogger 3.0 issue.
Now works with both Blogger 2 and Blogger 3

Added Release History text file and related Help menu item

Added "Append Blog Title to Backup Path" option, defaulted as true/on.
This will add an additional folder level, named based on the given blog's title.

Updated descriptive label text, changing case, etc.

Updated tab order

Swaped positions of "Get only the most recent:" and "Overwrite existing backups?"

Related Past Post XRef:
Blogger Backup Utility v1.0.0.0 Alpha Released
Blogger Backup using the C# GData Client Library...

PortableApps Suite

PortableApps.com - PortableApps Suite

"PortableApps Suite™ is a collection of portable apps including a web browser, email client, office suite, calendar/scheduler, instant messaging client, antivirus, sudoku game, backup utility and integrated menu, all preconfigured to work portably. Just drop it on your portable device and you're ready to go.

...

PortableApps Suite (Standard Edition): ClamWin Portable (antivirus), Firefox Portable (web browser), Gaim Portable (instant messaging), OpenOffice.org Portable (office suite), Sudoku Portable (puzzle game), Sunbird Portable (calendar/task manager) and Thunderbird Portable (email client) and runs comfortably from a 512MB drive.

..."

Nice.

Add this and the Sysinternals Suite (Sysinternals Suite (8MB of Complete Sysinternals Goodness)) and you've got a pretty cool portable environment...  ;)

(via Larkware News - The Daily Grind 1019)

NetMon 3.0 RTW

Network Monitor - Network Monitor 3.0 has released!!

"After many months of hard work we are proud to announce the Release to Web of Microsoft Network Monitor 3.0 (NM3). The final version is available from Microsoft Connects site (http://connect.microsoft.com). The Connects site does require you have a passport account, but this is also free.

What you get for your money

Well since it's free, I suppose you get infinite value. But in nut shell here are some of the key features of NM3.

  • A completely new user interface
  • Real time capture and display of frames
  • Simultaneous capture on multiple network adapters
  • Multiple simultaneous capture sessions
  • Network conversations and a tree view displaying frames by conversation
  • A new script-based protocol parser language, and script-based parsers
  • Support for Vista/Windows XP/Windows Server 2003
  • Support for 32bit and 64bit platforms

..."

When you go to Connect, don't let the "Network Monitor 3.0 Beta" throw you. Once you Apply to join the beta, you get access to the 3.0 RTM...

Downloaded, installed and it looks pretty darn cool... This is not your Father's NetMon...  ;)

Grab the Desktop as a bitmap...

Ozzie Rules Blogging  - Create a magnifier by painting the Desktop into your form

"Had a question about how to create an application magnifier and was amazed at how easy it was to get a prototype working! Depending on what you consider lines of code it is about 3 lines!

...

Desktop_Hwnd = GetDesktopWindow()

Desktop_HDC = GetWindowDC(Desktop_Hwnd)

Debug.Print(StretchBlt(g.GetHdc, 0, 0, Me.Width, Me.Height, Desktop_HDC, 0, 0, Me.Height / 2, Me.Width / 2, SRCCOPY))

..."

This reminds me of a project I want to try. I want to see if this works (grabbing the desktop as a bitmap) on XP while a Remote Desktop session is running/logged in, but disconnected.

I.e. run an agent on a XP machine, running in the logged on user's process (so we get their Desktop), saving a screenshot to disk even when the user is disconnected (not logged out, but disconnected) from the session.

Thank about 120+ "work horse" machines running batch processing "stuff" that you have to monitor, all of them running Remote Desktop sessions... It would be cool to see their current Desktops without have to RD into each system (through there are ways that that can be made easier...)

It should work... (But I've said that before about other things that should work in disconnected RD sessions...)

Tuesday, November 21, 2006

Blogger Backup Utility v1.0.0.0 Alpha Released

I've just uploaded the source and the Setup for the first alpha release of the Blogger Backup utility to the CodePlex project.

It's FUBLY, but it seems to work (on my machine, against my blog, etc), there's little to no error checking, your mileage may vary, use at your own risk, etc, etc, yada, yada...

It makes no changes to your blog, only writes XML files to a path you select,  makes no changes to your system, so it SHOULD be pretty safe to use (but your mileage may vary, use at your own risk...  ;)

Here are some screenshots of the utility in action (see I told you it was FUBLY  ;)

      

To Do:

Add BlogML support
Test with Blogger 3.0/beta
Add More/Better/Some error handling
Make it prettier
Allow the user to select specific posts for backup
Implement incremental backup (i.e. "Backup the newest stuff, the stuff added since the last backup...")

Maybe New features like Archive Title Page HTML generation, with optional grouping/sorting by date, etc.

Think "archive page, but just with Titles (as links to posts), sorted and grouped by week, or month, or year, etc".

Think about an annual post with the titles from that year. Or a summary, sorting the titles alphabetically. Or my post size. Or stuff like that...

Now that I can get all the posts from my blog, just think of the stuff you can DO with all that data!  Muhahahaha...

 

Related Past Post XRef:
Blogger Backup using the C# GData Client Library...

Update #1 11/21/2006 @ 10:00 PM (PST):

I just signed up for a Blogger 3 (beta) blog and this backup utility DOESN'T work for Blogger 3(i.e. beta.blogger.com).

There seems to be a problem in during the post download/save phase... I'll look at it tomorrow...

Note To Self: Send To Folder Location for Windows Vista

One of the first things I do when getting a newly installed Windows OS is to add a shortcut to Notepad in my Send To folder. This gives me a very quick and easy way to open any given file in Notepad (right click -> Send To -> Notepad).

So since I'm now doing my personal dev on Vista...  Um... where's the Send To folder now?

Given its new location I want to make sure I can find it again in the future...

Vista Send To Folder Location:
C:\Users\[UserID]\AppData\Roaming\Microsoft\Windows\SendTo\

Windows XP Send To Folder Location:
C:\Documents and Settings\[UserId]\SendTo\

 

Gee, I wonder why I didn't find it right off....  :|

Here are a couple related posts/articles:

Finding the User Settings in Vista
Windows Vista Tip – Customizing the “Send To” Menu

"My" Lego Mindstorm Fun...

Coding4Fun - Programming LEGO Mindstorms Robots using the My Namespace

"This article walks through creating an extension to the Visual Basic My namespace to easily enable programming Lego Mindstorms RCX robots...

...

Nostalgic memories returned as I opened the box to the Lego Mindstorms Robotic Invention System I remembered the spaceships, fighter planes, sprawling space docks, towering skyscraper buildings—each coming to life accompanied by the soft click of LEGO bricks going together. And now you can automate your creations! If I had owned this kit as a kid there would have been some serious infractions of lights-out time at night.

With the release of the Microsoft.NET Interface for LEGO Mindstorms you can program your Mindstorms robot using any .NET language. In this article we will make the Microsoft.NET LEGO interface available via the Visual Basic My namespace.

Getting Started

You first need to download and install the free LEGO Mindstorms SDK 2.5. This will install the drivers required to send commands to Mindstorms robots via the infrared tower. You'll need Visual Basic 2005, which you can get for free from Visual Basic Express Edition 2005. You'll need to install the Microsoft.NET LEGO interface which will provide the interface between Visual Basic and your robot. You can get that by installing the Visual Basic LEGO Starter kits: Download Visual Basic LEGO Starter Kits If you run into any problems setting all of this up, see the setup tips in Tips and Tricks for LEGO Mindstorms programming by John Wingfield.

..."

There's something that's very cool about programming my Mindstorm from VB.Net (please, no jokes about toys/languages/etc  ;)

Monday, November 20, 2006

Blogger Backup using the C# GData Client Library...

I think I've finally found a viable, working method to easily back up my Blogger Posts to disk.

Using the Google GData API and their C# client library implementation, I've created a simple proof of concept Blogger Backup utility in which I was able to save all of my 2058 blog posts to individual XML files.

Rock On!

Here's a couple screenshots of the results...

 

I've just requested a CodePlex project and will be getting the code into releasable shape (beta at least) tomorrow (being on vacation means I can code all day... ;)

The current output/save format is Atom XML (which comes for free in the GData library). One of the things I'd really like to do is also support BlogML. Since it's XML to XML, that should be a simple transform away...

More to follow in the coming days...

Hemi - Move TFS Work Items From One Project to Another Utility

Eric Lee - A Humble Blog - Work Item Moving Tool is back!

"Hey guys, I've finally had a chance to update my work item moving tool to work with the RTM release of Team Foundation Server. Along the way, I made some modifications and changes that I've wanted to do for a while. I haven't thought of a better name than 'work item mover' so for now I've code-named it if you will 'Hemi'.

I’ve posted the tool to: ...hemi.release.zip . You’ll also need: C1.Win.C1FlexGrid.2.zip..."

If you've been playing with Team Foundation Server (TFS) one of the things you may have wanted to do was to move a number of Work Items from one Project to another, yet found there's no easy way to make such bulk moves... One at a time is easy, but what if you're consolidating projects, moving from many smaller ones into one bigger one?

That's where Hemi comes in. Hemi is a very cool utility which makes it easy to query, copy/move work items from one Project to another (on the same server).

I've tested it out briefly and it works just as advertised, is simple and yet feature complete.

If you're looking to do some bulk work item copies/moves you should check this utility out...

bLaugh Windows Live Writer Plugin v1.0.0.0 Released

I've just uploaded the source and released the WLW bLaugh Plugin...

Now you can simply and easily select and insert a bLaugh comic into your current WLW post. Because all work and no play... yada, yada, yada...  ;)

 Evian Flu

Related Past Post XRef:
WLW bLaugh Plugin Preview
bLaugh WLW Plugin?

AniBOOM - Get your Animation on...

My son is currently into online animations (and I'm getting pretty sick Magical Trevor ;). I'm almost afraid to tell him about AniBOOM...

AniBOOM is a site which focuses on short animations, with the expected social aspect (tagging, rating, comments, etc).

There are two things that peaked my interest, Awards and Revenue Sharing.

They are currently holding the AniBOOM 2006 Award voting, which lets you vote for you favorite animations. The winner is supposed to receive $25k and the 5 runner-ups, 5k each. Not a bad deal.

I also thought the Revenue sharing plan, which is tentatively scheduled to start in late 2006, an interesting idea. Here's a blurb...

"aniBOOM believes in rewarding hard working artists for their labor, so we have created a REVENUE SHARE model based on Number of Views. This means that the more people who watch your movies - the more money you’ll earn.
Each registered aniBOOM member who has uploaded movies will receive their proportionate share, calculated in accordance with their relative contribution and Number of Views racked up."

I find these two items interesting primarily because they encourage/require original content. Meaning this site will likely/hopefully not fill up with prated, hacked, recorded, previously copyrighted content.

That and they seek to payback the authors/creators in hard cash...

While the site is still in beta, but that doesn't mean I don't have a "want list".  ;)

A. API
It doesn't looks like it has an API, so no WLW Plugin writing for me... :( 

B. Animation tools (or links), tutorials, suggestions, etc.
After watching a few animations, the next thing I wanted to do was create my own... It would be cool if they provided authoring/creating/etc resources for the budding animation creator.

Still, all in all, it's a cool site to spend some stress release time on...

Sunday, November 19, 2006

Windows Live Writer Picture Post Plugin v1.0.0.1 Beta Released

I've just released the first public beta of my WLW Picture Post Plug on the WLW Picture Post CodePlex project.

This version supports both Flickr and 23Hq. I can't seem to get a response to my Zooomr Product Key requests, so Zooomr support will wait until there's any easier product key request method/procedure...

I've also used this time to move my personal project development over to Vista, installed on an older IBM T30 Thinkpad. I'll post on that soon...

Here are some screenshots (with kitty pictures to satisfy my monthly cat picture blog post quota requirements ;)

   

There's still a good bit to do, but it works (as seen above... all the above pictures were posted with the v1.0.0.1 beta).

Now that I've released this, I can move onto getting the bLaugh plugin into beta.  ;)

Related Past Post XRef:
Another Weekend, Another WLW Plugin - WLW Picture Post Plugin

 

Update #1 11/20/2006 @ 6:37PM (PST):

Updated the href links for the above pictures...

There's a bug in how I'm handling the Web URL's for 23HQ... It's not just a "replace www.flickr.com with www.23hq.com" fix up. The format of the WebURL's are different enough that more parsing/fixup is needed.

Fixing it now...