Wednesday, June 07, 2006

Security Prompt Gone from Outlook 2007 Object Model (Almost)

What's New for Developers in Microsoft Office Outlook 2007 (Part 1 of 2)

"...
Security
Outlook 2007 introduces an important change in the way that the Outlook object model guard operates. While the behavior of the object model guard has not changed significantly for Outlook add-ins, Outlook 2007 allows external applications to run without object model guard prompts-provided that the computer on which your code is running has functional antivirus software installed and that all antivirus definitions are current.

This change represents a major departure from the way the object model guard worked in previous versions for external out-of-process COM callers. Before Outlook 2007, external COM callers were always untrusted from the perspective of the object model guard. This means that external applications had to resort to extended MAPI or third-party libraries in order to prevent the display of Outlook 2007 object model guard warnings, such as the one shown in Figure 3.


Outlook Address Book warning

Figure 3. Outlook Address Book warning

The object model guard was originally introduced for Microsoft Outlook 98 and Microsoft Outlook 2000. Since the introduction of the object model guard, the frequency of the Address Book warning often frustrated developers for legitimate external COM applications and their users. Also, if you needed to use CDO for MAPI property access or improved performance, you faced a different security model that did not integrate with the Outlook add-in trust model. For most applications, Outlook 2007 has removed the need for CDO. Outlook 2007 offers improved security that aims at removing development road blocks for all legitimate Outlook developers. The following sections describe the operation of the Outlook object model guard in Outlook 2007.

....


Out-of-Process Callers and the Outlook Object Model Guard
For out-of-process callers, the behavior has changed significantly from Outlook 2003. If antivirus software has been installed and is up-to-date on the client computer, Outlook will not display object model guard warning dialogs when you call protected members such as MailItem.Send or MailItem.Recipients.

All out-of-process COM callers and add-ins will run without security prompts under the following conditions:

  • The client computer is running Microsoft Windows XP SP2 or Microsoft Windows Vista and the Windows Security Center indicates that the antivirus software is in a "Good" health status. If the computer is joined to a domain, this health status indicator may not be visible, but will still be maintained.
  • The installed antivirus software is designed for Windows XP SP2 or Windows Vista.
  • Outlook is configured in one of the following ways:

    • Uses the default security settings
    • Uses group policy-defined security settings that are set to warn when no antivirus software is detected
    • Uses group policy-defined security settings that do not have programmatic access policy applied
Additionally, Outlook will suppress the prompts when it has been configured to Never warn me about suspicious activity (not recommended) through the Trust Center dialog box ..."

This is huge! (For me and other out of process Outlook developers at least).

Working around Outlook security eats up way too much development time... This feature alone will drive me to push for Outlook 2007.

Microsoft Community Bar

Microsoft Research - Microsoft Community Bar

"The Community bar adds context-dependent content to the web browsing experience. As a user browses the web, he can see (and leave) notes from other people who visited the same page, chat with other people viewing the same page, tag the page with a bookmark or category label, view all the inlinks to the page, find related pages, perform context-specific search, and see blog postings related to the page.
 
..."

Sounds kind of interesting...

"Authoring a Custom Bootstrapper Package for Visual Studio 2005"

MSDN - Authoring a Custom Bootstrapper Package for Visual Studio 2005

"Summary: This article discusses how to integrate a custom application prerequisite into the Visual Studio 2005 Bootstrapper, allowing other developers to deploy the prerequisite with their applications. (8 printed pages)
 
...
The Visual Studio 2005 Generic Bootstrapper

The Visual Studio 2005 Bootstrapper is a technology that allows you to create an integrated setup experience for application prerequisites and ClickOnce or Windows Installer installations. With the Bootstrapper you do not have to worry whether or not end users have components like MDAC or the .Net Framework 2.0 installed on their machines-simply indicate which prerequisites your application depends on and the Bootstrapper will take care of installing them along with the application itself.

Visual Studio 2005 includes out-of-the-box capability to install several common prerequisites using the Bootstrapper, including .NET Framework 2.0, SQL Server Express 1.0, and others. The Bootstrapper is completely extensible, so it can be configured to install just about any redistributable. As a redistributable owner, providing a means for developers to seamlessly install your package with their application using the Bootstrapper promotes penetration of your redistributable, and simplifies servicing by providing an alternative to privately deploying assemblies in the redistributable.

This whitepaper will show how to integrate a custom application prerequisite with the Bootstrapper. This will allow other developers to deploy the prerequisite along with their applications.
 
..."
 
I’ve been looking for a good technical article on creating my own bootstrap package.

Looks like I found it..

(via Chris Smith's completely unique view - Authoring a Custom Bootstrapper Package for Visual Studio 2005)

Tuesday, June 06, 2006

Attrice's Microsoft Build Sidekick

Attrice - Microsoft Build Sidekick


"General
MSBuild Sidekick is a tool for MSBuild Engine users providing Graphic User Interface front-end for editing MSBuild project files. The build project files may be either created as Microsoft Visual Studio© 2005 build projects or as Team Foundation Team Build build types.

 
The application was developed by our parent company, Trivium Technologies and is distributed by Attrice under Sidekicks license.
 
View screenshot
 
The version 1.1 of Build Sidekick provides the following features:

  • Load and modify any file complying to MSBuild schema
  • View build project structure in a tree view that displays tasks used in build, property groups and properties, item groups and items, targets and targets tasks and imported build projects.
  • Show or hide presentation of imported definitions in a project tree view
  • View MSBuild project raw XML source as you modify the project
  • Modify project default targets
  • Add or remove tasks used in build project from external assembly
  • Add, remove or modify property groups
  • Add, remove or modify properties in property groups
  • Add, remove or modify item groups
  • Add, remove or modify items in item groups
  • Add, remove or modify targets
  • Add, remove or modify selected target's tasks, tasks order
  • Modify selected task properties (including output properties specification)
  • Import or remove external build projects
  • Open any imported project from the loaded project
...

Intended usage
MSBuild Sidekick application’s objective is to assist MSBuild users in creating and supporting large and complicated MSBuild project files. The project elements are displayed in tree view hierarchy structure so viewing of even complicated projects structure becomes easy.

The application provides concise and efficient GUI for the purpose of creating, modifying or removing any element supported by MSBuild schema, so in-depth knowledge of XSD schema details becomes unnecessary.

The Sidekick user may easily add any build task defined in external assembly. The assembly task may be added by using assembly file path or assembly name; the user may choose to use all or specific build tasks available in the assembly. MSBuild default tasks are available without any special configuration.

..."

NICE. And at a perfect price point (free).

Make sure you also check out their very cool Team Foundation Server Version Control Sidekicks (Workspace Sidekick and Status Sidekick).

(via Rob Caron - MSBuild Sidekick)

Technorati Tags: , ,

Launch a Process on A Remote Machine With Custom Credentials via WMI

Steve Schofield Weblog - WMI - start a process on remote machine and passing custom credentials.

"I use System.Management in .NET 2.0 to connect, pass custom credentials to a remote machine and query with WMI frequently. This is straight forward and there are many examples showing the syntax how to do this. However, while working with remote IIS7 installs, I wanted to execute a command on a remote machine while passing custom credentials. I couldn’t find an example that provided this functionality, hopefully this will save someone time searching for the syntax.  This sample starts an instance of ’calc.exe’ on a remote machine. 
 
..."

I’ve had a like need paused on a low priority background thread... This will be useful when I resume that thread.

Monday, June 05, 2006

Label Provider for WinForms

HotDog’s Blog - LabelProvider

"For the description of most controls we use labels and I for one don’t like to add a label manually for each control. Been using a component that paints values, but never got around to put it in a nice coat and with design time support up until now. The design time being the most work (although greatly alleviated by finding out how to use the isComplete parameter of the InstanceDescriptor ;-) ), the component is easy in use and deployment.

Usage: drop it to your form (or container control) and you get a new property on each control (”Label on LabelProviderName”).

You can simply type in the labeltext and a label will be painted on its parent.

To set more details, when the text is set a LabelInfo object will be created automatically. A plus sign appears in front of the property once it has been set, to indicate it can be expanded. Other properties for the label such as the Alignment, Font and Color can then be set. ..."
 
That’s pretty darn cool...

The "label my controls game" is one that I don’t like playing when building WinForm apps. The LabelProvider sounds like a great idea and one that could save a good bit of time.

Using VPC for Development and Debugging Whitepaper

Microsoft Virtual PC 2004 Development and Debugging

"Microsoft Virtual PC offers many features to facilitate the software development process. By using Virtual PC to create a valid representation of an end-user machine, developers can test application changes on virtual end-user machines instead of on the developer’s physical machine. This helps to mitigate the "works on my machine" syndrome, thus reducing overall development and test cycle times. Fixing a bug before it goes to the testing group is much faster than fixing it after testers detect it."

This is a 1.16MB, 71 page, Word whitepaper that provides some good poop on using VPC in a development or test role. This is a "whitepaper" in the original sense as it’s not a bunch of marketing white noise, but instead contains some cool, useful, detailed and technical information. For example, page 12 ends with the creating of a INF that will add "edit" and "register" Explorer right click options for VMC files...

Worth a quick read if VPC is on your Dev Dude Utility Belt...

(via Virtual PC Guy's WebLog - Virtual PC website updated...)

Virtual PC 2004, Ubuntu and Video Display Issues

Kevin Lam's Web Log - Virtual PC 2004 Tip: Installing Other Operating Systems
 
"If you like operating systems like me, no doubt you've recently tried to install Ubuntu 6.06 and have run into some installation problems with Virtual PC 2004 SP1 related to display issues.  Try this trick:

  1. Move the selection to "Install In Safe Graphics Mode" (second option)
  2. Hit F6 to modify the install options.
  3. Enter "vga=771" before the double dashes "--".
  4. Hit Enter.
The install should work fine from there on in..." [Content leached almost in full]
Another cool VPC video tip...

Related Past Post XRef:
[tip] Knoppix cheat code for Virtual PC Video

Delta Based File Compression from MS for Windows (Beta)

Delta Compression Application Programming Interfaces

"Delta Compression is a differential compression technology developed by Microsoft. While it has mainly been used for Windows Updates, Delta Compression offers other uses as well. The following topics discuss Delta Compression Application Programming Interfaces (APIs) currently available in the Windows Platform.
...
PatchAPI

C-Language based API that allows you to create and apply deltas.
Lower computational overhead than MSDelta but typically creates larger deltas.
Applies to:
   Microsoft® Windows XP®
   Windows 2000®
   Windows Server 2003®
   Windows Vista®

 
MSDelta
C-Language based API that allows you to create and apply deltas. MSDelta offers optimization for a much larger range of file types than PatchAPI.
Applies to:
   Microsoft Windows Vista

 
This documentation is intended for software developers who want to programmatically create deltas (patches or compressed diffs) between files. General information about the various APIs is included in this documentation. It provides information about delta compression and the Delta Compression APIs. This documentation provides descriptions of the functions as well as supplemental information for developers who want to optimize the size of their deltas for certain file types.
 
..."
 
The MS Delta made me chuckle... Raise your hand if you ever used MS Delta (the predecessor to SourceSafe) [Hand Raised]

In any case, these API’s look interesting. It would be cool see something like this built into one of the auto app update methods (App Update block, ClickOnce, etc).

Designing And Implementing A Neural Network Library For Handwriting Detection, Image Analysis...

The Code Project - Designing And Implementing A Neural Network Library For Handwriting Detection, Image Analysis etc.- The BrainNet Library - Full Code, Simplified Theory, Full Illustration, And Examples

"In my previous article, the focus was on what a neural network can do. In this article, we will see what a neural network is, and how to create one yourself. I will go a little deeper. After reading this article, you will be able to


  • Understand the basic theory behind neural networks (backward propagation neural networks in particular)
  • Understand how neural networks actually 'work'
  • Understand in more detail, the design and source code of BrainNet library.
  • Understand in more detail, how to use BrainNet Library in your projects.
  • Think about new possibilities of neural network programming
  • Put forward some concepts to optimize and generalize BrainNet library.

..."

Neural Networks have always interested me... I just dig the thought of "training" a program to do something and then have it just do it on its own.

If your interesting in learning a little about neural networks and playing with a .Net neural network library, then check about the above post...

Technorati Tags: ,

Visual Studio 2005 Team Edition for Database Professionals

Visual Studio 2005 Team Edition for Database Professionals

"Visual Studio Team Edition for Database Professionals delivers a market-shifting database development product designed to manage database change, improve software quality through database testing and bring the benefits of Visual Studio Team System and life cycle development to the database professional.
 
...

  • Reduce the risk involved with changing database schema by comparing the source controlled version against test and production systems and automating the creation of change scripts.
...
  • Create full unit tests for your database schema that can be run independently or in combination with Visual Studio 2005 Team Suite to provide a comprehensive set of tests for the application and database tiers.
  • Author tests in either T-SQL or managed code with extensible unit test functionality and a new test editor.
..."

Very nice. Development DBA’s that I’ve worked with (and when I have my DBA hat on) kind of feel left out of the development process. Their tools and such have usually been very sperate from the main stream development process/tool suite.

It’s cool to see MS fill this hole with a new VS role (hey, that rhymes ;)

I’m also very interested to see how the testing is integrated. That’s the feature that really has me excited...

(via Dave Bost - Visual Studio Team System Adds Another Role)

Technorati Tags: , ,

Saturday, June 03, 2006

Requirement Authoring Starter Kit (RASK) - Updated

Luther Miller of Softagon sent me an email yesterday letting me know that the MSI for the Requirement Authoring Starter Kit (RASK) has been updated (fixing the flat folder structure issue). It can now be downloaded from http://www.microsoft.com/downloads/details.aspx?familyid=e96ccc54-8759-452f-bf68-3a261c663b66&displaylang=en.

Very cool... downloading it now...

Related Past Post XRef:
Requirement Authoring Starter Kit (RASK) - Part 2
TFS - Requirements Authoring Starter Kit

Technorati Tags: , ,

Sunday, May 28, 2006

Test post from Word 2007 (B2)

I finally scrounged up a machine to install Office 2007 on… I think it’s about a low end as you can go and still be usable, an old Toshiba Tecra 8000, Pentium II, 400 MHZ, 256MB RAM.

And guess what? It actually seems to work (as long as I’m a little patient ;)!

Now that it’s install what’s the first thing I had to do? Well dugh, post to my blog directly from Word 2007!

So here it goes… Clicking on Publish now….

Thursday, May 25, 2006

Enron, Lay and Skilling; Guilty

Enough said...

EDD Utility Belt Addition: Sony Introduces Free File Recovery Service for Memory Sticks

Gizmodo - Sony Introduces Free File Recovery Service for Memory Sticks

"Sony has announced the Memory Stick Data Rescue Service. This is a free, downloadable program. Customers just have to register their memory stick before downloading. Supposedly the software can recover picture, video and office data files. The program is compatible with all Sony Memory Sticks sold since 1998 ..."

Adding this to my EDD Utility Belt...

Technorati Tags: ,

Wednesday, May 24, 2006

"Microsoft Standard User Analyzer"

Microsoft Standard User Analyzer

"Overview
The Standard User Analyzer helps developers and IT professionals diagnose issues that would prevent a program from running properly without administrator privileges. On Windows Vista, even administrators run most programs with standard user privileges by default, so it is important to ensure that your application does not have administrator access as a dependency.

Using the Standard User Analyzer to test your application can identify the following administrator dependencies and return the results in a graphical interface:

• File access
• Registry access
• INI files
• Token issues
• Security privileges
• Name space issues
• Other issues

This tool also complements the Application Compatibility Toolkit (ACT) 5.0. ACT 5.0 will include a User Account Control agent that you can deploy to user desktops to identify applications that require administer privileges. The Standard User Analyzer is designed to be run on the developer or tester’s workstation to test and troubleshoot a specific application. Issues identified with the Standard User Analyzer can also be entered into you ACT 5.0 database so you can track the application compatibility across your environment."


Interesting and something that could be useful as our industry (Windows software development) moves toward least privilege (which is not moving fast enough as I find myself having to unscrew too many things my wife, son and daughter do to their PC’s because of their admin priv’s... okay, also sometimes I do to my machines because of my admin priv’s... ;)

As a developer I know it would help to see exactly what in my apps that need to be tweaked to allow them to be run by "Standard Users".

I’d really like to see something like this baked into VS. Like the "Debug this application with the selected permission set" option you can turn on for ClickOnce sandbox testing/debugging. Something where I could set the user account the app will run under when I run it from the IDE. And of course still be able to have the debug user experience we now have...

Of course I could just remove my account from the local admin group and run/code/debug least privilege..
Na, I need what hair and brain cells I have left... ;)

Still this utility sounds like a nice step forward.

Handy Windows Keys

John Papa - Useful Windows Key Shortcuts

"Here is a short list of some of the more valuable (IMO) WinKey combinations. OK, there are more shortcut keys than the following, but these are some of the ones I use the most that involve the mysterious "Windows Key". WinKey + D is nice when my desktop just gets too cluttered. WinKey + E is great when I need to browse my file system.

Windows Key + D
Brings the desktop to the top of all other windows.

Windows Key + M
Minimizes all windows.

Windows Key + E
Open Microsoft Explorer.


Windows Key + Tab
Cycle through open programs through the taskbar.

Windows Key + R
Open the run window.

Windows Key + L
Lock the computer (Windows XP and above only).

..."

I need to tattoo these on the back of my hand or something...  ;) 

Tuesday, May 23, 2006

It's Beta 2 Day!

Yes, I KNOW everyone in the MS world will be blogging about it... but here I go anyway.

It’s Beta 2 Day!

I just saw that Vista Beta 2, Longhorn Beta 2 and Office 2007 Beta 2 are all downloadable from the MSDN Subscription site.

Time to get my downloading on. ;)

Blogger's Doing It Again (Truncated Posts in the Feed)

Looks like Blogger’s doing the truncated post feed thing again. I’ve republished my index, which seems to have fixed the issue.

I apologize if you’re reading this (or feeds from the last couple days) via my feed and received a truncated post. It’s not a change I intended and is hopefully resolved.

sigh...

I almost wish I was paying for Blogger so I could really bitch and moan... ;)

Prevent "Reply to All" Hell in Outlook

Useful Technology Blog - Prevent people from hitting Reply to All

"Windows Rights Management Services provide some great features that control and restrict the way that information moves around and between organisations. But if you haven’t got this cool technology you can still disable the most abused feature in Outlook: the dreaded Reply to All button!
 
Next time you need to send out an email to a distribution list or lots of individual email addresses you can prevent recipients from pressing the Reply to All (and/or Forward) buttons and deluging everyone on your distribution list with even more unwanted emails. You can do this with custom forms and there’s a really neat tutorial here: http://office.microsoft.com/en-gb/assistance/HA011142241033.aspx. Tell all your friends!" (Post Leached in Full)

Nice.

I am so going to have to pass this on (as I’m pretty tired of getting Reply All’s from emails sent to a few close friends... like those sent to everyone in the California office, or those few people who are in our US Practice, etc ;)



Updater Application Block Updated for .NET 2.0

Geek Noise - Just Released - Updater Application Block for .NET 2.0

"We are pleased to announce the release of Updater Application Block for .NET 2.0 which includes adjustments to use the latest version of Enterprise Library (January 2006 Release).

We suggest you should always evaluate ClickOnce as the preferred technology for managing updates on Smart Clients, but there are scenarios where ClickOnce is not applicable (like Windows Services). Based on the feedback received from our community, we’ve ported UAB into .NET 2.0 to help customers working with these scenarios. No new features have been included though.

..."


While I’m a big fan of ClickOnce, there are projects and times where it just doesn’t fit. But IMHO App Auto Updating is not an optional feature. So it’s nice to see the Updater block updated...

Download it here (you need to join the GotDotNet Workspace to download it)

Related Past Post XRef:
UABv2 - Updater Application Block version 2.0
Updater Application Block V2

Visual Studio Team Explorer Free Download

Vertigo Software Team System Blog - Team Explorer now available for free download!

"Microsoft launched CodePlex last week, their free, hosted Team Foundation Server site for open or shared source development. That’s fantastic news...
 
But the most exciting part of this announcement is that Team Explorer, the essential client-side piece of Team System that installs as a Visual Studio 2005 add-in, is now available for free download! That’s insanely great news! It certainly makes hosting your project on CodePlex a no-brainer. If you already have a Team Edition installed, here’s how to connect to CodePlex right now.

..."

Very cool. Both in that Team Explorer is freely downloadable and seeing how easy it is to access CodePlex with it.

CodePlex being built/based on TFS is officially cool and now that any VS user (even Express?) can use it from within the IDE could make it a no-brainer hosting solution. The one problem I have with CodePlex is there’s no global feeds (yet, I hope). There are project level feeds, but no global/site feeds. I’d really dig something like "Popular Projects", "Most Recent Projects" and "Latest Releases" feeds (feedback submitted).

Still for a v1 it’s pretty darn cool...

(via My VSTS Blog - Team Explorer free download and CodePlex)

Mitch Denny Releases Build Clean-up Service for Team Foundation Server

notgartner.com: Mitch Denny’s Blog - Release: Build Clean-up Service for Team Foundation Server

"...
Builds that are performed can quite often be rejected because of a failure caused by a file not being checked in, or some debug-time setting propogating into a build destined for release. Other builds may be rejected at a later date due to functional testing identifying a problem.
....

Introducing the Build Clean-up Service
This is an extension to Team Foundation Server that I’ve had queued up to develop for quite some time. The clean-up service takes care of cleaning out the “Rejected” and “Unexamined” builds after a specified period of time (configurable).
..."

Outstanding.

I have a number of failed builds that happened during early Team Build deployment, due to components missing on the Build machine, etc. Failed builds that I’d like to clear out...

Mitch’s new Build Clean-up Service looks like just the ticket.

Installing it now...

Technorati Tags: , ,

Monday, May 22, 2006

Red Gate's SQL Prompt Free (Until September 1st 2006)

DonXml’s All Things Techie - SQL Prompt Now Free!

"If you are looking for Intellisense for your SQL statements, look no further then SQL Prompt by RedGate, and the folks at RedGate just announced that you will be able to download SQL Prompt free of charge until Sept. 1, 2006 (with no timebombs or restrictions).  SQL Prompt will work with Microsoft Query Analyzer, SQL Server 2005 Management Studio, Visual Studio 2005, Visual Studio .NET 2003, SQL Server 2000 Enterprise Manager, UltraEdit32.
 
..."

Nice! I saw this when it was recently released, and thought it was pretty cool, but I wasn’t ready to pony up the funds for what I felt was a "nice to have" product... Well free is hard to beat.

Downloaded, installed and working great in Query Analyzer (which I didn’t even have to restart).

I think one of the cooler things is how it uses the referential integrity to help in building joins. For example, as you add JOIN statements, the Intellisense lists tables with foreign keys to the previous tables. The included tooltip also details the relationship (i.e. it tells you what columns are related to what in the preceding tables).

Technorati Tags: , ,

Sunday, May 21, 2006

"The C5 Generic Collection Library for C# and CLI"

The C5 Generic Collection Library for C# and CLI

"C5 is a library of generic collection classes for C# and other CLI languages, as found in Microsoft .Net version 2.0 and Mono version 1.2.

C5 provides functionality and data structures not provided by the standard .Net System.Collections.Generic namespace, such as persistent tree data structures, heap based priority queues, hash indexed array lists and linked lists, and events on collection changes. Also, it is more comprehensive than collection class libraries on other similar platforms, such as Java. Unlike many other collection class libraries, C5 is designed with a strict policy of supporting "code to interface not implementation".
...
 
The C5 collection library provides the following data structures, described by C# classes: array list, doubly linked list, hash-indexed array list, hash-indexed linked list, hash set, hash bag (multiset), sorted array, wrapped array, tree set, tree bag (multiset), stack, double-ended queue, circular queue, priority queue (interval heap), hash dictionary, and tree dictionary.

...

The C5 collection library provides the following unusual functionality on collections and dictionaries: collection update events, multiple updatable list views, reversible enumeration, hash indexes on lists, snapshottable tree-based collections, priority queues with item handles, and in general a design with emphasis on orthogonality, flexibility, and preservation of invariants.

..."

This is another Generic collection library, kind of like Power Collections. My collection needs are usually very modest, but when I run into a need for a high powered collections, I sure don’t want to reinvent that wheel... Hence my interest in this.

C5 is from the IT University of Copenhagen and has an "academic feel" to it. Not a bad thing at all, just different from a OSS or commercial feel. In any case, it’s a very complete project (as you might expect) and includes extensive doc’s (both a 254 page PDF and HTML), nUnit tests, and released under a BSD like license ...

(via DotNetKicks - The C5 Generic Collection Library)

Saturday, May 20, 2006

Large Text File Viewer 4.1

SwiftGear.com - Large Text File Viewer 4.1 - Features

  • "Have you ever felt frustrated when you just want to look at the content of a large text file but it takes forever for Notepad or Word to open it?
  • This program was designed for viewing large (>1GB) text files.
  • It uses little memory and is able to open a gigabyte file instantly.
  • Background file indexing makes browsing even faster.
  • It allows the user to perform high-speed complex text search by means of plain text or regular expression. The regular expression syntax is slightly different from the standard ones. Please click here for details.
  • The regular expressions for finding the following items have been provided as preset for the convenience of the users:
    • quoted string
    • hexadecimal integer
    • floating-point number
    • date of any format
    • time of any format
    • domestic phone number (US & Canada)
    • social security number
    • IP address
    • email address
    • http address
    • ftp address
  • The program opens and displays both ANSI and Unicode text files.
  • ...
  • No additional DLL (such as MFC or VB) is required.
  • No installation is needed.
  • The executable is only 552KB!

  • ..."
This utility looks like it might be pretty useful.

In my day life, I run across some very large text files, and like the first bullet says, it’s frustrating waiting for Notepad to open them.

Adding this to my utility belt and thumb drive...

(via The Portable Freeware Collection - Large Text File Viewer V4.1)

ClickOnce Production Deployment - Step by Step

.NET Ramblings - Brian Noyes’ Blog - Manually Putting a ClickOnce Application into Production

"A common question with respect to ClickOnce is how to take an application that you have published and tested on your local machine or a local development server and move that application into production. The steps involved are not particularly complex, but do involve using some other tools to get it done and are not easy to figure out on your own unless you have a solid understanding of ClickOnce manifests, signing, and how they relate to the launch mechanisms of ClickOnce.
 
..."

Brian has posted a cool step by step guide for taking your ClickOnce from Local/Dev/QA and moving it to Production, using mageui.exe.

Technorati Tags: ,

Friday, May 19, 2006

New Windows Live Mail Beta Rolled Back?

Looks like the recent Windows Live Mail (WLM) beta update has been rolled back...?

Earlier today my WLM had the new UI that I talked about here, but in checking my inbox just now, I’m back to the older/original beta UI.

Weird ...

"Send E-Mail from your .NET application using your GMail Account"

The Code Project - Send E-Mail from your .NET application using your GMail Account

"Most independent developers like to include a msg sending feature in their application. Well atleast I tried to.. Of course it is not a problem for a user with a smtp server access or a registered domain with an smtp server access. But unfortunately I had none of them. I use msn, gmail and yahoo for my mailing needs. Unfortunately yahoo does not offer smtp or pop access for their general/basic/free users. And msn it is not that reliable coz I was expecting a lot of mails to be sent and also to recive and as far as I know they also donot give you pop/smtp access!.

Typical Example you will find in internet

So I really Hunted for a code segment that help me use my free gmail account to send E-MAIL from my .NET account. http://www.systemwebmail.com is a complete referance library and FAQ’s regarding to the System.Web.Mail namespase. And my code is basically I joined different pieces together...."

This is an interesting project... For reasons I’d rather not post, sending SMTP email on port 25 from within our firewall is extremely restricted.

While a case can be made for locking down 25, there are times when I need to work around the issue and just get the job done (I’m one of those "over, around or through it" kinds of guys... can you tell?). I’ve looked into alternate/custom port SMTP forwarders and while there are a number of them, I couldn’t see spending the funds required. So I’ve done without any email based notification services in my apps. And anyway, I’d rather add RSS based notifications. 

But that doesn’t mean I haven’t kept looking for an email solution (some like email, some like feeds, and I want to keep all my users happy...)

This Code Project post is cool in that it shows just how easy it is to send SMTP email with .Net 2 via GMail. Which also happens to be host on an alternate port. ;)

Maybe it’s time to rethink my notification options...

Technorati Tags: , , , ,

"Working with Windows Messages in .NET"

DevSource - Working with Windows Messages in .NET

"You might not be familiar with messages, but they’re extremely important, especially when you need to perform tasks outside of the range of tasks that Microsoft programmed into the .NET Framework. All communication in Windows relies on messages.

This article reveals Windows messages to you, shows you how to capture messages that a .NET application doesn’t normally capture, and demonstrates how to generate messages that .NET applications don’t normally generate. In short, by the time you finish this article, you’ll know about an entirely different world: the one that the .NET Framework hides from view.

 
..."

Being a VB coder since v.forever, windows messages have always interested me.

While I know and use them (and have for years) I can’t say I feel I really KNOW them. I understand the concept and I can consume and produce them, but they still feel a little like magic.

Since I hate the feeling of geek inadequacy, I keep my eyes open for posts and articles on the subject.

This article is a nice intro into Windows messages, how to see, capture and send them. While I already knew/understood most of what was talked about, I did pick up a couple new items, making it worth the read...

(via WinForms.Net)

Jason Haley - Human Feed Aggregator Extrodinare

Interested in a very cool link blogger? An outstanding human feed aggregator?

Then make sure you check out Jason Haley’s blog. His daily Interesting Finds posts are officially very cool...

He’s one of those guys that subscribes to about a billion feeds (give or take a few). Scanning through them daily, he picks out the things he finds interesting. In an interesting twist, he tracks his Signal to Noise ratio, i.e. "finds" vs total posts scanned.

Jason’s blog is a great resource, one that you should check out when you have the time...

Tuesday, May 16, 2006

MSR MapCruncher for Virtual Earth

MS Research - MSR MapCruncher for Virtual Earth

"Have you ever looked at satellite photos of a building in Virtual Earth -- and wished you could zoom right in and see its floorplan? Have you ever used VE to plan a trip across town -- and wanted to seamlessly switch from its road maps to maps of bicycle trails, bus routes, or carpool lanes? Have you ever wanted to create and publish your own map mashups -- and wished you had a tool to make it easy to integrate a map you care about into Virtual Earth? Microsoft Research has made this a reality!

The Virtual Earth API allows web developers to supplement Virtual Earth’s maps with pushpins and lines. MapCruncher brings mashups to a whole new level by allowing developers to import entire maps to supplement the existing road and aerial imagery with detailed, application-specific information. The possibilities are endless: bicycle maps, transit maps, national park maps, university maps, antique city maps, or whatever scale maps you personally find interesting. See our Gallery.
 
...

MapCruncher makes it easy to publish maps overlaid on Virtual Earth. Once you get familar with the tool, it will take you about ten minutes to crunch a new map. Just find 5 to 10 corresponding landmarks on your map and on Virtual Earth, and MapCruncher will register your map to the global coordinate system, warp it to fit a Mercator projection, and generate a set of image tiles that can be seamlessly mashed up with VE’s standard road or aerial imagery. It even makes a sample HTML page to show you how to use your mashed-up map.

MapCruncher accepts both drawing formats (PDF, WMF, EMF) and image formats (JPG, PNG, TIFF, GIF, BMP).

..."

Pretty neat sounding...

Is it sad that the first thing that pops into my mind would be to overlay a funny/joke map? Such as overlaying a FPS level/map as the floorplan for the building where I work? ;)

Technorati Tags:

Monday, May 15, 2006

New Windows Live Mail Beta Update

Looks like my box/server/bay/etc has been updated to the latest Windows Live Mail Beta...

Some initial thoughts:

The first thing I hit was the new "Move To" drop down menu.

I have a number of folders into which I organize my mail... Roughly 20 folders. And the new "Move To" doesn’t scroll... I’ve looked and looked, played and played and I can’t seem to find any way to scroll it. So I’m only able to use the "Move To feature for about 10 of my folders... This means I have to read the message, close it and then drag and drop it into the right folder. That’s kind of icky and a new issue in this release.

The new location for the email sorting is nice (message list header area)... Much easier to find than in the last release. I still have to say that I’d rather have column header sorting (i.e. click on a column header to sort, like in the older Hotmail UI/Outlook/OE/every other email UI/etc).

The new location for the Shortcuts panel/pane is pretty nice too. I also really like that it seems to remember its expanded/collapsed state. Meaning, once I close it, it stays closed, even between sessions.

One minor bug I’m seeing is that the "quick empty" arrows for the Junk e-mail and Delete items folders sometimes have position problems. The arrow’s position is under the scroll bar in my folder list panel/pane. Sometimes hovering over the folder fixes the issue, sometimes not. Resizing the folder list also sometimes fixes it, and sometimes not. A minor thing as they are still clickable, but still something new in this release.

The new Customize feature is also nice. Makes it much easier to tweak the look and feel.

All in all, I’m digging Windows Live Mail. It’s come to the point where I don’t feel the need for an offline client at all (like Windows Live Mail Desktop...).

BTW, submitting these things to the beta feedback now...

Free Skype to Phone/POTS/Landline Calls for the Rest of the Year (US/Canada)

"Calls to friends and family on Skype have always been free. Now we’ve made calls within the US and Canada to all phones totally free till the end of the year.

Starting from today it doesn’t matter if it’s a Skype-to-Skype call or a call to landline or mobile phone - it’s free as long as you’re calling from within the US or Canada to US or Canadian phone number. "

This email just came in...  Now that’s pretty cool.  Sure is one way to get people hooked and pick up market share.

Now what will MS do with the Live Call in WLM?

Technorati Tags:

Sunday, May 14, 2006

Requirement Authoring Starter Kit (RASK) - Part 2

In short, I think I’m going to hold off working on/playing with this. If there’s a V1.1 or updated release, then I’ll try again..

This afternoon, I was playing with RASK, preparing to get it installed and such. Having read the doc’s, I was ready to start building my "kit".

First step, extract all the files, done.
Run TFSrefs.bat, done
Update the Database, on hold for a bit (you’ll see why in a second...)
Open and update RequirementAuthoringStarterKitSupport solution. This is where the problems start.

None of the projects in RequirementAuthoringStarterKitSupport will load. Taking a quick look at project properties in the solution, it looks like the projects are supposed to be in sub-folders. The folder I have is flat, all the RASK files in a single folder.

Thinking it was the unpacking in the setup that screwed up, I extract the files with WinRar (won’t open in WinZip). Same results, a flat folder structure.

That’s when I started to get that, "this is not a good sign" feeling in my gut.

But okay, easy enough to tweak the solution. I remove the sub-folder from the project references, and sure enough the solution now loads all three projects. [This was a hack and not the right choice and would have caused me problems later...]

Taking a quick look at the projects though, they all have sub-folders in them and project items in said folders. Sub-folders which don’t exist.

Strike three, I’m out.

Sure I can create the required sub-folders and move the files around, etc, but I don’t have the time or the patience for that... And I’ll be wondering what else might need tweaking/etc.

I’m thinking it might be a problem with the unpacking in setup (i.e. it’s not create the sub-folders when unpacking), that the compressed image doesn’t include the sub-folders (which is WinRar also creates a flat folder), there’s supposed to be a "runthisfirst.bat" that will create the folder structure and move the files around, or I just have my stupid cap on too tight...

In any case, I think I’ll wait until the next release of this kit and try again...

Updated #1 6/3/2006 @ 8:56AM PDT:
The MSI has been updated and can be downloaded from http://www.microsoft.com/downloads/details.aspx?familyid=e96ccc54-8759-452f-bf68-3a261c663b66&displaylang=en.

Here's my related post, Requirement Authoring Starter Kit (RASK) - Updated...

Saturday, May 13, 2006

TFS - Requirements Authoring Starter Kit

Visual Studio Tools for Office 2005 Toolkit: Requirements Authoring Starter Kit

Using the Requirements Authoring Starter Kit (Part 1 of 2)

"The Requirements Authoring Starter Kit (RASK) provides a customizable requirements-authoring solution for software development teams. RASK serves two purposes. It provides the basis of a Requirements Authoring solution and illustrates how to access Microsoft Visual Studio 2005 Team Foundation Server programmatically from Microsoft Visual Studio 2005 Tools for the Microsoft Office System (Visual Studio 2005 Tools for Office). RASK has broad functionality that you can extend with minimal effort.

RASK integrates several Microsoft products into the solutions: Microsoft Office Word 2003, Visual Studio 2005 Tools for Office, Microsoft SQL Server 2005, and Microsoft Windows SharePoint Services. In addition, RASK uses Microsoft Visual Studio 2005 Team Suite and Visual Studio 2005 Team Foundation Server, which are part of the Microsoft Visual Studio 2005 Team System.

RASK is not a complete requirements-authoring application and is not intended to compete with existing requirements-management applications.

This article, Requirements Authoring Starter Kit (Part 1 of 2) introduces the features of the starter kit. The second article,
Using the Requirements Authoring Starter Kit (Part 2 of 2) introduces the code that enables each RASK feature.

..."

I’d like to update my Requirements process, so this looks interesting.

But I think I have my stupid cap on. I can’t seem to find the install instructions. Sure I’ve installed/run the downloaded file. Now what? The setup says it’s going to install something, but what? The dot? Can’t seem to find that... And the setup finishes pretty quickly. And doesn’t ask for the TFS server, etc. So I don’t think anything actually installed.

Wondering if I was having a case of the brain farts, I tried installing it again. Then thinking that maybe local installing was silly for a TFS product, I then installed it on the TFS box.

Still no joy. Time to RTFM again.

Thinking it logical to have the setup/install instructions toward the start of the article, I focus there. Can’t seem to find anything. Which means, in my mind, the setup is so easy it doesn’t require instructions? That it’s all automated and Dummy (i.e. Greg) proof?

Since I’m scanning the doc’s anyway, might as well keep going through them, including Part 2.

LOL, THERE they are! At the end of Part 2. Silly me for
not thinking to look there first... :|

Okay, these look like instructions I should read in detail before doing (funny that)...

The thing to remember (and I didn’t) is that this is a "Starter Kit." Meaning work is required to get started with it (as it’s a "kit").

(via Rob Caron - Requirements Authoring Starter Kit)

Technorati Tags: , ,

Friday, May 12, 2006

AmazonCommerceService.NET - Free C# 2 Library to Access Amazon

Amazon Web Services Blog - AmazonCommerceService.NET - Free .NET Library for ECS Access

"Ed Quinn dropped me a note with information about his newest creation, AmazonCommerceService.NET.

AmazonCommerceService.NET is a set of .NET classes. It creates REST requests for ECS and then queues them up, dispatching them to Amazon at the rate of 1 request per second per the license agreement. The results are delivered asychronously as they arrive, using a delegate. Batched requests are supported.


All source code is included (C# and .NET 2.0), as is a sample web site built using the library. ..."

Nice

Added to my "when I get off my butt and start working on my ’My Bookshelf’ project I might need this" list... ;)

Interesting News Post Order...

I was scanning my unread’s this morning and this just struck me as funny...

First I see this headline,
U.S. needs lesson from China on technology

Then right below it I see this,
Chinese researcher fakes chip development

lol... hum, okay... ;)

Word 2007 as your new Blogger Posting App?

Joe Friend: Microsoft Office Word - Blogging from Word 2007

"...
 
Well no more. We’ve been working late into the nights and very late into our development schedule for Word 2007 and we have a special goody for all you bloggers in Beta 2 of Office 2007. That’s right blog post authoring from Word. This is a very late breaking feature and is definitely beta software. That said, I hope that everyone is pleasantly surprised with where we are going with this feature.
 
...
In Beta 2 we have basic FTP support. We hope to add support for metaweblog API picture handling, SharePoint picture libraries, and one or two others. While we have a limited ability to add many more providers to this late breaking feature, the feature is extensible and other providers can insure that their systems work with Word even after Office 2007 ships.
...
 
This is pretty standard stuff if you’ve ever used one of the many blog post authoring applications. In Beta 2 we support MSN Spaces, SharePoint 2007 (of course), Blogger, and Community Server (which is used for blogs.msdn.com). You can also set up a custom account with services that support the metaweblog API or the ATOM API..."

NICE.

This with the Word’s extensibility and programmability, I can think of tons of cool ways to tweak it to make Word an uber-posting client.

But let’s wait and see it in action before we sound the death nel for the Windows blog client market...

(via Sandeep Singh Rawat - Word 2007 includes blogging support.)

Thursday, May 11, 2006

Another look at Teamlook

notgartner.com: Mitch Denny’s Blog - Clearing a mailbox full of bugs with Team Foundation Server

"...

The plan was always to manage our curriculum development efforts in
Team Foundation Server so I created a Team Project using the Scrum process template for Team System (from the guys at Conchango). My next problem was how do I get these e-mails across to the TFS work item store with the minimum amount of effort.

My salvation was
Teamlook (by Personify Design). Its an add-in for Microsoft Outlook that allows you to turn the e-mails that you read into work items. ..."

Mitch posts another look at the cool Teamlook TFS Outlook add-in. He’s included a number of screenshots showing just how cool the integration is (no, I don’t work for Personify Design... I just really like software that "just works" and makes my life easier...)

Juan of Personify Design contacted me a few weeks ago, letting me know that they are heads-down, hard at work on the RTM release...

Related Past Post XRef:
Teamlook - Connecting Outlook and TFS

Technorati Tags: , , ,

Tuesday, May 09, 2006

Microsoft Exception MessageBox

INauseous() - Microsoft Exception MessageBox - Nice little gem

"...

Microsoft Exception Message Box

The other day I was working with some of the downloads included in the Feature Pack for Microsoft SQL Server 2005 - April 2006 and I noticed in that pack an item called Microsoft Exception Message Box.  Here’s the text for that download from the Feature Pack page:
The exception message box is a programmatic interface that you can use in your applications for any tasks for which MessageBox may be used. The exception message box is a supported managed assembly designed to elegantly handle managed code exceptions. It provides significantly more control over the messaging experience and gives your users the options to save error message content for later reference and to get help on messages.
More investigation, on the Microsoft MSDN website under Deploying an Exception Message Box Application the following statement appears:
The exception message box is installed by Microsoft SQL Server 2005 and is supported for use in your custom Windows applications to improve exception handling. In SQL Server 2005 SP1 and later releases, the exception message box is also provided as a redistributable installation program that you can distribute and deploy with your application.


It goes on to state:
  • You must include the exception message box redistributable package (SQLServer2005_EMB.msi) in your application setup.
  • Exception message box resources are installed in the global assembly cache (GAC).
  • The redistributable package is available in all supported SQL Server 2005 languages.
  • The exception message box installation does not appear in Add or Remove Programs. You should plan to uninstall the exception message box when your application is uninstalled.


What does this mean?  Well, Microsoft has granted us a license to use and redistribute this Assembly with our own applications as long as we follow the installation rules in the list above. ..."

Now that’s cool. I hate reinventing the "Error Dialog" all the time. This is a perfect kind of component to come from MS. A basic infrastructure item that many (almost every?) WinForm app needs in form or another...

Now all I need is a ClickOnce bootstrap for this and I’m good... Shouldn’t be to hard to create the bootstrap manifest for it (I hope).

For more information, also check out href="http://msdn2.microsoft.com/en-us/library/ms166343.aspx" target=_self>Exception Message Box Programming and How to: Program Exception Message Box

SharpEntropy - Maximum Entropy Modeling

The Code Project - Maximum Entropy Modeling Using SharpEntropy

"This article presents a maximum entropy modeling library called SharpEntropy, and discusses its usage, first by way of a simple example of predicting outcomes, and secondly, by presenting a way of splitting English sentences into constituent tokens (useful for natural language processing). Please note that because most of the code is a conversion based on original Java libraries published under the LGPL license, the source code available for download with this article is also released under the LGPL license. This means, it can freely be used in software that is released under any sort of license, but if you make changes to the library itself and those changes are not for your private use, you must release the source code to those changes.

A second article,
Statistical parsing of English sentences, shows how SharpEntropy can be used to perform sophisticated natural language processing tasks. ...

A More Complex Example - Tokenizing English Sentences

The Java MaxEnt library is used by another LGPL-licensed open source Java library, called OpenNLP, which provides a number of natural language processing tools based on maximum entropy models. A C# port of the OpenNLP library is available in my second article, Statistical parsing of English sentences, but to provide a more complex SharpEntropy example, as well as to give a flavor of the OpenNLP code, here is a small application to tokenize English sentences, based on a MaxEnt model created by the Java OpenNLP team.

..."


A possible tool for my NLP toolbox...

Related Past Post XRef:

"Statistical parsing of English sentences"


Technorati Tags:

"VS 2005 Web Application Project V1.0 Released"

ScottGu’s Blog - VS 2005 Web Application Project V1.0 Released

"I am very happy to announce that the final release of the VS 2005 Web Application Project is now available.You can download it for free here.

 

The VS 2005 Web Application Project option provides an alternate web project model option to the VS 2005 Web Site Project Model that ships built-into VS 2005.VS 2005 Web Application Projects support the same project, build and compilation semantics as the VS 2003 web project model.Specifically:

  • All files contained within the project are defined within a project file (as well as the assembly references and other project meta-data settings).Files under the web’s file-system root that are not defined in the project file are not considered part of the web project.
  • All code files within the project are compiled into a single assembly that is built and persisted in the \bin directory on each compile.Incremental publishing of compiled apps is fully supported within the IDE (see this post for details).
  • The compilation system uses a standard MSBuild based compilation process.This can be extended and customized using MSBuild extensibility rules.You can control the build through the property pages, name the output assembly or add pre- and post-build action rules.It can also provide much faster compile times for large web projects.

Because the VS 2005 Web Application Project model has the same conceptual semantics as the VS 2003 Web Project Model, it also makes migrating VS 2003 web projects very, very easy - with zero/minimal code changes required. ...

 

...

The main feature additions with the final VS 2005 Web Application Release (above and beyond all the features in the release candidate that you can read about here) include:

  • Team Build Support with VSTS: You can now perform automated and command-line builds with VS 2005 Web Application Projects and VSTS
    ...
  • Edit and Continue Support: You can now make code updates that apply immediately to applications while the debugger is attached and running (see walkthrough below for details).This is supported with both VB and C# projects.

..."


Very cool.

I’m sure this will be posted everywhere today, but I want to capture the download URL... (so it goes into my remote indexed memory store... i.e. my blog ;)

Monday, May 08, 2006

Please Stop The Bundling Madness!

<vent>
Dear Software Publishers,
Can you PLEASE stop the bundling madness?

Today I received a notice that there was a new version of Windows Live Messenger available and did I want to download it? "Great!" I thought, "I’ve been waiting for this latest beta update..."

Clicking through the usual license stuff, I came to this...

"Are you fricking kidding me! Damn it, I hate this bundling crap!" Was the first thing out of my mouth.

Google, Apple, Yahoo and now MS. COME ON guys! Please DO NOT bundle unrelated technology in your products. It adds a slime layer to your downloads, and, I feel, destroys trust.

Yes, I know it’s easy to uncheck, and I know better than to install bundled crap onto my PC. But I wife doesn’t. Nor my daughter. Or my parents.
So they would get ANOTHER piece of software that I would need to make sure is constantly up to date, or have to later remove, yada, yada, yada.

On another note, if installing the bundled package jacked my system, I would hold the bundling company responsible. Yes, MS, I know it’s not your product, but YOU gave it to me. You installed it by default. You bundled it. If I buy a new car and the tires blow, I don’t hold Firestone responsible, I hold the car dealer responsible. If this bundled product stunk, or slowed down my system, or opened it up to future security problems, LM IM would be the product I would first direct my anger at...

Yes, I know the product I am installing is free and that someone has to pay to develop these products. But many (including LM IM) already has advertising built in. Adding the bundling on top of that adds insult to injury.

Worse case, offer two downloads, one with the bundle, one without (both on the same download page, equally placed., Not like the "hunt the quicktime game" we have to play to get the standalone download). Last ditch, at least default the bundle to unchecked/not installed. Make it a conscious decision to install it. Let us opt-in, not force us to opt-out... 

I want the product I downloaded, I do NOT want you pretending to be helpful by offering these bundles.

Please, ladies and gentlemen, raise above it. Stop the bundling madness. Stop it today.

Thank you,
Greg Duncan
</vent>

Wow, can you tell that pissed me off? ;)

Doing ClickOnce? Think About Adding Your Project's *.user to Your Version Control

AppDev: Something You Should Know by Irena Kennedy - SYSK 121: When it’s Not Only Acceptable, but Recommended to Check into Source Control Your .user File

"Developer’s personal settings and preferences are stored in a .user file.This is why it’s not recommended to add .user files to VSS or other Source Control tool - keep personal to yourself.

 


However, when using ClickOnce deployment, the published version is stored in YourExeProject.csproj.user.So, if you don’t check this file into VSS, when somebody else (or you on another computer) will do the ClickOnce publishing to the deployment server, the version number will restart from zero!Needless to say, that will mess up your versioning… You could manually enter the version you want, but many don’t... So, if you’re using ClickOnce with version auto-increment, do add your csproj.user file to the solution and check it into Source Control tool." (Post leached in full. Please click through to discuss on Irene’s blog...)

Nice tip. And important now that I’m building (and soon deploying/puplishing) on different machines

TFS follows the best practice and doesn’t auto-magically add *.user project files, so you’ll have to do it manually...


Share.OPMPL.org

Randy Holloway Unfiltered - Share Your OPML- A very useful OPML application

"TechCrunch notes the revamped OPML sharing application from Dave Winer, share.opml.org, or Share Your OPML. I’m a big fan of this app because I always want to find new things to read and seeing what other people are reading is a great way to do that. It is also a sobering reality check for me as to how many readers some blogs have versus others (e.g. hardly anyone is reading my site).
 
..."

I’ve uploaded my current OPML if you’re interested... 

It’s weird to see myself listed in the Top 10 Most Prolific Subscribers (725 feeds). Now all I need to do is to not subscribe to the different arrogate feeds (blogs.msdn.com, etc,etc), but instead to each of the blogger’s distinct feeds...

Then again, maybe that would just be insane (and a feed count that I don’t think I really want to know I’m following/reading). Blogs.msdn.com alone has 2821 distinct feeds at this time. Add that to to my feed count... Oh yeah, I REALLY don’t want to know the hard number of bloggers I’m following... :|

Anyway, it’s not a contest... (say it with me, "it’s not a contest... it’s not a contest..." :)

Then again, if you ask my wife, she might think a contest for the highest subscribed count IS indeed a contest. A stupidity contest... DOGH! (Can you tell she’s a geek? ;)

Technorati Tags: ,

Sunday, May 07, 2006

Sample TFS Reports


"This attachment contains a variety of samples, experiments and untested reports for use with the Team Foundation Data warehouse. There is a brief overview document describing the reports and how to deploy them. ..."
From within the attachment...

"...
Box Reports
All of the reports shipped in TFS as they are shipped for CMMI projects. These are generally transferable to any process template, but some (like Requirements Details) only make sense if using CMMI Work item types.
 
Portal Reports
Trimmed down versions of the reports we shipped, suitable for placing in portal pages by using the reporting services web parts.
 
Sample Reports
Sample reports. Good entry points here are “Source Code Overview” or “Area Overview”.
 
TFS Report Examples
Simple reports that can be customized to your particular needs. These use the query designer for all queries so no MDX knowledge is required.
 
Warehouse Status
Reports that show the administrative status of reporting.
 
Work Item Overview
A report that shows resolution activity with the ability to view burndowns, team breakdowns, and priority breakdowns.
..."


71 total reports are included in this sample/example package. I’m deploying and checking them out now...

Technorati Tags: , ,


Friday, May 05, 2006

LINQ in VB9 - From/Select, The Way Is

Panopticon Central - Select/From vs. From/Select revisited...

"We’ve been hard at work on an updated CTP of the LINQ work, and when you get it (no comment on dates at this point), you’ll notice several new things about the VB LINQ support. One the biggest is going to be the fact that, after trying all the Intellisense tricks we could think of, we’re throwing in the towel on Select/From and adopting the “Yoda style” From/Select syntax. As in:

        Dim WACusts = _

            From c In Customers _

            Where c.State = "WA" _

            Select c

instead of:

        Dim WACusts = _

            Select c _

            From c In Customers _

            Where c.State = "WA"

 
..."

NO!

Okay, I’m over it...

In reading the post, the points make sense. Full/complete Intellisense IS much more important and being "SQL like."

Having the FROM statement first is pretty easy to wrap my brain around. But I do hope the Where and Select statements can be reversed.

Something like;
FROM Object
SELECT Value
WHERE Condition

        Dim WACusts = _

            From c In Customers _

            Select c _

            Where c.State =
"WA"



Then again, maybe this is already the way it is (hence the title, "From/Select") and I should just check out the next CTP...
(’TODO: Check out next LINQ CTP)

Technorati Tags: ,

Categories for Blogger - DIY

phydeaux3 - delicious2Blogger - Categories for Blogger

"The rewrite on the scripts are done, and now the category system formerly (and unofficially) called Blogger Categories with Del.icio.us are now rechristened...[cue the trumpets] delicious2Blogger. Ok. It’s a lame name but I gotta call it something. I hear all the cool kids just refer to it as d2b.

Some of the new benefits/features of d2b are -


    New Features-


  • Completely rewritten scripts - majority of code moved to an external javascript file with less muss/fuss in the body of the template
  • Customization - Virtually everything output by the scripts is now easily customizable, making it easy to convert the output into the language of your choice.
  • Use of a delicious "Common Tag" - now has the ability to add a common tag to all blog posts. What this means is you can use one delicious account to categorize your blog, but still use that same account for your normal bookmarking. Or use it to categorize mulitple blogs.
  • Option to provide an RSS feed link for each ’category’, with customizable RSS image and heading
  • Added an optional and customizable ’read more’ link that can be displayed in the ’notes’ section.

    Not New But still a feature


  • All links are shown in blog, visitors never have to leave.
  • OMG! A category cloud. Yes the highly desirable in blog cloud is available
  • Setup requires the creation of only one ’category post’ that is dynamic. All new tags added at del.icio.us are displayed dynamically without any further setup.
  • Everything is given id’s and classes for styling with CSS

..."

Using Blogger? Want categories on your sidebar? Check out d2b.

What sold me is seeing it in action. Looks pretty darn cool...

Installation is not hard, not slam dunk easy, but not hard. The installation and configuration instructions are easy to follow so there’s no worry there.

Now to get off my butt and give this a try.

Technorati Tags: ,

Thursday, May 04, 2006

"Configuring Team Foundation Build to Create a Visual Studio Setup Project"

Rob Caron - Configuring Team Foundation Build to Create a Visual Studio Setup Project

"There’s a new draft topic on the Team System User Education blog for your review. It provides a procedure for creating an MSBuild task to build a Visual Studio setup project using Team Foundation Build. Please take a look at it, if possible - try it, and then provide any feedback you may have in the comments of the article...."


Looks like Rob has given me my "Weekend TFS Project" task...


Automated setup building is one of the next logical steps for my Team Builds (the next being automating ClickOnce publishing).

Technorati Tags: , ,

Wednesday, May 03, 2006

MSDN Webcast: Robotics: Programming Lego Mindstorms Using Visual Basic 2005 Express (Level 100)

MSDN Webcast: Robotics: Programming Lego Mindstorms Using Visual Basic 2005 Express (Level 100)

"LEGO MINDSTORMS has been a popular introduction to PC-programmable robotics for nearly seven years. This webcast explains how you can now easily create exciting, interactive robotics programming projects using the new Microsoft .NET interface for MINDSTORMS with Microsoft Visual Basic 2005 Express Edition."
 
Signed up... ;)

Related links: Coding 4 Fun - LEGO MINDSTORMS

Consolas Font Pack for Microsoft Visual Studio 2005

Microsoft Downloads - Consolas Font Pack for Microsoft Visual Studio 20065

"Brief Description
Optimized for Microsoft ClearType
The Microsoft Consolas Font Family is a set of highly legible fonts designed for ClearType. It is intended for use in programming environments and other circumstances where a monospaced font is specified. This installation package will set the default font for Visual Studio to Consolas.

 
...
 
Overview
Consolas is intended for use in programming environments and other circumstances where a monospaced font is specified. All characters have the same width, like old typewriters, making it a good choice for personal and business correspondence. Optimizing the font specifically for ClearType allowed a design with proportions closer to normal text than traditional monospaced fonts like Courier. This allows for more comfortable reading of extended text on-screen.

The package will change the default text face in Visual Studio to the Consolas family.

This package is only intended for licensed users of Microsoft Visual Studio 2006
.

..."

I’m always game for a new programming font.

But the VS2006 restriction seems weird. I’d guess it’s due to the license agreement with the font producer, but still.

This a typo and should read VS2005? Is there a VS2006? Is that Orcas? And making this font publicly downloadable like this... That’s kind of like, "Don’t use this... really guys... oh, come on now... really don’t use it unless you’re supposed to... (wink wink)"

Still once I get VS2006, I’ll have to try the Legolas, err... um... I mean the Consolas, font...

(via This.Pose() as Expert - Consolas Font Pack for Microsoft Visual Studio 2006)

Technorati Tags: ,

Update #1 5/5/2006 @ 7:35 AM (PDT):
The download's title and the restriction on the download page has been changed to, "Visual Studio 2005"

Tuesday, May 02, 2006

"Team Foundation Work Item Attachment Add from Clipboard"

GotDotNet - Team Foundation Work Item Attachment Add from Clipboard: Home

"This Visual Studio Add-in allows "pasting" items (images, text, files) from the clipboard as attachments to Team Foundation work items. "
 
Check out James’ blog post for more information on this.

Nothing released yet, but I’ll be watching ...

Technorati Tags: ,

TFS, TeamBuild, Continuous Integration and Automated Assembly Versioning

Gautam Goenka (MSFT) - Continuous Integration with Assembly Version task

"Changgyu from Avanade brought this interesting problem to my attention -

If you are using
Continuous Integration with Assembly Version task, build server will go into infinite recursion of builds.  Each CI build will update the assembly version and the task will make the checkin, which in turn will ask the CI web service for another build.

Luckily, Changgyu found a simple and elegant solution for this. The Assembly Version task makes the checkin with a fixed comment string and while subscribing for the checkin event, you can use that info as the filter. To do this, just pass following extra switch to the BisSubscribe command that you are using for subscribing to the event -

/filter "(Comment<>’Auto-Build: Version Update’)"

where ’Auto-Build: Version Update’ is the fixed comment string.

Special thanks to Changgyu for sharing this.

Thanks." [Leached in full . All credits, etc, back to Gautam]

 
Gautam’s post solves a problem that I would have run into sooner or later (I love having problems solved before I have them... ;) His link to the MSBuild Assembly Version task and the MSDN article, Continuous Integration Using Team Foundation Build, is also very cool.
 
I now have two TFS projects (I migrated another yesterday) and am interested in going the CI route, making his info and links are very timely...
 
BTW, if you’re interested in TFS/TeamBuild you should check out the rest of his posts...
 
Technorati Tags: , , ,

Sunday, April 30, 2006

Team Foundation Server Notification Web Services Project Template

Howard van Rooijen’s Blog - Team Foundation Server Notification Web Services: Visual Studio 2005 Project Template

"Team Foundation Server offers some extensibility through event notifications these can either be in the form of an email notification or a SOAP Endpoint. To register a notification subscription you have to use the BisSubscribe.exe tool (see http://blogs.msdn.com/psheill/archive/2006/02/01/522386.aspx for more information) - which allows you to register an email address (to which an email will be sent with the event details as long as you supply the appropriate email template to convert the serialized event) or a SOAP Endpoint which will be called when the event is raised.

Scrum for Team System uses event notification to calculate work remaining at the Product Backlog level (it aggregates all child Sprint Backlog Items’ Work Remaining field) - while developing this functionality I thought it would be good to develop a template that other people could utilize for their own modifications to Team Foundation Server. It wasn’t until I stumbled across the MSDN Magazine article “Create Reusable Project And Item Templates For Your Development Team” that I found a decent mechanism for packaging and distributing this project.
..."

Interesting...

For reasons I’d rather not go into here, email notifications for my work TFS is a non-starter. Also I get too much crud in my inbox anyway. So on a paused background thread, I want to implement an alternate/extended notification model. Maybe RSS, maybe IM, maybe a SharePoint list/webpart or something like SharePoint’s alert model (i.e. with daily summaries, which is cool). Maybe all of these...

I’m thinking a customizable/configurable alert service. Where the user can decide how they want their alerts/notifications delivered. Maybe some come via IM (like build events), some as daily summary emails (like ACL changes) and some are available via lists/rss (like changed WorkItems).

Howard’s above post seems like just the ticket for me, doesn’t it? With it I should be able to build the system that I have in my mind’s eye.

Now all I need to do is break my Xbox 360 so I can find the time to code... ;)

Technorati Tags: ,