A new beginning

It was almost 12 years ago that Dave Lloyd and I began ObjectSharp with some shared goals and values. I committed a lot of energy towards those goals and I’m very proud of what ObjectSharp became during that time. I’ve had a chance to work with some fantastic people including our staff, our customers, and our partners Microsoft.

Today I want to let you know that I have some exciting new goals I want to achieve but to do that I’m going to have to say good bye to ObjectSharp. I wouldn’t be able to leave ObjectSharp if it wasn’t in good hands, so this transition has been in the works for more than a year and now I’m able to pursue those goals.

Although I’m saying goodbye to ObjectSharp, I will be staying within the Microsoft Ecosystem  and staying within the Greater Toronto Area, so I will remain a familiar face in these areas.  I hope you will follow me on my personal blog at http://gervin.com/ and twitter @bgervin and will post more news there when the time is right.

AzureFest Follow-Up Links & Videos

Cory Fowler stands beside the big screen in Microsoft Canada's MPR roomThis past Saturday December 11th, Microsoft and ObjectSharp hosted AzureFest, a community event to raise interest and learn a little bit about Microsoft’s cloud platform, Windows Azure.

My colleague Cory Fowler gave an introductory run down on the Azure platform and pricing, and then demonstrated for those in attendance how to go about Creating an Account and Deploying an Azure Application.

The best part, is that our good friends at Microsoft Canada offered $25 in User Group Funding for each person in attendance that followed along on their laptop to activate an azure account and deploy the sample application.

Now Held Over!

The even better part, is that MS Canada is extending the offer until December 31st online for anybody that goes through this process to activate and deploy a sample application online. We’ve got the instructions for you here and it will take you approximately 15 minutes to go through the videos and deploy the sample.

  1. Download the application package that you’ll need for the deployment here.
  2. Create an Azure Introductory Account (5 minutes). You’ll need
    • a Windows Live id. (if you don’t have one, click here for instructions)
    • a Valid Credit Card (don’t worry, in step 4 we’ll show you how to shut down your instance before you get charged).
    • navigate to www.Azure.com and follow along with these instructions
      Signing up for Windows Azure
  3. Deploy the Nerd Dinner Application (8 minutes)
    • follow along with these instructions
      Deploying the Nerd Dinner Package to Azure
    • email a screenshot of your deployed application showing the URL and the name of your user group to cdnazure@microsoft.com
    • Specify TVBug, Metro Toronto .NET UG, CTTDNUG, Architecture UG, East of Toronto .NET UG, Markham .NET UG, etc.
  4. Tear down to the application to avoid any further charges (2 minutes)
    • Tearing down a Windows Azure Service

Here are the slides from Azure Fest

Stay tuned here for the next part of our video blogs where we will review:

  • Deploying a SQL Database to Azure
  • Installing the Azure Tools for Visual Studio and SDK
  • Deploying ASP.NET Applications from within Visual Studio

Windows Phone 7 App Challenge: TFS Mobile Client

I have an MSDN Ultimate Subscription to give away to the winner of this challenge! The winner will have successfully built a showcase TFS Client for Windows Phone 7. I will accept entries until November 30th.

There are boundless opportunities for features and functionality. Creativity counts here, but to get you started, here are some ideas:

    • Build Server Status
      Would love to see the status of a given build type, the latest build, success/fail, the offending people who checked in code on a broken build. Would be nice to kick off a QA or Production build (or any type for that matter) from my phone once I’ve got the all clear from QA.
    • Iteration Dashboard
      What’s the status of the current build? What exit items are still open? What’s our current velocity? What’s the burn down look like?
    • Work Items
      Would love to edit a work item, reassign it to somebody else, close it, reactivate it, etc. Log a bug perhaps?
    • Opportunities with the Phone
      Being able to look up a work item owner, or build breaker in my address book and phone or email them seems obvious.

 

Remember the highlights of this challenge:

  • Entries due by Nov 30th. Email me some code including a link to video demonstration ideally. bgervin@objectsharp.com
  • Let me know if you are planning on entering. I’d be excited to provide some coaching and guidance along the way.
  • On the line is 1 year MSDN Ultimate Subscription. I think that is worth like a million dollars or something Smile
  • I’m sure you will also win a free date with a MS Developer Evangelist and be featured on the CDN Dev Blog.
  • I’m pretty sure you aren’t allowed to win if you live in Quebec or work for Microsoft or the Chinese government, but please don’t let that stop you from submitting an entry!

Gentlecoders, start your engines! Best of luck.

Best of Luck Julie

Many of you have met Julie James over the past 8 years since she started at ObjectSharp as our Training Manager. As you can read over here, Friday was Julie’s last day at ObjectSharp and today she starts on a new adventure. I want to thank her for making such a huge contribution to ObjectSharp over the past 8 years and wish her well as she looks towards the next big challenge.

When Julie started with ObjectSharp, she began in our Vancouver office and after a couple of years moved to Toronto. For the years she’s been in Toronto she has been a very public face for ObjectSharp and within the developer community in Toronto, volunteering her time to the Metro Toronto User Group and acting as the hostess with the mostest at many of our events. I know she has expressed that she will miss working with all the ObjectSharp folks and the developer community at large, but the feeling is very mutual for us here at ObjectSharp and on behalf of the entire .NET Community, we will miss you Julie and wish you all the best.

Eight years is a long time, but Julie always thrived on building relationships and understanding people’s concerns to identify opportunities where she can help and add value. Julie has helped build a culture of customer service at ObjectSharp and she has left her mark at ObjectSharp and New Horizons for many years to come. I know many of us will continue to ask ourselves “What would Julie do?” as we continue on with her “customer-first” attitude.

Please join me in wishing Julie all the best.

CTTDNUG: ASP.NET MVC Talk Follow Up

A couple of weeks ago I had the opportunity to speak at the Canadian Technology Triangle .NET Users Group.

We had a great crowd of over 60 people eager to learn more about ASP.NET MVC. I was able to do a mix of Visual Studio 2008 and 2010 demos, as well as showcase a production application,  a crowd-sourced translation dictionary for First Nation Languages, currently supporting Maliseet and Mi’kmaw languages (www.sayitfirst.ca).

A question came up in the talk about content management systems and ASP.NET MVC. There was one in particular that intrigued me, but I couldn’t remember the name. After doing some digging it was www.n2cms.com. The interesting angle of N2 is that it is very lightweight, and not meant to be the shell of your entire site, but rather works within your application to serve up content where appropriate. I hope to use this on a future project.

Make sure to check out these other valuable resources as you learn ASP.NET MVC:

Toronto Code Camp 2010: Blendability Follow Up

This past weekend I gave a talk on “Blendability”; The ability to maintain and leverage blend design time compatibility with your WPF and Silverlight projects. Thanks to everybody who came out to the talk, we had some good discussions despite the oppressive heat in the room. You’ll find my slides above. As some of you have requested, here you can find my demos including the MVVM template that was used in the Blend 4 previews that demonstrates the behavior technique for calling methods on your view models.

Toronto Code Camp 2010: Ultimate Architecture Experience Follow Up

This is just a quick follow up post from my demo at the Toronto Code Camp last weekend. Thanks for everybody who came out.

In addition to my slides, here ere are a few resources that will help you learn more about the architecture tools in Visual Studio 2010 Ultimate Edition:

  • The .NET Pet Shop that I used as a sample is available for download.
  • Walkthrough: MSDN How-To’s on Modeling in 2010
  • Blogs: Cameron Skinner, Peter Provost and last but not least Chris Lovett who has some most awesome video demos and tips for dealing with large diagrams. He also provides some samples for those that are interested in learning more about Directed Graph Markup Language for creating their own diagram generators.
  • The Patterns and Practices Team has released a set of templated layered diagrams for various references architectures.

Toronto Code Camp 2010 Keynote: Building the Right Software

Opening Keynote by Joey DeVilla.

I had the privilege to open up the 2010 Toronto Code Camp last week. It’s hard to know what to talk about to such a broad audience getting ready to kick off a great event with so many different sessions and tracks. A topic that is near and dear to my heart is about trying to figure out what makes software relevant. Ultimately it is about knowing your customer, very intimately so you can build the best experience for them.

With that said, I decided to step outside the world of software development to compare to successful invention/design stories and how they differed in their approach to “knowing their customer”.

Ron Popeil the famous pitchman and inventor of the Infomercial. Malcom Gladwell wrote an interesting article/biography Ron and his fellow pitchman. There is a lot to learn about Ron’s successes, but specifically how he focused on the audience that he knew. Himself. The chef, the entertainer, and the balding guy.

The contrasting story of Deborah Adler and her thesis turned Target product for a revolutionary redesign of the common pill bottle, is no less inspiring. You can watch/hear Deborah tell her own story from the Mix 09 keynote. Unlike Popeil, Deborah inspires her design efforts by forming such an intimate understanding of her customers that she refers to it as a “Love Affair”.

These two approaches are so simple and common sense that it’s hard to ignore them when compared to the way most of us build software and disconnect ourselves from our users through layers of requirement and specification documents.

The rest of the conference was a tremendous pleasure and wouldn’t have been possible without the efforts of the numerous volunteers, speakers and most importantly Chris Dufour who has the thankless job of herding this motley crew of geeks :) Thanks to all who made a contribution to this worthwhile event.

Architecture with Visual Studio 2010 At The Movies

This is just a quick follow up post from my demo at Visual Studio 2010 At The Movies last week. Thanks for everybody who came out, especially those from out of town.

I didn’t use any slides but I thought about recording my demo here. I may still get to that, but in the meantime, here are a few resources that will help you learn more about the architecture tools in Visual Studio 2010 Ultimate Edition:

  • The .NET Pet Shop that I used as a sample is available for download.
  • Walkthrough: MSDN How-To’s on Modeling in 2010
  • Blogs: Cameron Skinner, Peter Provost and last but not least Chris Lovett who has some most awesome video demos and tips for dealing with large diagrams. He also provides some samples for those that are interested in learning more about Directed Graph Markup Language for creating their own diagram generators.
  • The Patterns and Practices Team has released a set of templated layered diagrams for various references architectures.

My SketchFlow Player is empty:

image

Let me officially call this the Grey Screen of Death. You create a lovely sketch flow prototype in Expression Blend and it looks great at design time, but at run-time you get nothing. If you’re clever, you’ll try to dig into the java script error, which fortunately, the nice folks on the SketchFlow player team have raised up from the Silverlight layer. Unfortunately, I’ve found that most errors you get in here are pretty useless.

In my case I was recently getting:

Webpage error details

User Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; InfoPath.2; MS-RTC LM 8; .NET4.0C; .NET4.0E)
Timestamp: Wed, 31 Mar 2010 03:58:03 UTC

Message: Unhandled Error in Silverlight Application AG_E_PARSER_BAD_TYPE [Line: 5 Position: 78]   at System.Windows.Application.LoadComponent(Object component, Uri resourceLocator)
   at SilverlightPrototype_10Screens.Screen_1.InitializeComponent()
   at SilverlightPrototype_10Screens.Screen_1..ctor()
Line: 1
Char: 1
Code: 0

Your mileage might vary by attaching the visual studio debugger or running the application from within Visual Studio. In my case, I ended up doing some process of elimination pruning to see if I could back track and find the problem. I was having difficulty with some sample data in this case. It was tricky to find, but I’ve determined that you really don’t want a space in your SketchFlow project names. This will cause some erroneous code gen for the loading of the sample data in the sample data classes.

I absolutely love Expression Blend and SketchFlow, but finding this bug was one of those times when I’ve wanted to physically hurt my computer. I hope this helps some poor soul find the root cause a little faster than it took me.

And please share in the comments any other common reasons you’ve found SketchFlow Player failures.