Saturday, April 12, 2008

APIFinder - The 411 for API's

APIFinder.com

"What is APIFinder? APIFinder is a growing index of various application programming interfaces (APIs). An API provides a set of instructions that you can use to make new software interoperate with existing applications. This site is also a place to share ideas and advice on how to use APIs in your programming. This site grows in part through community contribution so please submit your favorite APIs as well as articles and API-related projects today!

..."

Looking for that specific API? Or maybe looking for more general web service API? Or maybe some Windows, Linux, Java, DHTML, .Net, VB6, e-com, wireless, financial, game, graphic, PIM, communication, SOAP, REST, DLL, etc, etc, etc, API?

Then the 411 of API's, APIFinder.com an internet.com/DevX property, may be just what you're looking for. Browse or search, it's fast and easy and the advertising is not too overwhelming.

(via dzone - APIFinder -- The Directory of Application Programming Interfaces)

"How Do I" write a Simple Team Foundation Server Custom Policy video

Ravings of a Developer TS - More "How Do I...?" Videos Have been Released for VSTS! (How Do I: Write a Simple Custom Policy?)

"Join Pat Tormey as he demonstrates how to write a simple custom policy to add to your existing Team Foundation Server development environment. He will walk you through the design, show you how to deploy your masterpiece using the Visual Studio Setup project, install the Policy DLL in the right location, and update the registry.

..."

Been a while since I've posted about custom TFS check-in policies and again since we have more teams in-house moving to TFS I thought this might be helpful.

While you're there, check out the other Team System How Do I video's...

 

Related Past Post XRef:
VSTS 2008 TFS Power Tools (December 2007) Released (aka TFPT 2.0)
Copy Checkin Policies - Free Command Line Tool to Copy TFS Checkin Policies from one Project to Another.
Team Foundation Server Check-In Policies
"Visual Studio Custom Checkin Policy Template"
Another TFS Checkin Policy - Code Comment Checking Policy

".NET 3.5 Enhancements" Training Kit Available (Hands on Labs)

Guy Burstein on MSDN - .NET 3.5 Enhancements Training Kit is available for Download

"The Developer and Platform Evangelism Group in Microsoft has created a new training kit for all the enhancements for the .Net Framework 3.5:

  • ASP.NET MVC
  • ASP.NET Dynamic Data
  • ASP.NET AJAX History
  • ASP.NET Silverlight controls
  • ADO.NET Data Services
  • ADO.NET Entity Framework

Download the training kit (34.9 MB)" [Post leached in full]

Currently this only contains the Hands On Lab's, but still good stuff to get you started with the given tech...

Here's a quick and dirty list of the primary stuff in the kit today;

NETFramework35Enhancements_TrainingKit\Labs\AdoNetDataServices

[Ex01-CreatingDataServices]
[Ex02-ConsumingDataServicesUsingAspNetAjax]
[Ex03-ServiceInterceptors]

NETFramework35Enhancements_TrainingKit\Labs\AdoNetEntityFramework

[Ex01-CreatingEntityDataModel]

NETFramework35Enhancements_TrainingKit\Labs\AspNetAjaxHistory

[Ex01-AjaxHistoryServerSide]
[Ex02-AjaxHistoryClientSide]

NETFramework35Enhancements_TrainingKit\Labs\AspNetDynamicData

[Ex01-CreatingDynamicDataApp]
[Ex02-CustomizingDynamicData]

NETFramework35Enhancements_TrainingKit\Labs\AspNetMvc

[Ex01-CreatingMvcApp]
[Ex02-MvcAndTdd]     
[Ex03-MvcUsingIoC]

NETFramework35Enhancements_TrainingKit\Labs\AspNetSilverlightCtrl

[Ex01-UsingSilverlightMediaPlayerCtrl]
[Ex02-HostingSilverlightContent]

And from the post install readme;

ADO.NET Data Services

Introduction to ADO.NET Data Services

This lab highlights the creation of a data service using the Entity Framework as its data source, and shows how to consume the service using both the .NET client APIs and the ASP.NET AJAX APIs. Additionally, you will use Service Interceptors to add validation support and Service Operations to perform custom queries.

ASP.NET MVC

Developing ASP.NET MVC Applications

This lab shows the fundamentals of creating and ASP.NET MVC applications, their core concepts, how they work and how to use them. You will also learn what is needed and how to perform unit testing while creating the application and how to extend the ASP.NET framework to use an IoC container.

ASP.NET Dynamic Data

Introduction to ASP.NET Dynamic Data

In this lab, you will learn how to quickly create and customize a data-driven Web application without the need to write a great amount of code. The application created uses the ASP.NET Dynamic Data features to offers viewing, editing, filtering and sorting operations over the data model of the underlying database

ADO.NET Entity Framework

Introduction to ADO.NET Entity Framework

In this lab, you will learn how to create an Entity Data Model using the ADO.NET Entity Framework Tools and how to consume it using the Entity Framework APIs.

ASP.NET AJAX History

Introduction to ASP.NET AJAX History

One problem faced by a typical AJAX application is that the browser’s Back button does not move back one AJAX step, but moves back one entire document, which is unlikely to be what the user expects. In this lab, you will learn how to use the ASP.NET AJAX History features to insert history points using server controls or client-side code, so that the user may click the browser’s Back and Forward buttons to move between AJAX states.

ASP.NET Silverlight Controls

Introduction to ASP.NET Silverlight Controls

In this lab, you will learn how to use the ASP.NET controls for Silverlight to add rich media capabilities to your Web application. From one side, you will learn about the ASP.NET MediaPlayer control which lets you integrate audio and video into a Web site. On the other side, you will learn about the ASP.NET Silverlight generic control to integrate XAML into your Web site.

Friday, April 11, 2008

PowerCommands for VS 2008 v1.1 Released

PowerCommands for Visual Studio 2008 - PowerCommands for Visual Studio 2008 v1.1

From the PowerCommands Readme.docx;

"What’s New in PowerCommands 1.1

Enable/Disable PowerCommands in Options dialog

This feature allows you to select which commands to enable in the Visual Studio IDE. Point to the Tools menu, then click Options. Expand the PowerCommands options, then click Commands. Check the commands you would like to enable.
Note: All power commands are initially defaulted Enabled.

Format document on save / Remove and Sort Usings on save

The Format document on save option formats the tabs, spaces, and so on of the document being saved. It is equivalent to pointing to the Edit menu, clicking Advanced, and then clicking Format Document.

The Remove and sort usings option removes unused using statements and sorts the remaining using statements in the document being saved.

...

Clear All Panes

This command clears all output panes. It can be executed from the button on the toolbar of the Output window.

...

Copy Path

This command copies the full path of the currently selected item to the clipboard. It can be executed by right-clicking one of these nodes in the Solution Explorer:

  • The solution node.
  • A project node.
  • Any project item node.
  • Any folder.

...

Email CodeSnippet

To email the lines of text you select in the code editor, right-click anywhere in the editor and then click Email CodeSnippet.

...

Insert Guid Attribute

This command adds a Guid attribute to a selected class. From the code editor, right-click anywhere within the class definition, then click Insert Guid Attribute.

...

Show All Files

This command shows the hidden files in all projects displayed in the Solution Explorer when the solution node is selected. It enhances the Show All Files button, which normally shows only the hidden files in the selected project node.

....

Undo Close

This command reopens a closed document , returning the cursor to its last position. To reopen the most recently closed document, point to the Edit menu, then click Undo Close. Alternately, you can use the Ctrl+Shift+Z shortcut.

..."

Some cool new features added to the PowerCommands tool set.

I think my fav is going to be Undo Close. I suffer from the "lock and close the door just as you realize the keys are inside" syndrome and thereby I seem to click on the Close tab button just as I realize that I didn't want to close THIS tab... :/

The installer for v1.1 does force you to manually uninstall the previous version (i.e. a trip to the Control Panel, Add/Remove Programs, etc, etc). That always bugs me... It's not that hard to have the installer find and uninstall previous versions, even if you're using VS Setup Projects (all my setups do it, and if I can do it... yada, yada). Once I manually uninstalled v1.0, v1.1 installed with no issues.

Still that's a minor matter and I applaud the author for releasing the bin/msi's and source... Source is good. ;)

 

Related Past Post XRef:
Power Up your Visual Studio 2008 with the new, free and with source, PowerCommands for Visual Studio 2008

PowerShell through your String Literals - Using PowerShell to extract and review all the string literals in your applications

CodeProject - PowerShell Script for Reviewing Text Shown to Users

"Introduction

It's embarrassing when users see text containing spelling and grammar errors. Error handling code is most likely to contain bad prose because developers are sloppy with code that isn't "supposed" to ever run. Imagine a snapshot of your dialog landing on your bosses desk. The message text reads "If you got here, your #$%@ed." How humiliating for your boss to see that you misspelled "you're".

String tables are supposed to avoid this problem, but error handling strings often get left out. After all, why go to the effort to put a message string in a table when you know the code will never run? And while it's an exaggeration to say the code never runs, it may run so seldom that it is never seen in testing.

The PowerShell script described in this article searches through a source code tree and extracts string literals that may be visible to users. It tries to filter out strings that are code from strings that are prose. The script isn't perfect; a complete solution would require a lot more work than a little script. But it does a good job of finding errors that would otherwise go undetected. You will probably find that your source code has far more typos than you thought.

...

The script is configured to search C++, C#, VB, ASP.NET, JavaScript, and XML files. You may want to modify this line to change the file extensions you want to search.

$sourceExtensions = "\.(cs|vb|aspx|resx|cpp|rc|h|js|xml)$"

..."


Nice...and though I would never need this (cough... yeah, right!... cough) I can see it being a handy utility. Both in its intent and as a PowerShell learning tool.


This could also come in real handy when taking over someone else's code and to batch find all the string literals in my code, to help me move them to resource files.

File Hash Generator Explorer Shell Extension - MD5 a file via right-click in Windows Explorer...

CodeProject - File Hash Generator Shell Extension

 

"FileHash

...

There are two coding concepts covered in this article. The first is cryptographic hash and the second is windows shell extensions. The cryptographic hash, of which there are many different algorithms, produces the digital fingerprint of a file. The .NET Framework provides 6 System.Security.Cryptography.HashAlgorithm implementations that can be used for generating the digital fingerprint: MD5, SHA-1,SHA-256,SHA-384,SHA-512 and RIPEMD-160. The two most commonly used when downloading a file are MD5 and SHA-1. Windows shell extensions take us beyond the comfortable realm of managed code and force us to implement COM to integrate into the unmanaged world of Win32. For this element of the utility,code is pulled directly from Dino Esposito's article Manage with the Windows Shell: Write Shell Extensions with C#. Dino's explanation of the COM interfaces and sample code were invaluable to this project. To really understand the implemention of a shell extension, I highly recommend his article.

Using the Utility

With the integration into the Windows Explorer context menu, generating the hash as simple as selecting one or more files then right-clicking to display the context menu. From this menu, you can select which type of file hash you want to generate by selecting the sub-menu option. You will then be presented with a window containing the file name, the hash that you selected, plus the full path to the file(s) that you selected. This DataGridView table allows for selecting of the desired values and copying to the clipboard if you need to publish the hash value. It's that easy!

..."

While I have a number of MD5 file hashing utilities, this one looks like the easiest to use (hard to beat a right-click)... Plus it's cool that it is written in .Net. :)

Let's Paint the town red... Paint.Net 3.3 Released

Paint.Net Blog - Paint.NET v3.30 — Final release now available!

"It’s finally here! You can grab it via the built-in updater from the Help-> Check for Updates menu item, or go get it straight from the website at http://www.getpaint.net/

Enjoy!

Changes since v3.22:

  • New: Italian translation.
  • New: Ability to save PNG’s at 8- and 24-bit color depths.
  • New: Ability to save BMP’s at 8-bit color depth.
  • New: "Auto-detect" bit-depth option for PNG, BMP, and TGA file types. It will analyze the image and determine the lowest bit-depth that can still save the image without quality loss.
  • New: "Fragment" blur effect, by Ed Harvey
  • New: The "Polar Inversion" distortion effect has been enhanced to allow changing the rendering offset, and the behavior for "edge" pixels (clamp, reflect, or wrap).
  • New: For developers, added a Color Wheel control to IndirectUI for use in effect plugins.
  • New: For developers, added ability to customize certain properties of the effect configuration dialog via IndirectUI.
  • New: For developers, IndirectUI can now be used to write configuration UI for file types.
  • New: For developers, IndirectUI has a new radio button control type for enumerations, and some new property constraint rules.
  • ...

..."

Always a good day when we get a new Paint.Net...

 

Related Past Post XRef:
Paint.Net 3.2 RTW

Work Item Web Access (WIWA) CTP (fka Codename TFS Bug Submission Portal)

Microsoft Downloads - Visual Studio Work Item Web Access 2008 Power Tool Community Technology Preview

"...

Work Item Web Access (WIWA) is a free download. You may install it with licensed installations of Team Foundation Server.

As stated in the End User License Agreement (EULA) for Team Foundation Server (TFS) 2008 Standard Edition, you do not need a Client Access License (CAL) to access work item tracking functionality to create new work items, or view and update work items you opened.
As a user without a TFS CAL, you can use Work Item Web Access (WIWA) to:

  • Create new work items
  • Edit the work item you have created
  • See the list of work items you have created
However, you cannot:
  • See work items created by others
  • List, view, edit or run work item queries
  • Add, edit or remove work item links (except attachments and hyperlinks)
  • Access documents stored on the project portal
  • Access project reports
  • Access source control
  • Access team build

..." [Description leached in full]

Another step closer to user self-bug-service for TFS...

I still think this is too locked down, but I guess it's easier to unlock in the future than to nerf it. (Nerf is a MMO term... to remove functionality, to take away, make harder to use, to lower the value, etc)

 

Related Past Post XRef:
Coming soon to TFS Power Tool near you - Codename TFS Bug Submission Portal

Code Project Browser Add-in Updated to Support VS 2008

CodeProject - The Code Project Browser Add-in for Visual Studio 2005 and 2008

"...

I also love convenience, and that's why I made this add-in. It lets you browse The Code Project directly in Visual Studio 2005 or 2008. When you click on a link that would normally download a zip file, it asks you instead if you'd like to open the sample up using The Code Project Browser. If you say yes, the add-in will download the file, unzip it to a base My Documents\My Code Project Samples directory, then load it directly. It also provides a sidebar where you can view, reload and delete all of the projects you've downloaded.

....

  • 24 Mar 2008 - Updated the installer to work with Visual Studio 2008. You can also install the add-in anywhere you like. No separate login is needed anymore, you just need to be logged into the site. This eliminates the need for favorites. An address bar was added, as well as a context menu to the project tree so that you can easily refind the article associated with a project download.

..."

The cool SlickEdit built Code Project Browser Add-in is now VS2008 happy..

(via WindowsClient.Net - The Code Project Browser Add-in for Visual Studio 2005 and 2008)

 

Related Past Post XRef:
Access Code Project from within Visual Studio 2005 - A Cool VS Addin from SlickEdit (with Source of course)

Team Foundation Sidekicks 2.1 Released

Team Foundation Sidekicks - Get Team Foundation Sidekicks 2.1!

"Only three months after release of version 2.0, we made available the next version of Team Foundation Sidekicks. And even though it is labeled 2.1 it contains lots of bug fixes and some important features.

Features

  • Code Review Sidekick: code review by work item is available (selecting changesets through associated work items)
  • Code Review Sidekick: list of associated work items is available for changesets reviewed
  • Code Review Sidekick: filtering of items revisions list by user or file name is available
  • Shelveset Sidekick: saving of the contents for the whole shelveset is supported
  • Labels Sidekick, History Sidekick, Code Review Sidekick: View changeset details is supported for all lists containing changesets
  • Visual Studio integration: all Sidekicks are available in stand-alone application are available in Visual Studio (through Tools->Team Foundation Sidekicks menu)
  • Visual Studio integration: operations on build types are supported for TFS 2008 custom build type files locations

..."

And the Team Foundation Sidekicks v2.1 is still free (as in free)

 

Related Past Post XRef:
Team Foundation SideKicks v2 Released (TFS2005 & TFS2008)
TFS Sidekicks 1.2 (with new Labels Sidekick) Released

Tuesday, April 08, 2008

New blogger from my team... Welcome to the world of blogging Peter!

My.RAM.Serialize() - My first post...

Just a quick welcome to one of my team members who has just started blogging... It's my intent and desire to help and support him in his blogging efforts (as long as he doesn't miss any milestones... muhahahaha  ;)

Anyway, welcome to a much wider and wilder world Peter.

Web Client Development Download Day from Microsoft

Microsoft Downloads - Web Client Composite Library for .NET Framework 3.5

"This library provides reusable application blocks for creating composite responsive Web clients. The reference implementation includes How-to topics and patterns."

Microsoft Downloads - Web Client Contextual AutoComplete Application Block for .NET Framework 3.5

"This application block provides guidance on how to provide a list of suggested values to the end user of your application during data input. The application block includes a QuickStart, How-to topics, and patterns."

Microsoft Downloads - Web Client Model View Presenter Application Block for .NET Framework 3.5

"This application block provides guidance on how to create testable ASP.NET user interfaces. The application block includes a QuickStart, How-to topics, and patterns."

Microsoft Downloads - Web Client Modularity Application Block for .NET Framework 3.5

"This application block provides guidance on how to create modular composite user interfaces. The application block includes a QuickStart, How-to topics, and patterns."

Microsoft Downloads - Web Client Responsive Composite Reference Implementation for .NET Framework 3.5

"This reference implementation provides guidance on how to improve responsiveness with composite ASP.NET user interfaces. The reference implementation includes How-to topics and patterns."

Microsoft Downloads - Web Client Search Application Block for .NET Framework 3.5

"This application block provides guidance on how to improve UI search patterns. The application block includes a QuickStart, How-to topics, and patterns."

I don't do much web development these days, but I thought this blast of downloads deserved a mention... (FYI, there are .Net 2.0 versions of many of these too)

Monday, April 07, 2008

tz/Olson Database .Net API

CodeProject - ZoneInfo (tz database / Olson database) .NET API

"This article describes a simple .NET API for using the ZoneInfo database, which is also known as the tz database or Olson database.

The API is available at http://www.codeplex.com/zoneinfo.

I hope you find it useful :)

Background

I have been developing a web site which schedules meetings and events across multiple time zones for more than a year now.

I previously used the .NET PublicDomain library discussed in another codeproject article but had a number of issues including:

  • Just not working for Australia
  • It seems to hard code in the tz database rather than reading it from the file system; therefore if you need to update the database you need to wait for the source code to be updated
  • The library seems to have a lot of other things in it which I just don't need (which is not a major issue though)

One of the big things I wanted was to have an API which I can just download the latest tz database and off I go.

..."

The tz (time zone) database comes up every so often at work, so when I saw this I wanted to reference it... for... um... future reference... ;)

Sunday, April 06, 2008

MSBuild Sidekick v2.1 Released

Team Foundation Sidekicks - MSBuild Sidekick 2.1 is available

"Talk about Fools' Day joke - but on 1st of April we have released version 2.1 of MSBuild Sidekick. This version contains quite a few bug fixes, but we managed to put several new features in it too:

  • When .Net schema version is selected in Build Options dialog, the application now will use the appropriate set of MSBuild assemblies for the build (previous version used 3.5 to build 2.0 schema projects when .Net 3.5 Framework was installed). That way build can be performed with exactly the same version of the engine (no matter versions of .Net installed)

  • Find and Refactoring dialogs all contain XML source windows and all list views are sortable

  • The application supports registry properties for MSBuild 3.5 schema projects

  • Auto version update is implemented

The new version is available here; if you have purchased license for 2.0 you can upgrade to version 2.1 at no cost. ..."

While MSBuild Sidekick v2+ is not free, we have a couple teams at work that are looking to move to TFS, with complex projects and build requirements, and I thought this utility might come in handy for them...

 

Related Past Post XRef:
Attrice's Microsoft Build Sidekick