Archive for November, 2010

WS-I Completes Web Services Interoperability Standards Work

I read this a couple of weeks ago.

Soon I’ll be posting about a lot about Client / Service development for web development. The very nature of that model (Ajax) will cause some focus on REST style APs but we shouldn’t forget about SOAP and the WS-I extensions.

SOAP and the WS-I extensions solve many difficult service oriented problems that are VERY difficult to address from scratch.

If you’re new to the WS-I work, here are some highlight inks.

You can read the whole press release [ HERE ]

Murach’s C# 2010



If you’ve been reading my blog for a while you already know that I love the Murach Books.

Murach’s has updated their great C# book for v4 / 2010.

If I were going to teach a course on C#, this is the book I would use.

From the official description….

#1: A FAST start, coupled with Visual Studio productivity
This book starts you off using all the best features of Visual Studio so you can begin productive work almost immediately. In fact, it has you create a simple business application in chapters 2 and 3 so you can see right away how the core features of C# and of Visual Studio work. Download these chapters for free, and see for yourself.

#2: Object-oriented programming made clear
When it comes to object-oriented programming, too many C# books resort to whimsical but useless metaphors, like illustrating objects by creating animal classes such as mammals, cats, and dogs. Then they leave it up to you to figure out how to transfer these concepts to business applications.
In contrast, we present business objects such as customers, invoices, and products so you can see how OOP is used to create multi-tiered applications in the real world.

#3: Confidence in handling business requirements
Learning to use C# classes and OOP techniques isn’t enough. You also have to know how to code for the tasks that are required in most business applications. So this book builds on your skills in incremental steps to teach you how to validate data, handle numeric, date, and string data, work with loops, arrays, and collections, code methods and event handlers, handle exceptions, and work with text, binary, and XML data.

#4: A solid grounding in database programming
You can’t create business applications without handling databases. So this book teaches you how to use C# 2010’s tools for rapid application development, like the data sources feature and data handling controls. It also includes introductions to ADO.NET coding and to LINQ, a feature that lets you query almost any data source…not just databases…using the C# language.
Powerful stuff that’s glossed over in a chapter or two in most other C# books.

#5: No side-stepping of business requirements
This book presents complete, non-trivial applications that illustrate what you need to know on the job. Studying applications like these is the key to mastering C# development, but you won’t find them in many other C# books.

#6: Practice exercises solidify your skills
The exercises at the end of each chapter let you apply what you’ve learned, giving you valuable, hands-on experience. And because we provide the starting points for these exercises here at our site, you get the maximum amount of practice in a minimum of time.

#7: Paired pages make learning a breeze
If you haven’t ever used one of our books before, you may want to download a sample chapter before you buy. If you do, you’ll discover why programmers are so impressed by our "paired pages" format and why college students ask their instructors for Murach books. Not only does this format make learning easier and faster, but it also makes this the ideal reference book when you’re on the job.

#8: 100% guarantee
Like all our books, this one is backed by our 90-day trial period and 100% guarantee. It must teach you C# 2010 the way the best professionals use it, or send it back for a prompt refund.

[ You can get it HERE ]

How to get a job at Microsoft ?

I get at least one email a week asking me how to get a job at Microsoft. Since I get this question so regularly I  though I’d answer it in a blog post for future reference.

Since I work with developers my answer to this will be developer focused but will be useful for people interested in working in other technical areas.

Though Microsoft is a large company, we tend to hire more like a startup. Microsoft prides itself on the quality and capabilities of its people, and joining Microsoft in any developer related capacity is to an easy prospect. (Though it is a rewarding one.)

Begin by understanding what TYPE of role you are interested in at Microsoft. It’s a very bad idea to “cast a very broad net” when trying to sell yourself into a developer’s role at Microsoft.

There are many roles at Microsoft for developer types.

  • Software Engineers (Writing code for Microsoft products)
  • Test Engineers
  • Developer Product Support (May not sound exit but these guys become REAL experts)
  • Developer Evangelist
  • Developer Product Specialists
  • Developer Technical Account Managers
  • Developer Program Managers
  • Developer Product Managers
  • Development Documentation Writers
  • Developer Guidance PM/Author
  • and many others I can’t think of off the top of my head.

Start here !

Note that there is a special on-boarding track for students and recent graduates. Microsoft has a very vibrant student hiring practice.

If you are a student, find out if Microsoft is involved with your school, if so, see if your school has a Microsoft Student Ambassador.

A good resource for students is the Microsoft Academic Alliance.

In any event. Search the developer related jobs on the Microsoft career site to discover developer related jobs an Microsoft and read the job descriptions and qualifications.

The descriptions are great guidance as to the type of experience you should begin accumulating to improve the value that you will be able to offer Microsoft.

Note that most of Microsoft does not work in Redmond (though MUCH of product development is there.)

Find the Microsoft office closest to you. Nearly ALL host events throughout the year. Start attending the ones that are of interest to you and meet the Microsoft folks from the local office.

They can serve as great resources !

Join your local Developer Community.


  • User groups
  • Code Camps
  • Nerd Dinners
  • Meetups
  • Product Releases

Publish, Publish, Publish

Blog, Tweet, Write Open Source !

These things become the best part of your resume.

Microsoft is notorious for placing high value on real work.

Your blog posts and published source can be the best reference of you recent work and your possible value to w new team.

When at first you don’t succeed, try, try again.

When you finally choose a position from the careers web site and apply, don’t necessarily give up if you don’t get an interview or win that particular job.

Hiring managers at Microsoft consider FAR more than simple resume or keyword matching when they initiate their hiring process.

Many, many of the people here at Microsoft previously applied for a different job at Microsoft that they weren’t a perfect fit for and later were hired into the job they were better suited for.

Like most things in life. Things worth having are worth working for.

Microsoft can be a great place to work – and we hire to keep it that way.

I hope this gives interested folks a place to start.

Enhancing your Organizational and Leadership skills.

As we approach the end of the calendar year it’s common to reflect on what we’ve accomplished and focus on what we seek to accomplish in the coming year.

I wanted to take the opportunity to share a couple of resources that I’ve been finding usefull.

J.D. Meier (from our Patterns & Practices team) lives an alternate life as a management guru.

He writes about his work in the space here

He’s also written a great book – “Getting Results the Agile Way.”


If you really don’t want to buy the book you can read it all on line.

Check it out and start planning for 2011 to ROCK !

Easy text input limiting with jQuery.


I got email from a developer this week having trouble with WebForms validation.

The issue was that a combination of a control and an extender were causing havoc with the counter.

The developer wanted to prevent submission if the user entered more than 50 characters in a textbox.


  • Using WebForms does not mean you have to do everything with Web Controls.
  • jQuery ROCKS !

When you create an ASP.NET WebForms project using the default template in Visual Studio 2010 you get jQuery included by default.

I did a couple of Bingle searches (like Google only with BING) and found the maxlength.js library at

My .aspx page markup look like this….

Code Snippet
  1. <%@ Page Title=”Home Page” Language=”C#” MasterPageFile=”~/Site.master” AutoEventWireup=”true”
  2.     CodeBehind=”Default.aspx.cs” Inherits=”InputMax._Default” %>
  4. <asp:Content ID=”HeaderContent” runat=”server” ContentPlaceHolderID=”HeadContent”>
  5. <script type=”text/javascript” src=””></script>
  6. <script src=”Scripts/maxlength.js” type=”text/javascript”></script>
  7. </asp:Content>
  8. <asp:Content ID=”BodyContent” runat=”server” ContentPlaceHolderID=”MainContent”>
  9.     <h2>
  10.         Welcome to ASP.NET with jQuery!
  11.     </h2>
  13.   <p>Enter some text <strong>(<50 characters)</strong></p>
  14.   <textarea runat=”server” id=”tbonlyfifty” style=”width:300px; height:60px” data-maxsize=”50″ data-output=”in-status” wrap=”virtual”></textarea>
  15.   <br />
  16.   <div id=”in-status”
  17.         style=”width:300px;font-weight:bold;text-align:right; font-size: x-large;”></div><br />
  18.     <asp:Button ID=”ButtonSubmit” runat=”server” Text=”Submit” Width=”300px”
  19.         onclick=”ButtonSubmit_Click” /><br /><br />
  20.     <asp:Label ID=”LabelResult” runat=”server” Text=””></asp:Label>
  21. </asp:Content>

Note how elegant this is.

I simply download and include the maxjength.js file and add two attributes to my html textarea.

data-maxsize – says how many characters can be entered into the textarea.

data-output – tells the maxsize script where to display the feedback.

Note that the textbox is not an ASP.NET Server Side Control. It’s a standard <textarea> element that I’ve specified  runat=”server” and an id so that I can retrieve the value in code-behind.


I could omit  runat=”server”  and retrieve the value from the form collection.

Code Snippet
  1. public partial class _Default : System.Web.UI.Page
  2. {
  3.     protected void Page_Load(object sender, EventArgs e)
  4.     {
  5.         if (IsPostBack)
  6.         {
  7.             LabelResult.Text = “From Request = “ + Request.Form[“ctl00$MainContent$tbonlyfifty”] + “<br /><br />”;
  8.         }
  9.     }

Welcome to the power, simplicity, and elegance of jQuery !

For more information on maxlength.js you can go to the source here : 

PS: Here is a working sample [ DOWNLOAD ]

Technorati Tags: ,WebForms,,

Podcast #1 – Glenn Block on WCF

Due to popular demand I’m beginning podcasting again under the “brand”.

No intro music, etc. just geek talk.

I’m very pleased to have Glenn Block for my first guest.

Glenn is one of those super smart, exuberant, enthusiastic guys here at Microsoft that takes on tough problems and digs for great useful solutions.

Glenn and I spend some time review his previous work at Microsoft and then focus on the new work he’s doing with WCF, his focus on REST and usage scenarios that modern web developers care about.















Tailspin Spyworks Ecommerce Application and Tutorial Updated on CodePlex !

Just a note to let folks know that I’ve updated both the code and the tutorial for the tailspin Spyworks sample app at

It includes bug fixes, additional step details in the tutorial as well as complete database schema information.

Enjoy and feel free to send comments and suggestions.

Do you know about the Microsoft All-In-One Code Framework


The Microsoft All-In-One Code Framework is a free, centralized code sample library provided by the Microsoft Community team. Our goal is to provide typical code samples for all Microsoft development technologies.
What is it ?
The All-In-One Code Framework team listens to developers’ pains in MSDN forums, social media and various developer communities and writes code samples based on developers’ frequently asked programming tasks, and allows developers to download them with a short code sample publishing cycle.
Additionally, the team offers an innovated free code sample request service.
The reason why this service was created was to provide personalized and connected services to the developer community. This is a new way to listen to our customer needs and reduces the amount of effort needed for developers to complete their work.

Check out these Videos !


Get The Code You Need & Save Your Keyboard!


Get the Code You Need & Get some Sleep!


Get the Code You Need & …………………………


Get the Code You Need & Save Your Brain!

Here is some of the Feedback we’ve received !!!

“The samples could definitely spare you from some horrible bugs”

– Kate Gregory (Regional Director/MVP, Microsoft)

“An innovative piece of work that makes developers’ life much easier”

– Arjun Bahree (Practice Leadership, Wipro Infotech, past Microsoft Sr. Solutions Architect & Lead)

“Devs will easily understand the contents offered in the package”

– Softpedia News

Here are some additional resources

OneCode on The Garage

OneCode Public site

OneCode KB articles in collaboration with Product Quality & Online (PQO) Content team

OneCode Internal site (with internal docs, workspace, reports, etc)

Join OneCode Special Interest Group Sign up to receive project updates

OneCode Feedback All-In-One Code Framework alias

OneCode Project Group


What:    Beginners learning to develop in a few hours using Windows Phone 7


On Channel 9 we have just launched an all new series that teaches beginning developers with little experience how to develop applications for Windows Phone 7.

This series assumes no knowledge of C#, Silverlight, or mobile development. 

In just a few hours, you will understand the needed concepts to build applications.

Check out this great new series on  Channel 9.


You’re invited to a special Silverlight event on December 2nd, 2010

Learn about the future of Silverlight from Corporate Vice President, Scott Guthrie and other experts, direct from Microsoft’s HQ.

Hear about our plans for the next version of Silverlight, the latest developments as well as in-depth sessions on building applications with Silverlight.

Registration is free – take part in-person or online.

Find out more and Register online